create-quiver 0.12.0 → 0.13.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 +52 -0
- package/README.md +65 -25
- package/README_FOR_AI.md +36 -29
- package/ROADMAP.md +22 -3
- package/docs/AI_ONBOARDING_PROMPT.md.template +7 -1
- package/docs/COMMANDS.md.template +53 -20
- package/docs/STATUS.md.template +5 -1
- package/docs/WORKFLOW.md.template +13 -11
- package/package.json +10 -3
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/EVIDENCE_REPORT.md +293 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/EXECUTION_PLAN.md +58 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/SPEC.md +242 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/STATUS.md +35 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/pr.md +77 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-00-spec-foundation/CLOSURE_BRIEF.md +34 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-00-spec-foundation/EXECUTION_BRIEF.md +52 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-00-spec-foundation/slice.json +52 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-01-cli-contract-compatibility/CLOSURE_BRIEF.md +36 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-01-cli-contract-compatibility/EXECUTION_BRIEF.md +52 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-01-cli-contract-compatibility/slice.json +56 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-02-run-state-phase-locks/CLOSURE_BRIEF.md +43 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-02-run-state-phase-locks/EXECUTION_BRIEF.md +54 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-02-run-state-phase-locks/slice.json +52 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-03-safe-ai-onboarding-docs/CLOSURE_BRIEF.md +35 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-03-safe-ai-onboarding-docs/EXECUTION_BRIEF.md +53 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-03-safe-ai-onboarding-docs/slice.json +54 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-04-agent-profiles-adapters/CLOSURE_BRIEF.md +34 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-04-agent-profiles-adapters/EXECUTION_BRIEF.md +54 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-04-agent-profiles-adapters/slice.json +52 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-05-approval-gates/CLOSURE_BRIEF.md +34 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-05-approval-gates/EXECUTION_BRIEF.md +54 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-05-approval-gates/slice.json +53 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-06-spec-slice-generator/CLOSURE_BRIEF.md +33 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-06-spec-slice-generator/EXECUTION_BRIEF.md +56 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-06-spec-slice-generator/slice.json +55 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-07-slice-execution-planner/CLOSURE_BRIEF.md +33 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-07-slice-execution-planner/EXECUTION_BRIEF.md +54 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-07-slice-execution-planner/slice.json +52 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-08-controlled-slice-execution/CLOSURE_BRIEF.md +39 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-08-controlled-slice-execution/EXECUTION_BRIEF.md +56 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-08-controlled-slice-execution/slice.json +53 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-09-git-worktree-pr-lifecycle/CLOSURE_BRIEF.md +38 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-09-git-worktree-pr-lifecycle/EXECUTION_BRIEF.md +57 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-09-git-worktree-pr-lifecycle/slice.json +52 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-10-validation-errors-fixtures/CLOSURE_BRIEF.md +39 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-10-validation-errors-fixtures/EXECUTION_BRIEF.md +55 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-10-validation-errors-fixtures/slice.json +56 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-11-export-dashboard-migration/CLOSURE_BRIEF.md +36 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-11-export-dashboard-migration/EXECUTION_BRIEF.md +54 -0
- package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-11-export-dashboard-migration/slice.json +53 -0
- package/specs/quiver-v26-0121-smoke-hardening/EVIDENCE_REPORT.md +208 -0
- package/specs/quiver-v26-0121-smoke-hardening/EXECUTION_PLAN.md +57 -0
- package/specs/quiver-v26-0121-smoke-hardening/SPEC.md +137 -0
- package/specs/quiver-v26-0121-smoke-hardening/STATUS.md +32 -0
- package/specs/quiver-v26-0121-smoke-hardening/pr.md +96 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-00-docs-foundation/CLOSURE_BRIEF.md +35 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-00-docs-foundation/EXECUTION_BRIEF.md +55 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-00-docs-foundation/slice.json +73 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-01-cli-help-version-contract/CLOSURE_BRIEF.md +38 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-01-cli-help-version-contract/EXECUTION_BRIEF.md +51 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-01-cli-help-version-contract/slice.json +76 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-02-init-doc-links-and-flow-guidance/CLOSURE_BRIEF.md +37 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-02-init-doc-links-and-flow-guidance/EXECUTION_BRIEF.md +52 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-02-init-doc-links-and-flow-guidance/slice.json +75 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-03-ai-approval-review-consistency/CLOSURE_BRIEF.md +37 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-03-ai-approval-review-consistency/EXECUTION_BRIEF.md +53 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-03-ai-approval-review-consistency/slice.json +77 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-04-local-validation-brief-contracts/CLOSURE_BRIEF.md +35 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-04-local-validation-brief-contracts/EXECUTION_BRIEF.md +52 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-04-local-validation-brief-contracts/slice.json +77 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-05-demo-scaffold-readiness/CLOSURE_BRIEF.md +34 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-05-demo-scaffold-readiness/EXECUTION_BRIEF.md +54 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-05-demo-scaffold-readiness/slice.json +84 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-06-plan-graph-scope-performance/CLOSURE_BRIEF.md +35 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-06-plan-graph-scope-performance/EXECUTION_BRIEF.md +53 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-06-plan-graph-scope-performance/slice.json +82 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-07-smoke-release-readiness/CLOSURE_BRIEF.md +35 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-07-smoke-release-readiness/EXECUTION_BRIEF.md +55 -0
- package/specs/quiver-v26-0121-smoke-hardening/slices/slice-07-smoke-release-readiness/slice.json +92 -0
- 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/src/create-quiver/commands/ai.js +652 -27
- package/src/create-quiver/commands/flow.js +58 -9
- package/src/create-quiver/commands/graph.js +11 -9
- package/src/create-quiver/commands/plan.js +7 -16
- package/src/create-quiver/commands/spec.js +282 -0
- package/src/create-quiver/index.js +409 -31
- package/src/create-quiver/lib/actionable-error.js +27 -0
- package/src/create-quiver/lib/agent-profiles.js +16 -4
- package/src/create-quiver/lib/ai/artifacts.js +318 -0
- package/src/create-quiver/lib/ai/context-packs.js +4 -0
- package/src/create-quiver/lib/ai/execution-plan.js +16 -1
- package/src/create-quiver/lib/ai/executor.js +272 -21
- package/src/create-quiver/lib/ai/export-state.js +679 -0
- package/src/create-quiver/lib/ai/github.js +162 -2
- package/src/create-quiver/lib/ai/onboarding-template.js +215 -2
- package/src/create-quiver/lib/ai/plan-review.js +7 -2
- package/src/create-quiver/lib/ai/providers.js +4 -3
- package/src/create-quiver/lib/ai/run-state.js +414 -0
- package/src/create-quiver/lib/ai/spec-generator.js +84 -13
- package/src/create-quiver/lib/ai/spec-templates.js +150 -21
- package/src/create-quiver/lib/analyze.js +2 -2
- package/src/create-quiver/lib/approvals.js +36 -5
- package/src/create-quiver/lib/demo.js +189 -14
- package/src/create-quiver/lib/doctor.js +154 -0
- package/src/create-quiver/lib/git.js +40 -1
- package/src/create-quiver/lib/handoff.js +123 -12
- package/src/create-quiver/lib/init-docs.js +35 -13
- package/src/create-quiver/lib/init-layout.js +9 -0
- package/src/create-quiver/lib/json.js +53 -3
- 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 +236 -0
- package/src/create-quiver/lib/readiness.js +66 -10
- package/src/create-quiver/lib/scope.js +52 -8
- package/src/create-quiver/lib/slice-graph.js +138 -38
- package/src/create-quiver/lib/slice.js +14 -5
- package/src/create-quiver/lib/spec-worktrees.js +129 -32
- package/src/create-quiver/lib/statuses.js +115 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# EXECUTION BRIEF - slice-07: Smoke and release readiness
|
|
2
|
+
|
|
3
|
+
## Context
|
|
4
|
+
|
|
5
|
+
This final slice proves the hotfix is ready for PR, merge, and later npm publication. It should not publish npm itself.
|
|
6
|
+
|
|
7
|
+
## Objective
|
|
8
|
+
|
|
9
|
+
Run full validation, prepare `0.12.1` package metadata, perform candidate tarball smoke, and record evidence.
|
|
10
|
+
|
|
11
|
+
## Scope
|
|
12
|
+
|
|
13
|
+
- Version metadata.
|
|
14
|
+
- Changelog/release notes.
|
|
15
|
+
- Test and smoke scripts if needed.
|
|
16
|
+
- Evidence report and PR body.
|
|
17
|
+
|
|
18
|
+
## Acceptance Criteria
|
|
19
|
+
|
|
20
|
+
- Full test suite passes.
|
|
21
|
+
- Required smokes pass.
|
|
22
|
+
- Candidate tarball smoke passes from `/private/tmp`.
|
|
23
|
+
- Package metadata targets `0.12.1`.
|
|
24
|
+
- Evidence and PR body are updated.
|
|
25
|
+
|
|
26
|
+
## Technical Plan Summary
|
|
27
|
+
|
|
28
|
+
Integrate all previous slices, run package safety and clean install smoke, then update release artifacts for PR review.
|
|
29
|
+
|
|
30
|
+
## Suggested Execution Steps
|
|
31
|
+
|
|
32
|
+
1. Confirm all prior slices are complete.
|
|
33
|
+
2. Bump package metadata to `0.12.1`.
|
|
34
|
+
3. Run full test and smoke suite.
|
|
35
|
+
4. Run `npm pack` and smoke the tarball from `/private/tmp`.
|
|
36
|
+
5. Update `EVIDENCE_REPORT.md`, `STATUS.md`, `CHANGELOG.md`, and `pr.md`.
|
|
37
|
+
6. Leave npm publication for post-merge release.
|
|
38
|
+
|
|
39
|
+
## Restrictions
|
|
40
|
+
|
|
41
|
+
- Do not publish npm.
|
|
42
|
+
- Do not create the real demo project in `/Prueba`.
|
|
43
|
+
- Do not ignore failed smoke output.
|
|
44
|
+
|
|
45
|
+
## Risks
|
|
46
|
+
|
|
47
|
+
- Tarball smoke may reveal packaging-only issues not covered by local tests.
|
|
48
|
+
|
|
49
|
+
## Completion Checklist
|
|
50
|
+
|
|
51
|
+
- [ ] Full tests passed.
|
|
52
|
+
- [ ] Smokes passed.
|
|
53
|
+
- [ ] Tarball smoke passed.
|
|
54
|
+
- [ ] Evidence recorded.
|
|
55
|
+
- [ ] Version metadata ready.
|
package/specs/quiver-v26-0121-smoke-hardening/slices/slice-07-smoke-release-readiness/slice.json
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slice_id": "slice-07-smoke-release-readiness",
|
|
3
|
+
"ticket": "QUIVER-26-07",
|
|
4
|
+
"type": "release",
|
|
5
|
+
"title": "Smoke and release readiness",
|
|
6
|
+
"objective": "Validate the hotfix end to end, prepare 0.12.1 package metadata, and record evidence before PR and publication.",
|
|
7
|
+
"description": "Run the full validation suite, candidate tarball smoke, documentation sync, version bump, evidence updates, and release-readiness checks.",
|
|
8
|
+
"git": {
|
|
9
|
+
"branch_type": "feature",
|
|
10
|
+
"base_branch": "main",
|
|
11
|
+
"branch_slug": "smoke-release-readiness",
|
|
12
|
+
"branch_name": "feature/QUIVER-26-07-smoke-release-readiness"
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"package.json",
|
|
16
|
+
"package-lock.json",
|
|
17
|
+
"CHANGELOG.md",
|
|
18
|
+
"README_FOR_AI.md",
|
|
19
|
+
"ROADMAP.md",
|
|
20
|
+
"scripts/ci/**",
|
|
21
|
+
"specs/quiver-v26-0121-smoke-hardening/**",
|
|
22
|
+
"tests/**"
|
|
23
|
+
],
|
|
24
|
+
"expected_read_paths": [
|
|
25
|
+
"package.json",
|
|
26
|
+
"package-lock.json",
|
|
27
|
+
"CHANGELOG.md",
|
|
28
|
+
"scripts/release-quiver.sh",
|
|
29
|
+
"scripts/package-quiver.sh",
|
|
30
|
+
"scripts/ci/**",
|
|
31
|
+
"specs/quiver-v26-0121-smoke-hardening/EVIDENCE_REPORT.md"
|
|
32
|
+
],
|
|
33
|
+
"allowed_write_paths": [
|
|
34
|
+
"package.json",
|
|
35
|
+
"package-lock.json",
|
|
36
|
+
"CHANGELOG.md",
|
|
37
|
+
"README_FOR_AI.md",
|
|
38
|
+
"ROADMAP.md",
|
|
39
|
+
"scripts/ci/**",
|
|
40
|
+
"specs/quiver-v26-0121-smoke-hardening/**",
|
|
41
|
+
"tests/**"
|
|
42
|
+
],
|
|
43
|
+
"depends_on": [
|
|
44
|
+
"slice-01-cli-help-version-contract",
|
|
45
|
+
"slice-02-init-doc-links-and-flow-guidance",
|
|
46
|
+
"slice-03-ai-approval-review-consistency",
|
|
47
|
+
"slice-04-local-validation-brief-contracts",
|
|
48
|
+
"slice-05-demo-scaffold-readiness",
|
|
49
|
+
"slice-06-plan-graph-scope-performance"
|
|
50
|
+
],
|
|
51
|
+
"parallel_safe": "no",
|
|
52
|
+
"parallel_safe_reason": "Final integration and release readiness must run after every implementation slice.",
|
|
53
|
+
"must": [
|
|
54
|
+
"Bump package metadata to 0.12.1 only after implementation slices are complete.",
|
|
55
|
+
"Run full local tests and smokes.",
|
|
56
|
+
"Run candidate tarball smoke from a clean temp directory.",
|
|
57
|
+
"Record evidence and remaining risks.",
|
|
58
|
+
"Prepare PR body and release notes without publishing npm."
|
|
59
|
+
],
|
|
60
|
+
"not_included": [
|
|
61
|
+
"Publishing npm before PR merge.",
|
|
62
|
+
"Creating the real Quiver Spec Viewer project.",
|
|
63
|
+
"Skipping failed smoke results."
|
|
64
|
+
],
|
|
65
|
+
"acceptance": [
|
|
66
|
+
"node --test tests/**/*.test.js passes.",
|
|
67
|
+
"npm run smoke:create-quiver passes.",
|
|
68
|
+
"npm run smoke:guided-workflow passes.",
|
|
69
|
+
"npm run smoke:doctor-fixtures passes.",
|
|
70
|
+
"git diff --check passes.",
|
|
71
|
+
"Candidate tarball smoke validates init, analyze, doctor, flow, AI dry-runs, demo, and validate.",
|
|
72
|
+
"CHANGELOG.md and evidence report document 0.12.1 readiness."
|
|
73
|
+
],
|
|
74
|
+
"tests": [
|
|
75
|
+
"node --test tests/**/*.test.js",
|
|
76
|
+
"npm run smoke:create-quiver",
|
|
77
|
+
"npm run smoke:guided-workflow",
|
|
78
|
+
"npm run smoke:doctor-fixtures",
|
|
79
|
+
"npm pack",
|
|
80
|
+
"git diff --check"
|
|
81
|
+
],
|
|
82
|
+
"validation_hints": [
|
|
83
|
+
"Use /private/tmp for tarball smoke.",
|
|
84
|
+
"Do not rely on the local checkout path for candidate validation.",
|
|
85
|
+
"After merge and publish, verify npm with npm view create-quiver version."
|
|
86
|
+
],
|
|
87
|
+
"estimated_hours": 4,
|
|
88
|
+
"status": "completed",
|
|
89
|
+
"blocked_reason": null,
|
|
90
|
+
"actual_hours": 3,
|
|
91
|
+
"completed_at": "2026-05-23T00:00:00-0300"
|
|
92
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# Audit - v24/v25/v26 Against Pixel Quiver Evidence
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
This audit records the starting point for v27. It separates already existing implementation surfaces from behavior that remains partial, fragile, or unproven by the Pixel Quiver dogfooding evidence.
|
|
6
|
+
|
|
7
|
+
## Audited Inputs
|
|
8
|
+
|
|
9
|
+
- `README_FOR_AI.md`
|
|
10
|
+
- `ROADMAP.md`
|
|
11
|
+
- `CHANGELOG.md`
|
|
12
|
+
- `specs/quiver-v24-dx-onboarding-hardening/**`
|
|
13
|
+
- `specs/quiver-v25-ai-first-lifecycle-orchestrator/**`
|
|
14
|
+
- `specs/quiver-v26-0121-smoke-hardening/**`
|
|
15
|
+
- `src/create-quiver/**`
|
|
16
|
+
- `tests/**`
|
|
17
|
+
- Pixel Quiver evidence files containing `QP-001..QP-019` and `QIS-001..QIS-022`
|
|
18
|
+
|
|
19
|
+
## Existing Coverage Observed
|
|
20
|
+
|
|
21
|
+
The current repository already contains implementation and tests in several areas that v27 must reuse instead of rebuilding from scratch:
|
|
22
|
+
|
|
23
|
+
| Area | Existing evidence in repo |
|
|
24
|
+
|---|---|
|
|
25
|
+
| `flow`, onboarding, and first-use guidance | `src/create-quiver/commands/flow.js`, `tests/commands/flow.test.js`, v24/v25/v26 docs. |
|
|
26
|
+
| Context analysis and context preparation | `src/create-quiver/commands/analyze.js`, `src/create-quiver/commands/prepare-context.js`, `tests/commands/analyze.test.js`, `tests/commands/prepare-context.test.js`. |
|
|
27
|
+
| Doctor diagnostics | `src/create-quiver/commands/doctor.js`, `tests/commands/doctor.test.js`, doctor fixture scripts. |
|
|
28
|
+
| AI lifecycle commands | `src/create-quiver/commands/ai-onboard.js`, `ai-plan.js`, `ai-revise.js`, `ai-approve.js`, `ai-execute-plan.js`, `ai-export.js`, and related tests. |
|
|
29
|
+
| AI export/state helpers | `src/create-quiver/lib/ai/export-state.js`, `tests/lib/ai-export-state.test.js`, `tests/commands/ai-export.test.js`. |
|
|
30
|
+
| Spec and worktree lifecycle | `src/create-quiver/commands/spec-create.js`, `spec-start.js`, `spec-status.js`, `spec-close.js`, `src/create-quiver/lib/spec-worktrees.js`, related command tests. |
|
|
31
|
+
| Scope, slice, handoff, and path validation | `src/create-quiver/commands/check-scope.js`, `check-slice.js`, `check-handoff.js`, `src/create-quiver/lib/scope.js`, `handoff.js`, `paths.js`, related tests. |
|
|
32
|
+
| Evidence redaction and package safety | `src/create-quiver/lib/evidence.js`, `tests/lib/evidence.test.js`, `tests/lib/package-safety.test.js`. |
|
|
33
|
+
| Cross-platform path handling | `tests/lib/paths.test.js` includes Windows-style path normalization and project-root safety coverage. |
|
|
34
|
+
|
|
35
|
+
## Dogfooding Gaps Still Requiring v27 Work
|
|
36
|
+
|
|
37
|
+
| Gap | Evidence | Why existing coverage is not enough |
|
|
38
|
+
|---|---|---|
|
|
39
|
+
| Classic and AI commands still disagree on completed slices. | QP-003, QIS-006 | Tests cover command names and helper output, but Pixel Quiver showed inconsistent lifecycle state across `plan --include-completed`, `ai inspect`, and `ai export`. |
|
|
40
|
+
| JSON export is not stable enough for dashboards. | QP-019, QIS-004, QIS-022 | Existing `ai export` support exists, but the dashboard contract needs schema versioning, source metadata, lifecycle data, agents, runs, approvals, blockers, evidence, aggregates, and pure stdout JSON. |
|
|
41
|
+
| `spec create` can ignore approved plan structure. | QP-011, QP-012, QIS-014, QIS-015 | Existing spec creation exists, but approved technical-plan parsing, structured slice validation, deterministic naming, and safe failure cleanup need direct regression fixtures. |
|
|
42
|
+
| AI artifacts can contain prompt echo or raw provider noise. | QP-010, QIS-013 | Existing AI commands do not fully prove clean draft/raw transcript separation for real provider-style output. |
|
|
43
|
+
| Revision feedback can exceed context limits. | QP-009, QIS-012 | Token compaction and safe refusal need explicit behavior before provider overflow. |
|
|
44
|
+
| Worktree lifecycle needs persistent one-spec behavior and recovery. | QP-018, QIS-021 | Worktree helpers exist, but dogfooding showed nested/conflicting worktree confusion and missing recovery guidance. |
|
|
45
|
+
| Validation gates miss execution preconditions. | QP-013, QP-016, QP-017, QIS-003, QIS-016, QIS-019, QIS-020 | Existing validation commands exist, but they must align with actual execution needs, base branch resolution, handoff templates, and strict spec validation. |
|
|
46
|
+
| `analyze --dry-run` must be strictly read-only and stack detection must improve. | QP-005, QP-014, QIS-007, QIS-017 | Analyzer tests exist, but v27 needs mutation guards and React/Vite fixtures based on dogfooding failures. |
|
|
47
|
+
| `flow`, `doctor`, and `prepare-context` must use current resolver state. | QP-001, QP-006, QP-015, QIS-001, QIS-008, QIS-018 | Existing diagnostics exist, but stale examples and missing evidence-backed next steps remain a real-world problem. |
|
|
48
|
+
| Cross-platform help and GitHub auth guidance are incomplete. | QP-002, QP-004, QP-007, QIS-002, QIS-009, QIS-010, QIS-011 | Existing docs/help exist, but they must be more explicit for Windows/macOS/Linux, `gh`, aliases, and AI agent setup dry-runs. |
|
|
49
|
+
|
|
50
|
+
## Source-of-Truth Sync
|
|
51
|
+
|
|
52
|
+
`README_FOR_AI.md`, `ROADMAP.md`, and `CHANGELOG.md` were updated before implementation started so they do not describe v27 as already released.
|
|
53
|
+
|
|
54
|
+
The current sync decision is:
|
|
55
|
+
|
|
56
|
+
- v26 / `0.12.1` is shipped.
|
|
57
|
+
- v27 is active/planned implementation work.
|
|
58
|
+
- v27 must not be described as published until release smoke and npm publication happen.
|
|
59
|
+
|
|
60
|
+
## Implementation Guidance
|
|
61
|
+
|
|
62
|
+
- Treat v24/v25/v26 as prior art, not proof of closure.
|
|
63
|
+
- Prefer extending existing commands and tests over creating duplicate lifecycle paths.
|
|
64
|
+
- Add dogfooding fixtures that reproduce the Pixel Quiver failures in sanitized form.
|
|
65
|
+
- Keep compatibility where users may depend on existing command names.
|
|
66
|
+
- Introduce shared contracts first, then command-specific behavior.
|
|
67
|
+
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
# Command Contracts - Quiver v27 Reliability and AI Workflow Hardening
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
These contracts apply to every command touched by v27. A slice may add stricter behavior, but it must not weaken these defaults without documenting a migration path.
|
|
6
|
+
|
|
7
|
+
## Output Streams
|
|
8
|
+
|
|
9
|
+
- Human-readable progress, hints, warnings, and debug text go to `stderr` when `--format json` is used.
|
|
10
|
+
- Machine-readable JSON goes to `stdout` only.
|
|
11
|
+
- A successful JSON command must produce valid JSON parseable without stripping banners, logs, colors, prompts, or extra lines.
|
|
12
|
+
- Non-JSON human commands may use `stdout` for primary content and `stderr` for warnings/errors.
|
|
13
|
+
- Error details must be actionable and include the command area, failing precondition, and next safe step when known.
|
|
14
|
+
|
|
15
|
+
## Exit Codes
|
|
16
|
+
|
|
17
|
+
| Code | Meaning |
|
|
18
|
+
|---:|---|
|
|
19
|
+
| 0 | Success. Requested operation completed or dry-run was valid. |
|
|
20
|
+
| 1 | General command failure with no more specific category. |
|
|
21
|
+
| 2 | Invalid user input, unsupported option, missing required argument, or schema validation failure. |
|
|
22
|
+
| 3 | Unsafe repository state, missing dependency, dirty worktree, stale lock, or failed precondition. |
|
|
23
|
+
| 4 | External tool/provider failure, including AI provider, `gh`, git, npm, or package manager failures. |
|
|
24
|
+
| 5 | Partial state was detected and recovery is required. The command must report exact files/state involved. |
|
|
25
|
+
|
|
26
|
+
## Dry-Run
|
|
27
|
+
|
|
28
|
+
- `--dry-run` is strictly read-only.
|
|
29
|
+
- A dry-run command must not write, create, delete, rename, stage, commit, or modify files anywhere in the repository.
|
|
30
|
+
- This includes `.quiver/`, `docs/`, `specs/`, generated logs, cache files, lock files, and package artifacts.
|
|
31
|
+
- Dry-run output must clearly state what would change, where it would be written, and which validations would run.
|
|
32
|
+
- If a command cannot guarantee read-only behavior, it must fail before doing work and explain why dry-run is unsupported.
|
|
33
|
+
|
|
34
|
+
## Write Classes
|
|
35
|
+
|
|
36
|
+
Every writing command must fit one of these classes:
|
|
37
|
+
|
|
38
|
+
| Class | Meaning | Requirements |
|
|
39
|
+
|---|---|---|
|
|
40
|
+
| inspect | Read-only command. | Must not write. Supports JSON when useful. |
|
|
41
|
+
| generate | Creates new files from validated input. | Must preflight collisions and fail atomically where possible. |
|
|
42
|
+
| update | Modifies existing files or state. | Must backup or preserve recoverable previous valid state when practical. |
|
|
43
|
+
| execute | Performs implementation or lifecycle action. | Must validate dependencies, scope, git state, and target worktree first. |
|
|
44
|
+
| external | Calls git, GitHub, package manager, or AI provider. | Must report external command failure clearly and preserve local state. |
|
|
45
|
+
|
|
46
|
+
## Atomicity and Partial State
|
|
47
|
+
|
|
48
|
+
- Commands that write multiple files must validate all inputs before the first write whenever possible.
|
|
49
|
+
- If partial writes can occur, the command must report exactly which files were written and how to recover.
|
|
50
|
+
- Failed generation must not leave empty directories unless they are explicitly reported as recoverable partial state.
|
|
51
|
+
- Existing valid files must not be replaced with invalid output.
|
|
52
|
+
|
|
53
|
+
## Idempotency
|
|
54
|
+
|
|
55
|
+
- Re-running a successful command with the same inputs should either produce the same result or report that no change is needed.
|
|
56
|
+
- Collision handling must be deterministic and documented.
|
|
57
|
+
- Commands that create slugs, spec ids, slice ids, branches, or worktree paths must use stable generation rules.
|
|
58
|
+
|
|
59
|
+
## Path Safety
|
|
60
|
+
|
|
61
|
+
- All write paths must resolve inside the project root unless the command explicitly documents an external target.
|
|
62
|
+
- Path traversal (`..`), symlink escape, absolute-path injection, and writing into parent directories must be rejected.
|
|
63
|
+
- Paths printed in help or next-step examples must be copy-safe when project paths include spaces.
|
|
64
|
+
- Shell examples must be safe for the target shell family: macOS/Linux POSIX shells, Windows PowerShell, Git Bash, and WSL.
|
|
65
|
+
|
|
66
|
+
## Root Detection
|
|
67
|
+
|
|
68
|
+
- Commands must resolve and report the project root used for reads and writes.
|
|
69
|
+
- Running from a subdirectory, a worktree, or a simple monorepo package must produce deterministic root resolution.
|
|
70
|
+
- If multiple plausible roots exist, the command must stop and ask for an explicit root or print the safe command to run.
|
|
71
|
+
|
|
72
|
+
## Package Manager Detection
|
|
73
|
+
|
|
74
|
+
- Quiver must prefer the package manager indicated by lockfiles and package metadata.
|
|
75
|
+
- Detection priority must be deterministic and documented.
|
|
76
|
+
- Suggested commands must match the detected package manager: npm, pnpm, yarn, or bun.
|
|
77
|
+
- If detection is ambiguous, Quiver must report the ambiguity and use the safest explicit command form.
|
|
78
|
+
|
|
79
|
+
## Deterministic Ordering
|
|
80
|
+
|
|
81
|
+
- JSON arrays for specs, slices, agents, runs, approvals, blockers, evidence, and next steps must be sorted deterministically.
|
|
82
|
+
- Stable order should prefer declared dependency order, numeric slice order, created timestamp, and then id as a tiebreaker.
|
|
83
|
+
- Human summaries must follow the same order where practical.
|
|
84
|
+
|
|
85
|
+
## Status Catalogs
|
|
86
|
+
|
|
87
|
+
Commands must use shared canonical statuses from the resolver once slice-01 introduces them. Until then, commands must not invent one-off lifecycle names.
|
|
88
|
+
|
|
89
|
+
Minimum canonical families:
|
|
90
|
+
|
|
91
|
+
- Spec: `draft`, `planned`, `approved`, `in-progress`, `blocked`, `review`, `done`, `archived`
|
|
92
|
+
- Slice: `planned`, `ready`, `in-progress`, `blocked`, `review`, `completed`, `skipped`
|
|
93
|
+
- Run: `draft`, `waiting-approval`, `approved`, `running`, `blocked`, `done`, `failed`
|
|
94
|
+
- Agent: `idle`, `planning`, `reading`, `coding`, `reviewing`, `blocked`, `waiting-approval`, `done`
|
|
95
|
+
- Approval: `pending`, `approved`, `rejected`, `superseded`
|
|
96
|
+
|
|
97
|
+
## JSON Schema and Versioning
|
|
98
|
+
|
|
99
|
+
- Machine-readable exports must include `schema_version`.
|
|
100
|
+
- Breaking changes require a new schema version and migration guidance.
|
|
101
|
+
- Payloads must include `generated_at`, `project_root`, `source`, and `warnings`.
|
|
102
|
+
- Optional fields must be present as empty arrays/objects when that makes downstream parsing simpler and stable.
|
|
103
|
+
|
|
104
|
+
## Legacy and Strict Modes
|
|
105
|
+
|
|
106
|
+
- Existing commands should preserve legacy behavior by default when changing output would break users.
|
|
107
|
+
- New strict behavior may be introduced behind explicit flags or by adding new command variants.
|
|
108
|
+
- When legacy behavior is used, output should point to the stricter command or flag where appropriate.
|
|
109
|
+
|
|
110
|
+
## Security and Redaction
|
|
111
|
+
|
|
112
|
+
- Secrets, tokens, auth headers, provider keys, private URLs, and unnecessary absolute local paths must be redacted from committed fixtures and generated evidence.
|
|
113
|
+
- Raw AI transcripts must be stored separately from clean drafts.
|
|
114
|
+
- Redaction must happen before writing logs that may be committed.
|
|
115
|
+
|
|
116
|
+
## Validation Expectations
|
|
117
|
+
|
|
118
|
+
Each implementation slice must add or update tests for the contracts it touches. At minimum:
|
|
119
|
+
|
|
120
|
+
- Successful `--format json` output parses as JSON.
|
|
121
|
+
- Failing commands write diagnostics to `stderr` and exit non-zero.
|
|
122
|
+
- Dry-run commands leave the git diff unchanged.
|
|
123
|
+
- Path safety rejects writes outside the project root.
|
|
124
|
+
- Fixtures preserve deterministic order.
|
|
125
|
+
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# Coverage Matrix - Quiver v27 Reliability and AI Workflow Hardening
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
|
|
5
|
+
This matrix maps every Pixel Quiver dogfooding problem (`QP-*`) and improvement suggestion (`QIS-*`) to the v27 implementation slice that must close it.
|
|
6
|
+
|
|
7
|
+
The source files are evidence inputs, not fixtures. Do not copy unsanitized local paths, user names, command output, or project-specific data into committed fixtures without explicit sanitization.
|
|
8
|
+
|
|
9
|
+
## Problem Coverage
|
|
10
|
+
|
|
11
|
+
| Evidence | Area | Primary Slice | Risk if missed | Validation strategy |
|
|
12
|
+
|---|---|---|---|---|
|
|
13
|
+
| QP-001 | `flow` source discovery and stale examples | slice-07 | Users and agents follow incorrect next steps. | Fixture with current and stale spec state; `flow` output checked against resolver state. |
|
|
14
|
+
| QP-002 | Paths with spaces and copy-safe examples | slice-08 | Commands fail in common macOS/Linux/Windows project paths. | Cross-platform path formatting snapshots for macOS, Linux, PowerShell, Git Bash, and WSL examples. |
|
|
15
|
+
| QP-003 | Classic and AI commands disagree about completed slices | slice-01, slice-02 | Agents act on incomplete or stale lifecycle state. | Shared resolver tests plus export tests with completed, planned, blocked, and active slices. |
|
|
16
|
+
| QP-004 | GitHub authentication and alias guidance | slice-08 | PR creation or preflight fails late with unclear recovery. | `ai doctor` and PR preflight fixtures for missing `gh`, wrong account, missing scopes, and alias expectations. |
|
|
17
|
+
| QP-005 | Analyzer misdetects React/Vite context | slice-07 | Context docs are wrong, causing bad onboarding and bad prompts. | React/Vite fixture with expected stack detection and no false Vue classification. |
|
|
18
|
+
| QP-006 | `prepare-context` lacks evidence and next-step clarity | slice-07 | Agents cannot trust generated context or understand what to do next. | Snapshot output includes evidence, stale/missing docs, and next safe command. |
|
|
19
|
+
| QP-007 | Agent docs gaps and missing prompts | slice-07, slice-08 | Users manually invent onboarding and execution prompts. | Docs/help tests confirm planner, executor, and handoff guidance exists and links to generated files. |
|
|
20
|
+
| QP-008 | Source-of-truth docs drift | slice-00, slice-07 | README, roadmap, and AI docs contradict product state. | Documentation audit plus docs sync checks in final release slice. |
|
|
21
|
+
| QP-009 | `ai revise` grows context without compaction | slice-04 | Planner calls exceed provider limits or waste tokens. | Token-limit fixture validates compacted feedback or safe refusal before provider overflow. |
|
|
22
|
+
| QP-010 | Prompt echo and raw logs mix into final drafts | slice-04 | Specs and plans contain unusable provider noise. | AI artifact fixture separates clean draft from raw transcript and redacts secrets. |
|
|
23
|
+
| QP-011 | `spec create` ignores approved plan structure | slice-03 | Quiver creates generic or incomplete scaffolds after approval. | Approved-plan fixture creates expected spec, slices, handoffs, execution plan, and PR body. |
|
|
24
|
+
| QP-012 | Failed `spec create` leaves empty dirs | slice-03 | Repo state becomes dirty and confusing after failure. | Failure fixture asserts no partial writes or exact recovery report. |
|
|
25
|
+
| QP-013 | `check-slice --local` misses execution preconditions | slice-06 | Later execution fails after a passing local check. | Local check fixture validates required git, worktree, brief, dependency, and scope preconditions or lists skipped checks. |
|
|
26
|
+
| QP-014 | `analyze --dry-run` writes files | slice-07 | Users cannot safely inspect impact before generating docs. | Dry-run test asserts no file changes, including `.quiver/`, `docs/`, and `specs/`. |
|
|
27
|
+
| QP-015 | `doctor` points to wrong spec/slice examples | slice-07 | First-use guidance sends users to stale work. | Doctor fixture derives active spec/slice from resolver state. |
|
|
28
|
+
| QP-016 | `check-scope` assumes wrong base branch | slice-06 | Valid branches fail scope checks or bad diffs are compared. | Scope fixtures cover `--base`, `git.base_branch`, remote default, and fallback order. |
|
|
29
|
+
| QP-017 | `check-handoff` missing actionable template/aliases | slice-06 | Users cannot quickly fix invalid briefs. | Handoff fixture prints missing headings, minimal template, and supported aliases. |
|
|
30
|
+
| QP-018 | Worktree lifecycle causes nested/conflicting worktrees | slice-05 | Spec work becomes scattered, dirty, or unsafe to merge. | Worktree fixtures cover persistent spec worktree, locks, stale state, dirty state, and recovery. |
|
|
31
|
+
| QP-019 | JSON export not dashboard-ready | slice-02 | UIs and agents need custom parsing or cannot consume Quiver state. | JSON schema and fixture parse tests with deterministic output. |
|
|
32
|
+
|
|
33
|
+
## Suggestion Coverage
|
|
34
|
+
|
|
35
|
+
| Evidence | Area | Primary Slice | Risk if missed | Validation strategy |
|
|
36
|
+
|---|---|---|---|---|
|
|
37
|
+
| QIS-001 | Improve `flow` source references | slice-07 | Flow output remains untrustworthy. | Flow snapshot includes source file, status, and active target. |
|
|
38
|
+
| QIS-002 | Quote/copy-safe command examples | slice-08 | Users with spaces in paths hit preventable failures. | Help snapshot validates quoted examples per shell family. |
|
|
39
|
+
| QIS-003 | Add/strengthen `spec validate` | slice-06 | Broken specs/slices pass until later commands fail. | Spec validation fixture covers schema, dependencies, briefs, worktree hints, and source metadata. |
|
|
40
|
+
| QIS-004 | Export canonical dashboard data | slice-02 | Dashboard and agents keep using unstable ad-hoc output. | Export schema fixture validates required top-level datasets and aggregates. |
|
|
41
|
+
| QIS-005 | Generate executor handoff packages | slice-06 | Executors need too much context and burn tokens. | Handoff package fixture includes only selected slice, briefs, constraints, evidence, and validation commands. |
|
|
42
|
+
| QIS-006 | One resolver for classic and AI commands | slice-01 | Commands keep disagreeing about lifecycle state. | Unit tests require classic and AI command adapters to consume the same resolver output. |
|
|
43
|
+
| QIS-007 | Improve framework detection | slice-07 | Context docs misrepresent stack and workflow. | Analyzer fixtures for React/Vite, package-manager variants, and unknown stack. |
|
|
44
|
+
| QIS-008 | Evidence-backed context generation | slice-07 | Generated docs cannot be trusted or maintained. | `prepare-context` output references source files and marks assumptions. |
|
|
45
|
+
| QIS-009 | GitHub/PR readiness diagnostics | slice-08 | PR creation fails late. | Doctor/preflight output includes `gh`, auth, account, scopes, alias, remote, and next action. |
|
|
46
|
+
| QIS-010 | Agent onboarding guide | slice-07, slice-08 | Users manually paste long prompts repeatedly. | README/help docs expose planner/executor/doctor/reviewer flows with minimal-context guidance. |
|
|
47
|
+
| QIS-011 | `ai agent set --dry-run` or equivalent preflight | slice-08 | Users configure agents without seeing effect or missing dependencies. | Dry-run setup output lists provider command, availability, and files that would change without writing. |
|
|
48
|
+
| QIS-012 | Token compaction for revisions | slice-04 | Iteration becomes expensive and brittle. | Revision fixture compacts accepted history and preserves required decisions. |
|
|
49
|
+
| QIS-013 | Separate clean draft and raw transcript | slice-04 | Prompt echo corrupts committed docs. | Artifact tests assert separate files and redacted raw output. |
|
|
50
|
+
| QIS-014 | Approved-plan parser | slice-03 | Structured human approvals cannot become accurate slices. | Parser fixtures cover valid, invalid, partial, and ambiguous slice blocks. |
|
|
51
|
+
| QIS-015 | Deterministic slug/path generation | slice-03 | Repeated `spec create` creates inconsistent names or collisions. | Slug fixtures cover accents, spaces, punctuation, long titles, and collisions. |
|
|
52
|
+
| QIS-016 | Stronger slice execution gate | slice-06 | Execution starts with missing dependencies or invalid scope. | `start-slice`/`check-slice` fixture blocks unsafe execution and prints recovery. |
|
|
53
|
+
| QIS-017 | Strict dry-run contract | slice-07 | Trust in Quiver inspection commands is lost. | Dry-run mutation guard across analysis/context commands. |
|
|
54
|
+
| QIS-018 | Doctor active-state awareness | slice-07 | Doctor suggests stale examples. | Doctor fixture uses resolver current state and reports stale docs. |
|
|
55
|
+
| QIS-019 | Base branch configuration | slice-06 | Scope checks fail in repos using `main`, `develop`, or custom branches. | Base resolution fixture covers CLI option, slice config, git config, remote HEAD, fallback. |
|
|
56
|
+
| QIS-020 | Handoff template guidance | slice-06 | Invalid briefs are hard to fix. | `check-handoff` output includes minimal copyable template. |
|
|
57
|
+
| QIS-021 | Persistent spec worktree lifecycle | slice-05 | One-spec-per-worktree model remains manual and error-prone. | Worktree commands create/reuse/report one persistent worktree per spec. |
|
|
58
|
+
| QIS-022 | Machine-readable output contract | slice-02 | Agents cannot parse command output safely. | `--format json` tests validate stdout-only JSON, stderr diagnostics, schema versioning, and deterministic ordering. |
|
|
59
|
+
|
|
60
|
+
## Slice Responsibility Summary
|
|
61
|
+
|
|
62
|
+
| Slice | Responsibility |
|
|
63
|
+
|---|---|
|
|
64
|
+
| slice-00 | Documentary foundation, evidence mapping, command contracts, v24/v25/v26 audit. |
|
|
65
|
+
| slice-01 | Shared state resolver and canonical statuses for specs, slices, runs, approvals, agents, evidence, and worktrees. |
|
|
66
|
+
| slice-02 | Stable JSON export and pure machine-readable command output. |
|
|
67
|
+
| slice-03 | Approved technical plan parsing and reliable spec/slice generation. |
|
|
68
|
+
| slice-04 | AI draft storage, raw logs, redaction, and token compaction. |
|
|
69
|
+
| slice-05 | Persistent spec worktree lifecycle, locks, recovery, and no nested worktrees. |
|
|
70
|
+
| slice-06 | Validation gates, scope safety, handoff packages, and local execution preconditions. |
|
|
71
|
+
| slice-07 | Context analysis, prepare-context, flow, doctor, dry-run safety, and source-backed docs. |
|
|
72
|
+
| slice-08 | Cross-platform help, GitHub auth, agent setup guidance, and first-use DX. |
|
|
73
|
+
| slice-09 | Fixtures, smoke tests, docs sync, package smoke, and release readiness. |
|
|
74
|
+
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
# Evidence Report - Quiver v27 Reliability and AI Workflow Hardening
|
|
2
|
+
|
|
3
|
+
## Initial Evidence
|
|
4
|
+
|
|
5
|
+
- Pixel Quiver final dogfooding produced `QP-001` to `QP-019` and `QIS-001` to `QIS-022`.
|
|
6
|
+
- The approved plan requires a single spec with slices ordered by shared contracts first, command fixes second, and release readiness last.
|
|
7
|
+
- `README_FOR_AI.md` was read before creating this spec.
|
|
8
|
+
- `ROADMAP.md` and `BACKLOG.md` were reviewed before creating this spec.
|
|
9
|
+
|
|
10
|
+
## Validation Status
|
|
11
|
+
|
|
12
|
+
- v27 source, fixture, smoke, guided workflow, and packaged tarball validation passed on 2026-05-24.
|
|
13
|
+
- npm publication was intentionally not performed by this spec.
|
|
14
|
+
|
|
15
|
+
## Slice 00 Evidence - 2026-05-24
|
|
16
|
+
|
|
17
|
+
- Created `COVERAGE_MATRIX.md` to map all `QP-001..QP-019` and `QIS-001..QIS-022` to a responsible slice, risk, and validation strategy.
|
|
18
|
+
- Created `COMMAND_CONTRACTS.md` to define shared production contracts for output streams, exit codes, dry-run behavior, write classes, atomicity, idempotency, path safety, root detection, package manager detection, deterministic ordering, status catalogs, JSON versioning, legacy/strict modes, security, and validation.
|
|
19
|
+
- Created `AUDIT_V24_V25_V26.md` to separate existing v24/v25/v26 implementation surfaces from the dogfooding gaps that v27 must still close.
|
|
20
|
+
- Audited existing command and test surfaces with `rg` across `src/create-quiver`, `tests`, and v24/v25/v26 specs for resolver/export/spec-create/check-scope/check-handoff/worktree/analyze/dry-run/doctor/path/redaction surfaces.
|
|
21
|
+
- Confirmed `README_FOR_AI.md`, `ROADMAP.md`, and `CHANGELOG.md` were updated so v26 remains the shipped release and v27 is not described as published.
|
|
22
|
+
|
|
23
|
+
## Slice 01 Evidence - 2026-05-24
|
|
24
|
+
|
|
25
|
+
- Added `src/create-quiver/lib/statuses.js` with shared canonical status catalogs and alias normalization for specs, slices, runs, approvals, agents, and datasets.
|
|
26
|
+
- Added `src/create-quiver/lib/project-state-resolver.js` as the shared resolver over slice discovery, graph building, deterministic ordering, scoped reads, completed-slice filtering, progress, spec grouping, and graph summaries.
|
|
27
|
+
- Routed classic `plan` and `graph` commands through the shared resolver while preserving existing human output and adding `canonical_status` to machine payloads.
|
|
28
|
+
- Routed AI lifecycle export/list/inspect state through the shared resolver so classic and AI surfaces agree about completed slices when `includeCompleted` is requested.
|
|
29
|
+
- Added `tests/lib/project-state-resolver.test.js` for canonical statuses, scoped read safety, and plan/export agreement on completed slices.
|
|
30
|
+
- Ran targeted command and library tests for resolver, AI export, plan, graph, next, and doctor.
|
|
31
|
+
- Ran `npm run smoke:doctor-fixtures`.
|
|
32
|
+
- Ran full Node test suite: `node --test tests/**/*.test.js` passed with 320 tests.
|
|
33
|
+
- Ran `git diff --check`.
|
|
34
|
+
|
|
35
|
+
## Slice 02 Evidence - 2026-05-24
|
|
36
|
+
|
|
37
|
+
- Bumped lifecycle export schema to `schema_version: 2`.
|
|
38
|
+
- Extended `ai export` JSON with `source_metadata`, `warnings`, `approvals`, top-level `blockers`, `evidence`, `next_steps`, `lifecycle`, and `aggregates` while preserving existing `summary`, `project`, `agents`, `runs`, `specs`, `slices`, `graph`, `migration`, and `dashboard` fields.
|
|
39
|
+
- Kept source metadata sanitized by exposing the project root name rather than an absolute local path.
|
|
40
|
+
- Added canonical statuses to exported slices, runs, agents, specs, and approvals.
|
|
41
|
+
- Added CLI tests that parse stdout JSON directly, assert stderr is empty on success, assert unsupported formats write to stderr with non-zero exit, and assert `--include-completed` includes completed slices.
|
|
42
|
+
- Ran `node --test tests/lib/ai-export-state.test.js tests/commands/ai-export.test.js`.
|
|
43
|
+
- Ran `node --test tests/commands/cli-contract.test.js tests/lib/project-state-resolver.test.js`.
|
|
44
|
+
- Ran full Node test suite: `node --test tests/**/*.test.js` passed with 321 tests.
|
|
45
|
+
- Ran `git diff --check`.
|
|
46
|
+
|
|
47
|
+
## Slice 03 Evidence - 2026-05-24
|
|
48
|
+
|
|
49
|
+
- Updated approved-plan parsing to extract structured slice data from full JSON input or fenced JSON blocks inside Markdown.
|
|
50
|
+
- Removed silent generic fallback behavior for plans without structured slices.
|
|
51
|
+
- Added pre-write validation for duplicate slice IDs, missing dependencies, invalid slice IDs, and dependency cycles.
|
|
52
|
+
- Kept `slice-00-spec-foundation` mandatory while preserving every approved implementation slice from the plan.
|
|
53
|
+
- Added atomic failure coverage showing missing structured slices fail before creating a spec directory or temporary build remnant.
|
|
54
|
+
- Added command-level coverage for `spec create --dry-run` failing safely when the reviewed approved plan lacks structured slices.
|
|
55
|
+
- Ran `node --test tests/lib/ai-spec-generator.test.js tests/commands/spec-create.test.js tests/commands/ai-plan-spec-phase.test.js`.
|
|
56
|
+
- Ran full Node test suite: `node --test tests/**/*.test.js` passed with 327 tests.
|
|
57
|
+
|
|
58
|
+
## Slice 04 Evidence - 2026-05-24
|
|
59
|
+
|
|
60
|
+
- Added `src/create-quiver/lib/ai/artifacts.js` to centralize clean AI output extraction, raw provider artifact persistence, local path redaction, prompt-size checks, and revise-input compaction.
|
|
61
|
+
- Updated `ai plan`, `ai revise`, and `ai review-plan` persistence so saved drafts/reviews use clean provider output while raw stdout/stderr are stored separately under `.quiver/runs/<run-id>/raw/*.json`.
|
|
62
|
+
- Added prompt echo stripping and provider-log edge cleanup so draft artifacts do not include provider logs or prompt echoes when useful stdout is available.
|
|
63
|
+
- Added raw artifact metadata to planner approval and plan-review metadata, including `raw_artifact_path`, `output_source`, and revise `input_compaction`.
|
|
64
|
+
- Preserved explicit approved draft versions while carrying raw artifact metadata from the selected draft into approved metadata.
|
|
65
|
+
- Added revise-input compaction for oversized feedback, preserving decisions, risks, files, acceptance criteria, validation, blockers, dependencies, assumptions, rollback, and evidence lines.
|
|
66
|
+
- Added prompt-size rejection before provider execution with an actionable `AI_PROMPT_TOO_LARGE` error.
|
|
67
|
+
- Added package-safety coverage for raw AI artifacts under `.quiver/runs/*/raw/`.
|
|
68
|
+
- Ran `node --test tests/commands/ai-plan.test.js tests/commands/ai-review-plan.test.js tests/lib/ai-providers.test.js tests/lib/package-safety.test.js`.
|
|
69
|
+
- Ran `node --test tests/lib/ai-*.test.js tests/commands/ai-plan.test.js tests/commands/ai-review-plan.test.js`.
|
|
70
|
+
- Ran full Node test suite: `node --test tests/**/*.test.js` passed with 330 tests.
|
|
71
|
+
- Ran `node bin/create-quiver.js plan --spec quiver-v27-reliability-ai-workflow-hardening --include-completed`.
|
|
72
|
+
- Ran `node bin/create-quiver.js graph --spec quiver-v27-reliability-ai-workflow-hardening`.
|
|
73
|
+
- Ran `git diff --check`.
|
|
74
|
+
|
|
75
|
+
## Slice 05 Evidence - 2026-05-24
|
|
76
|
+
|
|
77
|
+
- Added `src/create-quiver/lib/locks.js` to centralize `.quiver/locks` lock acquisition, release, stale lock diagnostics, and automatic local exclusion of Quiver runtime state.
|
|
78
|
+
- Hardened `spec start` and `spec close` with spec-level locks, persistent worktree reuse, stale/missing worktree detection, and actionable recovery guidance.
|
|
79
|
+
- Hardened slice worktree startup to reject nested worktree creation when commands run from an existing linked worktree.
|
|
80
|
+
- Hardened git helpers to detect missing paths, linked worktrees, absolute git dirs, and shared git common dirs reliably across realpath differences such as `/var` and `/private/var`.
|
|
81
|
+
- Added delegated execution locks for parallel AI execution runs so duplicate concurrent run IDs fail before provider execution.
|
|
82
|
+
- Added tests for stale spec worktrees, concurrent spec locks, nested slice worktrees, and delegated execution lock collisions.
|
|
83
|
+
- Ran `node --test tests/lib/lifecycle.test.js tests/commands/spec-worktree.test.js tests/commands/spec-close.test.js tests/commands/ai-execute-plan.test.js`.
|
|
84
|
+
- Ran full Node test suite: `node --test tests/**/*.test.js` passed with 334 tests.
|
|
85
|
+
|
|
86
|
+
## Slice 06 Evidence - 2026-05-24
|
|
87
|
+
|
|
88
|
+
- Hardened `check-slice --local` so it validates execution git metadata, declared write/read paths, dependency contracts, and reports exactly which checks are executed or skipped in local mode.
|
|
89
|
+
- Updated `check-scope` to resolve base branches from `--base`, then `slice.git.base_branch`, then safe fallbacks instead of hardcoding `develop`.
|
|
90
|
+
- Added actionable `check-handoff` failures with accepted heading aliases and a minimal copyable template for legacy handoffs, execution briefs, and closure briefs.
|
|
91
|
+
- Added `spec validate` to validate spec docs, slices, JSON parseability, brief contracts, dependency cycles, safe paths, evidence references, and status references.
|
|
92
|
+
- Added shared path safety helpers and applied them to slice resolution, scope validation, and AI executor prompt/scope construction so absolute, traversal, and external slice paths are rejected.
|
|
93
|
+
- Synced the new `spec validate` command into generated `quiver:spec:validate` scripts, README command references, `README_FOR_AI.md`, and `docs/COMMANDS.md.template`.
|
|
94
|
+
- Ran `node bin/create-quiver.js spec validate specs/quiver-v27-reliability-ai-workflow-hardening`.
|
|
95
|
+
- Ran `node --test tests/lib/check-slice.test.js tests/lib/scope.test.js tests/lib/handoff.test.js tests/lib/paths.test.js tests/commands/spec-validate.test.js tests/commands/cli-contract.test.js`.
|
|
96
|
+
- Ran `node --test tests/commands/spec-create.test.js tests/commands/spec-worktree.test.js tests/commands/spec-close.test.js tests/commands/ai-execute-slice.test.js tests/commands/ai-execute-plan.test.js tests/lib/scope.test.js tests/lib/check-slice.test.js tests/lib/handoff.test.js tests/lib/paths.test.js`.
|
|
97
|
+
- Ran full Node test suite: `node --test tests/**/*.test.js` passed with 343 tests.
|
|
98
|
+
|
|
99
|
+
## Slice 07 Evidence - 2026-05-24
|
|
100
|
+
|
|
101
|
+
- Added `analyze --dry-run` as a true no-write mode that reports planned scan, project map, and AI context writes without creating `.quiver/` or `docs/`.
|
|
102
|
+
- Fixed React + Vite detection so `vite.config.*` no longer classifies a project as Vue unless Vue evidence exists.
|
|
103
|
+
- Added project scan source/freshness metadata through `readProjectScanStatus`, including current, legacy, partial, stale, invalid, and missing states.
|
|
104
|
+
- Updated `flow` to print the context source summary and include the same metadata in JSON output.
|
|
105
|
+
- Updated `doctor` examples to prefer an active non-completed slice, use the only spec when unambiguous, or fall back to placeholders when multiple specs have no active slice.
|
|
106
|
+
- Added prepare-context coverage showing evidence-backed stack and command facts are preserved while unknown architecture boundaries remain marked for confirmation.
|
|
107
|
+
- Added tests for analyze dry-run, React/Vite classification, scan source summaries, flow context source output, doctor active/generic examples, and prepare-context evidence behavior.
|
|
108
|
+
- Ran `node --test tests/commands/analyze.test.js tests/commands/ai-onboard.test.js tests/commands/flow.test.js tests/commands/doctor.test.js tests/lib/project-scan.test.js tests/lib/doctor.test.js`.
|
|
109
|
+
- Ran `npm run smoke:doctor-fixtures`.
|
|
110
|
+
- Ran `node bin/create-quiver.js spec validate specs/quiver-v27-reliability-ai-workflow-hardening`.
|
|
111
|
+
- Ran `git diff --check`.
|
|
112
|
+
- Ran full Node test suite: `node --test tests/**/*.test.js` passed with 349 tests.
|
|
113
|
+
- Ran `node bin/create-quiver.js plan --spec quiver-v27-reliability-ai-workflow-hardening --include-completed`.
|
|
114
|
+
- Ran `node bin/create-quiver.js graph --spec quiver-v27-reliability-ai-workflow-hardening`.
|
|
115
|
+
|
|
116
|
+
## Slice 08 Evidence - 2026-05-24
|
|
117
|
+
|
|
118
|
+
- Added real `ai agent set --dry-run` preview behavior that validates the requested profile and reports the planned `.quiver/agents/profiles.json` change without writing files.
|
|
119
|
+
- Updated top-level help and examples so `--help` includes the agent dry-run flow.
|
|
120
|
+
- Hardened GitHub auth failures with actionable account, scope, and SSH alias guidance plus a safe `gh auth status` next command.
|
|
121
|
+
- Added shell-specific path guidance for identity files and PR commands with spaces across macOS/Linux, Windows PowerShell, Git Bash, and WSL.
|
|
122
|
+
- Updated `flow` to report the detected package manager and matching generated `quiver:flow` script command.
|
|
123
|
+
- Updated init/migrate auto-install fallback warnings to respect the detected package manager instead of always printing npm.
|
|
124
|
+
- Synced `README.md`, `README_FOR_AI.md`, and `docs/COMMANDS.md.template` with the new help/auth/dry-run behavior.
|
|
125
|
+
- Ran `node --test tests/commands/cli-contract.test.js tests/commands/ai-agent.test.js tests/lib/ai-github.test.js tests/commands/flow.test.js`.
|
|
126
|
+
- Ran `node --test tests/commands/cli-contract.test.js tests/commands/ai-agent.test.js tests/lib/ai-github.test.js tests/commands/flow.test.js tests/lib/init-docs.test.js`.
|
|
127
|
+
- Ran `node --test tests/commands/cli-contract.test.js tests/commands/ai-agent.test.js tests/lib/ai-github.test.js tests/lib/doctor.test.js tests/commands/flow.test.js tests/lib/init-docs.test.js`.
|
|
128
|
+
- Ran `npm run smoke:doctor-fixtures`.
|
|
129
|
+
- Ran `node bin/create-quiver.js spec validate specs/quiver-v27-reliability-ai-workflow-hardening`.
|
|
130
|
+
- Ran `node --test tests/**/*.test.js` passed with 354 tests.
|
|
131
|
+
- Ran `node bin/create-quiver.js plan --spec quiver-v27-reliability-ai-workflow-hardening --include-completed`.
|
|
132
|
+
- Ran `node bin/create-quiver.js graph --spec quiver-v27-reliability-ai-workflow-hardening`.
|
|
133
|
+
- Ran `git diff --check`.
|
|
134
|
+
|
|
135
|
+
## Slice 09 Evidence - 2026-05-24
|
|
136
|
+
|
|
137
|
+
- Extended the sanitized doctor fixture matrix to cover Pixel Quiver-style completed specs, multiple-spec fallback behavior, stale generated context, old `.quiver` state, no-Git projects, and paths with spaces.
|
|
138
|
+
- Hardened `scripts/ci/smoke-doctor-fixtures.js` so every declared fixture state must have executable coverage references and those references must exist.
|
|
139
|
+
- Added doctor command coverage for stale generated docs when the scan is newer than `docs/PROJECT_MAP.md`.
|
|
140
|
+
- Added doctor command coverage for old incomplete `.quiver` state so legacy projects recommend `migrate` instead of `init`.
|
|
141
|
+
- Extended `scripts/ci/smoke-create-quiver.sh` to smoke `flow` package-manager guidance, source `ai agent set --dry-run`, packaged CLI `--help`, packaged `flow`, and packaged `ai agent set --dry-run`.
|
|
142
|
+
- Synced `README_FOR_AI.md`, `ROADMAP.md`, `CHANGELOG.md`, `README.md`, v27 `STATUS.md`, `SPEC.md`, `EXECUTION_PLAN.md`, `pr.md`, and this evidence report with the implemented-but-unpublished v27 state.
|
|
143
|
+
- Ran `node --test tests/commands/doctor.test.js`.
|
|
144
|
+
- Ran `npm run smoke:doctor-fixtures`.
|
|
145
|
+
- Ran `npm run smoke:create-quiver`.
|
|
146
|
+
- Ran `npm run smoke:guided-workflow`.
|
|
147
|
+
- Ran `npm run package:quiver`.
|
|
148
|
+
- Ran full Node test suite: `node --test tests/**/*.test.js` passed with 356 tests.
|
|
149
|
+
- Ran `node bin/create-quiver.js spec validate specs/quiver-v27-reliability-ai-workflow-hardening`.
|
|
150
|
+
- Ran `node bin/create-quiver.js plan --spec quiver-v27-reliability-ai-workflow-hardening --include-completed`.
|
|
151
|
+
- Ran `node bin/create-quiver.js graph --spec quiver-v27-reliability-ai-workflow-hardening --include-completed`.
|
|
152
|
+
- Ran `node bin/create-quiver.js next --spec quiver-v27-reliability-ai-workflow-hardening`; no ready slices remain.
|
|
153
|
+
- Ran targeted regression suite: `node --test tests/commands/doctor.test.js tests/lib/project-state-resolver.test.js tests/commands/plan.test.js tests/commands/graph.test.js` passed with 31 tests.
|
|
154
|
+
- Ran `git diff --check`.
|
|
155
|
+
|
|
156
|
+
## Spec Package Validation - 2026-05-24
|
|
157
|
+
|
|
158
|
+
- Every `slice.json` under `specs/quiver-v27-reliability-ai-workflow-hardening` parsed successfully with Node.
|
|
159
|
+
- Every `EXECUTION_BRIEF.md` passed `node bin/create-quiver.js check-handoff`.
|
|
160
|
+
- Every `CLOSURE_BRIEF.md` passed `node bin/create-quiver.js check-handoff`.
|
|
161
|
+
- `node bin/create-quiver.js plan --spec quiver-v27-reliability-ai-workflow-hardening --include-completed` passed and reported 10 planned slices.
|
|
162
|
+
- `node bin/create-quiver.js graph --spec quiver-v27-reliability-ai-workflow-hardening` passed and produced the expected dependency levels.
|
|
163
|
+
- `node bin/create-quiver.js check-slice --local <slice.json>` passed for all 10 slices.
|
|
164
|
+
- `git diff --check` passed.
|
|
165
|
+
|
|
166
|
+
## Slice Evidence
|
|
167
|
+
|
|
168
|
+
| Slice | Evidence |
|
|
169
|
+
|---|---|
|
|
170
|
+
| slice-00 | Completed: coverage matrix, command contracts, v24/v25/v26 audit, source-of-truth docs sync, and spec package validation. |
|
|
171
|
+
| slice-01 | Completed: shared resolver, canonical status catalogs, classic/AI resolver adapters, scoped-read tests, completed-slice consistency tests, and targeted validation. |
|
|
172
|
+
| slice-02 | Completed: schema v2 export contract, pure stdout/stderr CLI checks, completed-slice export coverage, source metadata, warnings, approvals, evidence, next steps, lifecycle, and aggregates. |
|
|
173
|
+
| slice-03 | Completed: structured approved-plan extraction, no generic fallback, duplicate/dependency/cycle validation, eight-slice preservation, safe failure cleanup, and command coverage. |
|
|
174
|
+
| slice-04 | Completed: clean drafts/reviews, redacted run-scoped raw provider artifacts, revise compaction, prompt-size guardrails, approval metadata, and raw artifact package-safety coverage. |
|
|
175
|
+
| slice-05 | Completed: spec/slice worktree locks, stale and missing worktree recovery, nested worktree prevention, delegated run lock safety, and lifecycle/git helper coverage. |
|
|
176
|
+
| slice-06 | Completed: stronger local slice gates, base-aware scope validation, actionable handoff templates, spec validate, and repo-bound path safety. |
|
|
177
|
+
| slice-07 | Completed: read-only analyze dry-run, React/Vite stack detection, scan source/freshness reporting, flow context source output, active/generic doctor examples, and prepare-context evidence coverage. |
|
|
178
|
+
| slice-08 | Completed: agent profile dry-run, grouped help sync, cross-platform path guidance, GitHub account/scope/alias diagnostics, package-manager-aware flow guidance, install fallback messages, and focused command/library tests. |
|
|
179
|
+
| slice-09 | Completed: sanitized fixture matrix coverage, fixture coverage validator, stale-doc and old-state doctor regressions, source and packaged CLI smokes, full test suite, package smoke, and docs/release readiness sync. |
|