Skip to content

🐛 Verify assignee in plan post-update verification (closes #106)#107

Merged
monkut merged 1 commit into
mainfrom
feature/106-plan-verify-assignee
May 8, 2026
Merged

🐛 Verify assignee in plan post-update verification (closes #106)#107
monkut merged 1 commit into
mainfrom
feature/106-plan-verify-assignee

Conversation

@monkut

@monkut monkut commented May 8, 2026

Copy link
Copy Markdown
Owner

Summary

Closes the contract gap between askcc plan and askcc develop for the assignee check, mirroring the AC/Dependencies fix from #96.

Why

PLAN_AGENT_PROMPT's Post-Update Verification block at askcc/definitions.py:170-173 re-read the body and confirmed ## Acceptance Criteria + ## Dependencies were present, but did not verify the assignee. The plan prompt instructs gh issue edit <url> --add-assignee "@me" (definitions.py:164); a missed assignee step produced a silent failure mode where develop's validate_issue_readiness (functions.py:362-371) rejected the issue.

This is the same class of contract gap as #96, just for the assignee rather than the body headings.

Changes

askcc/definitions.pyPLAN_AGENT_PROMPT Post-Update Verification block:

  • Switched the verification fetch from gh issue view --json body -q .body to gh issue view --json body,assignees (single call, both fields).
  • Added "(c) at least one assignee is set" to the verification checks.
  • Updated the loop wording from "Re-edit and re-verify until both pass" to "Re-edit / re-assign and re-verify until all three pass" to make the re-assignment path explicit.

pyproject.toml / uv.lock — version bump 0.2.12 → 0.2.13.

Verification

  • uv run poe check (ruff) — clean
  • uv run poe typecheck (pyright) — 0 errors
  • uv run pytest — 256 passed

Test plan

  • Re-run askcc plan against a fresh, unassigned issue with no ## Acceptance Criteria / ## Dependencies sections; confirm the resulting body passes validate_issue_readiness AND the issue has an assignee.
  • Re-run askcc plan against an issue that is already assigned and already has the required headings; confirm the verification loop is a no-op.
  • Run askcc develop against the issue produced by the first test; confirm pre-flight passes 4/4 checks.

Closes the contract gap between `askcc plan` and `askcc develop` for the
assignee check, mirroring the AC/Dependencies fix from #96. The plan
prompt instructs `gh issue edit --add-assignee "@me"`, but the
post-update verification loop only checked AC + Dependencies headings,
so a missed assignee step produced a silent failure mode where develop's
validate_issue_readiness rejected the issue.

The verification block now fetches both `body` and `assignees` via a
single `gh issue view --json body,assignees` call and re-assigns /
re-edits until all three plan-controllable readiness checks pass.
@monkut monkut merged commit 4f3daba into main May 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant