# Controller issue-acceptance prompt

Use after a PR merges when auditing whether the linked issue is truly complete.

```text
Audit issue #<N> against its acceptance criteria after merged PR #<PR>.
Post a Controller Issue Acceptance comment with checked criteria, validation
reviewed, controller decision, next actor, and paste-ready next prompt.
Do not mark the issue accepted unless every required criterion is satisfied.
```

## Comment template

```text
## Controller Issue Acceptance

STATE:
<accepted | more-work-required | needs-tests | needs-docs | needs-feature-enhancement | needs-follow-up-issue | blocked>

WHO_IS_NEXT:
<author | reviewer | merger | reconciler | controller | user>

NEXT_ACTION:
<one sentence>

NEXT_PROMPT:
<paste-ready prompt for the next LLM>

ISSUE:
#...

MERGED_PR:
#...

MERGE_COMMIT:
<40-character SHA>

ACCEPTANCE_CRITERIA_CHECKED:
- [x] ...
- [ ] ...

VALIDATION_REVIEWED:
<tests/proofs reviewed>

CONTROLLER_DECISION:
<accepted or rejected>

WHY:
<reasoning>

MISSING_WORK:
<none, or exact missing work>

FOLLOW_UP_ISSUES:
<none, or issue list to create>

BLOCKERS:
<none, or exact blockers>

LAST_UPDATED_BY:
<identity/profile/date>
```

## Rejection paths

When rejecting completion, `STATE` must name the gap (`needs-tests`,
`needs-docs`, `more-work-required`, etc.), `MISSING_WORK` must be explicit,
and `NEXT_PROMPT` must be ready for the next author session.