update_adr_status
Update an ADR's status with validation: verifies target ADR exists for supersedes, requires explanations for unusual transitions or missing Decision details, and cleans up review sections upon acceptance.
Instructions
Transition one ADR's Status, with lifecycle guardrails: rejects unknown statuses; requires the target ADR to already exist for 'Superseded by ADR-XXXXX'; requires an 'explanation' for unusual (non-adjacent-forward) transitions; requires a populated Decision section (or an 'explanation' to fold into it) before moving to 'Accepted'; and removes the 'ADR Review Discussion' section once 'Accepted' is reached.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| new_status | Yes | One of: Proposed, Under Review, Accepted, Implemented, Deprecated, or 'Superseded by ADR-XXXXX'. | |
| explanation | No | Required for unusual transitions and for reaching 'Accepted' with an unpopulated Decision section. Also appended as a timestamped entry to 'ADR Review Discussion' when the ADR is currently Proposed/Under Review. | |
| auto_reindex | No | When true, automatically re-run `index_project_context` after the write and include its result. When false (default), the response includes a manual-reindex reminder. | |
| project_path | Yes | Absolute filesystem path, a short 'owner/repo' identifier, or a full https:// repository URL. | |
| number_or_filename | Yes | The ADR's number (e.g. 12), short form (e.g. 'ADR-00012', case-insensitive), or exact filename/path (e.g. 'ADR-00012-topic.md'). |