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.
Files changed (158) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/README.md +65 -25
  3. package/README_FOR_AI.md +36 -29
  4. package/ROADMAP.md +22 -3
  5. package/docs/AI_ONBOARDING_PROMPT.md.template +7 -1
  6. package/docs/COMMANDS.md.template +53 -20
  7. package/docs/STATUS.md.template +5 -1
  8. package/docs/WORKFLOW.md.template +13 -11
  9. package/package.json +10 -3
  10. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/EVIDENCE_REPORT.md +293 -0
  11. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/EXECUTION_PLAN.md +58 -0
  12. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/SPEC.md +242 -0
  13. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/STATUS.md +35 -0
  14. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/pr.md +77 -0
  15. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-00-spec-foundation/CLOSURE_BRIEF.md +34 -0
  16. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-00-spec-foundation/EXECUTION_BRIEF.md +52 -0
  17. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-00-spec-foundation/slice.json +52 -0
  18. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-01-cli-contract-compatibility/CLOSURE_BRIEF.md +36 -0
  19. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-01-cli-contract-compatibility/EXECUTION_BRIEF.md +52 -0
  20. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-01-cli-contract-compatibility/slice.json +56 -0
  21. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-02-run-state-phase-locks/CLOSURE_BRIEF.md +43 -0
  22. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-02-run-state-phase-locks/EXECUTION_BRIEF.md +54 -0
  23. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-02-run-state-phase-locks/slice.json +52 -0
  24. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-03-safe-ai-onboarding-docs/CLOSURE_BRIEF.md +35 -0
  25. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-03-safe-ai-onboarding-docs/EXECUTION_BRIEF.md +53 -0
  26. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-03-safe-ai-onboarding-docs/slice.json +54 -0
  27. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-04-agent-profiles-adapters/CLOSURE_BRIEF.md +34 -0
  28. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-04-agent-profiles-adapters/EXECUTION_BRIEF.md +54 -0
  29. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-04-agent-profiles-adapters/slice.json +52 -0
  30. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-05-approval-gates/CLOSURE_BRIEF.md +34 -0
  31. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-05-approval-gates/EXECUTION_BRIEF.md +54 -0
  32. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-05-approval-gates/slice.json +53 -0
  33. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-06-spec-slice-generator/CLOSURE_BRIEF.md +33 -0
  34. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-06-spec-slice-generator/EXECUTION_BRIEF.md +56 -0
  35. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-06-spec-slice-generator/slice.json +55 -0
  36. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-07-slice-execution-planner/CLOSURE_BRIEF.md +33 -0
  37. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-07-slice-execution-planner/EXECUTION_BRIEF.md +54 -0
  38. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-07-slice-execution-planner/slice.json +52 -0
  39. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-08-controlled-slice-execution/CLOSURE_BRIEF.md +39 -0
  40. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-08-controlled-slice-execution/EXECUTION_BRIEF.md +56 -0
  41. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-08-controlled-slice-execution/slice.json +53 -0
  42. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-09-git-worktree-pr-lifecycle/CLOSURE_BRIEF.md +38 -0
  43. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-09-git-worktree-pr-lifecycle/EXECUTION_BRIEF.md +57 -0
  44. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-09-git-worktree-pr-lifecycle/slice.json +52 -0
  45. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-10-validation-errors-fixtures/CLOSURE_BRIEF.md +39 -0
  46. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-10-validation-errors-fixtures/EXECUTION_BRIEF.md +55 -0
  47. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-10-validation-errors-fixtures/slice.json +56 -0
  48. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-11-export-dashboard-migration/CLOSURE_BRIEF.md +36 -0
  49. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-11-export-dashboard-migration/EXECUTION_BRIEF.md +54 -0
  50. package/specs/quiver-v25-ai-first-lifecycle-orchestrator/slices/slice-11-export-dashboard-migration/slice.json +53 -0
  51. package/specs/quiver-v26-0121-smoke-hardening/EVIDENCE_REPORT.md +208 -0
  52. package/specs/quiver-v26-0121-smoke-hardening/EXECUTION_PLAN.md +57 -0
  53. package/specs/quiver-v26-0121-smoke-hardening/SPEC.md +137 -0
  54. package/specs/quiver-v26-0121-smoke-hardening/STATUS.md +32 -0
  55. package/specs/quiver-v26-0121-smoke-hardening/pr.md +96 -0
  56. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-00-docs-foundation/CLOSURE_BRIEF.md +35 -0
  57. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-00-docs-foundation/EXECUTION_BRIEF.md +55 -0
  58. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-00-docs-foundation/slice.json +73 -0
  59. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-01-cli-help-version-contract/CLOSURE_BRIEF.md +38 -0
  60. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-01-cli-help-version-contract/EXECUTION_BRIEF.md +51 -0
  61. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-01-cli-help-version-contract/slice.json +76 -0
  62. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-02-init-doc-links-and-flow-guidance/CLOSURE_BRIEF.md +37 -0
  63. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-02-init-doc-links-and-flow-guidance/EXECUTION_BRIEF.md +52 -0
  64. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-02-init-doc-links-and-flow-guidance/slice.json +75 -0
  65. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-03-ai-approval-review-consistency/CLOSURE_BRIEF.md +37 -0
  66. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-03-ai-approval-review-consistency/EXECUTION_BRIEF.md +53 -0
  67. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-03-ai-approval-review-consistency/slice.json +77 -0
  68. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-04-local-validation-brief-contracts/CLOSURE_BRIEF.md +35 -0
  69. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-04-local-validation-brief-contracts/EXECUTION_BRIEF.md +52 -0
  70. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-04-local-validation-brief-contracts/slice.json +77 -0
  71. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-05-demo-scaffold-readiness/CLOSURE_BRIEF.md +34 -0
  72. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-05-demo-scaffold-readiness/EXECUTION_BRIEF.md +54 -0
  73. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-05-demo-scaffold-readiness/slice.json +84 -0
  74. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-06-plan-graph-scope-performance/CLOSURE_BRIEF.md +35 -0
  75. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-06-plan-graph-scope-performance/EXECUTION_BRIEF.md +53 -0
  76. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-06-plan-graph-scope-performance/slice.json +82 -0
  77. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-07-smoke-release-readiness/CLOSURE_BRIEF.md +35 -0
  78. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-07-smoke-release-readiness/EXECUTION_BRIEF.md +55 -0
  79. package/specs/quiver-v26-0121-smoke-hardening/slices/slice-07-smoke-release-readiness/slice.json +92 -0
  80. package/specs/quiver-v27-reliability-ai-workflow-hardening/AUDIT_V24_V25_V26.md +67 -0
  81. package/specs/quiver-v27-reliability-ai-workflow-hardening/COMMAND_CONTRACTS.md +125 -0
  82. package/specs/quiver-v27-reliability-ai-workflow-hardening/COVERAGE_MATRIX.md +74 -0
  83. package/specs/quiver-v27-reliability-ai-workflow-hardening/EVIDENCE_REPORT.md +179 -0
  84. package/specs/quiver-v27-reliability-ai-workflow-hardening/EXECUTION_PLAN.md +71 -0
  85. package/specs/quiver-v27-reliability-ai-workflow-hardening/SPEC.md +176 -0
  86. package/specs/quiver-v27-reliability-ai-workflow-hardening/STATUS.md +37 -0
  87. package/specs/quiver-v27-reliability-ai-workflow-hardening/pr.md +132 -0
  88. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-00-docs-audit-coverage-and-contracts/CLOSURE_BRIEF.md +36 -0
  89. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-00-docs-audit-coverage-and-contracts/EXECUTION_BRIEF.md +56 -0
  90. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-00-docs-audit-coverage-and-contracts/slice.json +75 -0
  91. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-01-core-state-resolver-and-canonical-statuses/CLOSURE_BRIEF.md +37 -0
  92. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-01-core-state-resolver-and-canonical-statuses/EXECUTION_BRIEF.md +54 -0
  93. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-01-core-state-resolver-and-canonical-statuses/slice.json +79 -0
  94. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-02-json-export-contract-and-machine-output/CLOSURE_BRIEF.md +34 -0
  95. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-02-json-export-contract-and-machine-output/EXECUTION_BRIEF.md +54 -0
  96. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-02-json-export-contract-and-machine-output/slice.json +75 -0
  97. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-03-approved-plan-to-spec-create/CLOSURE_BRIEF.md +36 -0
  98. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-03-approved-plan-to-spec-create/EXECUTION_BRIEF.md +55 -0
  99. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-03-approved-plan-to-spec-create/slice.json +78 -0
  100. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-04-ai-artifact-storage-redaction-and-token-compaction/CLOSURE_BRIEF.md +31 -0
  101. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-04-ai-artifact-storage-redaction-and-token-compaction/EXECUTION_BRIEF.md +55 -0
  102. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-04-ai-artifact-storage-redaction-and-token-compaction/slice.json +77 -0
  103. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-05-worktree-lifecycle-locks-and-recovery/CLOSURE_BRIEF.md +31 -0
  104. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-05-worktree-lifecycle-locks-and-recovery/EXECUTION_BRIEF.md +55 -0
  105. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-05-worktree-lifecycle-locks-and-recovery/slice.json +84 -0
  106. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-06-validation-gates-and-scope-safety/CLOSURE_BRIEF.md +32 -0
  107. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-06-validation-gates-and-scope-safety/EXECUTION_BRIEF.md +57 -0
  108. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-06-validation-gates-and-scope-safety/slice.json +99 -0
  109. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-07-context-analysis-and-doctor-flow/CLOSURE_BRIEF.md +31 -0
  110. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-07-context-analysis-and-doctor-flow/EXECUTION_BRIEF.md +57 -0
  111. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-07-context-analysis-and-doctor-flow/slice.json +88 -0
  112. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-08-cross-platform-help-auth-and-dx/CLOSURE_BRIEF.md +31 -0
  113. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-08-cross-platform-help-auth-and-dx/EXECUTION_BRIEF.md +56 -0
  114. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-08-cross-platform-help-auth-and-dx/slice.json +85 -0
  115. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-09-fixtures-smoke-docs-and-release-readiness/CLOSURE_BRIEF.md +32 -0
  116. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-09-fixtures-smoke-docs-and-release-readiness/EXECUTION_BRIEF.md +56 -0
  117. package/specs/quiver-v27-reliability-ai-workflow-hardening/slices/slice-09-fixtures-smoke-docs-and-release-readiness/slice.json +91 -0
  118. package/src/create-quiver/commands/ai.js +652 -27
  119. package/src/create-quiver/commands/flow.js +58 -9
  120. package/src/create-quiver/commands/graph.js +11 -9
  121. package/src/create-quiver/commands/plan.js +7 -16
  122. package/src/create-quiver/commands/spec.js +282 -0
  123. package/src/create-quiver/index.js +409 -31
  124. package/src/create-quiver/lib/actionable-error.js +27 -0
  125. package/src/create-quiver/lib/agent-profiles.js +16 -4
  126. package/src/create-quiver/lib/ai/artifacts.js +318 -0
  127. package/src/create-quiver/lib/ai/context-packs.js +4 -0
  128. package/src/create-quiver/lib/ai/execution-plan.js +16 -1
  129. package/src/create-quiver/lib/ai/executor.js +272 -21
  130. package/src/create-quiver/lib/ai/export-state.js +679 -0
  131. package/src/create-quiver/lib/ai/github.js +162 -2
  132. package/src/create-quiver/lib/ai/onboarding-template.js +215 -2
  133. package/src/create-quiver/lib/ai/plan-review.js +7 -2
  134. package/src/create-quiver/lib/ai/providers.js +4 -3
  135. package/src/create-quiver/lib/ai/run-state.js +414 -0
  136. package/src/create-quiver/lib/ai/spec-generator.js +84 -13
  137. package/src/create-quiver/lib/ai/spec-templates.js +150 -21
  138. package/src/create-quiver/lib/analyze.js +2 -2
  139. package/src/create-quiver/lib/approvals.js +36 -5
  140. package/src/create-quiver/lib/demo.js +189 -14
  141. package/src/create-quiver/lib/doctor.js +154 -0
  142. package/src/create-quiver/lib/git.js +40 -1
  143. package/src/create-quiver/lib/handoff.js +123 -12
  144. package/src/create-quiver/lib/init-docs.js +35 -13
  145. package/src/create-quiver/lib/init-layout.js +9 -0
  146. package/src/create-quiver/lib/json.js +53 -3
  147. package/src/create-quiver/lib/lifecycle.js +52 -3
  148. package/src/create-quiver/lib/locks.js +134 -0
  149. package/src/create-quiver/lib/package-safety.js +7 -0
  150. package/src/create-quiver/lib/paths.js +74 -0
  151. package/src/create-quiver/lib/project-scan.js +74 -0
  152. package/src/create-quiver/lib/project-state-resolver.js +236 -0
  153. package/src/create-quiver/lib/readiness.js +66 -10
  154. package/src/create-quiver/lib/scope.js +52 -8
  155. package/src/create-quiver/lib/slice-graph.js +138 -38
  156. package/src/create-quiver/lib/slice.js +14 -5
  157. package/src/create-quiver/lib/spec-worktrees.js +129 -32
  158. package/src/create-quiver/lib/statuses.js +115 -0
@@ -0,0 +1,31 @@
1
+ # CLOSURE BRIEF - slice-05: Worktree lifecycle, locks, and recovery
2
+
3
+ ## Summary
4
+
5
+ Implemented worktree lifecycle hardening for persistent spec worktrees, slice worktree startup, and delegated parallel AI execution runs. The slice adds shared lock handling, stale/missing worktree recovery messages, nested worktree prevention, and focused tests for the production risks found in Pixel Quiver dogfooding.
6
+
7
+ ## Validation Against Acceptance Criteria
8
+
9
+ - `spec start` dry-run and real reuse behavior remains covered by existing spec worktree tests.
10
+ - Existing spec worktrees are reused when valid; stale or manually deleted registered worktrees now fail with recovery steps instead of being silently recreated.
11
+ - Running slice startup from a linked worktree now rejects nested worktree creation unless it is reusing the exact registered worktree.
12
+ - Delegated parallel execution uses a run-level lock and fails safely before provider execution when the same run is already active.
13
+ - Dirty, missing, stale, and conflicting worktree states produce actionable recovery guidance.
14
+
15
+ ## Changes
16
+
17
+ - Added `src/create-quiver/lib/locks.js` for `.quiver/locks` helpers and local runtime-state ignore handling.
18
+ - Updated `src/create-quiver/lib/git.js` with linked-worktree and realpath-aware git directory helpers.
19
+ - Updated `src/create-quiver/lib/spec-worktrees.js` with persistent worktree reuse checks, lock handling, stale path recovery, and nested worktree safeguards.
20
+ - Updated `src/create-quiver/lib/lifecycle.js` with slice worktree locks and nested worktree prevention.
21
+ - Updated `src/create-quiver/lib/ai/execution-plan.js` with delegated run locking.
22
+ - Added regression coverage in `tests/lib/lifecycle.test.js` and `tests/commands/ai-execute-plan.test.js`.
23
+
24
+ ## Remaining Risks
25
+
26
+ - Existing user-created stale locks may require manual removal after the user confirms no Quiver process is active.
27
+ - This slice hardens lifecycle behavior but does not yet expand `check-scope`, `check-handoff`, or `spec validate`; those remain in `slice-06`.
28
+
29
+ ## Follow-up Recommendations
30
+
31
+ - Execute `slice-06-validation-gates-and-scope-safety` next so the new lifecycle guarantees are enforced by validation gates before later context and DX work.
@@ -0,0 +1,55 @@
1
+ # EXECUTION BRIEF - slice-05: Worktree lifecycle, locks, and recovery
2
+
3
+ ## Context
4
+
5
+ Pixel Quiver showed confusing worktree guidance and potential nested worktree paths. The desired workflow is one persistent worktree per spec and one commit per slice, while delegated execution may still use temporary worktrees internally.
6
+
7
+ ## Objective
8
+
9
+ Harden worktree lifecycle, locking, and recovery.
10
+
11
+ ## Scope
12
+
13
+ - Spec worktree lifecycle
14
+ - Delegated execution worktree strategy
15
+ - Git/worktree recovery messages
16
+ - Locking for concurrent operations
17
+ - Tests and docs evidence
18
+
19
+ ## Acceptance Criteria
20
+
21
+ - Spec worktrees are persistent and reused.
22
+ - Existing spec worktrees do not create nested paths.
23
+ - Temporary worktrees remain limited to delegated parallel execution.
24
+ - Dirty/missing/stale worktrees report recovery steps.
25
+ - Concurrent operations are locked or rejected safely.
26
+
27
+ ## Technical Plan Summary
28
+
29
+ Clarify worktree identity, add detection for current worktree context, add locks and recovery tests.
30
+
31
+ ## Suggested Execution Steps
32
+
33
+ 1. Inspect spec worktree and executor code.
34
+ 2. Define worktree modes and lock locations.
35
+ 3. Implement context detection and recovery messaging.
36
+ 4. Add tests for root, worktree, dirty, missing, stale, and delegated paths.
37
+ 5. Update docs/evidence.
38
+
39
+ ## Restrictions
40
+
41
+ - Do not remove delegated parallel capability.
42
+ - Do not force destructive cleanup without explicit option.
43
+
44
+ ## Risks
45
+
46
+ - Existing users may rely on current branch names; preserve compatibility where possible.
47
+
48
+ ## Completion Checklist
49
+
50
+ - [ ] Persistent spec worktree behavior covered.
51
+ - [ ] Nested worktree prevention covered.
52
+ - [ ] Delegated worktrees still pass tests.
53
+ - [ ] Lock/recovery behavior covered.
54
+ - [ ] Validation commands passed.
55
+
@@ -0,0 +1,84 @@
1
+ {
2
+ "slice_id": "slice-05-worktree-lifecycle-locks-and-recovery",
3
+ "ticket": "QUIVER-27-05",
4
+ "type": "implementation",
5
+ "title": "Worktree lifecycle, locks, and recovery",
6
+ "objective": "Harden the spec worktree lifecycle so Quiver supports one persistent worktree per spec, one commit per slice, temporary delegated worktrees, locks, and recovery.",
7
+ "description": "Clarifies spec vs temporary slice worktrees, prevents nested/conflicting paths, handles dirty root and missing worktrees, adds locks for concurrent execution, and reports recovery paths.",
8
+ "git": {
9
+ "branch_type": "feature",
10
+ "base_branch": "main",
11
+ "branch_slug": "v27-worktree-lifecycle-locks-recovery",
12
+ "branch_name": "feature/QUIVER-27-05-v27-worktree-lifecycle-locks-recovery"
13
+ },
14
+ "files": [
15
+ "src/create-quiver/lib/spec-worktrees.js",
16
+ "src/create-quiver/lib/lifecycle.js",
17
+ "src/create-quiver/lib/locks.js",
18
+ "src/create-quiver/lib/ai/execution-plan.js",
19
+ "src/create-quiver/lib/ai/executor.js",
20
+ "src/create-quiver/lib/git.js",
21
+ "tests/lib/*worktree*.test.js",
22
+ "tests/commands/spec-worktree.test.js",
23
+ "tests/commands/ai-execute-plan.test.js",
24
+ "specs/quiver-v27-reliability-ai-workflow-hardening/**"
25
+ ],
26
+ "expected_read_paths": [
27
+ "src/create-quiver/lib/spec-worktrees.js",
28
+ "src/create-quiver/lib/lifecycle.js",
29
+ "src/create-quiver/lib/git.js",
30
+ "src/create-quiver/lib/ai/execution-plan.js",
31
+ "src/create-quiver/lib/ai/executor.js",
32
+ "tests/commands/spec-worktree.test.js",
33
+ "tests/commands/ai-execute-plan.test.js",
34
+ "tests/lib/lifecycle.test.js"
35
+ ],
36
+ "allowed_write_paths": [
37
+ "src/create-quiver/lib/spec-worktrees.js",
38
+ "src/create-quiver/lib/lifecycle.js",
39
+ "src/create-quiver/lib/locks.js",
40
+ "src/create-quiver/lib/ai/execution-plan.js",
41
+ "src/create-quiver/lib/ai/executor.js",
42
+ "src/create-quiver/lib/git.js",
43
+ "tests/lib/**",
44
+ "tests/commands/**",
45
+ "specs/quiver-v27-reliability-ai-workflow-hardening/**"
46
+ ],
47
+ "depends_on": [
48
+ "slice-01-core-state-resolver-and-canonical-statuses"
49
+ ],
50
+ "parallel_safe": "yes",
51
+ "parallel_safe_reason": "Can run after shared resolver if it avoids AI artifact files touched by slice-04.",
52
+ "must": [
53
+ "Preserve one persistent worktree per spec.",
54
+ "Keep temporary per-slice worktrees only for delegated parallel execution.",
55
+ "Avoid nested worktree paths.",
56
+ "Handle dirty root/worktree states with clear recovery.",
57
+ "Add locks for concurrent spec/run operations.",
58
+ "Detect stale or manually deleted worktrees."
59
+ ],
60
+ "not_included": [
61
+ "Changing PR creation behavior unless required by worktree recovery.",
62
+ "Publishing npm.",
63
+ "Changing provider execution."
64
+ ],
65
+ "acceptance": [
66
+ "spec start dry-run and real run report/reuse the same persistent spec worktree.",
67
+ "Running from an existing spec worktree does not propose a nested worktree.",
68
+ "Delegated execution can still use temporary worktrees safely.",
69
+ "Dirty, missing, stale, or deleted worktrees produce actionable recovery messages.",
70
+ "Concurrent operations use locks or fail safely."
71
+ ],
72
+ "tests": [
73
+ "node --test tests/commands/spec-worktree.test.js tests/commands/spec-close.test.js tests/commands/ai-execute-plan.test.js tests/lib/lifecycle.test.js",
74
+ "git diff --check"
75
+ ],
76
+ "validation_hints": [
77
+ "Test from repo root and from inside a spec worktree.",
78
+ "Simulate manually deleted worktree paths."
79
+ ],
80
+ "estimated_hours": 6,
81
+ "status": "completed",
82
+ "completed_at": "2026-05-24",
83
+ "blocked_reason": null
84
+ }
@@ -0,0 +1,32 @@
1
+ # CLOSURE BRIEF - slice-06: Validation gates and scope safety
2
+
3
+ ## Summary
4
+
5
+ Implemented validation gate hardening across local slice checks, scope validation, handoff validation, full spec validation, and path safety. The slice closes the Pixel Quiver gaps where validation could pass while later execution failed or where commands assumed the wrong base branch.
6
+
7
+ ## Validation Against Acceptance Criteria
8
+
9
+ - `check-slice --local` now validates local execution metadata, declared scope paths, dependency contracts, and reports executed and skipped checks.
10
+ - `check-scope` now respects an explicit `--base`, then `slice.git.base_branch`, before falling back to common base branches.
11
+ - `check-handoff` now reports missing headings with accepted aliases and a minimal template.
12
+ - `spec validate` now checks spec docs, slice JSON, briefs, dependency cycles, safe paths, evidence references, and status references.
13
+ - Slice paths and declared scope paths outside the repo root or using traversal are rejected before execution guidance or scope validation.
14
+
15
+ ## Changes
16
+
17
+ - Added `spec validate` command support in `src/create-quiver/commands/spec.js` and `src/create-quiver/index.js`.
18
+ - Hardened `src/create-quiver/lib/readiness.js` for local slice checks and base-aware `check-scope`.
19
+ - Hardened `src/create-quiver/lib/handoff.js` with alias/template guidance.
20
+ - Added repo-bound path validation helpers in `src/create-quiver/lib/paths.js`.
21
+ - Applied path boundary checks in `src/create-quiver/lib/slice.js`, `src/create-quiver/lib/scope.js`, and `src/create-quiver/lib/ai/executor.js`.
22
+ - Added `quiver:spec:validate` to generated package scripts and synchronized `README.md`, `README_FOR_AI.md`, and `docs/COMMANDS.md.template`.
23
+ - Added tests in `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`, and `tests/commands/cli-contract.test.js`.
24
+
25
+ ## Remaining Risks
26
+
27
+ - `spec validate` intentionally treats status/evidence mismatches as warnings by default for legacy compatibility; `--strict` promotes those warnings to failures.
28
+ - `check-pr` still contains older `origin/develop` assumptions and should be revisited when PR/readiness flows are hardened further.
29
+
30
+ ## Follow-up Recommendations
31
+
32
+ - Execute `slice-07-context-analysis-and-doctor-flow` next so analyzer, prepare-context, flow, and doctor can consume the stronger validation contracts.
@@ -0,0 +1,57 @@
1
+ # EXECUTION BRIEF - slice-06: Validation gates and scope safety
2
+
3
+ ## Context
4
+
5
+ Pixel Quiver showed that some validation gates passed while later execution failed, or skipped checks because of wrong branch assumptions. This slice turns validation into a reliable preflight.
6
+
7
+ ## Objective
8
+
9
+ Harden validation gates and path/scope safety.
10
+
11
+ ## Scope
12
+
13
+ - `check-slice`
14
+ - `check-scope`
15
+ - `check-handoff`
16
+ - `spec validate`
17
+ - path safety helpers
18
+ - tests and docs evidence
19
+
20
+ ## Acceptance Criteria
21
+
22
+ - Local slice validation catches local execution preconditions or clearly lists skipped checks.
23
+ - Scope validation respects `--base` and `slice.git.base_branch`.
24
+ - Handoff errors include templates or aliases.
25
+ - `spec validate` validates full spec structure and evidence consistency.
26
+ - Path traversal/out-of-root writes are rejected.
27
+
28
+ ## Technical Plan Summary
29
+
30
+ Align validators with execution behavior, add strict/legacy modes where needed, and cover real dogfooding failures with tests.
31
+
32
+ ## Suggested Execution Steps
33
+
34
+ 1. Inspect validation and scope code.
35
+ 2. Add missing base/path/brief checks.
36
+ 3. Implement `spec validate` if not present.
37
+ 4. Add compatibility handling for legacy specs.
38
+ 5. Add regression tests.
39
+
40
+ ## Restrictions
41
+
42
+ - Do not break legacy specs without documented strict mode.
43
+ - Do not silently skip validation when base information is available.
44
+
45
+ ## Risks
46
+
47
+ - End users may have older specs; use warnings or migration guidance when appropriate.
48
+
49
+ ## Completion Checklist
50
+
51
+ - [ ] check-slice covered.
52
+ - [ ] check-scope covered.
53
+ - [ ] check-handoff covered.
54
+ - [ ] spec validate covered.
55
+ - [ ] path safety covered.
56
+ - [ ] Validation commands passed.
57
+
@@ -0,0 +1,99 @@
1
+ {
2
+ "slice_id": "slice-06-validation-gates-and-scope-safety",
3
+ "ticket": "QUIVER-27-06",
4
+ "type": "implementation",
5
+ "title": "Validation gates and scope safety",
6
+ "objective": "Harden check-slice, check-scope, check-handoff, spec validate, and path safety so validation gates catch real execution failures.",
7
+ "description": "Aligns local slice validation with execution preconditions, fixes base branch resolution, improves handoff template errors and aliases, adds spec validate, and prevents path traversal/out-of-scope writes.",
8
+ "git": {
9
+ "branch_type": "feature",
10
+ "base_branch": "main",
11
+ "branch_slug": "v27-validation-gates-scope-safety",
12
+ "branch_name": "feature/QUIVER-27-06-v27-validation-gates-scope-safety"
13
+ },
14
+ "files": [
15
+ "src/create-quiver/lib/readiness.js",
16
+ "src/create-quiver/lib/scope.js",
17
+ "src/create-quiver/lib/handoff.js",
18
+ "src/create-quiver/lib/paths.js",
19
+ "src/create-quiver/lib/slice.js",
20
+ "src/create-quiver/lib/ai/executor.js",
21
+ "src/create-quiver/lib/init-layout.js",
22
+ "src/create-quiver/commands/spec.js",
23
+ "src/create-quiver/index.js",
24
+ "package.json",
25
+ "README.md",
26
+ "README_FOR_AI.md",
27
+ "docs/COMMANDS.md.template",
28
+ "tests/lib/**",
29
+ "tests/commands/**",
30
+ "specs/quiver-v27-reliability-ai-workflow-hardening/**"
31
+ ],
32
+ "expected_read_paths": [
33
+ "src/create-quiver/lib/readiness.js",
34
+ "src/create-quiver/lib/scope.js",
35
+ "src/create-quiver/lib/handoff.js",
36
+ "src/create-quiver/lib/paths.js",
37
+ "src/create-quiver/lib/slice.js",
38
+ "src/create-quiver/lib/init-layout.js",
39
+ "tests/lib/check-slice.test.js",
40
+ "tests/lib/scope.test.js",
41
+ "tests/lib/handoff.test.js"
42
+ ],
43
+ "allowed_write_paths": [
44
+ "src/create-quiver/lib/readiness.js",
45
+ "src/create-quiver/lib/scope.js",
46
+ "src/create-quiver/lib/handoff.js",
47
+ "src/create-quiver/lib/paths.js",
48
+ "src/create-quiver/lib/slice.js",
49
+ "src/create-quiver/lib/ai/executor.js",
50
+ "src/create-quiver/lib/init-layout.js",
51
+ "src/create-quiver/commands/spec.js",
52
+ "src/create-quiver/index.js",
53
+ "package.json",
54
+ "README.md",
55
+ "README_FOR_AI.md",
56
+ "docs/COMMANDS.md.template",
57
+ "tests/lib/**",
58
+ "tests/commands/**",
59
+ "specs/quiver-v27-reliability-ai-workflow-hardening/**"
60
+ ],
61
+ "depends_on": [
62
+ "slice-01-core-state-resolver-and-canonical-statuses",
63
+ "slice-05-worktree-lifecycle-locks-and-recovery"
64
+ ],
65
+ "parallel_safe": "no",
66
+ "parallel_safe_reason": "Validation gates depend on resolver and worktree lifecycle behavior.",
67
+ "must": [
68
+ "Align check-slice --local with start/execute preconditions or list skipped checks.",
69
+ "Make check-scope respect --base and slice git.base_branch before fallbacks.",
70
+ "Add or harden spec validate.",
71
+ "Improve check-handoff error templates and Spanish/English aliases.",
72
+ "Reject path traversal and writes outside project root.",
73
+ "Support legacy/strict validation modes where needed."
74
+ ],
75
+ "not_included": [
76
+ "Changing export schema.",
77
+ "Changing AI provider behavior.",
78
+ "Publishing npm."
79
+ ],
80
+ "acceptance": [
81
+ "check-slice --local catches required local metadata for execution or documents skipped checks.",
82
+ "check-scope does not hardcode develop when --base or slice base_branch is provided.",
83
+ "check-handoff prints minimal templates or accepted aliases when headings are missing.",
84
+ "spec validate checks spec docs, slices, JSON, briefs, evidence, and status consistency.",
85
+ "Paths outside the repo root are rejected."
86
+ ],
87
+ "tests": [
88
+ "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/cli-contract.test.js",
89
+ "git diff --check"
90
+ ],
91
+ "validation_hints": [
92
+ "Add tests for main, master, develop, --base, and missing remote.",
93
+ "Add path traversal and symlink cases."
94
+ ],
95
+ "estimated_hours": 6,
96
+ "status": "completed",
97
+ "completed_at": "2026-05-24",
98
+ "blocked_reason": null
99
+ }
@@ -0,0 +1,31 @@
1
+ # CLOSURE BRIEF - slice-07: Context analysis and doctor flow
2
+
3
+ ## Summary
4
+
5
+ Hardened context analysis and diagnostics so `analyze`, `prepare-context`, `flow`, and `doctor` provide evidence-based guidance without unsafe dry-run writes or misleading examples.
6
+
7
+ ## Validation Against Acceptance Criteria
8
+
9
+ - `analyze --dry-run` now builds the scan in memory, reports planned writes, and does not create `.quiver/`, `docs/PROJECT_MAP.md`, or `docs/AI_CONTEXT.md`.
10
+ - React + Vite projects are detected as `react` with `vite` as an additional framework; `vite.config.*` no longer implies Vue.
11
+ - `prepare-context` keeps detected package manager, stack, and scripts as facts while leaving unknown architecture boundaries as TODO/pending confirmation.
12
+ - `flow` reports context source/freshness in human output and JSON facts.
13
+ - `doctor` examples target an active slice when available, the single spec when unambiguous, or generic placeholders when multiple specs have no active slice.
14
+
15
+ ## Changes
16
+
17
+ - Added scan status metadata in `src/create-quiver/lib/project-scan.js`.
18
+ - Added true `analyze --dry-run` handling and React/Vite detection fixes in `src/create-quiver/index.js`.
19
+ - Added `flow` context-source output.
20
+ - Added doctor example target selection.
21
+ - Added focused command and library tests for analyze, flow, doctor, project scan status, and prepare-context evidence behavior.
22
+ - Updated v27 spec/status/evidence docs.
23
+
24
+ ## Remaining Risks
25
+
26
+ - Analyzer heuristics remain intentionally conservative. More real-world fixtures should be added in slice-09 before release readiness.
27
+
28
+ ## Follow-up Recommendations
29
+
30
+ - Continue with `slice-08-cross-platform-help-auth-and-dx`.
31
+ - In slice-09, include tarball/package smoke coverage for `analyze --dry-run`, `flow`, and `doctor` examples.
@@ -0,0 +1,57 @@
1
+ # EXECUTION BRIEF - slice-07: Context analysis and doctor flow
2
+
3
+ ## Context
4
+
5
+ Pixel Quiver showed analyzer stack mistakes, `analyze --dry-run` writes, placeholder-heavy `prepare-context`, stale docs, and doctor examples pointing to the wrong spec. This slice hardens context commands and first-use guidance.
6
+
7
+ ## Objective
8
+
9
+ Make context analysis and doctor/flow guidance evidence-based, read-only where promised, and accurate.
10
+
11
+ ## Scope
12
+
13
+ - `analyze`
14
+ - project scan
15
+ - `ai prepare-context`
16
+ - `flow`
17
+ - `doctor`
18
+ - fixtures and tests
19
+
20
+ ## Acceptance Criteria
21
+
22
+ - `analyze --dry-run` writes nothing.
23
+ - React + Vite detection is correct.
24
+ - `prepare-context` is conservative and evidence-based.
25
+ - `flow` reports source/staleness.
26
+ - `doctor` does not suggest commands for the wrong spec.
27
+
28
+ ## Technical Plan Summary
29
+
30
+ Improve scan heuristics, dry-run behavior, docs contradiction detection, active context selection, and test fixtures.
31
+
32
+ ## Suggested Execution Steps
33
+
34
+ 1. Inspect analyze/project-scan behavior.
35
+ 2. Add no-write dry-run guard and tests.
36
+ 3. Improve stack detection.
37
+ 4. Improve prepare-context contradiction output.
38
+ 5. Improve flow/doctor state source and example selection.
39
+ 6. Add fixtures and evidence.
40
+
41
+ ## Restrictions
42
+
43
+ - Do not overwrite human-authored docs without snapshots/review.
44
+ - Do not execute providers.
45
+
46
+ ## Risks
47
+
48
+ - Analyzer heuristics can regress other stacks; add representative fixtures.
49
+
50
+ ## Completion Checklist
51
+
52
+ - [ ] Dry-run no-write test added.
53
+ - [ ] React/Vite fixture added.
54
+ - [ ] prepare-context evidence behavior covered.
55
+ - [ ] flow/doctor guidance covered.
56
+ - [ ] Validation commands passed.
57
+
@@ -0,0 +1,88 @@
1
+ {
2
+ "slice_id": "slice-07-context-analysis-and-doctor-flow",
3
+ "ticket": "QUIVER-27-07",
4
+ "type": "implementation",
5
+ "title": "Context analysis and doctor flow",
6
+ "objective": "Harden analyze, prepare-context, flow, and doctor so onboarding docs are evidence-based, dry-runs are read-only, and next steps are accurate.",
7
+ "description": "Fixes stack detection, read-only dry-run behavior, docs/status consistency checks, stale-state guidance, active spec/slice examples, root/package manager detection, and first-use diagnostics.",
8
+ "git": {
9
+ "branch_type": "feature",
10
+ "base_branch": "main",
11
+ "branch_slug": "v27-context-analysis-doctor-flow",
12
+ "branch_name": "feature/QUIVER-27-07-v27-context-analysis-doctor-flow"
13
+ },
14
+ "files": [
15
+ "src/create-quiver/lib/analyze.js",
16
+ "src/create-quiver/lib/project-scan.js",
17
+ "src/create-quiver/lib/doctor.js",
18
+ "src/create-quiver/lib/ai/onboarding-template.js",
19
+ "src/create-quiver/commands/flow.js",
20
+ "src/create-quiver/commands/prepare.js",
21
+ "tests/lib/**",
22
+ "tests/commands/**",
23
+ "tests/fixtures/**",
24
+ "specs/quiver-v27-reliability-ai-workflow-hardening/**"
25
+ ],
26
+ "expected_read_paths": [
27
+ "src/create-quiver/lib/analyze.js",
28
+ "src/create-quiver/lib/project-scan.js",
29
+ "src/create-quiver/lib/doctor.js",
30
+ "src/create-quiver/lib/ai/onboarding-template.js",
31
+ "src/create-quiver/commands/flow.js",
32
+ "tests/commands/analyze.test.js",
33
+ "tests/commands/ai-onboard.test.js",
34
+ "tests/commands/flow.test.js",
35
+ "tests/commands/doctor.test.js"
36
+ ],
37
+ "allowed_write_paths": [
38
+ "src/create-quiver/lib/analyze.js",
39
+ "src/create-quiver/lib/project-scan.js",
40
+ "src/create-quiver/lib/doctor.js",
41
+ "src/create-quiver/lib/ai/onboarding-template.js",
42
+ "src/create-quiver/commands/flow.js",
43
+ "src/create-quiver/commands/prepare.js",
44
+ "tests/lib/**",
45
+ "tests/commands/**",
46
+ "tests/fixtures/**",
47
+ "specs/quiver-v27-reliability-ai-workflow-hardening/**"
48
+ ],
49
+ "depends_on": [
50
+ "slice-01-core-state-resolver-and-canonical-statuses",
51
+ "slice-06-validation-gates-and-scope-safety"
52
+ ],
53
+ "parallel_safe": "no",
54
+ "parallel_safe_reason": "Context and doctor guidance depends on resolver and validation contract behavior.",
55
+ "must": [
56
+ "Make analyze --dry-run read-only.",
57
+ "Improve React/Vite and stack detection using package.json and config evidence.",
58
+ "Make prepare-context conservative and evidence-based.",
59
+ "Detect docs/status contradictions without overwriting human content.",
60
+ "Make flow show source/timestamp or stale-state information.",
61
+ "Make doctor prioritize active spec/slice examples where available."
62
+ ],
63
+ "not_included": [
64
+ "Changing spec create behavior.",
65
+ "Changing worktree lifecycle beyond guidance messages.",
66
+ "Executing AI providers."
67
+ ],
68
+ "acceptance": [
69
+ "analyze --dry-run leaves git status unchanged.",
70
+ "React + Vite projects are detected as React/Vite, not Vue.",
71
+ "prepare-context --dry-run does not propose placeholders as truth when evidence exists.",
72
+ "flow reports the state source or a stale/missing context explanation.",
73
+ "doctor examples prefer active spec/slice context or generic examples over the wrong spec."
74
+ ],
75
+ "tests": [
76
+ "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",
77
+ "npm run smoke:doctor-fixtures",
78
+ "git diff --check"
79
+ ],
80
+ "validation_hints": [
81
+ "Snapshot git status before/after dry-run tests.",
82
+ "Use fixtures with stale docs and real completed slices."
83
+ ],
84
+ "estimated_hours": 6,
85
+ "status": "completed",
86
+ "completed_at": "2026-05-24",
87
+ "blocked_reason": null
88
+ }
@@ -0,0 +1,31 @@
1
+ # CLOSURE BRIEF - slice-08: Cross-platform help, auth, and DX
2
+
3
+ ## Summary
4
+
5
+ Hardened cross-platform DX around help output, agent profile previews, GitHub auth diagnostics, SSH/path guidance, and package-manager-aware next-step messaging.
6
+
7
+ ## Validation Against Acceptance Criteria
8
+
9
+ - Help output now documents the `ai agent set --dry-run` flow and the general `--dry-run` option includes `ai agent set`.
10
+ - Paths with spaces now trigger shell-specific guidance for macOS/Linux, Windows PowerShell, Git Bash, and WSL in GitHub PR/preflight output.
11
+ - GitHub auth failures now identify likely account, scope, and SSH alias issues and point to `gh auth status` as the next safe command.
12
+ - `ai agent set --dry-run` validates and previews the profile without writing `.quiver/agents/profiles.json`.
13
+ - `flow` now reports the detected package manager and generated `quiver:flow` script command; init/migrate install fallback warnings respect npm, pnpm, yarn, or bun.
14
+
15
+ ## Changes
16
+
17
+ - Added `buildAgentProfileState` and wired `ai agent set --dry-run` through `src/create-quiver/commands/ai.js`.
18
+ - Updated CLI help, examples, and agent dispatch in `src/create-quiver/index.js`.
19
+ - Added GitHub auth classification and shell-safe command/path formatting in `src/create-quiver/lib/ai/github.js`.
20
+ - Added package-manager-aware flow output in `src/create-quiver/commands/flow.js`.
21
+ - Updated command docs and v27 evidence/status docs.
22
+ - Added focused tests for agent dry-run, help contract, GitHub diagnostics/path guidance, and flow package-manager output.
23
+
24
+ ## Remaining Risks
25
+
26
+ - `gh auth status` output varies by GitHub CLI version; diagnostics intentionally combine parsed hints with general account/scope/alias guidance.
27
+ - Shell-safe examples are generated for common shells, but unusual shell configurations may still require manual path adaptation.
28
+
29
+ ## Follow-up Recommendations
30
+
31
+ - In `slice-09`, include smoke coverage for packaged CLI help, `flow`, `ai agent set --dry-run`, and GitHub diagnostic fixtures.
@@ -0,0 +1,56 @@
1
+ # EXECUTION BRIEF - slice-08: Cross-platform help, auth, and DX
2
+
3
+ ## Context
4
+
5
+ Pixel Quiver exposed DX gaps around paths with spaces, GitHub auth, command copying, help coverage, and safe profile configuration. This slice focuses on user-facing clarity after core context behavior is hardened.
6
+
7
+ ## Objective
8
+
9
+ Improve cross-platform help, auth diagnostics, and actionable command guidance.
10
+
11
+ ## Scope
12
+
13
+ - CLI help
14
+ - doctor/preflight messages
15
+ - GitHub auth diagnostics
16
+ - agent profile dry-run
17
+ - package manager-aware suggestions
18
+ - docs and tests
19
+
20
+ ## Acceptance Criteria
21
+
22
+ - Help output covers public commands and key options.
23
+ - Path guidance is copy-safe across OS variants.
24
+ - GitHub auth diagnostics are actionable.
25
+ - Agent profile dry-run does not write files.
26
+ - Suggested commands respect detected package manager.
27
+
28
+ ## Technical Plan Summary
29
+
30
+ Update help registry/messages, add auth diagnostics and dry-run preview, and cover OS/package-manager examples with tests.
31
+
32
+ ## Suggested Execution Steps
33
+
34
+ 1. Inspect help and diagnostics surfaces.
35
+ 2. Add/adjust `ai agent set --dry-run`.
36
+ 3. Improve GitHub auth and SSH alias messages.
37
+ 4. Add path/package-manager guidance.
38
+ 5. Update docs and tests.
39
+
40
+ ## Restrictions
41
+
42
+ - Do not install credentials or mutate user auth.
43
+ - Do not require network in tests.
44
+
45
+ ## Risks
46
+
47
+ - Help output can drift; keep tests tied to command registry.
48
+
49
+ ## Completion Checklist
50
+
51
+ - [ ] Help tests updated.
52
+ - [ ] Auth diagnostics tested.
53
+ - [ ] Agent dry-run tested.
54
+ - [ ] Cross-platform path guidance tested.
55
+ - [ ] Validation commands passed.
56
+