Skip to content

How-to

Change a requirement after its phase is finished

Record a change to finished requirements as an amendment, so the gates, the tasks and the code stay in step.

What you'll do

Add an amendment to requirements.md that says which criteria are retired, which are new, and which phase to reopen. Then run aidlc amend. Editing the finished file directly leaves every gate passing while the requirements and the code disagree.

Steps

  1. Open .aidlc/state/<instance>/requirements.md. Change each criterion you are dropping into its retired form, in place — never delete it or reuse its number:

    - AC-4 (retired 2026-09-07, superseded by AC-31): export as CSV only
    

    Add each new criterion with the next free number, for example AC-31. Then add an amendment section at the end of the file:

    ## Amendment 1 — 2026-09-07
    - **Retires:** AC-4
    - **Issues:** AC-31
    - **Reopens:** design
    - **Reason:** the customer needs JSON as well as CSV
    

    List each criterion by its full name. AC-4..AC-6 is not read as a range.

  2. See what still depends on the criteria you are retiring. This writes nothing:

    aidlc amend <instance> --impact
    

    It prints a line starting Reopens: that names the earliest phase the change must reopen, or none. If your Reopens: is later than that, move it earlier.

  3. Apply the amendment:

    aidlc amend <instance>
    

    If the work is already in testing or later, add --confirm. Reopening that far is costly, and the flag makes you say so.

  4. Ask your assistant to continue. It resumes in the reopened phase.

The full rules for amendments are on the requirements phase page.

Check it worked

Run aidlc status. The instance's phase should now be the one you named in Reopens:.