| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
docs(actions): clarify full commit SHA filter Refs #512 | 2 个月前 | |
fix(actions): address rerun review (read-only list, red symbol, layout) - P1: remove actions run rerun from the read-only --json command index (write op with confirmation gate, misclassified) - P2: success output cs.Green(✓) -> cs.Red(✗) (destructive/write command family: issue close / pr close / artifact delete / run stop) - P2: wrap rerun.go prompt line (127 chars > 120 limit) - P2: move rerun section between run list and run view (TOC order) - P2: generalize actions intro to family-unified wording (avoids three-way conflicts with stop/retry PRs) - P2-test: add 404 -> ExitNotFound case (exit-code contract matrix) - Low: api-layer PathEscape test (owner space / runID slash) - Low: calibrate spec reference - agent-friendly-cli.md section 4 title is 破坏性命令确认 | 1 个月前 | |
fix(actions): address remaining family governance items (issue #577) - retry.go: wrap the success output line over the 120-char limit (the earlier fix commit message claimed the wrap but only split the call site; now actually under the limit, message kept intact) - retry: add --failed mode truncation-defense test mirroring the --job case so both selection entry points are covered - api: add PathEscape special-character test for RetryActionsRun | 1 个月前 | |
fix(actions): address family governance items (issue #577) - stop.go: wrap prompt/output lines over the 120-char limit (541 leftover, splitting at argument level so the user-facing message stays intact) - api: add PathEscape special-character test for StopActionsRun (RerunActionsRun already covered) - docs: document the write-command family conventions near the write-path --json index: action field uses past tense (rerun doubles as past participle, stays as-is per issue #577) and success output carries the red cross prefix | 1 个月前 | |
fix(actions): render view timestamps from milliseconds, not seconds The Actions v8 API returns start_time/end_time/pause_time as millisecond timestamps (13 digits), but view.go formatTime used time.Unix(t,0) (seconds), rendering e.g. 1783500745000 as year 58486. Detect milliseconds (t >= 1e11) and divide by 1000 before formatting. Affects only the human view (started/ended/paused + stage/job times); list does not render times and --json passes raw values through. - view.go: formatTime ms detection + msTimestampThreshold const. - view_test.go: TestFormatTime (ms==seconds equivalence, 2026 not 58486, zero/negative). - docs/COMMANDS.md: note ms→RFC3339 UTC rendering. Real-data confirmation on wangjing_127/MindIE-SD run #55: started 58486-11-20 → 2026-07-08T08:52:25Z. infra-test/gctest1 404 path exit 3. Closes #458 Co-Authored-By: opencode (glm-5.2) <noreply@anthropic.com> | 3 个月前 | |
feat(actions): add gc actions run watch — poll run until terminal state Add a new watch subcommand under gc actions run that polls GetActionsRun at regular intervals until the run reaches a terminal state (COMPLETED/FAILED/CANCELED/IGNORED/PAUSED/SUSPEND). Features: - TTY mode: refreshes screen on each poll, shows stage/job/step progress - Non-TTY mode: outputs single snapshot and exits immediately (agent-friendly) - --interval (default 3s): poll interval - --compact: only show stages with failed jobs and failed steps - --exit-status: non-zero exit code when run fails (CI integration) - --json: faithful verbatim API response output No new API needed — reuses existing api.GetActionsRun (GET /api/v8/ repos/{owner}/{repo}/actions/runs/{run_id}). 16 unit tests cover: command flags, arg validation, V8 path construction, non-TTY terminal snapshot, non-TTY running exit, --exit-status on failed/completed, JSON output, 404 error, terminal/ failed status maps, hasFailedJobs/hasFailedSteps helpers. Refs gitcode-cli/cli#507 | 2 个月前 | |
feat(actions): add actions run retry command Add gc actions run retry <run-id> backed by the new v8 endpoint POST /api/v8/repos/{owner}/{repo}/actions/runs/{run_id}/retry, which retries only the failed/canceled jobs of a run instead of rerunning everything. --job <id> (repeatable) selects jobs explicitly; --failed mirrors gh run rerun --failed by collecting FAILED/CANCELED jobs from the jobs list endpoint. The command always lists jobs first to validate job ownership, because the server silently accepts foreign job ids and leaves the run in a broken state. Closes #571 | 1 个月前 |