원클릭으로
helix-iscompleted-bucketing
Completion-safe bucketing for Helix work items with nullable exit codes
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Completion-safe bucketing for Helix work items with nullable exit codes
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Investigate .NET CI failures using the hlx CLI tool via bash. USE FOR: checking Helix job status, searching build logs, downloading test results, AzDO build timeline analysis — when MCP tools aren't loaded, when the MCP server isn't configured or fails to start, or when scripting with JSON output and jq. DO NOT USE FOR: tasks where Helix/AzDO MCP tools are already available in context (prefer ci-analysis skill when MCP server is loaded). INVOKES: bash (hlx CLI commands with --json output).
{what this skill teaches agents}
Audit pattern for comparing WorkItemSummary (list API) fields against WorkItemDetails (per-item API) after a Helix.Client SDK bump
Domain-layer normalizer + JSON-stable cache key pattern for filter types with server-side defaults and case-insensitive fields.
Strict unknown-parameter rejection for MCP tools: Stage A (UnmappedMemberHandling.Disallow) + Stage B (did-you-mean CallToolFilter).
Audit MCP/CLI tool parameter surface against underlying REST API capabilities to find silently-dropped params.
| name | helix-iscompleted-bucketing |
| description | Completion-safe bucketing for Helix work items with nullable exit codes |
| domain | helix |
| confidence | high |
| source | issue-70 |
Use this pattern when mapping Helix work item details into pass/fail/in-progress results.
details.ExitCode.HasValue as the completion signal.details.ExitCode ?? -1 as the existing sentinel value for incomplete items.isCompleted && exitCode != 0.IsCompleted to callers when an API still exposes the -1 sentinel so consumers can distinguish sentinel from a real exit code.var exitCode = details.ExitCode ?? -1;
bool isCompleted = details.ExitCode.HasValue;
FailureCategory? category = isCompleted && exitCode != 0
? ClassifyFailure(exitCode, details.State, duration, workItem)
: null;
WorkItemResult): PR #66.WorkItemDetail): issue #70.