@rasensio/aidlc-content 1.19.0 → 1.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/skills/00-overview.md +20 -0
- package/skills/20-requirements.md +39 -0
- package/skills/30-design.md +7 -0
- package/skills/40-implementation.md +7 -0
- package/skills/50-testing.md +7 -0
package/package.json
CHANGED
package/skills/00-overview.md
CHANGED
|
@@ -167,6 +167,26 @@ When a phase needs substantial input from the user — open decisions, structure
|
|
|
167
167
|
|
|
168
168
|
When the user shares an idea tangential to the current work, offer to record it in `.aidlc/roadmap/inbox/` (see **aidlc-roadmap**) and continue the current phase — do not derail into ideation. Capture touches no instance state, so it is safe at any point in any phase.
|
|
169
169
|
|
|
170
|
+
## Amendments — changing a completed phase's artifact
|
|
171
|
+
|
|
172
|
+
A completed phase's artifact is changed **only through an amendment**, never edited in
|
|
173
|
+
place. The gates check that artifacts exist, not that they still agree with each other, so a
|
|
174
|
+
direct edit leaves the phase `complete`, the downstream artifacts describing the old
|
|
175
|
+
requirement, and every gate passing. That silent disagreement is the failure mode
|
|
176
|
+
amendments exist to prevent.
|
|
177
|
+
|
|
178
|
+
The protocol: retire the criterion in place (`- AC-<n> (retired YYYY-MM-DD, superseded by
|
|
179
|
+
AC-<m>): ...`), issue its replacement with a fresh ID, append an
|
|
180
|
+
`## Amendment <n> — YYYY-MM-DD` section carrying `Retires:` / `Issues:` / `Reopens:` /
|
|
181
|
+
`Reason:` bullets, then run `aidlc amend <instance>`. Start with `aidlc amend <instance>
|
|
182
|
+
--impact`, which is read-only and lists every task, test and artifact still citing the
|
|
183
|
+
retired criteria. See **aidlc-requirements** for the grammar.
|
|
184
|
+
|
|
185
|
+
Reopening a phase sets it and every phase between it and the current one back to
|
|
186
|
+
`in-progress`, which re-arms the gates that already exist — no new gate is involved — and
|
|
187
|
+
appends a `type: reopen` record so churn is legible in history. Amendments apply in order,
|
|
188
|
+
a second run is a stated no-op, and a completed instance is refused: its change is new work.
|
|
189
|
+
|
|
170
190
|
## Instance Completion and Retrospective
|
|
171
191
|
|
|
172
192
|
An instance's **completion moment** is when the last applicable phase (template × scope) reaches `complete` — except when that phase is maintenance: maintenance is open-ended, so maintenance-terminal instances complete on maintenance **entry**. At the completion moment, run the **aidlc-retrospective** skill *before* any cleanup (worktree removal, claim release) and fire `on-instance-complete`. If a retro cannot run (declined, absent), completion proceeds anyway — the retro never blocks. Pending retros are tracked as markers in `<git-common-dir>/aidlc/retro-pending/`; the entry-point and continue skills pick them up.
|
|
@@ -70,3 +70,42 @@ If requirements reference sensitive data handling, authentication flows, or acce
|
|
|
70
70
|
## Completion
|
|
71
71
|
|
|
72
72
|
When exit criteria are met, update `phase-requirements.yaml` status to `complete` and append a transition record to `transitions.log`.
|
|
73
|
+
|
|
74
|
+
## Amending a Completed Phase
|
|
75
|
+
|
|
76
|
+
A completed phase's artifact is changed **only through an amendment**. Editing
|
|
77
|
+
`requirements.md` after its phase closed leaves `phase-requirements.yaml` saying
|
|
78
|
+
`complete`, leaves the design and the code describing the old criterion, and leaves every
|
|
79
|
+
gate passing — because gates check that artifacts exist, not that they still agree with
|
|
80
|
+
each other. That is silent drift, and it is the most common real-world mess in any
|
|
81
|
+
lifecycle.
|
|
82
|
+
|
|
83
|
+
To change a criterion after its phase closed:
|
|
84
|
+
|
|
85
|
+
1. Edit the definition bullet in place into the retired form — `- AC-<n> (retired
|
|
86
|
+
YYYY-MM-DD, superseded by AC-<m>): <one-line summary of what it said>` — and add the
|
|
87
|
+
replacement as a new criterion with a fresh ID. IDs are never renumbered or reused.
|
|
88
|
+
2. Append an amendment section to `requirements.md`:
|
|
89
|
+
|
|
90
|
+
```markdown
|
|
91
|
+
## Amendment 1 — 2026-09-07, after the design review
|
|
92
|
+
- **Retires:** AC-4, AC-9
|
|
93
|
+
- **Issues:** AC-31
|
|
94
|
+
- **Reopens:** design
|
|
95
|
+
- **Reason:** the customer integration needs JSON as well as CSV
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Field bullets accept `Retires:`, `**Retires**:` and `**Retires:**` alike. AC lists take
|
|
99
|
+
whole `AC-<n>` tokens only — `AC-4..AC-6` is not a range and contributes nothing. A
|
|
100
|
+
wrapped bullet is still one bullet.
|
|
101
|
+
3. Run `aidlc amend <instance> --impact` to see which tasks, tests and artifacts still cite
|
|
102
|
+
the retired criteria. The walk is advisory: it suggests phases, it does not choose them.
|
|
103
|
+
4. Put the phases you actually want reopened in `Reopens:`, then run
|
|
104
|
+
`aidlc amend <instance>`. It reopens that phase and every phase between it and the
|
|
105
|
+
current one, re-arming their gates, and records a `type: reopen` entry in
|
|
106
|
+
`transitions.log` so the churn is visible in history rather than reading as a normal
|
|
107
|
+
forward pass. From testing onwards it requires `--confirm`.
|
|
108
|
+
|
|
109
|
+
Amendments append; the definition bullet's status changes. Never rewrite an amendment that
|
|
110
|
+
has already been applied — write the next one.
|
|
111
|
+
|
package/skills/30-design.md
CHANGED
|
@@ -74,3 +74,10 @@ You MUST flag these explicitly in the design document and note that implementati
|
|
|
74
74
|
## Completion
|
|
75
75
|
|
|
76
76
|
When exit criteria are met, update `phase-design.yaml` status to `complete` and append a transition record to `transitions.log`.
|
|
77
|
+
|
|
78
|
+
**Changing a completed phase's artifact.** Do it only through an amendment — append an
|
|
79
|
+
`## Amendment <n> — YYYY-MM-DD` section to `requirements.md` with `Retires:`, `Issues:`,
|
|
80
|
+
`Reopens:` and `Reason:` bullets, then run `aidlc amend <instance>` (start with `--impact`
|
|
81
|
+
to see what still cites the retired criteria). Editing the artifact directly leaves every
|
|
82
|
+
gate passing while the requirements and the code disagree.
|
|
83
|
+
|
|
@@ -67,3 +67,10 @@ Never store credentials, API keys, tokens, or passwords in source code or state
|
|
|
67
67
|
## Completion
|
|
68
68
|
|
|
69
69
|
When exit criteria are met, update `phase-implementation.yaml` status to `complete` and append a transition record to `transitions.log`.
|
|
70
|
+
|
|
71
|
+
**Changing a completed phase's artifact.** Do it only through an amendment — append an
|
|
72
|
+
`## Amendment <n> — YYYY-MM-DD` section to `requirements.md` with `Retires:`, `Issues:`,
|
|
73
|
+
`Reopens:` and `Reason:` bullets, then run `aidlc amend <instance>` (start with `--impact`
|
|
74
|
+
to see what still cites the retired criteria). Editing the artifact directly leaves every
|
|
75
|
+
gate passing while the requirements and the code disagree.
|
|
76
|
+
|
package/skills/50-testing.md
CHANGED
|
@@ -85,3 +85,10 @@ You MUST describe the action, confirm it targets a safe environment, and wait fo
|
|
|
85
85
|
## Completion
|
|
86
86
|
|
|
87
87
|
When exit criteria are met, update `phase-testing.yaml` status to `complete` and append a transition record to `transitions.log`.
|
|
88
|
+
|
|
89
|
+
**Changing a completed phase's artifact.** Do it only through an amendment — append an
|
|
90
|
+
`## Amendment <n> — YYYY-MM-DD` section to `requirements.md` with `Retires:`, `Issues:`,
|
|
91
|
+
`Reopens:` and `Reason:` bullets, then run `aidlc amend <instance>` (start with `--impact`
|
|
92
|
+
to see what still cites the retired criteria). Editing the artifact directly leaves every
|
|
93
|
+
gate passing while the requirements and the code disagree.
|
|
94
|
+
|