@rasensio/aidlc-content 1.26.2 → 1.27.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 +40 -0
- package/skills/10-ideation.md +11 -0
- package/skills/20-requirements.md +14 -0
- package/skills/30-design.md +14 -0
- package/skills/40-implementation.md +14 -0
- package/skills/50-testing.md +14 -0
- package/skills/60-deployment.md +20 -0
- package/skills/70-maintenance.md +14 -0
- package/skills/81-continue.md +7 -2
package/package.json
CHANGED
package/skills/00-overview.md
CHANGED
|
@@ -220,3 +220,43 @@ Never store credentials, tokens, or secrets in state files or artifacts.
|
|
|
220
220
|
- Read compact state files, not full artifacts, to determine progress
|
|
221
221
|
- Use artifact summaries (`<artifact>.summary.md`) when available
|
|
222
222
|
- Load only the skill for the current phase, not all skills at once
|
|
223
|
+
|
|
224
|
+
### The context rule
|
|
225
|
+
|
|
226
|
+
This is the canonical statement of the rule. Every phase skill points here instead of
|
|
227
|
+
restating it, so there is no second copy to drift — and so the rule does not itself
|
|
228
|
+
become resident bytes in seven places.
|
|
229
|
+
|
|
230
|
+
**A phase boundary is where you start a fresh session.** Not a suggestion about tidiness:
|
|
231
|
+
91% of what a lifecycle run costs is re-reading the conversation it is already carrying,
|
|
232
|
+
and that carry only grows. Measured across 20,920 attributed records, average context per
|
|
233
|
+
unit of work runs 80k tokens in ideation, 164k in requirements, 259k in implementation,
|
|
234
|
+
395k in deployment and 791k in maintenance. Deployment is the most expensive phase in the
|
|
235
|
+
lifecycle — more than implementation — not because it does more, but because it runs last
|
|
236
|
+
and inherits everything before it. The one phase that reliably starts fresh does
|
|
237
|
+
comparable work at 76k.
|
|
238
|
+
|
|
239
|
+
Three things follow:
|
|
240
|
+
|
|
241
|
+
1. **Cross a phase boundary in a new session** whenever the platform allows it. The
|
|
242
|
+
lifecycle is designed for this: state lives in files, not in the conversation.
|
|
243
|
+
2. **Re-read only what the phase you are entering names.** Each phase skill lists exactly
|
|
244
|
+
that under *Entering in a fresh session*. The list is the whole list — an artifact not
|
|
245
|
+
on it is not needed to start, and reading it "for context" is the charge this rule
|
|
246
|
+
exists to avoid.
|
|
247
|
+
3. **Check the budget when you are unsure**: `aidlc cost context` reports the context this
|
|
248
|
+
session is carrying against a budget (default 150,000 tokens, configurable as
|
|
249
|
+
`cost.context_budget_tokens`). It reads the transcript, so it answers before any cost
|
|
250
|
+
capture has run.
|
|
251
|
+
|
|
252
|
+
**The budget never fails a gate and never blocks a transition.** Its whole force is that
|
|
253
|
+
somebody read it out at the right moment — the same force the constitution has, and for
|
|
254
|
+
the same reason. Going over budget is information, not a violation: a long
|
|
255
|
+
implementation phase may legitimately exceed it. What is not legitimate is carrying
|
|
256
|
+
requirements' conversation into deployment because nobody stopped to notice.
|
|
257
|
+
|
|
258
|
+
A caveat worth stating, because it decides whether the rule is worth following: a fresh
|
|
259
|
+
session re-reads some of what it would otherwise still hold, and that spends back part of
|
|
260
|
+
the saving. Every phase list below is bounded for exactly that reason. If re-reading turns
|
|
261
|
+
out to cost more than a third of the saving, the threshold should move — measure it rather
|
|
262
|
+
than assuming either way.
|
package/skills/10-ideation.md
CHANGED
|
@@ -17,6 +17,17 @@ Explore the problem space before committing to a solution. Define what we are bu
|
|
|
17
17
|
- A lifecycle instance has been created with a Full scope
|
|
18
18
|
- The instance is claimed by this session
|
|
19
19
|
|
|
20
|
+
### Entering in a fresh session
|
|
21
|
+
|
|
22
|
+
Ideation is the cheapest phase to enter because it inherits nothing. Read only:
|
|
23
|
+
|
|
24
|
+
- `instance.yaml` — template, scope, current phase
|
|
25
|
+
- the roadmap item this instance was promoted from, if any
|
|
26
|
+
- `.aidlc/context/constitution.md`, when it exists
|
|
27
|
+
|
|
28
|
+
Nothing else. There is no prior artifact to re-read; that is the whole advantage of
|
|
29
|
+
starting here. See **The context rule** in **aidlc-overview** for why this list is a list.
|
|
30
|
+
|
|
20
31
|
## Required Artifacts
|
|
21
32
|
|
|
22
33
|
The artifacts your template's ideation phase declares in `required_artifacts` — `idea.md` for the
|
|
@@ -17,6 +17,20 @@ Translate the ideation output (or the user's direct request) into precise, testa
|
|
|
17
17
|
- Ideation phase complete (Full scope) OR instance created with Standard scope
|
|
18
18
|
- The instance is claimed by this session
|
|
19
19
|
|
|
20
|
+
### Entering in a fresh session
|
|
21
|
+
|
|
22
|
+
Read only:
|
|
23
|
+
|
|
24
|
+
- `instance.yaml`
|
|
25
|
+
- the ideation artifact (`idea.md`, or `research-question.md` for `spike`) — Full scope only
|
|
26
|
+
- the roadmap item this instance was promoted from — Standard scope, where it replaces the
|
|
27
|
+
ideation artifact as input
|
|
28
|
+
- the guidance layers named in `.aidlc/guidance/index.yaml`
|
|
29
|
+
- `.aidlc/context/constitution.md`, when it exists
|
|
30
|
+
|
|
31
|
+
Not the ideation *conversation* — the artifact is what it was written for.
|
|
32
|
+
See **The context rule** in **aidlc-overview**.
|
|
33
|
+
|
|
20
34
|
## Required Artifacts
|
|
21
35
|
|
|
22
36
|
- `requirements.md` — User stories, acceptance criteria, scope boundaries, non-functional requirements
|
package/skills/30-design.md
CHANGED
|
@@ -17,6 +17,20 @@ Produce a technical design that satisfies the requirements. Define architecture,
|
|
|
17
17
|
- Requirements phase complete
|
|
18
18
|
- The instance is claimed by this session
|
|
19
19
|
|
|
20
|
+
### Entering in a fresh session
|
|
21
|
+
|
|
22
|
+
Read only:
|
|
23
|
+
|
|
24
|
+
- `instance.yaml`
|
|
25
|
+
- `requirements.md` — in full; the acceptance criteria are what the design is traced against
|
|
26
|
+
- the guidance layers named in `.aidlc/guidance/index.yaml`
|
|
27
|
+
- `.aidlc/context/architecture.md` and `style-guide.md`
|
|
28
|
+
- `.aidlc/context/constitution.md`, when it exists
|
|
29
|
+
|
|
30
|
+
The seams the requirements touch are then read from the *source*, as step 3 of the
|
|
31
|
+
instructions says — a handful of files, not a survey, and not the previous phase's
|
|
32
|
+
transcript. See **The context rule** in **aidlc-overview**.
|
|
33
|
+
|
|
20
34
|
## Required Artifacts
|
|
21
35
|
|
|
22
36
|
- `design.md` — Architecture overview, component design, interfaces, data flow, and design decisions with rationale
|
|
@@ -17,6 +17,20 @@ Produce working code that satisfies the design and requirements. Follow project
|
|
|
17
17
|
- Design phase complete (Full/Standard scope) OR instance created with Micro scope (task description + criteria exist)
|
|
18
18
|
- The instance is claimed by this session
|
|
19
19
|
|
|
20
|
+
### Entering in a fresh session
|
|
21
|
+
|
|
22
|
+
Read only:
|
|
23
|
+
|
|
24
|
+
- `instance.yaml`
|
|
25
|
+
- `tasks.md` — the next unchecked task is where work resumes
|
|
26
|
+
- `design.md` — the sections the next task cites, not the whole document once tasks are
|
|
27
|
+
under way
|
|
28
|
+
- `requirements.md` — the acceptance criteria the next task claims
|
|
29
|
+
- the guidance layers named in `.aidlc/guidance/index.yaml`
|
|
30
|
+
- `.aidlc/context/style-guide.md`
|
|
31
|
+
|
|
32
|
+
Then the source files that task touches. See **The context rule** in **aidlc-overview**.
|
|
33
|
+
|
|
20
34
|
## Required Artifacts
|
|
21
35
|
|
|
22
36
|
- Source code changes implementing the feature or fix
|
package/skills/50-testing.md
CHANGED
|
@@ -15,6 +15,20 @@ Verify that the implementation satisfies all acceptance criteria. Produce eviden
|
|
|
15
15
|
- Implementation phase complete
|
|
16
16
|
- The instance is claimed by this session
|
|
17
17
|
|
|
18
|
+
### Entering in a fresh session
|
|
19
|
+
|
|
20
|
+
Testing averages 344k tokens today, more than twice implementation's start, almost entirely
|
|
21
|
+
inherited. Read only:
|
|
22
|
+
|
|
23
|
+
- `instance.yaml`
|
|
24
|
+
- `requirements.md` — the acceptance criteria, which are what tests are traced to
|
|
25
|
+
- `code-complete.md` — what implementation says it delivered
|
|
26
|
+
- `tasks.md` — which tasks claim which criteria
|
|
27
|
+
|
|
28
|
+
Not `design.md`: the design's job ended when the code existed, and the test verifies the
|
|
29
|
+
code against the *requirements*. Not the implementation conversation.
|
|
30
|
+
See **The context rule** in **aidlc-overview**.
|
|
31
|
+
|
|
18
32
|
## Required Artifacts
|
|
19
33
|
|
|
20
34
|
- Test files covering acceptance criteria
|
package/skills/60-deployment.md
CHANGED
|
@@ -19,6 +19,26 @@ Prepare and execute the release. Ensure all preceding phases are complete, all g
|
|
|
19
19
|
security review phase)
|
|
20
20
|
- The instance is claimed by this session
|
|
21
21
|
|
|
22
|
+
### Entering in a fresh session
|
|
23
|
+
|
|
24
|
+
**Start deployment in a fresh session.** This phase has the most to gain from it of any in
|
|
25
|
+
the lifecycle: it averages 395k tokens per unit of work and is the single most expensive
|
|
26
|
+
phase — ahead of implementation — not because it does more, but because it runs last and
|
|
27
|
+
inherits every phase before it.
|
|
28
|
+
|
|
29
|
+
Read only:
|
|
30
|
+
|
|
31
|
+
- `instance.yaml` and the `phase-*.yaml` files — what is complete, and what this phase must
|
|
32
|
+
assert
|
|
33
|
+
- `test-results.md` — the pass/fail record the release depends on
|
|
34
|
+
- the review findings file — the security sign-off named in the entry criteria above
|
|
35
|
+
- `tasks.md` — deferred tasks belong in the deployment record
|
|
36
|
+
|
|
37
|
+
Not `requirements.md`, not `design.md`, not `code-complete.md`. The release is prepared from
|
|
38
|
+
what the *preceding phases concluded*, and each of those conclusions is already a compact
|
|
39
|
+
artifact. Read one of them only if a specific question sends you there.
|
|
40
|
+
See **The context rule** in **aidlc-overview**.
|
|
41
|
+
|
|
22
42
|
## Required Artifacts
|
|
23
43
|
|
|
24
44
|
The artifacts your template's deployment phase declares in `required_artifacts` —
|
package/skills/70-maintenance.md
CHANGED
|
@@ -17,6 +17,20 @@ Ensure the deployed feature remains healthy. Update documentation, address feedb
|
|
|
17
17
|
- Deployment phase complete
|
|
18
18
|
- The instance is claimed by this session
|
|
19
19
|
|
|
20
|
+
### Entering in a fresh session
|
|
21
|
+
|
|
22
|
+
**Always start maintenance in a fresh session.** At 791k tokens per unit of work it is by a
|
|
23
|
+
wide margin the most expensive phase to run, and it is open-ended — so a carried prefix here
|
|
24
|
+
is not paid once but on every turn for as long as the instance stays open.
|
|
25
|
+
|
|
26
|
+
Read only:
|
|
27
|
+
|
|
28
|
+
- `instance.yaml`
|
|
29
|
+
- `deployment-record.md` — what shipped, and what was deferred
|
|
30
|
+
- whatever the specific maintenance question sends you to
|
|
31
|
+
|
|
32
|
+
Nothing from before deployment by default. See **The context rule** in **aidlc-overview**.
|
|
33
|
+
|
|
20
34
|
## Required Artifacts
|
|
21
35
|
|
|
22
36
|
The artifacts your template's maintenance phase declares in `required_artifacts` —
|
package/skills/81-continue.md
CHANGED
|
@@ -35,10 +35,15 @@ Resume an in-progress lifecycle instance efficiently. Determine where work left
|
|
|
35
35
|
- If the transition is the instance's **completion moment** (last applicable phase for the template × scope reaches complete; for maintenance-terminal instances, maintenance *entry*) → run the **aidlc-retrospective** skill before any cleanup, then fire `on-instance-complete`
|
|
36
36
|
- If all phases complete → report instance complete; if no `retrospective.md` exists, offer the retro
|
|
37
37
|
5. **Load minimal context.** Read only:
|
|
38
|
-
- The skill for the determined phase
|
|
38
|
+
- The skill for the determined phase, and specifically its *Entering in a fresh session* list
|
|
39
39
|
- Artifact summaries (`.summary.md`) instead of full artifacts where available
|
|
40
40
|
- Compact state files, not full transition history
|
|
41
|
-
6. **
|
|
41
|
+
6. **Say where context stands when a phase boundary was just crossed.** If step 4 moved the
|
|
42
|
+
instance to a new phase, run `aidlc cost context` and report the line it prints. Crossing a
|
|
43
|
+
boundary is the one moment a fresh session is free, and the reading is what makes that
|
|
44
|
+
visible instead of leaving it to be noticed on the bill. Over budget is information, never a
|
|
45
|
+
blocker — see **The context rule** in **aidlc-overview**.
|
|
46
|
+
7. **Execute.** Follow the phase skill for the determined step.
|
|
42
47
|
|
|
43
48
|
## Multiple Instances
|
|
44
49
|
|