Repository navigation
fix: work-on-task-assistant states findings, not conclusions - #299
Merged
Merged
Conversation
bborbe
marked this pull request as ready for review
October 17, 2026 10:18
There was a problem hiding this comment.
PR Review: fix: work-on-task-assistant states findings, not conclusions
Must Fix (Critical)
None.
Should Fix (Important)
None.
Nice to Have (Optional)
None.
Selector Mode Traceability
- Candidates:
0rules matched by Step 4b-i glob filter - Applicable:
0rules selected by Step 4c-sel - Mechanicals:
0findings (ast-grep run overCHANGELOG.md,agents/work-on-task-assistant.md) - Result:
selector clean — no adjudication needed
Notes:
- Changed files are
CHANGELOG.md(+4) andagents/work-on-task-assistant.md(+4) — both markdown, no Go source. - The two additions to the agent prompt are correct and sufficient:
- Block list closure (line 431): "The block list below is closed. Render the bracketed blocks that apply and nothing else — never invent a section."
- Findings not conclusions (line 433): "State what a command printed; never what it means." with explicit prohibition on characterizing unsampled logs and required
(inference — unverified)markup for any inference stated.
- Both rules directly address the documented failure mode (unsanctioned
🔬 Independent read-only corroborationblock asserting facts opposite to what the log showed). CHANGELOG.mdentry is thorough and accurately describes the bug and its fix.- No unsanctioned corroboration block or inference-marking violations exist in the changed code.
{
"verdict": "approve",
"summary": "PR adds two rules to the work-on-task-assistant agent prompt: a closed block list declaration and a findings-not-conclusions directive that directly address the reported failure. Changes are minimal, targeted, and correct. No mechanical findings, no applicable judgment rules.",
"comments": [],
"concerns_addressed": [
{
"concern": "correctness: agent states conclusions rather than findings — unsanctioned corroboration block asserts router log held 'exactly one request' when it held 16, and that absence of worker lines meant request did not arrive (opposite of truth)",
"disposition": "addressed",
"detail": "agents/work-on-task-assistant.md:431 adds closed block list declaration; :433 adds findings-not-conclusions rule requiring evidence to be stated as findings only, with (inference — unverified) markup for any characterization"
},
{
"concern": "correctness: agent may invent report sections not sanctioned by the prompt",
"disposition": "addressed",
"detail": "agents/work-on-task-assistant.md:431 declares the block list closed: 'never invent a section'"
}
]
}
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Problem
vault-cli:work-on-task-assistantis dispatched to find a task and its guides, but it also runs its own corroboration analysis and states conclusions from evidence it merely grepped. On 2026-10-17 it added an unsanctioned🔬 Independent read-only corroborationblock asserting:[req]lines (five PIDs across four builds)The second is the opposite of the truth for that router: it logs non-200s unconditionally but sampler-gates successful requests to at most one per 10 s, so absence is the signature of success. Taken at face value, the finding would have inverted the diagnosis the owning session was producing — and the session had to re-derive both claims before it could proceed.
Change
Two rules added immediately above
<output_format>inagents/work-on-task-assistant.md:(inference — unverified). A log the agent did not write may be sampled, truncated, or shared by concurrent writers, and its silence rarely means absence.The dated precedent is recorded inline, matching the file's existing convention.
Notes
CLAUDE.md§ Choosing a Flow, on a feature worktree as that section requires.make precommitpasses (exit 0).autoRelease: true, so the change adds an## Unreleasedbullet and the releaser owns the cut.