create-quiver 0.12.1 → 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.
- package/CHANGELOG.md +27 -0
- package/README.md +24 -9
- package/README_FOR_AI.md +15 -6
- package/ROADMAP.md +15 -2
- package/docs/COMMANDS.md.template +12 -3
- package/docs/TROUBLESHOOTING.md.template +29 -0
- package/docs/WORKFLOW.md.template +13 -12
- package/package.json +2 -1
- package/specs/quiver-v26-0121-smoke-hardening/SPEC.md +2 -2
- package/specs/quiver-v26-0121-smoke-hardening/STATUS.md +5 -5
- package/specs/quiver-v27-reliability-ai-workflow-hardening/AUDIT_V24_V25_V26.md +67 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/COMMAND_CONTRACTS.md +125 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/COVERAGE_MATRIX.md +74 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/EVIDENCE_REPORT.md +179 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/EXECUTION_PLAN.md +71 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/SPEC.md +176 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/STATUS.md +37 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/pr.md +132 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-00-docs-audit-coverage-and-contracts/CLOSURE_BRIEF.md +36 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-00-docs-audit-coverage-and-contracts/EXECUTION_BRIEF.md +56 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-00-docs-audit-coverage-and-contracts/slice.json +75 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-01-core-state-resolver-and-canonical-statuses/CLOSURE_BRIEF.md +37 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-01-core-state-resolver-and-canonical-statuses/EXECUTION_BRIEF.md +54 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-01-core-state-resolver-and-canonical-statuses/slice.json +79 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-02-json-export-contract-and-machine-output/CLOSURE_BRIEF.md +34 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-02-json-export-contract-and-machine-output/EXECUTION_BRIEF.md +54 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-02-json-export-contract-and-machine-output/slice.json +75 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-03-approved-plan-to-spec-create/CLOSURE_BRIEF.md +36 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-03-approved-plan-to-spec-create/EXECUTION_BRIEF.md +55 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-03-approved-plan-to-spec-create/slice.json +78 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-04-ai-artifact-storage-redaction-and-token-compaction/CLOSURE_BRIEF.md +31 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-04-ai-artifact-storage-redaction-and-token-compaction/EXECUTION_BRIEF.md +55 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-04-ai-artifact-storage-redaction-and-token-compaction/slice.json +77 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-05-worktree-lifecycle-locks-and-recovery/CLOSURE_BRIEF.md +31 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-05-worktree-lifecycle-locks-and-recovery/EXECUTION_BRIEF.md +55 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-05-worktree-lifecycle-locks-and-recovery/slice.json +84 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-06-validation-gates-and-scope-safety/CLOSURE_BRIEF.md +32 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-06-validation-gates-and-scope-safety/EXECUTION_BRIEF.md +57 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-06-validation-gates-and-scope-safety/slice.json +99 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-07-context-analysis-and-doctor-flow/CLOSURE_BRIEF.md +31 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-07-context-analysis-and-doctor-flow/EXECUTION_BRIEF.md +57 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-07-context-analysis-and-doctor-flow/slice.json +88 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-08-cross-platform-help-auth-and-dx/CLOSURE_BRIEF.md +31 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-08-cross-platform-help-auth-and-dx/EXECUTION_BRIEF.md +56 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-08-cross-platform-help-auth-and-dx/slice.json +85 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-09-fixtures-smoke-docs-and-release-readiness/CLOSURE_BRIEF.md +32 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-09-fixtures-smoke-docs-and-release-readiness/EXECUTION_BRIEF.md +56 -0
- package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-09-fixtures-smoke-docs-and-release-readiness/slice.json +91 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/COVERAGE_MATRIX.md +117 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/EVIDENCE_REPORT.md +200 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/EXECUTION_PLAN.md +60 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/SPEC.md +132 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/STATUS.md +36 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/pr.md +128 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-00-reconciliation-and-evidence-freeze/CLOSURE_BRIEF.md +44 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-00-reconciliation-and-evidence-freeze/EXECUTION_BRIEF.md +56 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-00-reconciliation-and-evidence-freeze/slice.json +71 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-01-ai-run-state-approvals-and-clean-output/CLOSURE_BRIEF.md +38 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-01-ai-run-state-approvals-and-clean-output/EXECUTION_BRIEF.md +53 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-01-ai-run-state-approvals-and-clean-output/slice.json +83 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-02-structured-technical-plan-contract-and-repair-flow/CLOSURE_BRIEF.md +33 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-02-structured-technical-plan-contract-and-repair-flow/EXECUTION_BRIEF.md +53 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-02-structured-technical-plan-contract-and-repair-flow/slice.json +85 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-03-active-slice-reconciliation-and-ai-inspect/CLOSURE_BRIEF.md +34 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-03-active-slice-reconciliation-and-ai-inspect/EXECUTION_BRIEF.md +52 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-03-active-slice-reconciliation-and-ai-inspect/slice.json +82 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-04-spec-validation-scope-and-worktree-reliability/CLOSURE_BRIEF.md +32 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-04-spec-validation-scope-and-worktree-reliability/EXECUTION_BRIEF.md +55 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-04-spec-validation-scope-and-worktree-reliability/slice.json +85 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-05-review-plan-closure-and-agent-dx/CLOSURE_BRIEF.md +35 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-05-review-plan-closure-and-agent-dx/EXECUTION_BRIEF.md +59 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-05-review-plan-closure-and-agent-dx/slice.json +94 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-06-backward-compatibility-docs-and-release-readiness/CLOSURE_BRIEF.md +40 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-06-backward-compatibility-docs-and-release-readiness/EXECUTION_BRIEF.md +56 -0
- package/specs/quiver-v28-pixel-quiver-feedback-reconciliation/slices/slice-06-backward-compatibility-docs-and-release-readiness/slice.json +98 -0
- package/src/create-quiver/commands/ai.js +563 -21
- package/src/create-quiver/commands/flow.js +52 -4
- package/src/create-quiver/commands/graph.js +7 -7
- package/src/create-quiver/commands/plan.js +6 -15
- package/src/create-quiver/commands/spec.js +292 -0
- package/src/create-quiver/index.js +125 -25
- package/src/create-quiver/lib/agent-profiles.js +15 -3
- package/src/create-quiver/lib/ai/artifacts.js +318 -0
- package/src/create-quiver/lib/ai/context-packs.js +2 -2
- package/src/create-quiver/lib/ai/execution-plan.js +9 -0
- package/src/create-quiver/lib/ai/executor.js +3 -2
- package/src/create-quiver/lib/ai/export-state.js +287 -95
- package/src/create-quiver/lib/ai/github.js +93 -4
- package/src/create-quiver/lib/ai/plan-review.js +161 -0
- package/src/create-quiver/lib/ai/run-state.js +17 -2
- package/src/create-quiver/lib/ai/spec-generator.js +87 -13
- package/src/create-quiver/lib/ai/spec-templates.js +72 -12
- package/src/create-quiver/lib/analyze.js +2 -2
- package/src/create-quiver/lib/approvals.js +14 -2
- package/src/create-quiver/lib/doctor.js +79 -0
- package/src/create-quiver/lib/git.js +40 -1
- package/src/create-quiver/lib/handoff.js +43 -1
- package/src/create-quiver/lib/init-docs.js +11 -7
- package/src/create-quiver/lib/init-layout.js +1 -0
- package/src/create-quiver/lib/lifecycle.js +52 -3
- package/src/create-quiver/lib/locks.js +134 -0
- package/src/create-quiver/lib/package-safety.js +7 -0
- package/src/create-quiver/lib/paths.js +74 -0
- package/src/create-quiver/lib/project-scan.js +74 -0
- package/src/create-quiver/lib/project-state-resolver.js +430 -0
- package/src/create-quiver/lib/readiness.js +48 -7
- package/src/create-quiver/lib/scope.js +2 -1
- package/src/create-quiver/lib/slice.js +8 -4
- package/src/create-quiver/lib/spec-worktrees.js +169 -38
- package/src/create-quiver/lib/statuses.js +115 -0
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slice_id": "slice-09-fixtures-smoke-docs-and-release-readiness",
|
|
3
|
+
"ticket": "QUIVER-27-09",
|
|
4
|
+
"type": "validation",
|
|
5
|
+
"title": "Fixtures, smoke, docs, and release readiness",
|
|
6
|
+
"objective": "Validate the full v27 hardening package with sanitized fixtures, local tests, smoke tests, tarball/package validation, and source-of-truth docs.",
|
|
7
|
+
"description": "Adds final regression fixtures from real dogfooding, runs full local and package smokes, synchronizes docs, records evidence, and confirms release readiness without publishing npm.",
|
|
8
|
+
"git": {
|
|
9
|
+
"branch_type": "feature",
|
|
10
|
+
"base_branch": "main",
|
|
11
|
+
"branch_slug": "v27-fixtures-smoke-docs-release-readiness",
|
|
12
|
+
"branch_name": "feature/QUIVER-27-09-fixtures-smoke-docs-release-readiness"
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"README.md",
|
|
16
|
+
"README_FOR_AI.md",
|
|
17
|
+
"ROADMAP.md",
|
|
18
|
+
"CHANGELOG.md",
|
|
19
|
+
"tests/**",
|
|
20
|
+
"scripts/**",
|
|
21
|
+
"specs/quiver-v27-reliability-ai-workflow-hardening/**"
|
|
22
|
+
],
|
|
23
|
+
"expected_read_paths": [
|
|
24
|
+
"README.md",
|
|
25
|
+
"README_FOR_AI.md",
|
|
26
|
+
"ROADMAP.md",
|
|
27
|
+
"CHANGELOG.md",
|
|
28
|
+
"package.json",
|
|
29
|
+
"scripts/package-quiver.sh",
|
|
30
|
+
"scripts/ci/**",
|
|
31
|
+
"tests/**",
|
|
32
|
+
"specs/quiver-v27-reliability-ai-workflow-hardening/**"
|
|
33
|
+
],
|
|
34
|
+
"allowed_write_paths": [
|
|
35
|
+
"README.md",
|
|
36
|
+
"README_FOR_AI.md",
|
|
37
|
+
"ROADMAP.md",
|
|
38
|
+
"CHANGELOG.md",
|
|
39
|
+
"tests/**",
|
|
40
|
+
"scripts/**",
|
|
41
|
+
"specs/quiver-v27-reliability-ai-workflow-hardening/**"
|
|
42
|
+
],
|
|
43
|
+
"depends_on": [
|
|
44
|
+
"slice-02-json-export-contract-and-machine-output",
|
|
45
|
+
"slice-03-approved-plan-to-spec-create",
|
|
46
|
+
"slice-04-ai-artifact-storage-redaction-and-token-compaction",
|
|
47
|
+
"slice-05-worktree-lifecycle-locks-and-recovery",
|
|
48
|
+
"slice-06-validation-gates-and-scope-safety",
|
|
49
|
+
"slice-07-context-analysis-and-doctor-flow",
|
|
50
|
+
"slice-08-cross-platform-help-auth-and-dx"
|
|
51
|
+
],
|
|
52
|
+
"parallel_safe": "no",
|
|
53
|
+
"parallel_safe_reason": "Final validation and docs sync must run after all implementation slices.",
|
|
54
|
+
"must": [
|
|
55
|
+
"Add sanitized fixtures that represent real dogfooding failures.",
|
|
56
|
+
"Run full command and lib tests.",
|
|
57
|
+
"Run smoke suites.",
|
|
58
|
+
"Run package/tarball smoke from outside the repo.",
|
|
59
|
+
"Update source-of-truth docs only with implemented behavior.",
|
|
60
|
+
"Record release readiness evidence without publishing."
|
|
61
|
+
],
|
|
62
|
+
"not_included": [
|
|
63
|
+
"Publishing npm.",
|
|
64
|
+
"Opening PR unless requested.",
|
|
65
|
+
"Adding unsanitized local paths or credentials."
|
|
66
|
+
],
|
|
67
|
+
"acceptance": [
|
|
68
|
+
"All v27 QP/QIS coverage items are either fixed, validated, or documented as remaining risk.",
|
|
69
|
+
"Sanitized fixtures cover Pixel Quiver completed specs, path with spaces, no Git, old .quiver state, multiple specs, and stale docs.",
|
|
70
|
+
"node --test tests/**/*.test.js passes.",
|
|
71
|
+
"smoke:create-quiver, smoke:guided-workflow, and smoke:doctor-fixtures pass or documented blockers are resolved.",
|
|
72
|
+
"Package/tarball smoke validates installed CLI behavior rather than only source code.",
|
|
73
|
+
"README, README_FOR_AI, ROADMAP, and CHANGELOG are synchronized with actual implementation state."
|
|
74
|
+
],
|
|
75
|
+
"tests": [
|
|
76
|
+
"node --test tests/**/*.test.js",
|
|
77
|
+
"npm run smoke:create-quiver",
|
|
78
|
+
"npm run smoke:guided-workflow",
|
|
79
|
+
"npm run smoke:doctor-fixtures",
|
|
80
|
+
"npm run package:quiver",
|
|
81
|
+
"git diff --check"
|
|
82
|
+
],
|
|
83
|
+
"validation_hints": [
|
|
84
|
+
"Run package smoke from /private/tmp or another clean directory.",
|
|
85
|
+
"Confirm fixtures do not contain private tokens or unnecessary personal paths."
|
|
86
|
+
],
|
|
87
|
+
"estimated_hours": 5,
|
|
88
|
+
"status": "completed",
|
|
89
|
+
"completed_at": "2026-05-24",
|
|
90
|
+
"blocked_reason": null
|
|
91
|
+
}
|
|
@@ -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
|
+
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
# Quiver v28 - Pixel Quiver Feedback Reconciliation
|
|
2
|
+
|
|
3
|
+
**Date:** 2026-05-25
|
|
4
|
+
**Status:** Completed
|
|
5
|
+
**Source:** Pixel Quiver dogfooding follow-up after `create-quiver@0.13.0`
|
|
6
|
+
|
|
7
|
+
Slice numbering resets here. This spec intentionally starts at `slice-00`.
|
|
8
|
+
|
|
9
|
+
## Problem
|
|
10
|
+
|
|
11
|
+
Pixel Quiver produced a second set of framework feedback after Quiver v27 shipped in `create-quiver@0.13.0`. The repository source of truth says v27 already covered `QP-001` to `QP-019` and `QIS-001` to `QIS-022`, but the Pixel Quiver files still list several of those items as open and add later issues around `spec create`, repair flows, active-slice reconciliation, worktrees, and `ai inspect`.
|
|
12
|
+
|
|
13
|
+
The risk is implementing duplicate fixes or missing regressions. Quiver needs a reconciliation-first spec that verifies what v27 truly covers, then fixes only the remaining, partial, regressed, or newly observed gaps.
|
|
14
|
+
|
|
15
|
+
## Objective
|
|
16
|
+
|
|
17
|
+
Reconcile Pixel Quiver feedback against the current Quiver implementation, then harden the unresolved workflow gaps across AI runs, approvals, structured technical plans, active-slice state, spec validation, worktrees, plan reviews, agent DX, documentation, and release readiness.
|
|
18
|
+
|
|
19
|
+
## Evidence Sources
|
|
20
|
+
|
|
21
|
+
Primary input files:
|
|
22
|
+
|
|
23
|
+
- `/Users/fabrijk/Documents/Work/Proyectos Personales/nika/Pixel Quiver/QUIVER_PROBLEMS.md`
|
|
24
|
+
- `/Users/fabrijk/Documents/Work/Proyectos Personales/nika/Pixel Quiver/QUIVER_IMPROVEMENT_SUGGESTIONS.md`
|
|
25
|
+
- `/Users/fabrijk/Documents/Work/Proyectos Personales/nika/Pixel Quiver/QUIVER_FRAMEWORK_IMPROVEMENTS.md`
|
|
26
|
+
|
|
27
|
+
Repository source-of-truth files:
|
|
28
|
+
|
|
29
|
+
- `README_FOR_AI.md`
|
|
30
|
+
- `ROADMAP.md`
|
|
31
|
+
- `BACKLOG.md`
|
|
32
|
+
- `specs/quiver-v27-reliability-ai-workflow-hardening/**`
|
|
33
|
+
|
|
34
|
+
## Core Decisions
|
|
35
|
+
|
|
36
|
+
- Do not reimplement v27 behavior blindly.
|
|
37
|
+
- `slice-00` must freeze and reconcile evidence before implementation slices start.
|
|
38
|
+
- Each finding must end as `verified-resolved`, `fixed`, `documented-risk`, `duplicate`, or `out-of-scope-with-reason`.
|
|
39
|
+
- No npm publication or PR creation is included in this spec.
|
|
40
|
+
- Changes must remain backward compatible by default unless a stricter mode is explicitly documented.
|
|
41
|
+
- `--dry-run` behavior must remain read-only.
|
|
42
|
+
- Machine-readable output must be valid without stripping human logs.
|
|
43
|
+
|
|
44
|
+
## Scope
|
|
45
|
+
|
|
46
|
+
### Included
|
|
47
|
+
|
|
48
|
+
- Reconciliation matrix for all supplied Pixel Quiver `QP-*`, `QIS-*`, and framework improvement sections.
|
|
49
|
+
- AI run lifecycle and approval clarity.
|
|
50
|
+
- Clean AI command output and raw provider log persistence.
|
|
51
|
+
- Structured `spec.slices[]` contract for technical plans.
|
|
52
|
+
- Safe repair path for approved technical plans with missing structure.
|
|
53
|
+
- Active-slice multi-source reconciliation.
|
|
54
|
+
- `ai inspect` behavior after manual/fallback spec creation.
|
|
55
|
+
- `spec validate`, `check-slice`, `spec status`, `spec start`, scope, and worktree reliability.
|
|
56
|
+
- Structured `ai review-plan` closure metadata.
|
|
57
|
+
- Agent command DX using `npx --yes create-quiver@<version>`.
|
|
58
|
+
- Cross-platform help, docs, fixtures, tests, smoke coverage, and release readiness.
|
|
59
|
+
|
|
60
|
+
### Excluded
|
|
61
|
+
|
|
62
|
+
- Pixel Quiver application changes.
|
|
63
|
+
- Building a web dashboard inside Quiver core.
|
|
64
|
+
- Publishing npm.
|
|
65
|
+
- Opening a PR.
|
|
66
|
+
- Removing legacy compatibility without migration.
|
|
67
|
+
- Storing provider credentials.
|
|
68
|
+
|
|
69
|
+
## Acceptance Criteria
|
|
70
|
+
|
|
71
|
+
1. Given v27 claims coverage for earlier findings, when `slice-00` completes, then every supplied finding is classified with evidence as resolved, partial, pending, regression, duplicate, or out of scope.
|
|
72
|
+
2. Given a finding is already resolved by v27, when the final matrix is produced, then it is not reimplemented unless a regression test proves it still fails.
|
|
73
|
+
3. Given a finding is pending or partial, when implementation starts, then it is mapped to exactly one primary slice and at least one validation artifact.
|
|
74
|
+
4. Given an AI run is active, when another run is created or inspected, then Quiver avoids mixing scopes and shows the next safe action.
|
|
75
|
+
5. Given approvals exist across multiple runs, when `ai approvals` runs, then active, historical, stale, orphaned, and run-specific approvals are distinguishable.
|
|
76
|
+
6. Given `ai onboard`, `ai plan`, or provider-backed commands run, when output is shown, then useful human output is separated from raw logs and redacted raw artifacts are persisted separately.
|
|
77
|
+
7. Given a technical plan is generated, when it is approved or used by `spec create`, then it contains a parseable structured `spec.slices[]` contract or fails before writing files.
|
|
78
|
+
8. Given an approved plan lacks required structure, when the user requests repair, then Quiver can create a derived draft without mutating the approved artifact and requires review plus approval.
|
|
79
|
+
9. Given active slice state exists in multiple files, when reconciliation runs, then Quiver reports all sources and supports safe dry-run decisions: preserve, close, replace, or block.
|
|
80
|
+
10. Given a spec was created manually or by fallback, when `ai inspect` runs, then it reconciles existing specs and suggests `spec validate`, `next`, or `ai prompt-slice` instead of stale `spec create`.
|
|
81
|
+
11. Given `spec validate` runs, when slices are structurally invalid for execution, then the command detects the relevant `check-slice --local` failures or reports them as strict warnings.
|
|
82
|
+
12. Given a spec worktree path is missing, stale, dirty, or not listed by Git, when `spec status` runs, then the command reports the real state and recovery guidance.
|
|
83
|
+
13. Given `spec start --dry-run` finds a dirty checkout, when it fails, then it lists blocking files and safe options without modifying state.
|
|
84
|
+
14. Given `ai review-plan` runs, when it finishes, then it emits structured metadata for blocking status, approval recommendation, required fixes, optional hardening, and next command.
|
|
85
|
+
15. Given generated examples target agents, when commands are printed, then non-interactive versioned examples use `npx --yes create-quiver@<version>`.
|
|
86
|
+
16. Given docs are updated, when the spec closes, then `README_FOR_AI.md`, `README.md`, `CHANGELOG.md`, and `ROADMAP.md` do not contradict the implemented state.
|
|
87
|
+
17. Given final validation runs, when release readiness is checked, then source tests and package/tarball smoke evidence are recorded.
|
|
88
|
+
|
|
89
|
+
## Technical Plan
|
|
90
|
+
|
|
91
|
+
1. Freeze evidence and create the reconciliation matrix before implementation.
|
|
92
|
+
2. Add focused fixtures for unresolved or regressed cases.
|
|
93
|
+
3. Harden AI run state and approvals before touching spec generation.
|
|
94
|
+
4. Enforce the structured technical-plan contract and repair path.
|
|
95
|
+
5. Add active-slice reconciliation and stale `ai inspect` recovery.
|
|
96
|
+
6. Align validation gates and worktree reporting.
|
|
97
|
+
7. Add plan-review closure metadata and agent-friendly command examples.
|
|
98
|
+
8. Close with compatibility tests, documentation sync, smoke coverage, and release evidence.
|
|
99
|
+
|
|
100
|
+
## Slice Roadmap
|
|
101
|
+
|
|
102
|
+
| Slice | Title | Status | Dependencies |
|
|
103
|
+
|---|---|---|---|
|
|
104
|
+
| slice-00 | Reconciliation and evidence freeze | completed | none |
|
|
105
|
+
| slice-01 | AI run state, approvals, and clean output | completed | slice-00 |
|
|
106
|
+
| slice-02 | Structured technical plan contract and repair flow | completed | slice-00, slice-01 |
|
|
107
|
+
| slice-03 | Active slice reconciliation and AI inspect | completed | slice-00, slice-01 |
|
|
108
|
+
| slice-04 | Spec validation, scope, and worktree reliability | completed | slice-00 |
|
|
109
|
+
| slice-05 | Review-plan closure and agent DX | completed | slice-00, slice-01 |
|
|
110
|
+
| slice-06 | Backward compatibility, docs, and release readiness | completed | slice-01, slice-02, slice-03, slice-04, slice-05 |
|
|
111
|
+
|
|
112
|
+
## Validation Strategy
|
|
113
|
+
|
|
114
|
+
- `node --test tests/**/*.test.js`
|
|
115
|
+
- `npm run smoke:doctor-fixtures`
|
|
116
|
+
- `npm run smoke:guided-workflow`
|
|
117
|
+
- `npm run smoke:create-quiver`
|
|
118
|
+
- `npm run package:quiver`
|
|
119
|
+
- package/tarball smoke from a temporary directory
|
|
120
|
+
- `git diff --check`
|
|
121
|
+
- JSON parse validation for all `slice.json`
|
|
122
|
+
- `npx create-quiver spec validate specs/quiver-v28-pixel-quiver-feedback-reconciliation`
|
|
123
|
+
- `npx create-quiver check-handoff` for each execution and closure brief
|
|
124
|
+
|
|
125
|
+
## Risks
|
|
126
|
+
|
|
127
|
+
- Some findings may already be fixed by v27 and only stale in Pixel Quiver docs.
|
|
128
|
+
- Tightening validation can break older project specs if strict behavior is not gated.
|
|
129
|
+
- AI lifecycle changes can affect existing `.quiver/runs` and `.quiver/approvals` state.
|
|
130
|
+
- Worktree changes can affect users with in-flight branches.
|
|
131
|
+
- Real dogfooding evidence contains absolute local paths and must not be copied into fixtures without sanitization.
|
|
132
|
+
- Local non-package files can accidentally enter npm tarballs unless ignored; v28 added `*.pdf` to `.npmignore` after package dry-run evidence.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Status - Quiver v28 Pixel Quiver Feedback Reconciliation
|
|
2
|
+
|
|
3
|
+
## Overall Status
|
|
4
|
+
|
|
5
|
+
- Phase: Final validation complete
|
|
6
|
+
- Progress: 100%
|
|
7
|
+
- Current recommended slice: none
|
|
8
|
+
- Source evidence: Pixel Quiver feedback files after `create-quiver@0.13.0`
|
|
9
|
+
|
|
10
|
+
## Slices
|
|
11
|
+
|
|
12
|
+
| Slice | Title | Status | Progress | Dependencies |
|
|
13
|
+
|---|---|---|---:|---|
|
|
14
|
+
| slice-00 | Reconciliation and evidence freeze | completed | 100% | none |
|
|
15
|
+
| slice-01 | AI run state, approvals, and clean output | completed | 100% | slice-00 |
|
|
16
|
+
| slice-02 | Structured technical plan contract and repair flow | completed | 100% | slice-00, slice-01 |
|
|
17
|
+
| slice-03 | Active slice reconciliation and AI inspect | completed | 100% | slice-00, slice-01 |
|
|
18
|
+
| slice-04 | Spec validation, scope, and worktree reliability | completed | 100% | slice-00 |
|
|
19
|
+
| slice-05 | Review-plan closure and agent DX | completed | 100% | slice-00, slice-01 |
|
|
20
|
+
| slice-06 | Backward compatibility, docs, and release readiness | completed | 100% | slice-01, slice-02, slice-03, slice-04, slice-05 |
|
|
21
|
+
|
|
22
|
+
## Blockers
|
|
23
|
+
|
|
24
|
+
- None.
|
|
25
|
+
|
|
26
|
+
## Known Production Concerns
|
|
27
|
+
|
|
28
|
+
- v27 already covers part of the Pixel Quiver feedback; remaining slices must not duplicate verified-resolved work.
|
|
29
|
+
- Pixel Quiver evidence contains absolute local paths and must remain evidence only unless sanitized into fixtures.
|
|
30
|
+
- Backward compatibility for existing `.quiver/runs`, `.quiver/approvals`, active-slice docs, and worktree state is mandatory.
|
|
31
|
+
- Tightening validation must avoid breaking older specs by default; strict behavior should be explicit when needed.
|
|
32
|
+
- A local PDF in the repo root was detected by `npm pack --dry-run`; `.npmignore` now excludes `*.pdf` to avoid accidental package publication.
|
|
33
|
+
|
|
34
|
+
## Next Step
|
|
35
|
+
|
|
36
|
+
Prepare the PR/release decision outside this spec. npm publication and PR creation were intentionally not performed here.
|