its-magic 0.1.2-34 → 0.1.2-36
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/README.md +31 -0
- package/package.json +1 -1
- package/template/.cursor/agents/po.mdc +12 -0
- package/template/.cursor/commands/ask.md +3 -3
- package/template/.cursor/commands/auto.md +86 -547
- package/template/.cursor/commands/execute.md +22 -1
- package/template/.cursor/commands/intake.md +49 -6
- package/template/.cursor/commands/status-reconcile.md +2 -1
- package/template/.cursor/rules/core.mdc +6 -0
- package/template/.cursor/scratchpad.local.example.md +2 -0
- package/template/.cursor/scratchpad.md +2 -0
- package/template/README.md +31 -0
- package/template/docs/engineering/auto-orchestration-reference.md +646 -0
- package/template/docs/engineering/runbook.md +44 -0
- package/template/docs/engineering/token-cost-parity-manifest.md +16 -0
- package/template/docs/product/backlog.md +4 -0
- package/template/handoffs/token_cost_runs/README.md +26 -0
- package/template/scripts/check_token_cost_parity.py +69 -0
- package/template/scripts/token_cost_compare.py +40 -0
- package/template/scripts/token_cost_lib.py +108 -0
package/README.md
CHANGED
|
@@ -360,6 +360,23 @@ Intake artifacts must persist coverage evidence fields:
|
|
|
360
360
|
- `missing_topics`
|
|
361
361
|
- `assumptions_confirmed`
|
|
362
362
|
|
|
363
|
+
### Interactive intake evidence + validator (US-0078 / DEC-0060)
|
|
364
|
+
|
|
365
|
+
**US-0078** closes silent persistence: every intake that mutates backlog/acceptance must pass the
|
|
366
|
+
deterministic **`intake_evidence`** gate — **`topic_coverage`** with valid **`ie:`** refs,
|
|
367
|
+
asked-vs-covered alignment, and **`assumption_confirmation_ref`** when assumptions are affirmative.
|
|
368
|
+
|
|
369
|
+
- Run `python scripts/intake_evidence_validate.py --self-test` (also exercised via `tests/run-tests.*` §26k).
|
|
370
|
+
- Operator docs: **`decisions/DEC-0060.md`**, **`docs/engineering/architecture.md`** **`# US-0078`**, runbook section **Interactive intake evidence validation (US-0078 / DEC-0060)**.
|
|
371
|
+
- **Guided** and **low-touch** share the **same pre-persistence validation pipeline**; low-touch does not bypass mandatory pack coverage.
|
|
372
|
+
|
|
373
|
+
### Bug issues + intake routing (US-0079 / DEC-0061)
|
|
374
|
+
|
|
375
|
+
Defects use **`BUG-####`** under **`docs/product/backlog.md`** **`## Bug issues (canonical)`** with **`OPEN`/`DONE`** only and minimum reproducibility fields. Intake must not silently file defect prose as **`US-xxxx`**: set merged scratchpad **`INTAKE_WORK_ITEM_KIND=bug`** and/or use **`/intake bug`**, then run **`python scripts/intake_bug_routing_guard.py --kind story --file <prose.txt>`** before story allocation when in doubt.
|
|
376
|
+
|
|
377
|
+
- Validators: `python scripts/bug_issue_validate.py --self-test`; `python scripts/bug_issue_validate.py --backlog docs/product/backlog.md --check-acceptance`.
|
|
378
|
+
- Operator docs: **`decisions/DEC-0061.md`**, **`docs/engineering/architecture.md`** **`# US-0079`**, runbook **Bug issues (US-0079 / DEC-0061)**.
|
|
379
|
+
|
|
363
380
|
### Optional ID namespace bootstrap (US-0052)
|
|
364
381
|
|
|
365
382
|
Fresh-project ID bootstrap behavior is explicit and default-off:
|
|
@@ -413,6 +430,20 @@ Compaction behavior:
|
|
|
413
430
|
- `ARCH_HOT_MAX_STORY_SECTIONS` (default `120`)
|
|
414
431
|
Triad hot surfaces (`state.md`, `handoffs/po_to_tl.md`,
|
|
415
432
|
`docs/engineering/architecture.md`) must stay within merged scratchpad caps.
|
|
433
|
+
|
|
434
|
+
### Token-cost measurement and low-cache patterns (US-0080 / DEC-0062)
|
|
435
|
+
|
|
436
|
+
- Prefer **fresh subagent/chat boundaries** per `/auto` phase spawn (see `.cursor/commands/auto.md`).
|
|
437
|
+
- Use explicit **`/auto start-from=<phase>`** when resuming so **`resolved_phase_plan`**
|
|
438
|
+
intersection stays deterministic (**`DEC-0052`**).
|
|
439
|
+
- Select **`TOKEN_PROFILE=lean`** when compatible with your work to reduce scratchpad-driven
|
|
440
|
+
breadth; mandatory gates (**`US-0048`**, **`US-0056`**, **`US-0069`**, **`US-0039`**) stay on.
|
|
441
|
+
- **Comparable** cache-read baselines require identical **`run_class_hash`**; otherwise
|
|
442
|
+
**`TOKEN_COST_RUN_CLASS_MISMATCH`** (no cross-plan gaming).
|
|
443
|
+
- Committed metrics: **`handoffs/token_cost_runs/<orchestrator_run_id>.md`**; link from
|
|
444
|
+
**`docs/engineering/state.md`** via **`token_cost_evidence_ref`**.
|
|
445
|
+
- Tooling: **`scripts/token_cost_lib.py`**, **`scripts/token_cost_compare.py`**,
|
|
446
|
+
**`python scripts/check_token_cost_parity.py --repo .`**.
|
|
416
447
|
Use `python scripts/enforce-triad-hot-surface.py --check` before completing a
|
|
417
448
|
phase that mutates them; use `--rollover` to archive oldest material into
|
|
418
449
|
deterministic packs when over cap (DEC-0054).
|
package/package.json
CHANGED
|
@@ -107,4 +107,16 @@ Mandatory intake question packs (`US-0068` / `DEC-0050`):
|
|
|
107
107
|
- `asked_topics`
|
|
108
108
|
- `missing_topics`
|
|
109
109
|
- `assumptions_confirmed`
|
|
110
|
+
- **US-0078 / DEC-0060**: also persist **`topic_coverage`** (with valid **`ie:`** refs per row),
|
|
111
|
+
keep **`asked_topics`** aligned with covered required keys, and supply
|
|
112
|
+
**`assumption_confirmation_ref`** (+ quoted text + run/turn metadata) whenever
|
|
113
|
+
`assumptions_confirmed` is affirmative or non-placeholder. Run
|
|
114
|
+
`python scripts/intake_evidence_validate.py` on the bundle **before** backlog/acceptance writes;
|
|
115
|
+
on failure emit deterministic codes (`INTAKE_REQUIRED_TOPIC_MISSING`,
|
|
116
|
+
`INTAKE_ASSUMPTION_CONFIRMATION_REQUIRED`, umbrella `INTAKE_PERSISTENCE_BLOCKED`) and **abort** writes.
|
|
117
|
+
**`INTAKE_GUIDED_MODE=0`** uses the **same** validation pipeline as guided mode.
|
|
118
|
+
- **US-0079 / DEC-0061**: for **defect** work use **`INTAKE_WORK_ITEM_KIND=bug`** and/or **`/intake bug`**;
|
|
119
|
+
run **`python scripts/intake_bug_routing_guard.py`** when allocating **`US-xxxx`** for ambiguous prose;
|
|
120
|
+
persist **`BUG-####`** under **`## Bug issues (canonical)`** with required fields and validate with
|
|
121
|
+
**`python scripts/bug_issue_validate.py --check-acceptance`**.
|
|
110
122
|
|
|
@@ -16,8 +16,8 @@ Apply narrow-read retrieval policy (US-0053):
|
|
|
16
16
|
Preferred read order:
|
|
17
17
|
1. `docs/engineering/state.md` (latest relevant checkpoint/section)
|
|
18
18
|
2. `handoffs/resume_brief.md` (current continuation intent)
|
|
19
|
-
3. `docs/product/backlog.md` (specific story block by `US-xxxx`)
|
|
20
|
-
4. `docs/product/acceptance.md` (specific checklist rows)
|
|
19
|
+
3. `docs/product/backlog.md` (specific story block by `US-xxxx` or bug block by `BUG-####` under **`## Bug issues (canonical)`**)
|
|
20
|
+
4. `docs/product/acceptance.md` (specific checklist rows, including **`## Bug acceptance (canonical)`** when answering defect status)
|
|
21
21
|
5. `docs/engineering/decisions.md` and `decisions/DEC-xxxx.md` (when decision detail is required)
|
|
22
22
|
6. `docs/engineering/architecture.md` and `docs/engineering/runbook.md` (only if implementation/policy depth is required)
|
|
23
23
|
7. `sprints/S*/progress.md` (only latest relevant sprint)
|
|
@@ -32,7 +32,7 @@ Preferred read order:
|
|
|
32
32
|
## Behavior rules
|
|
33
33
|
- Do NOT create, modify, or delete any files.
|
|
34
34
|
- Do NOT update state.md or any sprint artifacts.
|
|
35
|
-
- Reference stories (US-xxxx), decisions (DEC-xxxx), and tasks (T-xxx) by ID.
|
|
35
|
+
- Reference stories (**`US-xxxx`**), bug issues (**`BUG-####`**), decisions (**`DEC-xxxx`**), and tasks (**`T-xxx`**) by ID.
|
|
36
36
|
- Suggest next actions but do not execute them.
|
|
37
37
|
- If the question reveals a bug or feature idea, suggest running `/intake`.
|
|
38
38
|
|