You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(diagnose): name the runnable next command with the run id - #899
agentdescent diagnose ended solved / cancelled / running / partial-improvement with prose ("review and apply the artifact", "resume the run if the answer is still wanted", …) and no run id, so after agentdescent demo → diagnose latest the user still had to dig out the id. Those recommendations now name the command with the id show_payload resolved (also when asked as latest), matching what run-failed already does (#635):
solved: agentdescent show <id>, then agentdescent apply <id> --dry-run (then without --dry-run)
cancelled: agentdescent resume <id>
running: agentdescent watch <id>, then agentdescent diagnose <id>
partial-improvement: agentdescent show <id> --json
Verdicts, evidence and the JSON shape are unchanged; only recommendation strings change. Docs table in docs/diagnose.md updated; changelog fragment changelog.d/898-diagnose-next-commands.md.
Tests: new parametrized test_next_steps_name_the_resolved_run_id; every test file mentioning diagnose passes locally. Smoke: agentdescent demo → cancel latest → diagnose latest prints next: resume it if the answer is still wanted: `agentdescent resume 20261109-060724-ddeb55` .
Tests: new test_next_steps_name_the_resolved_run_id (4 verdicts, asserts the concrete commands and no literal latest); all test files that mention diagnose pass locally; no other test pinned the old strings.
Docs table and changelog fragment updated; CHANGELOG.md untouched.
Verdict: PASS
Tip SHA: 4be2125
Ran: tests/test_diagnose.py plus every test file mentioning diagnose on the tip (all passed, 1 skip); risk_gate.py --pr 899 → T2 (51 lines / 4 files).
Not run: full suite (CI 3.9–3.13 covers it).
Correctness.diagnose_payload already rebinds run_id to payload["run_id"] from show_payload (#896) before any branch, so the new recommendations carry the resolved id even when asked as latest/last; the new test asserts latest never leaks. Commands match the CLI surface (show, show --json, apply --dry-run, resume, watch, diagnose), consistent with the apply {id} --dry-run hints already in cli.py and with run-failed (#635).
Design fit. Only recommendation strings change; verdict ordering, evidence and JSON shape are untouched, so hosts parsing verdict/evidence are unaffected. The follow-up commit dropping f-prefixes on literal-only parts is a clean lint fix.
Tests/docs. Parametrized test covers all four changed verdicts; docs/diagnose.md table and notes plus a changelog fragment are updated.
Nit (non-blocking): seed-already-solved, gate-rejected and no-improvement still give prose-only next steps; could get the same treatment later where a single command applies.
github-actionsBot
added
the
risk:T2
Risk tier T2 (package code or an unnamed path), set by the controller from the diff
label
Nov 8, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
risk:T2Risk tier T2 (package code or an unnamed path), set by the controller from the diff
1 participant
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #898
agentdescent diagnoseendedsolved/cancelled/running/partial-improvementwith prose ("review and apply the artifact", "resume the run if the answer is still wanted", …) and no run id, so afteragentdescent demo→diagnose latestthe user still had to dig out the id. Those recommendations now name the command with the idshow_payloadresolved (also when asked aslatest), matching whatrun-failedalready does (#635):agentdescent show <id>, thenagentdescent apply <id> --dry-run(then without--dry-run)agentdescent resume <id>agentdescent watch <id>, thenagentdescent diagnose <id>agentdescent show <id> --jsonVerdicts, evidence and the JSON shape are unchanged; only recommendation strings change. Docs table in
docs/diagnose.mdupdated; changelog fragmentchangelog.d/898-diagnose-next-commands.md.Tests: new parametrized
test_next_steps_name_the_resolved_run_id; every test file mentioning diagnose passes locally. Smoke:agentdescent demo→cancel latest→diagnose latestprintsnext: resume it if the answer is still wanted: `agentdescent resume 20261109-060724-ddeb55`.