create-quiver 0.13.0 → 0.14.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.
Files changed (46) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +9 -2
  3. package/README_FOR_AI.md +4 -0
  4. package/ROADMAP.md +6 -0
  5. package/docs/COMMANDS.md.template +3 -1
  6. package/docs/TROUBLESHOOTING.md.template +29 -0
  7. package/docs/WORKFLOW.md.template +13 -12
  8. package/package.json +1 -1
  9. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/COVERAGE_MATRIX.md +117 -0
  10. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/EVIDENCE_REPORT.md +200 -0
  11. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/EXECUTION_PLAN.md +60 -0
  12. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/SPEC.md +132 -0
  13. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/STATUS.md +36 -0
  14. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/pr.md +128 -0
  15. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-00-reconciliation-and-evidence-freeze/CLOSURE_BRIEF.md +44 -0
  16. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-00-reconciliation-and-evidence-freeze/EXECUTION_BRIEF.md +56 -0
  17. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-00-reconciliation-and-evidence-freeze/slice.json +71 -0
  18. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-01-ai-run-state-approvals-and-clean-output/CLOSURE_BRIEF.md +38 -0
  19. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-01-ai-run-state-approvals-and-clean-output/EXECUTION_BRIEF.md +53 -0
  20. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-01-ai-run-state-approvals-and-clean-output/slice.json +83 -0
  21. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-02-structured-technical-plan-contract-and-repair-flow/CLOSURE_BRIEF.md +33 -0
  22. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-02-structured-technical-plan-contract-and-repair-flow/EXECUTION_BRIEF.md +53 -0
  23. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-02-structured-technical-plan-contract-and-repair-flow/slice.json +85 -0
  24. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-03-active-slice-reconciliation-and-ai-inspect/CLOSURE_BRIEF.md +34 -0
  25. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-03-active-slice-reconciliation-and-ai-inspect/EXECUTION_BRIEF.md +52 -0
  26. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-03-active-slice-reconciliation-and-ai-inspect/slice.json +82 -0
  27. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-04-spec-validation-scope-and-worktree-reliability/CLOSURE_BRIEF.md +32 -0
  28. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-04-spec-validation-scope-and-worktree-reliability/EXECUTION_BRIEF.md +55 -0
  29. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-04-spec-validation-scope-and-worktree-reliability/slice.json +85 -0
  30. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-05-review-plan-closure-and-agent-dx/CLOSURE_BRIEF.md +35 -0
  31. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-05-review-plan-closure-and-agent-dx/EXECUTION_BRIEF.md +59 -0
  32. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-05-review-plan-closure-and-agent-dx/slice.json +94 -0
  33. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-06-backward-compatibility-docs-and-release-readiness/CLOSURE_BRIEF.md +40 -0
  34. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-06-backward-compatibility-docs-and-release-readiness/EXECUTION_BRIEF.md +56 -0
  35. package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-06-backward-compatibility-docs-and-release-readiness/slice.json +98 -0
  36. package/src/create-quiver/commands/ai.js +481 -14
  37. package/src/create-quiver/commands/spec.js +10 -0
  38. package/src/create-quiver/index.js +42 -4
  39. package/src/create-quiver/lib/ai/context-packs.js +2 -2
  40. package/src/create-quiver/lib/ai/export-state.js +52 -5
  41. package/src/create-quiver/lib/ai/github.js +14 -2
  42. package/src/create-quiver/lib/ai/plan-review.js +159 -0
  43. package/src/create-quiver/lib/ai/run-state.js +17 -2
  44. package/src/create-quiver/lib/ai/spec-generator.js +15 -0
  45. package/src/create-quiver/lib/project-state-resolver.js +195 -1
  46. package/src/create-quiver/lib/spec-worktrees.js +50 -2
package/CHANGELOG.md CHANGED
@@ -4,6 +4,25 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.14.0] - 2026-05-25
8
+
9
+ ### Added
10
+
11
+ - v28 Pixel Quiver feedback reconciliation under `specs/quiver-v28-pixel-quiver-feedback-reconciliation/`.
12
+ - `ai active-slice status|reconcile` for dry-run-first active-slice state inspection across `docs/ai/ACTIVE_SLICE.md` and `ACTIVE_SLICES.md`.
13
+ - Structured `ai review-plan` closure metadata with `approve`, `approve-with-risk`, and `revise` recommendations.
14
+
15
+ ### Changed
16
+
17
+ - `ai inspect` now prefers existing-spec recovery commands (`spec validate`, `next`, `ai prompt-slice`) when a lifecycle run still points to stale `spec create` guidance.
18
+ - Agent-facing docs/help now include non-interactive `npx --yes create-quiver@<version>` examples.
19
+ - GitHub PR preflight guidance now gives clearer macOS, Linux, Windows PowerShell, Git Bash, and WSL recovery copy for `gh` and SSH aliases.
20
+
21
+ ### Fixed
22
+
23
+ - Technical-plan approval now blocks reviews with required fixes or a `revise` recommendation.
24
+ - `spec validate`, `spec status`, and `spec start --dry-run` were hardened for execution metadata, stale worktree paths, dirty checkout recovery, and scope diagnostics.
25
+
7
26
  ## [0.13.0] - 2026-05-25
8
27
 
9
28
  ### Added
package/README.md CHANGED
@@ -117,6 +117,12 @@ npx create-quiver ai execute-plan --dry-run --commit --mode delegated
117
117
  npx create-quiver ai pr --dry-run --input specs/<project-slug>/pr.md --ssh-host-alias github-work --identity-file ~/.ssh/github-work
118
118
  ```
119
119
 
120
+ Cuando pegues comandos en un agente externo y quieras evitar prompts interactivos de `npx`, usá la forma versionada y no interactiva:
121
+
122
+ ```bash
123
+ npx --yes create-quiver@<version> ai prompt-slice --slice specs/<project-slug>/slices/slice-01/slice.json --dry-run
124
+ ```
125
+
120
126
  Regla práctica: el planner no modifica código de producto; el executor solo trabaja sobre un slice aprobado y dentro de los archivos declarados en `slice.json`.
121
127
 
122
128
  ## 🛠️ Empezar a usar Quiver según tu caso
@@ -330,6 +336,7 @@ El paquete también publica el alias binario `quiver`, que apunta al mismo CLI.
330
336
  | `npx create-quiver ai inspect` | Resume specs, slices, runs, agentes, layout y próximos comandos accionables. |
331
337
  | `npx create-quiver ai export --format json` | Exporta estado de specs, slices, runs, agentes, dependencias y migración para dashboards o agentes. |
332
338
  | `npx create-quiver ai export --format markdown` | Exporta el mismo estado en Markdown legible para PRs o docs. |
339
+ | `npx create-quiver ai active-slice reconcile --dry-run` | Inspecciona y reconcilia en modo lectura el estado local del slice activo entre `docs/ai/ACTIVE_SLICE.md` y `ACTIVE_SLICES.md`. |
333
340
  | `npx create-quiver ai specs list` | Lista specs con estado, progreso y cantidad de slices. |
334
341
  | `npx create-quiver ai slices list` | Lista slices con estado, progreso, dependencias y bloqueos. |
335
342
  | `npx create-quiver ai trace report` | Muestra runs, olas de ejecución y estado de migración en formato humano. |
@@ -410,7 +417,7 @@ Orden recomendado:
410
417
  2. `ai onboard`: el planner entiende el repo y el workflow.
411
418
  3. `ai plan --phase acceptance`: convierte requerimientos en criterios de aceptación.
412
419
  4. `ai plan --phase technical-plan`: propone el plan técnico.
413
- 5. `ai review-plan`: revisa el plan como si fuera a producción, sin tocar código ni cuestionar el alcance aprobado.
420
+ 5. `ai review-plan`: revisa el plan como si fuera a producción, sin tocar código ni cuestionar el alcance aprobado. La salida guarda metadata con recomendación `approve`, `approve-with-risk` o `revise`.
414
421
  6. `ai approve`: guarda criterios o la versión revisada del plan técnico.
415
422
  7. `spec create`: genera spec, slices, handoffs y PR body desde el plan revisado y aprobado.
416
423
  8. `spec start`: prepara un worktree por spec.
@@ -579,7 +586,7 @@ Checklist de release:
579
586
 
580
587
  ## Información confirmada y pendiente
581
588
 
582
- - `package.json` está en `0.13.0` y `CHANGELOG.md` reconoce `0.13.0`.
589
+ - `package.json` está en `0.14.0` y `CHANGELOG.md` reconoce `0.14.0`.
583
590
  - `package.json` no declara `engines`; la versión mínima real de Node queda pendiente. La CI usa Node 22.
584
591
  - Si aparece alguna referencia vieja a `0.9.0`, hay que actualizarla al contrato actual antes de seguir.
585
592
  - Los scripts legacy de `package.json` que apuntan a `tools/scripts/*` deben confirmarse para este repo fuente o separarse de los scripts pensados para proyectos generados con `--legacy-scripts` o `--full`.
package/README_FOR_AI.md CHANGED
@@ -18,12 +18,16 @@ The v24 spec is implemented under `specs/quiver-v24-dx-onboarding-hardening/`; i
18
18
  The v25 spec is implemented under `specs/quiver-v25-ai-first-lifecycle-orchestrator/` and shipped in `create-quiver@0.12.0`; it covers safe AI onboarding docs, strict run state, phase locks, agent adapters, approval gates, spec/slice generation, execution planning, controlled slice execution, worktree/PR lifecycle, validation hardening, export, and migration.
19
19
  The v26 hotfix spec is implemented under `specs/quiver-v26-0121-smoke-hardening/` and shipped in `create-quiver@0.12.1`; it covers smoke hardening for CLI help/version output, generated doc links, AI approval/review guidance, local validation, slice brief validation, demo readiness, scoped plan/graph performance, and release smoke coverage.
20
20
  The v27 spec is implemented under `specs/quiver-v27-reliability-ai-workflow-hardening/` and shipped in `create-quiver@0.13.0`; it captures Pixel Quiver dogfooding findings (`QP-001` to `QP-019`, `QIS-001` to `QIS-022`) and includes shared state resolution, canonical statuses, schema v2 exports, structured spec creation, AI artifact cleanup, worktree locks, validation gates, context diagnostics, cross-platform DX, fixtures, smoke suites, and package/tarball release readiness.
21
+ The v28 spec is implemented under `specs/quiver-v28-pixel-quiver-feedback-reconciliation/` and shipped in `create-quiver@0.14.0`; it captures the Pixel Quiver follow-up reconciliation with active-slice reconciliation, stale `ai inspect` recovery, structured review closure, stricter technical-plan approval, spec/worktree validation hardening, agent-safe commands, GitHub auth/alias guidance, and package-readiness evidence.
21
22
  Guided AI workflow behavior is available: prepare, approvals, production-readiness plan review, spec worktrees, executor commits, execution waves, PR creation, spec close, and package safety.
22
23
  Generated projects also get `quiver:*` npm scripts that call the Node CLI directly; prefer those for repeatable project workflows, including `quiver:flow` for the read-only guided entrypoint, `quiver:plan` for sequential planning, `quiver:graph` for parallel-level inspection, `quiver:next` for the next ready slice, `quiver:evidence` for local command evidence, `quiver:spec:create` for real spec generation, `quiver:spec:validate` for full spec validation, and the AI family `quiver:ai:agent`, `quiver:ai:inspect`, `quiver:ai:export`, `quiver:ai:specs`, `quiver:ai:slices`, `quiver:ai:trace`, `quiver:ai:onboard`, `quiver:ai:prepare-context`, `quiver:ai:plan`, `quiver:ai:review-plan`, `quiver:ai:approve`, `quiver:ai:prompt-slice`, `quiver:ai:execute-slice`, `quiver:ai:execute-plan`, `quiver:ai:pr`, and `quiver:ai:doctor`. Use `quiver:graph --format mermaid` for PR-ready Markdown or `quiver:graph --format dot` for Graphviz source.
23
24
  `quiver:ai:execute-plan` supports `--mode manual` for paste-ready executor prompts and `--mode delegated` for temporary worktrees on parallel-ready waves; unsafe waves fall back to sequential execution.
24
25
  Agent profiles live in `.quiver/agents/profiles.json`; they store role, provider, model label, context label, and display label only. Do not store API keys, tokens, or credentials there.
25
26
  Planner drafts are versioned under `.quiver/approvals/<phase>/drafts/`; review the technical-plan draft with `npx create-quiver ai review-plan --dry-run` before approving it, then approve a concrete version with `npx create-quiver ai approve --phase <phase> --version <n>` when reviewing iterations.
27
+ `ai review-plan` stores structured closure metadata under `.quiver/approvals/plan-review/meta.json`: `approval_recommendation` is `approve`, `approve-with-risk`, or `revise`; required fixes block technical-plan approval, while optional hardening does not.
26
28
  AI lifecycle runs are persisted under `.quiver/runs/<run-id>/`; use `npx create-quiver ai run create --input <requirements.md>` to start one explicitly, `npx create-quiver ai status` to inspect it, `npx create-quiver ai resume` to continue from the last valid phase without relying on chat memory, and `npx create-quiver ai export --format json|markdown` when another agent, PR, or dashboard needs the current specs/slices/runs state.
29
+ Use `npx create-quiver ai active-slice reconcile --dry-run` when `docs/ai/ACTIVE_SLICE.md`, `ACTIVE_SLICES.md`, worktrees, or `ai inspect` appear out of sync. The command is dry-run-first and reports preserve, close, replace, or blocked decisions without writing files.
30
+ When generating commands for another AI agent, prefer non-interactive package-pinned examples such as `npx --yes create-quiver@<version> ai prompt-slice --slice <slice.json> --dry-run`.
27
31
  Maintain release notes and package publishing with `scripts/release-quiver.sh`.
28
32
  Use `npm run smoke:doctor-fixtures` after changing doctor, preflight, validation, actionable errors, or fixture coverage.
29
33
  The primary generated project context for agents is `docs/AI_CONTEXT.md`.
package/ROADMAP.md CHANGED
@@ -75,6 +75,11 @@
75
75
  - Published package `0.13.0`.
76
76
  - **v27** — Reliability hardening from Pixel Quiver dogfooding: shared state resolver, canonical statuses, JSON export contract, approved-plan spec generation, AI artifact cleanup, token compaction, worktree lifecycle, validation gates, context diagnostics, cross-platform DX, fixtures, smoke tests, and package/tarball release readiness live in `specs/quiver-v27-reliability-ai-workflow-hardening/`.
77
77
 
78
+ ## v0.14 — Pixel Quiver Feedback Reconciliation (shipped 2026-05-25)
79
+
80
+ - Published package `0.14.0`.
81
+ - **v28** — Follow-up hardening from Pixel Quiver dogfooding: active-slice reconciliation, spec-aware `ai inspect` recovery, structured plan-review closure, safer technical-plan approval, stronger spec/worktree validation, agent-safe command examples, GitHub auth/alias guidance, and final release-readiness evidence live in `specs/quiver-v28-pixel-quiver-feedback-reconciliation/`.
82
+
78
83
  ## Post-Checkpoint Plan (do not execute before validating v14)
79
84
 
80
85
  > This section now records the follow-up line from the v14-era plan.
@@ -91,6 +96,7 @@
91
96
  - **v25 — AI-First Lifecycle Orchestrator** (shipped in `0.12.0`): safe AI onboarding docs, strict run state, phase locks, agent adapters, approval gates, generated specs/slices/handoffs/PR body, execution waves, controlled slice execution, worktree/PR lifecycle, validation hardening, export, and migration live in `specs/quiver-v25-ai-first-lifecycle-orchestrator/`.
92
97
  - **v26 — 0.12.1 Smoke Hardening** (shipped in `0.12.1`): first-use hardening from clean npm smoke testing, covering CLI help/version output, generated doc links, AI approval/review guidance, local validation, slice brief validation, demo readiness, scoped plan/graph performance, and release smoke coverage live in `specs/quiver-v26-0121-smoke-hardening/`.
93
98
  - **v27 — Reliability and AI Workflow Hardening** (shipped in `0.13.0`): Pixel Quiver dogfooding follow-up covering resolver/export/spec-create/AI-artifact/worktree/validation/context/DX hardening lives in `specs/quiver-v27-reliability-ai-workflow-hardening/`.
99
+ - **v28 — Pixel Quiver Feedback Reconciliation** (shipped in `0.14.0`): active-slice reconciliation, stale inspect recovery, structured review closure, validation/worktree hardening, agent-safe commands, GitHub auth guidance, and release-readiness evidence live in `specs/quiver-v28-pixel-quiver-feedback-reconciliation/`.
94
100
 
95
101
  The shipped v20/v21/v22/v23 work is no longer pending. The older context-diagnostics and slice-archaeology ideas remain deferred until real demand justifies them.
96
102
 
@@ -30,6 +30,7 @@ This document is the canonical command reference for the orchestration roadmap.
30
30
  | `npx create-quiver ai inspect` | Shows actionable lifecycle state for specs, slices, runs, agents, layout, and next commands | macOS, Linux, Windows | v0.13 | `npx create-quiver ai inspect` |
31
31
  | `npx create-quiver ai export --format json` | Emits machine-readable specs, slices, runs, agents, dependencies, blockers, and migration state | macOS, Linux, Windows | v0.13 | `npx create-quiver ai export --format json` |
32
32
  | `npx create-quiver ai export --format markdown` | Emits readable Markdown lifecycle state for PRs or docs | macOS, Linux, Windows | v0.13 | `npx create-quiver ai export --format markdown` |
33
+ | `npx create-quiver ai active-slice reconcile --dry-run` | Reports active-slice state from supported local sources and previews preserve, close, replace, or blocked reconciliation decisions without writing files | macOS, Linux, Windows | next | `npx create-quiver ai active-slice reconcile --dry-run` |
33
34
  | `npx create-quiver ai specs list` | Lists specs with state, progress, slice counts, and paths | macOS, Linux, Windows | v0.13 | `npx create-quiver ai specs list` |
34
35
  | `npx create-quiver ai slices list` | Lists slices with state, progress, dependencies, and blockers | macOS, Linux, Windows | v0.13 | `npx create-quiver ai slices list --json` |
35
36
  | `npx create-quiver ai trace report` | Reports AI runs, execution waves, and migration guidance | macOS, Linux, Windows | v0.13 | `npx create-quiver ai trace report` |
@@ -124,8 +125,9 @@ This document is the canonical command reference for the orchestration roadmap.
124
125
  - `quiver:ai:agent` stores provider/model labels under `.quiver/agents/profiles.json`; credentials stay in the provider CLI or OS credential store.
125
126
  - `quiver:ai:inspect`, `quiver:ai:specs`, `quiver:ai:slices`, and `quiver:ai:trace` are read-only inspection surfaces for humans and agents.
126
127
  - `quiver:ai:export -- --format json` is the dashboard/agent-friendly state contract; `--format markdown` is the PR/docs-friendly version.
127
- - Planner drafts are versioned under `.quiver/approvals/<phase>/drafts/`; use `quiver:ai:review-plan -- --dry-run` before approving a technical-plan draft, then `quiver:ai:approve -- --phase technical-plan --version 1` to approve the reviewed version.
128
+ - Planner drafts are versioned under `.quiver/approvals/<phase>/drafts/`; use `quiver:ai:review-plan -- --dry-run` before approving a technical-plan draft, then `quiver:ai:approve -- --phase technical-plan --version 1` to approve the reviewed version. Plan reviews store structured recommendations: `approve`, `approve-with-risk`, or `revise`.
128
129
  - `quiver:ai:prompt-slice -- --dry-run` prints a paste-ready manual executor prompt and does not call a provider.
130
+ - For commands pasted into another AI agent, prefer a non-interactive pinned form such as `npx --yes create-quiver@<version> ai prompt-slice --slice specs/<spec>/slices/<slice>/slice.json --dry-run`.
129
131
  - `quiver:evidence -- run -- <command>` preserves the wrapped command exit code. Redaction is best effort; avoid commands that intentionally print secrets.
130
132
  - `demo create spec-viewer` is optional and static; it must stay outside default `init`.
131
133
  - `quiver:spec:start -- --dry-run specs/<spec>` previews the spec worktree path and branch without creating a worktree.
@@ -147,6 +147,35 @@ Use this guide when a first-run bootstrap or gate check fails. The recovery path
147
147
  3. Use `--provider codex`, `--provider claude`, or `--provider gemini` explicitly if your default is unclear.
148
148
  4. Re-run the command from a clean worktree when using `ai execute-slice`.
149
149
 
150
+ ## Plan Review Blocks Approval
151
+
152
+ ### Symptom
153
+
154
+ - `ai approve --phase technical-plan` says the plan review blocks approval
155
+ - `ai approvals` shows `Approval recommendation: revise`
156
+
157
+ ### Recovery
158
+
159
+ 1. Read `.quiver/approvals/plan-review/review.md` and the `required_fixes` in `.quiver/approvals/plan-review/meta.json`.
160
+ 2. Create a revised technical-plan draft with `npx create-quiver ai revise --phase technical-plan --input <feedback.md> --dry-run`.
161
+ 3. Run `npx create-quiver ai review-plan --dry-run`, then `npx create-quiver ai review-plan` after inspecting the prompt.
162
+ 4. Approve only when the review recommendation is `approve` or `approve-with-risk`.
163
+
164
+ ## Active Slice State Conflict
165
+
166
+ ### Symptom
167
+
168
+ - `ai inspect` reports an active-slice blocker
169
+ - `docs/ai/ACTIVE_SLICE.md` and `ACTIVE_SLICES.md` point to different slices
170
+ - The current active slice was already completed but local active-state files still exist
171
+
172
+ ### Recovery
173
+
174
+ 1. Run `npx create-quiver ai active-slice reconcile --dry-run`.
175
+ 2. If the decision is `preserve`, continue with the suggested next command.
176
+ 3. If the decision is `close` or `replace`, review the planned file changes before changing local active-state files.
177
+ 4. If the decision is `blocked`, fix the missing, ambiguous, or conflicting slice reference before assigning more executor work.
178
+
150
179
  ## GitHub PR Preflight Failure
151
180
 
152
181
  ### Symptom
@@ -37,8 +37,8 @@ Use maps, metadata, diffs, and summaries first. Open full files only when the sm
37
37
  3. Save reusable planner/executor provider choices with `ai agent set` when the team has preferred local AI CLIs.
38
38
  4. Use `ai plan --phase acceptance` to draft criteria, then save the approved version with `ai approve --phase acceptance`.
39
39
  5. Use `ai plan --phase technical-plan` to draft the plan.
40
- 6. Use `ai review-plan` to review the technical-plan draft for production readiness without changing product code.
41
- 7. Save the reviewed plan version with `ai approve --phase technical-plan --version <n>`.
40
+ 6. Use `ai review-plan` to review the technical-plan draft for production readiness without changing product code. Treat `approve` and `approve-with-risk` as approvable states; treat `revise` or required fixes as blockers.
41
+ 7. Save the reviewed plan version with `ai approve --phase technical-plan --version <n>` only after the review recommendation is approvable.
42
42
  8. Use `spec create` to generate the spec, mandatory `slice-00`, implementation slices, handoffs, execution plan, and `pr.md`.
43
43
  9. Open and merge the documentation PR or commit that establishes `slice-00` before running implementation slices.
44
44
  10. Read the AI context pack, support matrix, and troubleshooting guide before the first slice if the environment is new or uncertain.
@@ -50,21 +50,22 @@ Use maps, metadata, diffs, and summaries first. Open full files only when the sm
50
50
 
51
51
  1. Create or reuse the spec worktree with `npx create-quiver spec start specs/<spec-slug>` or `npm run quiver:spec:start -- specs/<spec-slug>`. Use `--dry-run` first when you want to inspect the planned branch/path without changing Git state.
52
52
  2. Inspect lifecycle state with `npx create-quiver ai inspect`, or export it with `npx create-quiver ai export --format json` for dashboards/agents and `--format markdown` for PRs/docs.
53
- 3. Inspect manual prompts with `npx create-quiver ai execute-plan --dry-run --commit --mode manual` or delegated waves with `npm run quiver:ai:execute-plan -- --dry-run --commit --mode delegated`.
54
- 4. Print a minimal manual executor prompt with `npx create-quiver ai prompt-slice --slice <slice.json> --dry-run` when assigning the slice to another agent.
55
- 5. Bootstrap a single slice with `npx create-quiver start-slice <slice.json>` or `npm run quiver:start-slice -- <slice.json>` when manual execution is preferred.
53
+ 3. If active-slice state looks stale or conflicting, run `npx create-quiver ai active-slice reconcile --dry-run` before assigning more execution work.
54
+ 4. Inspect manual prompts with `npx create-quiver ai execute-plan --dry-run --commit --mode manual` or delegated waves with `npm run quiver:ai:execute-plan -- --dry-run --commit --mode delegated`.
55
+ 5. Print a minimal manual executor prompt with `npx create-quiver ai prompt-slice --slice <slice.json> --dry-run` when assigning the slice to another agent. For commands pasted into another AI agent, prefer `npx --yes create-quiver@<version> ai prompt-slice --slice <slice.json> --dry-run`.
56
+ 6. Bootstrap a single slice with `npx create-quiver start-slice <slice.json>` or `npm run quiver:start-slice -- <slice.json>` when manual execution is preferred.
56
57
  - The bootstrap step should work with canonical paths and a local base branch when `origin` is absent.
57
58
  - Draft slices require `--allow-draft`; otherwise `npx create-quiver start-slice` exits before execution.
58
59
  - Legacy Bash wrappers remain available for compatibility, but generated projects should prefer the Node CLI and `quiver:*` npm scripts.
59
60
  - `start-slice` generates `docs/ai/ACTIVE_SLICE.md` and `WORKTREE_CONTEXT.md`; use the active slice brief as the source of truth for execution.
60
- 6. Implement only what the slice declares.
61
- 7. Make one commit for that slice, or let `ai execute-slice --commit` / `ai execute-plan --execute --commit --mode delegated` create it after provider, branch/worktree, scope, and validation pass.
61
+ 7. Implement only what the slice declares.
62
+ 8. Make one commit for that slice, or let `ai execute-slice --commit` / `ai execute-plan --execute --commit --mode delegated` create it after provider, branch/worktree, scope, and validation pass.
62
63
  - `ai execute-slice` updates `CLOSURE_BRIEF.md`, `EVIDENCE_REPORT.md`, `COMMAND_LOG.md`, `STATUS.md`, and `slice.json` only after the provider changes in-scope files and validation passes.
63
- 8. Validate with `npx create-quiver check-slice <slice.json>` or `npm run quiver:check-slice -- <slice.json>`.
64
- 9. Write evidence. Prefer `npx create-quiver evidence run -- <command>` when you need a compact local Markdown record of validation output.
65
- 10. Repeat for the next slice until the spec is complete.
66
- 11. Open one PR for the spec. Use `npx create-quiver ai pr --dry-run --input specs/<spec-slug>/pr.md --ssh-host-alias <alias> ...` first, then add `--create` only after review. Quiver blocks PR creation while slices in that spec remain open.
67
- 12. After the PR is merged and the spec worktree is clean, close it with `npx create-quiver spec close specs/<spec-slug>`.
64
+ 9. Validate with `npx create-quiver check-slice <slice.json>` or `npm run quiver:check-slice -- <slice.json>`.
65
+ 10. Write evidence. Prefer `npx create-quiver evidence run -- <command>` when you need a compact local Markdown record of validation output.
66
+ 11. Repeat for the next slice until the spec is complete.
67
+ 12. Open one PR for the spec. Use `npx create-quiver ai pr --dry-run --input specs/<spec-slug>/pr.md --ssh-host-alias <alias> ...` first, then add `--create` only after review. Quiver blocks PR creation while slices in that spec remain open.
68
+ 13. After the PR is merged and the spec worktree is clean, close it with `npx create-quiver spec close specs/<spec-slug>`.
68
69
 
69
70
  ## Support Contract
70
71
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-quiver",
3
- "version": "0.13.0",
3
+ "version": "0.14.0",
4
4
  "private": false,
5
5
  "description": "Quiver CLI for scaffolding projects from the packaged template",
6
6
  "license": "MIT",
@@ -0,0 +1,117 @@
1
+ # Coverage Matrix - Quiver v28 Pixel Quiver Feedback Reconciliation
2
+
3
+ `slice-00` completed the evidence freeze on 2026-05-25. This matrix replaces the initial planning hypothesis and is the execution contract for the remaining slices.
4
+
5
+ Status meanings used during this spec:
6
+
7
+ - `verified-resolved`: current repo evidence shows enough code, test, or doc coverage; no v28 implementation should repeat it.
8
+ - `partial`: current repo covers part of the issue, but Pixel Quiver evidence still exposes a gap or missing regression guard.
9
+ - `pending`: no sufficient current coverage was found; implement in the mapped v28 slice.
10
+ - `duplicate`: tracked through another finding.
11
+ - `documented-risk`: not fixed in this slice; must remain visible until closure.
12
+ - `out-of-scope-with-reason`: intentionally excluded from v28 with a reason.
13
+
14
+ ## Frozen Inputs
15
+
16
+ | Source | Unique IDs | SHA-256 | Modified |
17
+ |---|---:|---|---|
18
+ | Pixel Quiver `QUIVER_PROBLEMS.md` | `QP-001` to `QP-028` | `516d8928af437fc3d20cacfe50fb78752954eb59b6dace6860cdda820aa6701d` | 2026-05-25 03:29:24 -03 |
19
+ | Pixel Quiver `QUIVER_IMPROVEMENT_SUGGESTIONS.md` | `QIS-001` to `QIS-031` | `43c4bfbef68fc8343b7f905f299c53716b55abcace415c9ce1088aa53ac12949` | 2026-05-25 03:29:39 -03 |
20
+ | Pixel Quiver `QUIVER_FRAMEWORK_IMPROVEMENTS.md` | narrative sections only | `7a4eb66a996fc44cce80df4907a948fbef3e780a5f8fc856a6bdc2b0bd1f1ea3` | 2026-05-25 03:29:53 -03 |
21
+
22
+ ## Problem Coverage
23
+
24
+ | Finding | Status | Primary slice | Evidence | Required action |
25
+ |---|---|---|---|---|
26
+ | QP-001 | verified-resolved | slice-00 | v27 matrix maps flow freshness to slice-07; `tests/commands/flow.test.js`; `src/create-quiver/commands/flow.js`. | Do not reimplement. |
27
+ | QP-002 | fixed | slice-05 | v27 path handling remains, and help/docs now include non-interactive `npx --yes create-quiver@<version>` examples for agents. | Completed in slice-05. |
28
+ | QP-003 | fixed | slice-03 | `collectLifecycleExport` now includes active-slice state, uses shared resolver data, and `ai inspect` next steps reconcile existing specs before suggesting stale creation. Covered by `tests/lib/ai-export-state.test.js` and `tests/commands/ai-export.test.js`. | Completed in slice-03. |
29
+ | QP-004 | fixed | slice-05 | GitHub install/auth/alias guidance now includes account/scope/alias diagnosis plus macOS, Linux, Windows PowerShell, Git Bash, and WSL recovery copy. Covered by `tests/lib/ai-github.test.js`. | Completed in slice-05. |
30
+ | QP-005 | verified-resolved | slice-00 | v27 matrix maps React/Vite analyzer detection to slice-07; `tests/commands/analyze.test.js`; `tests/fixtures/validation-errors/matrix.json`. | Do not reimplement unless a new failing fixture appears. |
31
+ | QP-006 | verified-resolved | slice-00 | v27 matrix maps evidence-backed `prepare-context` to slice-07; `README_FOR_AI.md`; `docs/PROJECT_MAP.md` contract in templates. | Do not reimplement. |
32
+ | QP-007 | verified-resolved | slice-00 | v27 matrix maps agent docs gaps to slice-07/slice-08; generated templates include current docs instead of missing `docs/ai/QUICK.md` style paths. | Do not reimplement. |
33
+ | QP-008 | verified-resolved | slice-00 | v27 status is 100%; v27 evidence says source-of-truth docs were synchronized; `README_FOR_AI.md` documents v27 coverage. | Do not reimplement. |
34
+ | QP-009 | verified-resolved | slice-00 | `src/create-quiver/lib/ai/artifacts.js`; `tests/commands/ai-plan.test.js`; v27 slice-04 closure covers revise compaction. | Do not reimplement. |
35
+ | QP-010 | fixed | slice-01 | `src/create-quiver/commands/ai.js`; `tests/commands/ai-plan.test.js` covers clean console output without prompt echo/stderr logs while raw artifacts remain persisted. | Completed in slice-01. |
36
+ | QP-011 | fixed | slice-02 | `ai plan --phase technical-plan` prompts for the required `spec.slices[]` contract; `ai approve --phase technical-plan` blocks invalid drafts before writing approved artifacts; `spec create` still fails before writes for legacy invalid approvals. | Completed in slice-02. |
37
+ | QP-012 | verified-resolved | slice-00 | `tests/lib/ai-spec-generator.test.js` covers fail-before-writing and no build remnants. | Do not reimplement. |
38
+ | QP-013 | fixed | slice-01 | `ai status` reports multiple open runs; `ai run close --run <id>` archives stale runs without deleting evidence; covered by `tests/commands/ai-run-state.test.js`. | Completed in slice-01. |
39
+ | QP-014 | fixed | slice-01 | Provider-backed `ai onboard`, `ai plan`, and `ai review-plan` print clean output on success; raw output is only printed on provider failure. Covered by focused `ai plan` test. | Completed in slice-01. |
40
+ | QP-015 | fixed | slice-01 | `ai approvals` now separates run-scoped approvals, active run, global planner approvals, and run relation (`active`, `historical`, `orphaned`, `none`). | Completed in slice-01. |
41
+ | QP-016 | fixed | slice-03 | Added active-source detection for `docs/ai/ACTIVE_SLICE.md` and `ACTIVE_SLICES.md`, conflict detection, and `ai active-slice reconcile --dry-run`. Covered by resolver and CLI tests. | Completed in slice-03. |
42
+ | QP-017 | fixed | slice-05 | `ai review-plan` now stores structured `review_result` metadata with approval recommendation, blocking status, required fixes, optional hardening, risks, and next command. | Completed in slice-05. |
43
+ | QP-018 | fixed | slice-05 | Stale technical-plan review approval errors now recommend dry-run review followed by live review, and blocking review results surface the exact next command. | Completed in slice-05. |
44
+ | QP-019 | fixed | slice-05 | Review closure now distinguishes `approve`, `approve-with-risk`, and `revise`, with required fixes blocking approval and optional hardening remaining non-blocking. | Completed in slice-05. |
45
+ | QP-020 | fixed | slice-03 | `collectActiveSliceState` defines supported sources and canonical dry-run decisions: `preserve`, `close`, `replace`, and `blocked`. | Completed in slice-03. |
46
+ | QP-021 | fixed | slice-05 | Review metadata separates `required_fixes` from `optional_hardening`, and approval checks block only revise/blocking results. | Completed in slice-05. |
47
+ | QP-022 | fixed | slice-03 | Added `npx create-quiver ai active-slice status|reconcile`; `reconcile` is dry-run-first and refuses live writes. | Completed in slice-03. |
48
+ | QP-023 | fixed | slice-02 | Technical-plan approval now validates that the selected draft can generate a spec package before approving it. | Completed in slice-02. |
49
+ | QP-024 | fixed | slice-02 | Added `ai repair-plan` to create a provider-backed derived structured draft from a legacy approved invalid technical plan while preserving the original approved artifact. | Completed in slice-02. |
50
+ | QP-025 | fixed | slice-04 | `spec validate` now rejects slices missing execution git metadata required by `check-slice --local`; covered by `tests/commands/spec-validate.test.js`. | Completed in slice-04. |
51
+ | QP-026 | fixed | slice-04 | `spec status` now reports expected worktree paths that exist but are not registered in `git worktree list` as missing/stale; covered by `tests/commands/spec-worktree.test.js`. | Completed in slice-04. |
52
+ | QP-027 | fixed | slice-04 | `spec start --dry-run` dirty checkout failures now list dirty files and safe recovery options; covered by `tests/commands/spec-worktree.test.js`. | Completed in slice-04. |
53
+ | QP-028 | fixed | slice-03 | `ai inspect` detects existing specs when an active run still points at `spec create --dry-run` and now suggests `spec validate`, `next --all-ready`, and `ai prompt-slice`. | Completed in slice-03. |
54
+
55
+ ## Suggestion Coverage
56
+
57
+ | Finding | Status | Primary slice | Evidence | Required action |
58
+ |---|---|---|---|---|
59
+ | QIS-001 | verified-resolved | slice-00 | v27 flow source/freshness coverage; `tests/commands/flow.test.js`. | Do not reimplement. |
60
+ | QIS-002 | fixed | slice-05 | Agent examples now include `npx --yes create-quiver@<version>` and existing shell-safe copy remains covered. | Completed in slice-05. |
61
+ | QIS-003 | fixed | slice-04 | `spec validate` now catches missing execution git metadata before users reach local slice execution. | Completed in slice-04. |
62
+ | QIS-004 | verified-resolved | slice-00 | `src/create-quiver/lib/ai/export-state.js` exposes schema v2 dashboard data. | Do not reimplement unless schema gaps appear. |
63
+ | QIS-005 | fixed | slice-05 | Executor context pack guidance now explicitly limits agents to `slice.json`, `EXECUTION_BRIEF`, `CLOSURE_BRIEF`, allowed files, acceptance criteria, and validation commands; docs include non-interactive prompt-slice examples. | Completed in slice-05. |
64
+ | QIS-006 | fixed | slice-03 | `ai inspect`, `ai export`, active-slice status, spec listing, and slice listing share resolver-backed lifecycle export data. | Completed in slice-03. |
65
+ | QIS-007 | verified-resolved | slice-00 | v27 analyzer coverage and fixtures. | Do not reimplement. |
66
+ | QIS-008 | verified-resolved | slice-00 | v27 context evidence coverage and source-backed docs contract. | Do not reimplement. |
67
+ | QIS-009 | fixed | slice-05 | GitHub preflight guidance now includes shell-specific `gh` installation and SSH alias setup/verification copy. | Completed in slice-05. |
68
+ | QIS-010 | verified-resolved | slice-00 | v27 agent docs/template cleanup. | Do not reimplement. |
69
+ | QIS-011 | verified-resolved | slice-00 | `tests/commands/ai-agent.test.js` covers `ai agent set --dry-run`. | Do not reimplement. |
70
+ | QIS-012 | verified-resolved | slice-00 | v27 artifact compaction tests and `src/create-quiver/lib/ai/artifacts.js`. | Do not reimplement. |
71
+ | QIS-013 | fixed | slice-01 | Clean/raw persistence remains, and console output no longer emits provider transcript/logs on successful planner commands. | Completed in slice-01. |
72
+ | QIS-014 | fixed | slice-02 | Structured technical-plan output is now required in planner prompts and enforced before technical-plan approval/spec creation. | Completed in slice-02. |
73
+ | QIS-015 | fixed | slice-02 | Existing generator regressions continue to cover slug/title normalization, collision refusal, multi-slice preservation, and structured markdown extraction while the shared contract validator was added. | Completed in slice-02. |
74
+ | QIS-016 | fixed | slice-01 | `ai status` exposes other open runs and `ai run close --run <id>` provides a safe archive path. | Completed in slice-01. |
75
+ | QIS-017 | fixed | slice-01 | Successful provider-backed planner commands print clean output only; raw logs remain stored/redacted. | Completed in slice-01. |
76
+ | QIS-018 | fixed | slice-01 | `ai approvals` groups active/historical run-scoped approvals separately from global approval files. | Completed in slice-01. |
77
+ | QIS-019 | fixed | slice-03 | Added `ai active-slice status|reconcile` with multi-source reporting and dry-run output. | Completed in slice-03. |
78
+ | QIS-020 | fixed | slice-05 | `summarizePlanReview` now reports approval recommendation, blocking status, required fixes, optional hardening, and next command. | Completed in slice-05. |
79
+ | QIS-021 | fixed | slice-05 | `meta.json` stores machine-readable `review_result` data for downstream agents and gates. | Completed in slice-05. |
80
+ | QIS-022 | fixed | slice-03 | Added canonical multi-source active-slice reconciliation from active doc plus root board. | Completed in slice-03. |
81
+ | QIS-023 | fixed | slice-05 | CLI help, README, README_FOR_AI, and generated command docs now include `npx --yes create-quiver@<version>` guidance for agent-pasted commands. | Completed in slice-05. |
82
+ | QIS-024 | fixed | slice-05 | Review close threshold is now `approve`, `approve-with-risk`, or `revise`; `revise` and blocking required fixes prevent technical-plan approval. | Completed in slice-05. |
83
+ | QIS-025 | fixed | slice-03 | `ai active-slice reconcile --dry-run` reports supported sources, detected sources, planned changes, risks, and no-write guarantee. | Completed in slice-03. |
84
+ | QIS-026 | fixed | slice-02 | Missing `spec.slices[]` is now caught before approval and before spec creation. | Completed in slice-02. |
85
+ | QIS-027 | fixed | slice-02 | `ai repair-plan` provides a traceable repair path for approved legacy plans missing structure. | Completed in slice-02. |
86
+ | QIS-028 | fixed | slice-04 | `spec validate` enforces local execution metadata parity with focused regression coverage. | Completed in slice-04. |
87
+ | QIS-029 | fixed | slice-04 | `spec status` detects unregistered expected worktree directories and reports them as stale. | Completed in slice-04. |
88
+ | QIS-030 | fixed | slice-04 | Dirty checkout recovery now includes blocking files and safe options. | Completed in slice-04. |
89
+ | QIS-031 | fixed | slice-03 | `collectNextSteps` now prefers existing-spec recovery commands over stale lifecycle `spec create` guidance. | Completed in slice-03. |
90
+
91
+ ## Framework Improvement Sections
92
+
93
+ | Area from Pixel Quiver improvement file | Status | Primary slice | Evidence | Required action |
94
+ |---|---|---|---|---|
95
+ | Intent/spec selection before a spec exists | fixed | slice-03 | `ai inspect` now reconciles existing specs and ready slices before suggesting another spec creation path. | Completed in slice-03 without adding a separate intent system. |
96
+ | Local vs latest Quiver version visibility | documented-risk | slice-06 | README now states the package remains `0.13.0` and v28 changes are unreleased until future publication; package smoke ran against the local package artifact without claiming npm publish. | Future work: consider `status --versions`. |
97
+ | Standard names for improvement files | documented-risk | slice-06 | v28 preserved the three Pixel Quiver evidence files as explicit source inputs and frozen hashes in this matrix/evidence report. | Future work: document accepted feedback filenames and aliases. |
98
+ | Graph conflicts summary | out-of-scope-with-reason | slice-06 | Useful but not required for the AI lifecycle failures in v28. | Record as future graph UX work. |
99
+ | Visual validation command | out-of-scope-with-reason | slice-06 | Valuable for frontend projects, but would require browser tooling and a larger product decision. | Record as future visual evidence feature. |
100
+ | Active run management | fixed | slice-01 | `ai status` surfaces multiple open runs; `ai run close --run <id>` closes stale runs while preserving `.quiver/runs/<id>`. | Completed in slice-01. |
101
+ | Clean AI output | fixed | slice-01 | Successful provider-backed planner commands now print clean extracted output instead of raw stdout/stderr. | Completed in slice-01. |
102
+ | Active slice reconciliation | fixed | slice-03 | Matches QP-016/QP-020/QIS-019/QIS-022/QIS-025; implemented through resolver state and `ai active-slice` CLI. | Completed in slice-03. |
103
+ | Structured plan/spec create | fixed | slice-02 | Matches QP-011, QP-023, QP-024, QIS-014, QIS-015, QIS-026, and QIS-027; validated by approval, repair, spec-create, and generator tests. | Completed in slice-02. |
104
+ | Worktree and validation hardening | fixed | slice-04 | Matches QP-025 to QP-027 and QIS-028 to QIS-030; validated by spec validation, worktree, check-slice, scope, and path tests. | Completed in slice-04. |
105
+ | Review-plan closure | fixed | slice-05 | Matches QP-017/QP-019/QP-021 and QIS-020/QIS-021/QIS-024; implemented with structured review metadata and approval gating. | Completed in slice-05. |
106
+ | Agent-safe `npx --yes create-quiver@<version>` examples | fixed | slice-05 | Matches QIS-023 and Pixel command log; help/docs now include non-interactive pinned examples for agents. | Completed in slice-05. |
107
+ | GitHub auth/alias guidance | fixed | slice-05 | Matches QP-004/QIS-009; guidance and tests cover gh install/auth plus SSH alias setup across supported shells. | Completed in slice-05. |
108
+ | Package contents safety | fixed | slice-06 | `npm pack --dry-run` first showed `Quiver_Spec_Viewer_requisitos.pdf` would be included. `.npmignore` now excludes `*.pdf`, and the follow-up JSON dry-run confirmed no PDF files in the package. | Completed in slice-06. |
109
+
110
+ ## Execution Decisions
111
+
112
+ - `slice-01` and `slice-04` are completed after `slice-00`.
113
+ - `slice-02`, `slice-03`, and `slice-04` are completed after `slice-01`.
114
+ - `slice-05` is completed after `slice-01`; `slice-06` owns final compatibility, docs sync, smoke, and release readiness.
115
+ - Graph conflict summaries and visual validation commands are kept as documented future work, not v28 blocking implementation.
116
+ - No product code was modified by `slice-00`.
117
+ - `slice-06` did not publish npm or open a PR; it only established source and package-readiness evidence.
@@ -0,0 +1,200 @@
1
+ # Evidence Report - Quiver v28 Pixel Quiver Feedback Reconciliation
2
+
3
+ ## slice-00-reconciliation-and-evidence-freeze
4
+
5
+ Completed on 2026-05-25.
6
+
7
+ ### Source Evidence Frozen
8
+
9
+ The following Pixel Quiver files were treated as evidence inputs only. They were not copied into fixtures.
10
+
11
+ | Source | SHA-256 | Modified |
12
+ |---|---|---|
13
+ | `/Users/fabrijk/Documents/Work/Proyectos Personales/nika/Pixel Quiver/QUIVER_PROBLEMS.md` | `516d8928af437fc3d20cacfe50fb78752954eb59b6dace6860cdda820aa6701d` | 2026-05-25 03:29:24 -03 |
14
+ | `/Users/fabrijk/Documents/Work/Proyectos Personales/nika/Pixel Quiver/QUIVER_IMPROVEMENT_SUGGESTIONS.md` | `43c4bfbef68fc8343b7f905f299c53716b55abcace415c9ce1088aa53ac12949` | 2026-05-25 03:29:39 -03 |
15
+ | `/Users/fabrijk/Documents/Work/Proyectos Personales/nika/Pixel Quiver/QUIVER_FRAMEWORK_IMPROVEMENTS.md` | `7a4eb66a996fc44cce80df4907a948fbef3e780a5f8fc856a6bdc2b0bd1f1ea3` | 2026-05-25 03:29:53 -03 |
16
+
17
+ Detected IDs:
18
+
19
+ - `QP-001` to `QP-028`
20
+ - `QIS-001` to `QIS-031`
21
+ - Narrative framework-improvement sections without stable IDs
22
+
23
+ ### Repository Evidence Inspected
24
+
25
+ - `README_FOR_AI.md`
26
+ - `ROADMAP.md`
27
+ - `BACKLOG.md`
28
+ - `CHANGELOG.md`
29
+ - `specs/quiver-v27-reliability-ai-workflow-hardening/COVERAGE_MATRIX.md`
30
+ - `specs/quiver-v27-reliability-ai-workflow-hardening/STATUS.md`
31
+ - `specs/quiver-v27-reliability-ai-workflow-hardening/EVIDENCE_REPORT.md`
32
+ - `src/create-quiver/commands/spec.js`
33
+ - `src/create-quiver/commands/ai.js`
34
+ - `src/create-quiver/lib/ai/run-state.js`
35
+ - `src/create-quiver/lib/ai/export-state.js`
36
+ - `src/create-quiver/lib/ai/plan-review.js`
37
+ - `src/create-quiver/lib/approvals.js`
38
+ - `src/create-quiver/lib/spec-worktrees.js`
39
+ - `src/create-quiver/lib/lifecycle.js`
40
+ - Focused tests under `tests/commands/*` and `tests/lib/*`
41
+
42
+ ### Reconciliation Outcome
43
+
44
+ - v27 is documented as complete and covers many earlier findings (`QP-001` to `QP-019`, `QIS-001` to `QIS-022`), but several later Pixel Quiver findings expose gaps that v27 either did not intend to solve or only partially solved.
45
+ - Confirmed no product-code change is required for `slice-00`.
46
+ - The final execution mapping is now captured in `COVERAGE_MATRIX.md`.
47
+ - `slice-01` and `slice-04` are the only implementation slices ready immediately after `slice-00`.
48
+
49
+ ## Final Release-Readiness Evidence
50
+
51
+ `slice-06` completed the pending final checks for source compatibility, generated docs, smoke coverage, and package contents.
52
+
53
+ ## Validation Evidence for slice-00
54
+
55
+ Passed:
56
+
57
+ - `git diff --check`
58
+ - JSON parse validation for all v28 `slice.json` files
59
+ - `node bin/create-quiver.js spec validate specs/quiver-v28-pixel-quiver-feedback-reconciliation`
60
+ - `node bin/create-quiver.js spec validate specs/quiver-v28-pixel-quiver-feedback-reconciliation --strict`
61
+ - `node bin/create-quiver.js check-slice --local specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-00-reconciliation-and-evidence-freeze/slice.json`
62
+ - `node bin/create-quiver.js next --all-ready --spec quiver-v28-pixel-quiver-feedback-reconciliation`
63
+ - `node bin/create-quiver.js plan --spec quiver-v28-pixel-quiver-feedback-reconciliation --json`
64
+
65
+ Ready slices reported after `slice-00`:
66
+
67
+ - `slice-01-ai-run-state-approvals-and-clean-output`
68
+ - `slice-04-spec-validation-scope-and-worktree-reliability`
69
+
70
+ ## slice-01-ai-run-state-approvals-and-clean-output
71
+
72
+ Completed on 2026-05-25.
73
+
74
+ ### Implementation Evidence
75
+
76
+ - Updated `src/create-quiver/commands/ai.js` so successful provider-backed planner commands print clean extracted output instead of raw stdout/stderr.
77
+ - Preserved raw provider artifact persistence and redaction for `ai plan` and `ai review-plan`.
78
+ - Updated `ai approvals` output to separate run-scoped approvals, active run, global planner approvals, and run relation.
79
+ - Added `ai run close --run <id>` to close/archive stale runs without deleting `.quiver/runs/<id>` evidence.
80
+ - Updated `src/create-quiver/lib/ai/run-state.js` so `ai status` reports the number of open runs and lists other open runs with next safe commands.
81
+
82
+ ### Validation Evidence
83
+
84
+ Passed:
85
+
86
+ - `node --test tests/commands/ai-run-state.test.js tests/commands/ai-plan.test.js tests/commands/ai-export.test.js tests/commands/cli-contract.test.js`
87
+ - `node --test tests/lib/ai-run-state.test.js tests/lib/approvals.test.js tests/lib/ai-export-state.test.js`
88
+
89
+ ## slice-04-spec-validation-scope-and-worktree-reliability
90
+
91
+ Completed on 2026-05-25.
92
+
93
+ ### Implementation Evidence
94
+
95
+ - Updated `src/create-quiver/commands/spec.js` so `spec validate` rejects slices missing execution git metadata required by local slice execution: `git.branch_type`, `git.base_branch`, `git.branch_slug`, and `git.branch_name`.
96
+ - Updated `src/create-quiver/lib/spec-worktrees.js` so `spec status` reports expected worktree paths that exist on disk but are not registered in `git worktree list` as missing/stale.
97
+ - Updated dirty checkout failures in `spec start --dry-run` to list blocking dirty files and safe recovery options without modifying state.
98
+ - Added regression coverage for exact path plus supported glob scope matching.
99
+
100
+ ### Validation Evidence
101
+
102
+ Passed:
103
+
104
+ - `node --test tests/commands/spec-validate.test.js tests/commands/spec-worktree.test.js`
105
+ - `node --test tests/lib/check-slice.test.js tests/lib/scope.test.js tests/lib/paths.test.js`
106
+
107
+ ## slice-02-structured-technical-plan-contract-and-repair-flow
108
+
109
+ Completed on 2026-05-25.
110
+
111
+ ### Implementation Evidence
112
+
113
+ - Updated `src/create-quiver/commands/ai.js` so technical-plan prompts require a fenced structured JSON contract with `spec.slices[]`.
114
+ - Added approval-time validation for `ai approve --phase technical-plan` so invalid drafts fail before `approved.md` is written.
115
+ - Added `ai repair-plan` to repair legacy approved technical plans missing `spec.slices[]` into a new provider-backed draft without mutating the approved artifact.
116
+ - Added shared `validateTechnicalPlanSpecContract` in `src/create-quiver/lib/ai/spec-generator.js`.
117
+ - Updated CLI help and dispatch so `ai repair-plan --dry-run` and `--print-prompt` are first-class commands.
118
+
119
+ ### Validation Evidence
120
+
121
+ Passed:
122
+
123
+ - `node --test tests/commands/ai-plan.test.js tests/commands/ai-plan-spec-phase.test.js tests/commands/spec-create.test.js`
124
+ - `node --test tests/commands/ai-review-plan.test.js tests/commands/flow.test.js tests/commands/cli-contract.test.js`
125
+ - `node --test tests/lib/ai-spec-generator.test.js tests/lib/approvals.test.js`
126
+
127
+ ## slice-03-active-slice-reconciliation-and-ai-inspect
128
+
129
+ Completed on 2026-05-25.
130
+
131
+ ### Implementation Evidence
132
+
133
+ - Added resolver-backed active-slice source collection for `docs/ai/ACTIVE_SLICE.md` and `ACTIVE_SLICES.md`.
134
+ - Added canonical reconciliation decisions: `preserve`, `close`, `replace`, and `blocked`.
135
+ - Added `ai active-slice status|reconcile` with dry-run-first behavior; live reconcile currently refuses writes.
136
+ - Updated `ai inspect`/lifecycle export so existing specs take precedence over stale `spec create --dry-run` lifecycle guidance.
137
+ - Added active-slice state to lifecycle export summary, dashboard data, blockers, and human inspect output.
138
+ - Hardened `ACTIVE_SLICES.md` table parsing so Markdown separator rows are ignored.
139
+
140
+ ### Validation Evidence
141
+
142
+ Passed:
143
+
144
+ - `node --test tests/commands/ai-export.test.js tests/commands/cli-contract.test.js`
145
+ - `node --test tests/lib/project-state-resolver.test.js tests/lib/ai-export-state.test.js`
146
+
147
+ ## slice-05-review-plan-closure-and-agent-dx
148
+
149
+ Completed on 2026-05-25.
150
+
151
+ ### Implementation Evidence
152
+
153
+ - Added structured `review_result` metadata to saved plan reviews with `approve`, `approve-with-risk`, and `revise` recommendations.
154
+ - Updated the review prompt to require a fenced JSON review contract.
155
+ - Updated `ai approve --phase technical-plan` to block reviews with required fixes or `revise` recommendation.
156
+ - Updated `ai approvals`/plan-review summary to include approval recommendation, blocking status, required fixes, optional hardening, and next command.
157
+ - Updated executor context-pack guidance to avoid full-spec context unless explicitly required.
158
+ - Added shell-specific GitHub CLI install and SSH alias setup guidance for macOS, Linux, Windows PowerShell, Git Bash, and WSL.
159
+ - Added agent-facing non-interactive `npx --yes create-quiver@<version>` examples to help and docs.
160
+
161
+ ### Validation Evidence
162
+
163
+ Passed:
164
+
165
+ - `node --test tests/commands/ai-review-plan.test.js tests/commands/cli-contract.test.js`
166
+ - `node --test tests/lib/ai-context-packs.test.js tests/lib/ai-github.test.js`
167
+
168
+ ## slice-06-backward-compatibility-docs-and-release-readiness
169
+
170
+ Completed on 2026-05-25.
171
+
172
+ ### Implementation Evidence
173
+
174
+ - Updated `CHANGELOG.md` with unreleased v28 additions, changes, and fixes without claiming npm publication.
175
+ - Updated `ROADMAP.md` so v28 is visible as an unreleased reconciliation/release-readiness milestone.
176
+ - Updated `README.md`, `docs/WORKFLOW.md.template`, and `docs/TROUBLESHOOTING.md.template` to match implemented review-plan, active-slice, and pinned agent-command behavior.
177
+ - Expanded `slice-06` scope to include `.npmignore` after package dry-run evidence showed a local requirements PDF would otherwise be included in the npm tarball.
178
+ - Updated `.npmignore` to exclude local `*.pdf` files from published packages.
179
+
180
+ ### Validation Evidence
181
+
182
+ Passed:
183
+
184
+ - `node --test tests/**/*.test.js` (`376` tests passed)
185
+ - `npm run smoke:doctor-fixtures` (`13` doctor fixture states passed)
186
+ - `npm run smoke:guided-workflow`
187
+ - `npm run smoke:create-quiver`
188
+ - `npm run package:quiver`
189
+ - `npm pack --dry-run --json` with a follow-up assertion that no `.pdf` files are included (`543` files)
190
+ - `git diff --check`
191
+ - `node bin/create-quiver.js spec validate specs/quiver-v28-pixel-quiver-feedback-reconciliation --strict`
192
+ - `node bin/create-quiver.js check-slice --local specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-06-backward-compatibility-docs-and-release-readiness/slice.json`
193
+ - `node bin/create-quiver.js next --all-ready --spec quiver-v28-pixel-quiver-feedback-reconciliation`
194
+
195
+ ### Release Notes
196
+
197
+ - npm publication was not performed.
198
+ - PR creation was not performed.
199
+ - `package.json` version remains `0.13.0`.
200
+ - Pre-fix package evidence showed `Quiver_Spec_Viewer_requisitos.pdf` would be packed. The file was left in the working tree and excluded through `.npmignore`.
@@ -0,0 +1,60 @@
1
+ # Execution Plan - Quiver v28 Pixel Quiver Feedback Reconciliation
2
+
3
+ ## Execution Order
4
+
5
+ ```mermaid
6
+ flowchart TD
7
+ S00[slice-00: Reconciliation and evidence freeze]
8
+ S01[slice-01: AI run state, approvals, and clean output]
9
+ S02[slice-02: Structured technical plan contract and repair flow]
10
+ S03[slice-03: Active slice reconciliation and AI inspect]
11
+ S04[slice-04: Spec validation, scope, and worktree reliability]
12
+ S05[slice-05: Review-plan closure and agent DX]
13
+ S06[slice-06: Backward compatibility, docs, and release readiness]
14
+
15
+ S00 --> S01
16
+ S00 --> S04
17
+ S01 --> S02
18
+ S01 --> S03
19
+ S01 --> S05
20
+ S02 --> S06
21
+ S03 --> S06
22
+ S04 --> S06
23
+ S05 --> S06
24
+ ```
25
+
26
+ ## Waves
27
+
28
+ ### Wave 0 - Sequential
29
+
30
+ 1. `slice-00-reconciliation-and-evidence-freeze`
31
+
32
+ This slice must run first. It decides what is already resolved, what is pending, and what must not be reimplemented.
33
+
34
+ ### Wave 1 - Parallel after slice-00
35
+
36
+ - `slice-01-ai-run-state-approvals-and-clean-output`
37
+ - `slice-04-spec-validation-scope-and-worktree-reliability`
38
+
39
+ These can run in parallel because their primary write scopes are different.
40
+
41
+ ### Wave 2 - Parallel after slice-01
42
+
43
+ - `slice-02-structured-technical-plan-contract-and-repair-flow`
44
+ - `slice-03-active-slice-reconciliation-and-ai-inspect`
45
+ - `slice-05-review-plan-closure-and-agent-dx`
46
+
47
+ These depend on the run/approval model being clarified.
48
+
49
+ ### Wave 3 - Sequential close
50
+
51
+ 1. `slice-06-backward-compatibility-docs-and-release-readiness`
52
+
53
+ This slice must run last because it validates compatibility, docs, package smoke, and final coverage.
54
+
55
+ ## Parallel Safety Notes
56
+
57
+ - Do not run slices in parallel if `slice-00` finds that their write scopes overlap more than currently expected.
58
+ - `slice-02` and `slice-05` may both touch planning prompts; if `slice-00` identifies overlap, run `slice-02` before `slice-05`.
59
+ - `slice-06` is never parallel-safe.
60
+