its-magic 0.1.2-55 → 0.1.2
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/scripts/check_intake_template_parity.py +96 -0
- package/template/.cursor/commands/architecture.md +4 -0
- package/template/.cursor/commands/auto.md +110 -15
- package/template/.cursor/commands/discovery.md +4 -0
- package/template/.cursor/commands/execute.md +343 -291
- package/template/.cursor/commands/intake.md +4 -0
- package/template/.cursor/commands/map-codebase.md +4 -0
- package/template/.cursor/commands/memory-audit.md +4 -0
- package/template/.cursor/commands/milestone-complete.md +4 -0
- package/template/.cursor/commands/milestone-start.md +4 -0
- package/template/.cursor/commands/pause.md +4 -0
- package/template/.cursor/commands/phase-context.md +4 -0
- package/template/.cursor/commands/plan-verify.md +4 -0
- package/template/.cursor/commands/qa.md +226 -222
- package/template/.cursor/commands/quick.md +13 -0
- package/template/.cursor/commands/refresh-context.md +4 -0
- package/template/.cursor/commands/release.md +505 -487
- package/template/.cursor/commands/research.md +4 -0
- package/template/.cursor/commands/resume.md +4 -0
- package/template/.cursor/commands/security-review.md +4 -0
- package/template/.cursor/commands/sprint-plan.md +4 -0
- package/template/.cursor/commands/status-reconcile.md +4 -0
- package/template/.cursor/commands/verify-work.md +4 -0
- package/template/.cursor/dev-environment.json.example +22 -0
- package/template/.cursor/scratchpad.local.example.md +40 -3
- package/template/.cursor/scratchpad.md +324 -262
- package/template/.cursorignore +1 -0
- package/template/docs/engineering/auto-orchestration-reference.md +121 -14
- package/template/docs/engineering/context/installer-owned-paths.manifest +4 -1
- package/template/docs/engineering/runbook.md +207 -4
- package/template/scripts/check_intake_template_parity.py +96 -0
- package/template/scripts/dev_environment_lib.py +463 -0
- package/template/scripts/pack_json_validate.py +130 -0
- package/template/scripts/project_readme_coverage_lib.py +417 -0
- package/template/scripts/readme_feature_coverage_lib.py +2 -2
- package/template/scripts/validate_project_readme_coverage.py +151 -0
package/package.json
CHANGED
|
@@ -9,6 +9,10 @@ Scoped modes (DEC-0073 §10 / US-0090):
|
|
|
9
9
|
--scope=us-0092 DEC-0078 full-autonomy outer driver + probe surfaces.
|
|
10
10
|
--scope=us-0093 DEC-0079 browser UAT probe surfaces.
|
|
11
11
|
--scope=us-0095 DEC-0080 native in-chat auto-chain surfaces.
|
|
12
|
+
--scope=bug-0012 DEC-0081 native-chain compliance surfaces (BUG-0012).
|
|
13
|
+
--scope=us-0096 DEC-0082 delivery modes surfaces (US-0096).
|
|
14
|
+
--scope=project-readme DEC-0083 project README bootstrap surfaces (US-0097).
|
|
15
|
+
--scope=dev-environment DEC-0084 dev auto-launch profile surfaces (US-0098).
|
|
12
16
|
--scope=all union of all tables.
|
|
13
17
|
"""
|
|
14
18
|
|
|
@@ -114,6 +118,90 @@ US0095_PAIRS: tuple[tuple[str, str], ...] = (
|
|
|
114
118
|
),
|
|
115
119
|
)
|
|
116
120
|
|
|
121
|
+
BUG0012_PAIRS: tuple[tuple[str, str], ...] = (
|
|
122
|
+
(".cursor/commands/auto.md", "template/.cursor/commands/auto.md"),
|
|
123
|
+
(
|
|
124
|
+
"docs/engineering/auto-orchestration-reference.md",
|
|
125
|
+
"template/docs/engineering/auto-orchestration-reference.md",
|
|
126
|
+
),
|
|
127
|
+
("docs/engineering/runbook.md", "template/docs/engineering/runbook.md"),
|
|
128
|
+
(
|
|
129
|
+
"scripts/check_intake_template_parity.py",
|
|
130
|
+
"template/scripts/check_intake_template_parity.py",
|
|
131
|
+
),
|
|
132
|
+
)
|
|
133
|
+
|
|
134
|
+
US0096_PAIRS: tuple[tuple[str, str], ...] = (
|
|
135
|
+
(
|
|
136
|
+
".cursor/scratchpad.local.example.md",
|
|
137
|
+
"template/.cursor/scratchpad.local.example.md",
|
|
138
|
+
),
|
|
139
|
+
(".cursor/commands/auto.md", "template/.cursor/commands/auto.md"),
|
|
140
|
+
(
|
|
141
|
+
"docs/engineering/auto-orchestration-reference.md",
|
|
142
|
+
"template/docs/engineering/auto-orchestration-reference.md",
|
|
143
|
+
),
|
|
144
|
+
("docs/engineering/runbook.md", "template/docs/engineering/runbook.md"),
|
|
145
|
+
(".cursor/commands/quick.md", "template/.cursor/commands/quick.md"),
|
|
146
|
+
(
|
|
147
|
+
"scripts/check_intake_template_parity.py",
|
|
148
|
+
"template/scripts/check_intake_template_parity.py",
|
|
149
|
+
),
|
|
150
|
+
("scripts/pack_json_validate.py", "template/scripts/pack_json_validate.py"),
|
|
151
|
+
)
|
|
152
|
+
|
|
153
|
+
PROJECT_README_PAIRS: tuple[tuple[str, str], ...] = (
|
|
154
|
+
(
|
|
155
|
+
"scripts/validate_project_readme_coverage.py",
|
|
156
|
+
"template/scripts/validate_project_readme_coverage.py",
|
|
157
|
+
),
|
|
158
|
+
(
|
|
159
|
+
"scripts/project_readme_coverage_lib.py",
|
|
160
|
+
"template/scripts/project_readme_coverage_lib.py",
|
|
161
|
+
),
|
|
162
|
+
(".cursor/commands/execute.md", "template/.cursor/commands/execute.md"),
|
|
163
|
+
(".cursor/commands/release.md", "template/.cursor/commands/release.md"),
|
|
164
|
+
("docs/engineering/runbook.md", "template/docs/engineering/runbook.md"),
|
|
165
|
+
(
|
|
166
|
+
"docs/engineering/context/installer-owned-paths.manifest",
|
|
167
|
+
"template/docs/engineering/context/installer-owned-paths.manifest",
|
|
168
|
+
),
|
|
169
|
+
(
|
|
170
|
+
".cursor/scratchpad.local.example.md",
|
|
171
|
+
"template/.cursor/scratchpad.local.example.md",
|
|
172
|
+
),
|
|
173
|
+
(
|
|
174
|
+
"scripts/check_intake_template_parity.py",
|
|
175
|
+
"template/scripts/check_intake_template_parity.py",
|
|
176
|
+
),
|
|
177
|
+
)
|
|
178
|
+
|
|
179
|
+
DEV_ENVIRONMENT_PAIRS: tuple[tuple[str, str], ...] = (
|
|
180
|
+
(".cursor/commands/execute.md", "template/.cursor/commands/execute.md"),
|
|
181
|
+
(".cursor/scratchpad.md", "template/.cursor/scratchpad.md"),
|
|
182
|
+
(
|
|
183
|
+
".cursor/scratchpad.local.example.md",
|
|
184
|
+
"template/.cursor/scratchpad.local.example.md",
|
|
185
|
+
),
|
|
186
|
+
(
|
|
187
|
+
"template/.cursor/dev-environment.json.example",
|
|
188
|
+
"template/.cursor/dev-environment.json.example",
|
|
189
|
+
),
|
|
190
|
+
(
|
|
191
|
+
"scripts/dev_environment_lib.py",
|
|
192
|
+
"template/scripts/dev_environment_lib.py",
|
|
193
|
+
),
|
|
194
|
+
("docs/engineering/runbook.md", "template/docs/engineering/runbook.md"),
|
|
195
|
+
(
|
|
196
|
+
"docs/engineering/auto-orchestration-reference.md",
|
|
197
|
+
"template/docs/engineering/auto-orchestration-reference.md",
|
|
198
|
+
),
|
|
199
|
+
(
|
|
200
|
+
"scripts/check_intake_template_parity.py",
|
|
201
|
+
"template/scripts/check_intake_template_parity.py",
|
|
202
|
+
),
|
|
203
|
+
)
|
|
204
|
+
|
|
117
205
|
DOWNSTREAM_CI_GUARD_PAIRS: tuple[tuple[str, str], ...] = (
|
|
118
206
|
(
|
|
119
207
|
"scripts/check_downstream_ci_guard.py",
|
|
@@ -133,6 +221,10 @@ SCOPES: dict[str, tuple[tuple[str, str], ...]] = {
|
|
|
133
221
|
"us-0092": US0092_PAIRS,
|
|
134
222
|
"us-0093": US0093_PAIRS,
|
|
135
223
|
"us-0095": US0095_PAIRS,
|
|
224
|
+
"bug-0012": BUG0012_PAIRS,
|
|
225
|
+
"us-0096": US0096_PAIRS,
|
|
226
|
+
"project-readme": PROJECT_README_PAIRS,
|
|
227
|
+
"dev-environment": DEV_ENVIRONMENT_PAIRS,
|
|
136
228
|
"all": (
|
|
137
229
|
INTAKE_TEMPLATE_PAIRS
|
|
138
230
|
+ CAVEMAN_COMPRESS_PAIRS
|
|
@@ -141,6 +233,10 @@ SCOPES: dict[str, tuple[tuple[str, str], ...]] = {
|
|
|
141
233
|
+ US0092_PAIRS
|
|
142
234
|
+ US0093_PAIRS
|
|
143
235
|
+ US0095_PAIRS
|
|
236
|
+
+ BUG0012_PAIRS
|
|
237
|
+
+ US0096_PAIRS
|
|
238
|
+
+ PROJECT_README_PAIRS
|
|
239
|
+
+ DEV_ENVIRONMENT_PAIRS
|
|
144
240
|
),
|
|
145
241
|
}
|
|
146
242
|
|
|
@@ -13,6 +13,10 @@ description: "its-magic architecture: define approach, risks, and decisions."
|
|
|
13
13
|
subagent/chat.
|
|
14
14
|
|
|
15
15
|
## Inputs
|
|
16
|
+
|
|
17
|
+
- **Narrow-read (US-0053 / US-0096 Tranche A)**: Start at docs/engineering/phase-context.md
|
|
18
|
+
and the story section anchor in vision/architecture/decisions when a heading exists; forbid
|
|
19
|
+
full-file reads when a section heading exists.
|
|
16
20
|
- Product vision and acceptance
|
|
17
21
|
- Constraints and risks
|
|
18
22
|
- `docs/engineering/research.md`
|
|
@@ -38,6 +38,30 @@ description: "its-magic auto: deterministic continuation orchestrator."
|
|
|
38
38
|
(wrong writer / isolation break) and **`RUNTIME_PROOF_*`** / **`PHASE_ROLE_*`**
|
|
39
39
|
families—do not overload those codes for a missing-spawn violation.
|
|
40
40
|
|
|
41
|
+
## Orchestrator post-subagent continuation mandate (BUG-0012 / DEC-0081)
|
|
42
|
+
|
|
43
|
+
**Orchestrator context only** — phase-role commands still **stop** and hand off via
|
|
44
|
+
artifacts (**BUG-0006**). When **`/auto`** runs as orchestrator, **post-subagent continuation**
|
|
45
|
+
is **not** optional when the next phase, drain-advance target, or relaxable retry within
|
|
46
|
+
budget is schedulable.
|
|
47
|
+
|
|
48
|
+
After any foreground phase-role subagent returns, orchestrator **MUST Task-spawn** the next
|
|
49
|
+
phase-role subagent per **US-0069** preflight. Orchestrator **must not** treat phase-role
|
|
50
|
+
handoff as run terminal; **phase-role stop is not run terminal** for the orchestrator when
|
|
51
|
+
continuation is schedulable.
|
|
52
|
+
|
|
53
|
+
| Actor | After phase completes |
|
|
54
|
+
|-------|----------------------|
|
|
55
|
+
| Phase-role subagent (`po`, `tech-lead`, `dev`, `qa`, …) | **Stop** — hand off via artifacts only (**BUG-0006**) |
|
|
56
|
+
| **`/auto` orchestrator** | **Continue** — orchestrator **MUST Task-spawn** when schedulable (**DEC-0080** / **BUG-0012**) |
|
|
57
|
+
|
|
58
|
+
Orchestrator **must not** emit mandatory re-**`/auto`**, mandatory **`auto_outer_driver.py`**, or
|
|
59
|
+
**`segment exhausted`** terminal prose when continuation is schedulable.
|
|
60
|
+
|
|
61
|
+
**Required contract literals** (regression anchors): **`orchestrator MUST Task-spawn`**,
|
|
62
|
+
**`post-subagent continuation`**, **`phase-role stop is not run terminal`**,
|
|
63
|
+
**`native chain supersedes Option B`**.
|
|
64
|
+
|
|
41
65
|
## Continuous multi-phase execution (US-0088)
|
|
42
66
|
|
|
43
67
|
A single `/auto` orchestrated run advances through **all phases** in the
|
|
@@ -45,14 +69,15 @@ A single `/auto` orchestrated run advances through **all phases** in the
|
|
|
45
69
|
**deterministic stop condition** fires. The orchestrator does **not** stop after
|
|
46
70
|
spawning one phase unless the stop matrix requires it.
|
|
47
71
|
|
|
48
|
-
**
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
72
|
+
**native chain supersedes Option B** under **`AUTO_FLOW_MODE=full_autonomy`** + IDE + Task
|
|
73
|
+
available — native in-chat chain is **primary**; **Outer-driver equivalence (AC-1, Option B)**
|
|
74
|
+
applies **only** when **`NATIVE_CHAIN_UNAVAILABLE`** or headless/CI/`--invoke-cmd` context.
|
|
75
|
+
When a single Cursor `/auto` invocation cannot schedule multiple fresh subagent turns
|
|
76
|
+
(product/runtime constraint), a **documented outer driver** (operator script or manual
|
|
77
|
+
re-invocation with `start-from` / refreshed `resume_brief`) is **deterministically equivalent**
|
|
78
|
+
(**fallback only**) provided: same intersected phase order, same isolation + strict-proof
|
|
79
|
+
attestation per phase (**DEC-0038**), same stop reasons, and same `resume_brief` + `state.md`
|
|
80
|
+
refresh at every boundary. Operators must follow the runbook recipe
|
|
56
81
|
(**`docs/engineering/runbook.md`** § Continuous `/auto` + backlog drain).
|
|
57
82
|
|
|
58
83
|
**Deterministic stop matrix** (see also architecture `# US-0088`):
|
|
@@ -65,7 +90,7 @@ Operators must follow the runbook recipe
|
|
|
65
90
|
| `AUTO_PAUSE_REQUEST` / `pause` | **Stop** at safe boundary (non-suppressible) |
|
|
66
91
|
| `AUTO_LOOP_MAX_CYCLES` / `loop_max` | **Stop** (non-suppressible) |
|
|
67
92
|
| `blocked` (sync/scope gate) | **Stop** (non-suppressible) |
|
|
68
|
-
| US lifecycle DONE / sprint segment complete | **
|
|
93
|
+
| US lifecycle DONE / sprint segment complete | **IDE `full_autonomy`**: orchestrator **must** drain-advance in-chat (no operator re-`/auto`). **Other modes / fallback**: stop segment; `AUTO_BACKLOG_DRAIN=1` may advance (recompute phase plan — **reference Step 5**) |
|
|
69
94
|
| `BACKLOG_MAX_STORIES_REACHED` | **Stop** (non-suppressible) |
|
|
70
95
|
|
|
71
96
|
`stop_reason` vocabulary: `completed`, `decision_gate`, `missing_input`,
|
|
@@ -88,6 +113,11 @@ re-invocation between segments.
|
|
|
88
113
|
| 3 | Task tool available for foreground subagent spawn |
|
|
89
114
|
|
|
90
115
|
Set **`native_chain_active=true`** in `state.md` phase boundary when all hold.
|
|
116
|
+
Set **`native_chain_continuing=true`** when orchestrator scheduled next spawn/advance **this**
|
|
117
|
+
boundary. Set **`drain_advance_action=spawned|skipped|not_applicable`** on drain-advance
|
|
118
|
+
boundaries (**`skipped`** when budget > 0 + OPEN item exists is **invalid**). When
|
|
119
|
+
**`native_chain_continuing=true`**, **`stop_reason`** must **not** be
|
|
120
|
+
**`completed (segment exhausted)`** and operator prose must **not** mandate re-**`/auto`**.
|
|
91
121
|
|
|
92
122
|
### Continuation loop (reference Step 5 — IDE primary)
|
|
93
123
|
|
|
@@ -126,7 +156,13 @@ Deterministic **7-step** algorithm when **`full_autonomy`** + drain policy activ
|
|
|
126
156
|
| **6** | **APPEND** `state.md` materialization breadcrumb for new segment |
|
|
127
157
|
| **7** | **IMMEDIATELY** spawn first phase subagent — **without operator re-`/auto`**, **no** mandatory outer-driver instruction |
|
|
128
158
|
|
|
129
|
-
**
|
|
159
|
+
**Between steps 6 and 7** (no operator stop): orchestrator **must not** emit operator wait
|
|
160
|
+
instructions, set **`stop_reason=completed (segment exhausted)`** when drain budget > 0 and
|
|
161
|
+
eligible OPEN item exists, or skip Task-spawn for step **7**. Attest
|
|
162
|
+
**`drain_advance_action=spawned|skipped|not_applicable`** on `state.md` phase boundary;
|
|
163
|
+
**`skipped`** when budget > 0 + OPEN item exists is **invalid** (regression).
|
|
164
|
+
|
|
165
|
+
**DEC-0069 pairing mandate**: every phase boundary and drain advance **must** refresh **`resume_brief`** + **`state.md`** before scheduling in-chat continuation. Stale brief → **`RESUME_BRIEF_STALE`** fail-closed (no advance). Orchestrator **MUST Task-spawn** next phase — **`/auto`** is orchestrator context label, not operator re-invocation instruction.
|
|
130
166
|
|
|
131
167
|
### Native-chain stop matrix (US-0095)
|
|
132
168
|
|
|
@@ -154,7 +190,7 @@ native in-chat auto-chain above. **Optional fallback**: stdlib outer driver
|
|
|
154
190
|
|
|
155
191
|
The driver **loops hook invocations** — spawn-only preserved (**BUG-0006**); it
|
|
156
192
|
never performs phase-role work. Headless/CI recipe: set scratchpad keys → run
|
|
157
|
-
`python scripts/auto_outer_driver.py --repo .` once → interpret exit table in
|
|
193
|
+
`python scripts/auto_outer_driver.py --repo .` once (**fallback** for headless/CI) → interpret exit table in
|
|
158
194
|
**`docs/engineering/runbook.md`** § **Full-autonomy outer driver (US-0092)** (**fallback**).
|
|
159
195
|
|
|
160
196
|
**Drain-advance-without-pause**: with **`full_autonomy`** + **`AUTO_BACKLOG_DRAIN=1`**
|
|
@@ -170,7 +206,7 @@ explicit opt-in for publish (unchanged default-off).
|
|
|
170
206
|
|
|
171
207
|
| Condition | US-0088 (all modes) | `full_autonomy` delta |
|
|
172
208
|
|-----------|---------------------|------------------------|
|
|
173
|
-
| Next phase, no hard stop | Continue inner `/auto` |
|
|
209
|
+
| Next phase, no hard stop | Continue inner `/auto` | Native chain continues in-chat; outer driver **re-invokes** only on **`NATIVE_CHAIN_UNAVAILABLE`** / headless **fallback** |
|
|
174
210
|
| `decision_gate` | Hard stop | **No change — hard** |
|
|
175
211
|
| Unrecoverable `error` | Hard stop | **No change — hard** |
|
|
176
212
|
| Critical `missing_input` | Hard stop | **No change — hard** |
|
|
@@ -180,7 +216,7 @@ explicit opt-in for publish (unchanged default-off).
|
|
|
180
216
|
| `blocked` — transient/sync | Hard stop | **Relaxable** when ledger classifies recoverable |
|
|
181
217
|
| `blocked` — isolation / strict-proof / ownership | Hard stop | **No change — hard** |
|
|
182
218
|
| UAT/QA fail | Hard stop (operator) | **Relaxable** when `AUTO_IMPLEMENTATION_LOOP=1` |
|
|
183
|
-
| Segment complete + `AUTO_BACKLOG_DRAIN=1` | Advance (may need manual re-`/auto`) | **Drain-without-pause** — immediate
|
|
219
|
+
| Segment complete + `AUTO_BACKLOG_DRAIN=1` | Advance (may need manual re-`/auto` in non-native modes) | **Drain-without-pause** — immediate in-chat continuation; **no** operator re-`/auto` |
|
|
184
220
|
| `BACKLOG_MAX_STORIES_REACHED` | Hard stop | **No change — hard** |
|
|
185
221
|
| `AUTO_SCHEDULER_CONFLICT` | Hard stop | **No change — hard** |
|
|
186
222
|
| Security deny (`.env`, intake evidence mutation) | Hard deny | **No change — hard** |
|
|
@@ -245,6 +281,59 @@ parseable `EXECUTE_OVERRIDE_GOVERNANCE_REF`.
|
|
|
245
281
|
|
|
246
282
|
Role reason codes: `PHASE_ROLE_CAPABILITY_MISSING`, `PHASE_ROLE_MISMATCH`.
|
|
247
283
|
|
|
284
|
+
## Mode-scoped delivery resolver — step 0 (US-0096 / DEC-0082)
|
|
285
|
+
|
|
286
|
+
**Before** **Configurable phase selection policy (US-0070 / DEC-0052)**, **resolve_delivery_mode**
|
|
287
|
+
from precedence: argv `delivery-mode=` → backlog row `delivery_mode` (when
|
|
288
|
+
`AUTO_DELIVERY_ROUTING=backlog_then_scratchpad`) → scratchpad `DELIVERY_MODE` → **`standard`**.
|
|
289
|
+
|
|
290
|
+
| `delivery_mode` | `resolved_phase_plan` | `reinstatement_mode` | `memory_layer` |
|
|
291
|
+
|-----------------|----------------------|---------------------|----------------|
|
|
292
|
+
| `standard` | Full **DEC-0052** chain | `dec0052_default` | `standard` |
|
|
293
|
+
| `ultra_lean` | `[spec, plan, build+verify, ship]` | `none` | `pack` |
|
|
294
|
+
| `mega_quick` | `[quick]` when eligible (+1 on test failure) | `none` | `quick` |
|
|
295
|
+
|
|
296
|
+
**reinstatement applies only when delivery_mode=standard**. **`AUTO_PHASE_*`** applies **only**
|
|
297
|
+
when `delivery_mode=standard`; non-standard + non-default **`AUTO_PHASE_*`** →
|
|
298
|
+
**`PHASE_POLICY_CONFLICT`** (fail closed).
|
|
299
|
+
|
|
300
|
+
**`DELIVERY_MODE_SWITCH_MID_STORY`**: fail closed — complete segment in one mode.
|
|
301
|
+
|
|
302
|
+
Persist breadcrumbs at each phase boundary in `state.md` + top `resume_brief` pointer:
|
|
303
|
+
**`delivery_mode`**, **`resolved_phase_plan`**, **`reinstatement_mode`**, **`memory_layer`**.
|
|
304
|
+
|
|
305
|
+
### `ultra_lean` macro-phases (US-0096 / DEC-0082)
|
|
306
|
+
|
|
307
|
+
Four macro-phases — **no** eleven-phase reinstatement when `delivery_mode=ultra_lean`:
|
|
308
|
+
|
|
309
|
+
| Macro | Merged canonical phases | Default role |
|
|
310
|
+
|-------|------------------------|--------------|
|
|
311
|
+
| **`spec`** | intake + discovery | **po** |
|
|
312
|
+
| **`plan`** | research + architecture + sprint-plan | **tech-lead** |
|
|
313
|
+
| **`build+verify`** | execute + qa + verify-work | **dev** / **qa** |
|
|
314
|
+
| **`ship`** | release + refresh-context | **release** / **curator** |
|
|
315
|
+
|
|
316
|
+
**`AUTO_IMPLEMENTATION_LOOP`** preserved inside **`build+verify`**. QA merges AC checklist + UAT
|
|
317
|
+
in one spawn.
|
|
318
|
+
|
|
319
|
+
### `mega_quick` routing (US-0096 / DEC-0082)
|
|
320
|
+
|
|
321
|
+
When `DELIVERY_MODE=mega_quick` and eligible, materialize **`["quick"]`** only. Ineligible →
|
|
322
|
+
**`DELIVERY_MODE_INELIGIBLE`** + specific **`MEGA_QUICK_*`** code:
|
|
323
|
+
|
|
324
|
+
| Code | Rule |
|
|
325
|
+
|------|------|
|
|
326
|
+
| **`MEGA_QUICK_BUG_SEGMENT`** | Story-only (no bug segment) |
|
|
327
|
+
| **`MEGA_QUICK_AC_TOO_BROAD`** | AC ≤ 3 |
|
|
328
|
+
| **`MEGA_QUICK_ARCHITECTURE_REQUIRED`** | No companion DEC required |
|
|
329
|
+
| **`MEGA_QUICK_SPRINT_EXISTS`** | No active `sprints/Sxxxx/` for story |
|
|
330
|
+
| **`MEGA_QUICK_STORY_OVERRIDE`** | Row `delivery_mode` consistent when routing enabled |
|
|
331
|
+
| **`MEGA_QUICK_MULTI_COMPONENT`** | Single component or `COMPONENT_SCOPE_MODE=0` |
|
|
332
|
+
| **`MEGA_QUICK_GATE_ESCALATION`** | No elevated gates beyond default `/quick` |
|
|
333
|
+
|
|
334
|
+
Artifacts: **`sprints/quick/Qxxxx/task.json`** + **`summary.md`**. Second spawn on test
|
|
335
|
+
failure only. Closure requires **`acceptance_met: true`** + green tests.
|
|
336
|
+
|
|
248
337
|
## Configurable phase selection policy (US-0070 / DEC-0052)
|
|
249
338
|
|
|
250
339
|
Treat **resolved phase plan** as fail-closed schedule from merged scratchpad **before**
|
|
@@ -265,6 +354,10 @@ and **`docs/engineering/auto-orchestration-reference.md`**.
|
|
|
265
354
|
|
|
266
355
|
## Inputs
|
|
267
356
|
|
|
357
|
+
- **Narrow-read (US-0053 / US-0096 Tranche A)**: Start at `docs/engineering/phase-context.md`
|
|
358
|
+
and the story section anchor in vision/architecture/decisions when a heading exists; forbid
|
|
359
|
+
full-file reads when a section heading exists.
|
|
360
|
+
|
|
268
361
|
Merged scratchpad (**US-0073** / **DEC-0055**), automation flags (`AUTO_*`, `SECURITY_REVIEW`,
|
|
269
362
|
`TEAM_*`), phase-plan keys `AUTO_PHASE_PLAN`, `AUTO_PHASE_EXCLUDE`, `AUTO_PHASE_INCLUDE`,
|
|
270
363
|
`AUTO_PHASE_PROFILE`, `AUTO_PHASE_HIGH_RISK_ACK`, product/engineering docs,
|
|
@@ -416,8 +509,10 @@ used for resume/materialization failures):
|
|
|
416
509
|
`## Continuous multi-phase execution (US-0088)` above). When
|
|
417
510
|
`AUTO_BACKLOG_DRAIN=1`, repeat the story lifecycle for the next eligible OPEN
|
|
418
511
|
story, **reloading** scratchpad and **recomputing** the materialized phase
|
|
419
|
-
plan at each story boundary.
|
|
420
|
-
|
|
512
|
+
plan at each story boundary.
|
|
513
|
+
Outer-driver equivalence applies when **`NATIVE_CHAIN_UNAVAILABLE`**, headless/CI, or
|
|
514
|
+
`--invoke-cmd` prevents in-chat scheduling (**AC-1 Option B** — **fallback only**;
|
|
515
|
+
**native chain supersedes Option B** in IDE **`full_autonomy`**).
|
|
421
516
|
`stop_reason`: `completed|decision_gate|missing_input|pause_request|loop_max|error|blocked`.
|
|
422
517
|
6. Isolation evidence verification at each boundary (**reference** step 11a).
|
|
423
518
|
7. At each phase boundary, verify strict runtime attestation tuple exists
|
|
@@ -13,6 +13,10 @@ description: "its-magic discovery: collect design/UX inspiration and scope updat
|
|
|
13
13
|
subagent/chat.
|
|
14
14
|
|
|
15
15
|
## Inputs
|
|
16
|
+
|
|
17
|
+
- **Narrow-read (US-0053 / US-0096 Tranche A)**: Start at docs/engineering/phase-context.md
|
|
18
|
+
and the story section anchor in vision/architecture/decisions when a heading exists; forbid
|
|
19
|
+
full-file reads when a section heading exists.
|
|
16
20
|
- Design/UX references
|
|
17
21
|
- Competitive/market notes
|
|
18
22
|
|