create-quiver 0.15.0 → 0.15.2

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 (96) hide show
  1. package/.github/workflows/ci.yml +3 -0
  2. package/CHANGELOG.md +6 -0
  3. package/README.md +33 -0
  4. package/README_FOR_AI.md +13 -6
  5. package/ROADMAP.md +5 -0
  6. package/docs/AI_CONTEXT.md.template +4 -0
  7. package/docs/AI_ONBOARDING_PROMPT.md.template +8 -0
  8. package/docs/CLI_UX_GUIDE.md +31 -2
  9. package/docs/COMMANDS.md.template +16 -5
  10. package/docs/TROUBLESHOOTING.md +70 -0
  11. package/docs/TROUBLESHOOTING.md.template +20 -0
  12. package/docs/WORKFLOW.md.template +2 -2
  13. package/docs/getting-started/installation.md +86 -0
  14. package/docs/reference/commands.md +39 -5
  15. package/package.json +1 -1
  16. package/specs/quiver-v31-ai-model-catalog-agent-selection/EVIDENCE_REPORT.md +185 -0
  17. package/specs/quiver-v31-ai-model-catalog-agent-selection/EXECUTION_PLAN.md +85 -0
  18. package/specs/quiver-v31-ai-model-catalog-agent-selection/SPEC.md +337 -0
  19. package/specs/quiver-v31-ai-model-catalog-agent-selection/STATUS.md +30 -0
  20. package/specs/quiver-v31-ai-model-catalog-agent-selection/pr.md +98 -0
  21. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-00-spec-foundation/CLOSURE_BRIEF.md +30 -0
  22. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-00-spec-foundation/EXECUTION_BRIEF.md +51 -0
  23. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-00-spec-foundation/slice.json +62 -0
  24. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-01-model-catalog-alias-normalization/CLOSURE_BRIEF.md +32 -0
  25. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-01-model-catalog-alias-normalization/EXECUTION_BRIEF.md +53 -0
  26. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-01-model-catalog-alias-normalization/slice.json +72 -0
  27. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-02-interactive-agent-set-selectors/CLOSURE_BRIEF.md +36 -0
  28. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-02-interactive-agent-set-selectors/EXECUTION_BRIEF.md +56 -0
  29. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-02-interactive-agent-set-selectors/slice.json +78 -0
  30. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-03-agent-doctor-repair/CLOSURE_BRIEF.md +36 -0
  31. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-03-agent-doctor-repair/EXECUTION_BRIEF.md +57 -0
  32. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-03-agent-doctor-repair/slice.json +77 -0
  33. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-04-shared-preflight-provider-errors/CLOSURE_BRIEF.md +35 -0
  34. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-04-shared-preflight-provider-errors/EXECUTION_BRIEF.md +55 -0
  35. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-04-shared-preflight-provider-errors/slice.json +84 -0
  36. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-05-ai-models-list/CLOSURE_BRIEF.md +32 -0
  37. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-05-ai-models-list/EXECUTION_BRIEF.md +52 -0
  38. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-05-ai-models-list/slice.json +72 -0
  39. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-06-docs-templates-alignment/CLOSURE_BRIEF.md +33 -0
  40. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-06-docs-templates-alignment/EXECUTION_BRIEF.md +58 -0
  41. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-06-docs-templates-alignment/slice.json +84 -0
  42. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-07-tests-smokes-release-readiness/CLOSURE_BRIEF.md +32 -0
  43. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-07-tests-smokes-release-readiness/EXECUTION_BRIEF.md +59 -0
  44. package/specs/quiver-v31-ai-model-catalog-agent-selection/slices/slice-07-tests-smokes-release-readiness/slice.json +94 -0
  45. package/specs/quiver-v32-npx-installation-guidance/EVIDENCE_REPORT.md +26 -0
  46. package/specs/quiver-v32-npx-installation-guidance/SPEC.md +55 -0
  47. package/specs/quiver-v32-npx-installation-guidance/STATUS.md +23 -0
  48. package/specs/quiver-v32-npx-installation-guidance/pr.md +72 -0
  49. package/specs/quiver-v32-npx-installation-guidance/slices/slice-00-installation-docs/CLOSURE_BRIEF.md +31 -0
  50. package/specs/quiver-v32-npx-installation-guidance/slices/slice-00-installation-docs/EXECUTION_BRIEF.md +56 -0
  51. package/specs/quiver-v32-npx-installation-guidance/slices/slice-00-installation-docs/slice.json +75 -0
  52. package/specs/quiver-v33-approval-ux-and-planner-progress/EVIDENCE_REPORT.md +93 -0
  53. package/specs/quiver-v33-approval-ux-and-planner-progress/EXECUTION_PLAN.md +83 -0
  54. package/specs/quiver-v33-approval-ux-and-planner-progress/SPEC.md +158 -0
  55. package/specs/quiver-v33-approval-ux-and-planner-progress/STATUS.md +31 -0
  56. package/specs/quiver-v33-approval-ux-and-planner-progress/pr.md +109 -0
  57. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-00-approval-ux-foundation/CLOSURE_BRIEF.md +30 -0
  58. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-00-approval-ux-foundation/EXECUTION_BRIEF.md +56 -0
  59. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-00-approval-ux-foundation/slice.json +65 -0
  60. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-01-approval-candidates-model/CLOSURE_BRIEF.md +19 -0
  61. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-01-approval-candidates-model/EXECUTION_BRIEF.md +51 -0
  62. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-01-approval-candidates-model/slice.json +74 -0
  63. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-02-approve-interactive-selection/CLOSURE_BRIEF.md +20 -0
  64. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-02-approve-interactive-selection/EXECUTION_BRIEF.md +53 -0
  65. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-02-approve-interactive-selection/slice.json +79 -0
  66. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-03-technical-plan-review-decision-data/CLOSURE_BRIEF.md +19 -0
  67. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-03-technical-plan-review-decision-data/EXECUTION_BRIEF.md +50 -0
  68. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-03-technical-plan-review-decision-data/slice.json +75 -0
  69. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-04-revise-input-guardrails/CLOSURE_BRIEF.md +19 -0
  70. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-04-revise-input-guardrails/EXECUTION_BRIEF.md +51 -0
  71. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-04-revise-input-guardrails/slice.json +73 -0
  72. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-05-provider-progress-alignment/CLOSURE_BRIEF.md +20 -0
  73. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-05-provider-progress-alignment/EXECUTION_BRIEF.md +51 -0
  74. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-05-provider-progress-alignment/slice.json +91 -0
  75. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-06-workflow-surface-integration/CLOSURE_BRIEF.md +20 -0
  76. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-06-workflow-surface-integration/EXECUTION_BRIEF.md +53 -0
  77. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-06-workflow-surface-integration/slice.json +87 -0
  78. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-07-docs-tests-release-readiness/CLOSURE_BRIEF.md +21 -0
  79. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-07-docs-tests-release-readiness/EXECUTION_BRIEF.md +55 -0
  80. package/specs/quiver-v33-approval-ux-and-planner-progress/slices/slice-07-docs-tests-release-readiness/slice.json +97 -0
  81. package/src/create-quiver/commands/ai.js +561 -46
  82. package/src/create-quiver/commands/flow.js +76 -14
  83. package/src/create-quiver/commands/spec.js +8 -1
  84. package/src/create-quiver/index.js +36 -12
  85. package/src/create-quiver/lib/agent-profiles.js +332 -4
  86. package/src/create-quiver/lib/ai/approval-candidates.js +86 -0
  87. package/src/create-quiver/lib/ai/execution-plan.js +7 -2
  88. package/src/create-quiver/lib/ai/executor.js +9 -2
  89. package/src/create-quiver/lib/ai/model-catalog.js +333 -0
  90. package/src/create-quiver/lib/ai/plan-review.js +77 -1
  91. package/src/create-quiver/lib/ai/providers.js +143 -4
  92. package/src/create-quiver/lib/ai/run-state.js +21 -4
  93. package/src/create-quiver/lib/approvals.js +103 -0
  94. package/src/create-quiver/lib/cli/selectors.js +53 -0
  95. package/src/create-quiver/lib/git.js +13 -4
  96. package/src/create-quiver/lib/paths.js +45 -3
@@ -0,0 +1,75 @@
1
+ {
2
+ "slice_id": "slice-03-technical-plan-review-decision-data",
3
+ "ticket": "QUIVER-33-03",
4
+ "type": "feature",
5
+ "title": "Technical-plan review decision data",
6
+ "objective": "Make technical-plan approval decisions visibly reflect plan-review state and recommendation.",
7
+ "description": "Ensures approval selection and command output distinguish missing, stale, unapproved, approve, approve-with-risk, and revise review states without weakening existing gates.",
8
+ "git": {
9
+ "branch_type": "feature",
10
+ "base_branch": "main",
11
+ "branch_slug": "v33-technical-plan-review-decision-data",
12
+ "branch_name": "feature/QUIVER-33-03-v33-technical-plan-review-decision-data"
13
+ },
14
+ "files": [
15
+ "src/create-quiver/lib/ai/plan-review.js",
16
+ "src/create-quiver/lib/approvals.js",
17
+ "src/create-quiver/commands/ai.js",
18
+ "tests/commands/ai-review-plan.test.js",
19
+ "tests/lib/approvals.test.js"
20
+ ],
21
+ "expected_read_paths": [
22
+ "src/create-quiver/lib/ai/plan-review.js",
23
+ "src/create-quiver/lib/approvals.js",
24
+ "src/create-quiver/commands/ai.js",
25
+ "tests/commands/ai-review-plan.test.js",
26
+ "SPEC.md"
27
+ ],
28
+ "allowed_write_paths": [
29
+ "src/create-quiver/lib/ai/plan-review.js",
30
+ "src/create-quiver/lib/approvals.js",
31
+ "src/create-quiver/commands/ai.js",
32
+ "tests/commands/ai-review-plan.test.js",
33
+ "tests/lib/approvals.test.js",
34
+ "specs/quiver-v33-approval-ux-and-planner-progress/**"
35
+ ],
36
+ "depends_on": [
37
+ "slice-01-approval-candidates-model",
38
+ "slice-02-approve-interactive-selection"
39
+ ],
40
+ "parallel_safe": "yes",
41
+ "parallel_safe_reason": "Can proceed after approval selection if command-file conflicts are coordinated.",
42
+ "must": [
43
+ "Represent plan-review statuses missing, stale, unapproved, reviewed approve, reviewed approve-with-risk, and reviewed revise.",
44
+ "Block approval when recommendation is revise.",
45
+ "Allow approve-with-risk with visible risk context.",
46
+ "Show required fixes count and next command when blocked.",
47
+ "Preserve existing explicit technical-plan approval validation."
48
+ ],
49
+ "not_included": [
50
+ "Changing how reviewers generate review metadata.",
51
+ "Changing structured review schema unless required for display.",
52
+ "Relaxing stale review checks."
53
+ ],
54
+ "acceptance": [
55
+ "Technical-plan selector shows missing review as not ready.",
56
+ "Stale review blocks or redirects to review-plan.",
57
+ "Unapproved review guides to approve with the reviewed version when valid.",
58
+ "Approve-with-risk exposes optional hardening and risks.",
59
+ "Revise recommendation blocks approval.",
60
+ "Explicit version approval still enforces the same blocking rules."
61
+ ],
62
+ "tests": [
63
+ "node --test tests/commands/ai-review-plan.test.js tests/lib/approvals.test.js",
64
+ "git diff --check"
65
+ ],
66
+ "validation_hints": [
67
+ "Reuse existing `reviewBlocksApproval` semantics.",
68
+ "Add tests around every plan-review status."
69
+ ],
70
+ "estimated_hours": 6,
71
+ "status": "completed",
72
+ "blocked_reason": null,
73
+ "actual_hours": 6,
74
+ "completed_at": "2026-05-28"
75
+ }
@@ -0,0 +1,19 @@
1
+ # CLOSURE_BRIEF - slice-04 Revise input guardrails
2
+
3
+ ## Summary
4
+
5
+ Completed revise input guardrails for missing `--input` values, nonexistent feedback files, and accidental extra positional arguments before any provider execution.
6
+
7
+ ## Validation
8
+
9
+ - [x] Missing input tests pass.
10
+ - [x] Nonexistent file tests pass.
11
+ - [x] Valid revise regression tests pass.
12
+
13
+ ## Pending
14
+
15
+ - None.
16
+
17
+ ## Remaining Risks
18
+
19
+ - None critical; broader CLI contract coverage passed in the full suite.
@@ -0,0 +1,51 @@
1
+ # EXECUTION_BRIEF - slice-04 Revise input guardrails
2
+
3
+ ## Context
4
+
5
+ The requirement explicitly called out incomplete `ai revise --phase technical-plan --input` usage and an accidental trailing `s`. Production review expanded the scope to acceptance revise as well.
6
+
7
+ ## Objective
8
+
9
+ Make invalid `ai revise --input` usage fail clearly before provider execution for both planner phases.
10
+
11
+ ## Scope
12
+
13
+ - CLI argument parsing if needed.
14
+ - `runRevise` / `runPlan` input validation.
15
+ - focused command tests.
16
+
17
+ ## Acceptance Criteria
18
+
19
+ - Missing `--input` value is detected for acceptance and technical-plan.
20
+ - Nonexistent feedback files fail before provider execution.
21
+ - Accidental extra arguments are reported or rejected clearly.
22
+ - No-TTY/CI never prompts.
23
+ - Valid revise commands remain unchanged.
24
+
25
+ ## Technical Plan Summary
26
+
27
+ Add explicit guardrails at the parser/command boundary, then test command-level behavior with provider execution disabled or asserted absent.
28
+
29
+ ## Suggested Steps
30
+
31
+ 1. Inspect parse behavior for `--input` without value.
32
+ 2. Add a consistent actionable error.
33
+ 3. Add nonexistent-file regression coverage.
34
+ 4. Add accidental extra-arg coverage if parser supports it.
35
+ 5. Confirm valid revise flows still pass.
36
+
37
+ ## Restrictions
38
+
39
+ - Do not run a provider when input is invalid.
40
+ - Do not auto-create feedback files.
41
+
42
+ ## Risks
43
+
44
+ - Parser changes can affect other commands that use `--input`.
45
+
46
+ ## Completion Checklist
47
+
48
+ - [ ] Missing input covered for both phases.
49
+ - [ ] Nonexistent input covered.
50
+ - [ ] Extra argument behavior covered.
51
+ - [ ] Valid revise flow still passes.
@@ -0,0 +1,73 @@
1
+ {
2
+ "slice_id": "slice-04-revise-input-guardrails",
3
+ "ticket": "QUIVER-33-04",
4
+ "type": "fix",
5
+ "title": "Revise input guardrails",
6
+ "objective": "Handle missing, incomplete, nonexistent, and accidental extra `ai revise --input` usage before provider execution.",
7
+ "description": "Hardens `ai revise` for both acceptance and technical-plan phases so incomplete inputs fail actionably or guide the user in TTY without silently ignoring mistakes.",
8
+ "git": {
9
+ "branch_type": "fix",
10
+ "base_branch": "main",
11
+ "branch_slug": "v33-revise-input-guardrails",
12
+ "branch_name": "fix/QUIVER-33-04-v33-revise-input-guardrails"
13
+ },
14
+ "files": [
15
+ "src/create-quiver/index.js",
16
+ "src/create-quiver/commands/ai.js",
17
+ "tests/commands/ai-plan.test.js",
18
+ "tests/commands/cli-contract.test.js"
19
+ ],
20
+ "expected_read_paths": [
21
+ "src/create-quiver/index.js",
22
+ "src/create-quiver/commands/ai.js",
23
+ "tests/commands/ai-plan.test.js",
24
+ "tests/commands/cli-contract.test.js",
25
+ "SPEC.md"
26
+ ],
27
+ "allowed_write_paths": [
28
+ "src/create-quiver/index.js",
29
+ "src/create-quiver/commands/ai.js",
30
+ "tests/commands/ai-plan.test.js",
31
+ "tests/commands/cli-contract.test.js",
32
+ "specs/quiver-v33-approval-ux-and-planner-progress/**"
33
+ ],
34
+ "depends_on": [
35
+ "slice-01-approval-candidates-model"
36
+ ],
37
+ "parallel_safe": "yes",
38
+ "parallel_safe_reason": "Can run after slice-01, but coordinate command-file conflicts with slice-02 and slice-05.",
39
+ "must": [
40
+ "Detect `ai revise --phase acceptance --input` without a value.",
41
+ "Detect `ai revise --phase technical-plan --input` without a value.",
42
+ "Fail before provider execution for missing or nonexistent files.",
43
+ "Handle accidental trailing args such as `s` with a clear error or documented parse behavior.",
44
+ "In no-TTY/CI, show an explicit corrected command.",
45
+ "In TTY, show focused guidance or selector only if useful artifacts exist."
46
+ ],
47
+ "not_included": [
48
+ "Generating feedback files automatically.",
49
+ "Running providers when input is invalid.",
50
+ "Changing revise prompt semantics."
51
+ ],
52
+ "acceptance": [
53
+ "`ai revise --phase acceptance --input` fails before provider execution with a useful next command.",
54
+ "`ai revise --phase technical-plan --input` fails before provider execution with a useful next command.",
55
+ "Nonexistent feedback input fails before provider execution.",
56
+ "Accidental extra args are not silently accepted.",
57
+ "No-TTY/CI does not prompt.",
58
+ "Existing valid revise commands still work."
59
+ ],
60
+ "tests": [
61
+ "node --test tests/commands/ai-plan.test.js tests/commands/cli-contract.test.js",
62
+ "git diff --check"
63
+ ],
64
+ "validation_hints": [
65
+ "Cover parser-level missing value behavior and command-level missing file behavior separately.",
66
+ "Avoid provider mocks for invalid input paths because provider execution should not start."
67
+ ],
68
+ "estimated_hours": 6,
69
+ "status": "completed",
70
+ "blocked_reason": null,
71
+ "actual_hours": 6,
72
+ "completed_at": "2026-05-28"
73
+ }
@@ -0,0 +1,20 @@
1
+ # CLOSURE_BRIEF - slice-05 Provider progress alignment
2
+
3
+ ## Summary
4
+
5
+ Completed provider progress alignment for planner/reviewer flows. `ai plan`, `ai revise`, `ai review-plan`, and `ai repair-plan` now use real preparation checks and provider spinner behavior in human TTY mode.
6
+
7
+ ## Validation
8
+
9
+ - [x] Planner progress tests pass.
10
+ - [x] Review-plan progress tests pass.
11
+ - [x] Repair-plan progress tests pass.
12
+ - [x] Machine-output cleanliness tests pass.
13
+
14
+ ## Pending
15
+
16
+ - None.
17
+
18
+ ## Remaining Risks
19
+
20
+ - None critical; final smoke and package readiness passed.
@@ -0,0 +1,51 @@
1
+ # EXECUTION_BRIEF - slice-05 Provider progress alignment
2
+
3
+ ## Context
4
+
5
+ `ai prepare-context --with-planner` provides the UX baseline. Planner and reviewer commands must look alive during real provider execution without affecting machine output.
6
+
7
+ ## Objective
8
+
9
+ Align progress/loaders for `ai plan`, `ai revise`, `ai review-plan`, and `ai repair-plan`, and audit existing long-running flows.
10
+
11
+ ## Scope
12
+
13
+ - `src/create-quiver/commands/ai.js`
14
+ - existing CLI UX helpers if needed
15
+ - focused progress tests
16
+
17
+ ## Acceptance Criteria
18
+
19
+ - Live provider-backed planner/reviewer commands show progress in human TTY.
20
+ - Dry-run and print-prompt do not show loaders.
21
+ - JSON/no-TTY/CI/no-color stay clean.
22
+ - Provider failure stops the spinner.
23
+ - Existing compliant flows are protected by regression tests or noted.
24
+
25
+ ## Technical Plan Summary
26
+
27
+ Reuse `createCommandUx`, `shouldShowHumanProgress`, `writeProgressChecks`, and `runProviderWithProgress`. Avoid new abstractions unless real duplication appears.
28
+
29
+ ## Suggested Steps
30
+
31
+ 1. Audit current progress usage.
32
+ 2. Add missing progress stages.
33
+ 3. Add tests with injected spinner/UX helpers.
34
+ 4. Add no-color/no-TTY regression coverage where gaps exist.
35
+
36
+ ## Restrictions
37
+
38
+ - Do not change provider prompts.
39
+ - Do not add progress to JSON output.
40
+ - Do not mark fake work as completed.
41
+
42
+ ## Risks
43
+
44
+ - Progress output can be hard to test if implementation is coupled to terminal rendering.
45
+
46
+ ## Completion Checklist
47
+
48
+ - [ ] Planner progress covered.
49
+ - [ ] Review-plan progress covered.
50
+ - [ ] Repair-plan progress covered.
51
+ - [ ] Machine-output cleanliness covered.
@@ -0,0 +1,91 @@
1
+ {
2
+ "slice_id": "slice-05-provider-progress-alignment",
3
+ "ticket": "QUIVER-33-05",
4
+ "type": "feature",
5
+ "title": "Provider progress alignment",
6
+ "objective": "Align progress messages and loaders for provider-backed planner and reviewer commands.",
7
+ "description": "Ensures `ai plan`, `ai revise`, `ai review-plan`, and `ai repair-plan` use the same production-safe progress contract as `ai prepare-context --with-planner`, while auditing existing long-running flows.",
8
+ "git": {
9
+ "branch_type": "feature",
10
+ "base_branch": "main",
11
+ "branch_slug": "v33-provider-progress-alignment",
12
+ "branch_name": "feature/QUIVER-33-05-v33-provider-progress-alignment"
13
+ },
14
+ "files": [
15
+ "src/create-quiver/commands/ai.js",
16
+ "src/create-quiver/lib/ai/executor.js",
17
+ "src/create-quiver/lib/ai/execution-plan.js",
18
+ "src/create-quiver/lib/cli/ux.js",
19
+ "tests/commands/ai-plan.test.js",
20
+ "tests/commands/ai-review-plan.test.js",
21
+ "tests/commands/ai-prepare-context-planner.test.js",
22
+ "tests/commands/ai-execute-slice.test.js",
23
+ "tests/commands/ai-execute-plan.test.js",
24
+ "tests/commands/ai-pr.test.js",
25
+ "tests/lib/cli-ux.test.js"
26
+ ],
27
+ "expected_read_paths": [
28
+ "src/create-quiver/commands/ai.js",
29
+ "src/create-quiver/lib/ai/executor.js",
30
+ "src/create-quiver/lib/ai/execution-plan.js",
31
+ "src/create-quiver/lib/cli/ux.js",
32
+ "tests/commands/ai-prepare-context-planner.test.js",
33
+ "tests/lib/cli-ux.test.js",
34
+ "SPEC.md"
35
+ ],
36
+ "allowed_write_paths": [
37
+ "src/create-quiver/commands/ai.js",
38
+ "src/create-quiver/lib/ai/executor.js",
39
+ "src/create-quiver/lib/ai/execution-plan.js",
40
+ "src/create-quiver/lib/cli/ux.js",
41
+ "tests/commands/ai-plan.test.js",
42
+ "tests/commands/ai-review-plan.test.js",
43
+ "tests/commands/ai-prepare-context-planner.test.js",
44
+ "tests/commands/ai-execute-slice.test.js",
45
+ "tests/commands/ai-execute-plan.test.js",
46
+ "tests/commands/ai-pr.test.js",
47
+ "tests/lib/cli-ux.test.js",
48
+ "specs/quiver-v33-approval-ux-and-planner-progress/**"
49
+ ],
50
+ "depends_on": [
51
+ "slice-01-approval-candidates-model"
52
+ ],
53
+ "parallel_safe": "yes",
54
+ "parallel_safe_reason": "Can run after slice-01, but command-file conflicts with approval slices should be coordinated.",
55
+ "must": [
56
+ "Show human progress for `ai plan --phase acceptance` live provider execution.",
57
+ "Show human progress for `ai plan --phase technical-plan` live provider execution.",
58
+ "Show human progress for `ai revise` live provider execution through the shared plan path.",
59
+ "Show human progress for `ai review-plan` live provider execution.",
60
+ "Show human progress for `ai repair-plan` live provider execution.",
61
+ "Do not show loaders for dry-run or print-prompt.",
62
+ "Do not contaminate JSON, no-color, CI, or no-TTY output.",
63
+ "Audit existing long-running flows and add regression tests only where behavior should remain unchanged."
64
+ ],
65
+ "not_included": [
66
+ "Changing provider prompts.",
67
+ "Changing provider adapters.",
68
+ "Adding new UX dependencies."
69
+ ],
70
+ "acceptance": [
71
+ "Planner commands show real staged progress in human mode.",
72
+ "Reviewer and repair-plan commands show real staged progress in human mode.",
73
+ "Dry-run and print-prompt remain provider-free and loader-free.",
74
+ "Provider failure stops spinner and surfaces actionable context.",
75
+ "Existing prepare-context, onboard, execute-slice, execute-plan, and pr progress behavior is covered by regression tests or explicitly documented as already compliant."
76
+ ],
77
+ "tests": [
78
+ "node --test tests/commands/ai-plan.test.js tests/commands/ai-review-plan.test.js tests/commands/ai-prepare-context-planner.test.js tests/lib/cli-ux.test.js",
79
+ "node --test tests/commands/ai-execute-slice.test.js tests/commands/ai-execute-plan.test.js tests/commands/ai-pr.test.js",
80
+ "git diff --check"
81
+ ],
82
+ "validation_hints": [
83
+ "Use injected spinner helpers in tests.",
84
+ "Avoid fake progress checks that claim completed work before it happens."
85
+ ],
86
+ "estimated_hours": 8,
87
+ "status": "completed",
88
+ "blocked_reason": null,
89
+ "actual_hours": 8,
90
+ "completed_at": "2026-05-28"
91
+ }
@@ -0,0 +1,20 @@
1
+ # CLOSURE_BRIEF - slice-06 Workflow surface integration
2
+
3
+ ## Summary
4
+
5
+ Completed workflow surface integration through shared approval-candidate helpers. `ai approvals`, `flow`, `ai status`, `ai resume`, and `spec create --interactive` now align on recommended approval versions and blocked review guidance.
6
+
7
+ ## Validation
8
+
9
+ - [x] Approval status tests pass.
10
+ - [x] Flow tests pass.
11
+ - [x] Run-state tests pass.
12
+ - [x] Spec create tests pass.
13
+
14
+ ## Pending
15
+
16
+ - None.
17
+
18
+ ## Remaining Risks
19
+
20
+ - None critical; drift-prone surfaces are covered by focused tests and full suite.
@@ -0,0 +1,53 @@
1
+ # EXECUTION_BRIEF - slice-06 Workflow surface integration
2
+
3
+ ## Context
4
+
5
+ After approval selection and review-decision data exist, other workflow surfaces must consume the same source of truth to prevent contradictory next steps.
6
+
7
+ ## Objective
8
+
9
+ Integrate shared approval candidates into `ai approvals`, `flow`, `ai status`, `ai resume`, and `spec create --interactive`.
10
+
11
+ ## Scope
12
+
13
+ - `src/create-quiver/commands/ai.js`
14
+ - `src/create-quiver/commands/flow.js`
15
+ - `src/create-quiver/commands/spec.js`
16
+ - `src/create-quiver/lib/ai/run-state.js`
17
+ - focused tests
18
+
19
+ ## Acceptance Criteria
20
+
21
+ - `ai approvals` and `ai approve` recommend the same current version.
22
+ - `flow` points to safe next steps consistent with candidates.
23
+ - `ai status` and `ai resume` do not contradict approval guidance.
24
+ - `spec create --interactive` shows reviewed and approved technical-plan input clearly.
25
+ - Read-only outputs remain prompt-free.
26
+
27
+ ## Technical Plan Summary
28
+
29
+ Replace duplicated next-command decisions with the shared candidate model where approval phases are involved.
30
+
31
+ ## Suggested Steps
32
+
33
+ 1. Update approval status output.
34
+ 2. Update flow decision points.
35
+ 3. Update run-state next-command guidance.
36
+ 4. Update spec create interactive summary.
37
+ 5. Add drift-prevention tests.
38
+
39
+ ## Restrictions
40
+
41
+ - Do not prompt from read-only commands.
42
+ - Do not change spec generation semantics.
43
+
44
+ ## Risks
45
+
46
+ - Existing snapshot-style output tests may need precise updates.
47
+
48
+ ## Completion Checklist
49
+
50
+ - [ ] `ai approvals` integrated.
51
+ - [ ] `flow` integrated.
52
+ - [ ] `ai status/resume` integrated.
53
+ - [ ] `spec create --interactive` integrated.
@@ -0,0 +1,87 @@
1
+ {
2
+ "slice_id": "slice-06-workflow-surface-integration",
3
+ "ticket": "QUIVER-33-06",
4
+ "type": "feature",
5
+ "title": "Workflow surface integration",
6
+ "objective": "Use shared approval candidates across status, approval, flow, resume, and spec-create surfaces.",
7
+ "description": "Integrates the shared decision model into `ai approvals`, `flow`, `ai status`, `ai resume`, and `spec create --interactive` so every surface recommends the same safe next step.",
8
+ "git": {
9
+ "branch_type": "feature",
10
+ "base_branch": "main",
11
+ "branch_slug": "v33-workflow-surface-integration",
12
+ "branch_name": "feature/QUIVER-33-06-v33-workflow-surface-integration"
13
+ },
14
+ "files": [
15
+ "src/create-quiver/commands/ai.js",
16
+ "src/create-quiver/commands/flow.js",
17
+ "src/create-quiver/commands/spec.js",
18
+ "src/create-quiver/lib/ai/run-state.js",
19
+ "src/create-quiver/lib/approvals.js",
20
+ "tests/commands/ai-run-state.test.js",
21
+ "tests/commands/flow.test.js",
22
+ "tests/commands/spec-create.test.js"
23
+ ],
24
+ "expected_read_paths": [
25
+ "src/create-quiver/commands/ai.js",
26
+ "src/create-quiver/commands/flow.js",
27
+ "src/create-quiver/commands/spec.js",
28
+ "src/create-quiver/lib/ai/run-state.js",
29
+ "src/create-quiver/lib/approvals.js",
30
+ "tests/commands/ai-run-state.test.js",
31
+ "tests/commands/flow.test.js",
32
+ "tests/commands/spec-create.test.js",
33
+ "SPEC.md"
34
+ ],
35
+ "allowed_write_paths": [
36
+ "src/create-quiver/commands/ai.js",
37
+ "src/create-quiver/commands/flow.js",
38
+ "src/create-quiver/commands/spec.js",
39
+ "src/create-quiver/lib/ai/run-state.js",
40
+ "src/create-quiver/lib/approvals.js",
41
+ "tests/commands/ai-run-state.test.js",
42
+ "tests/commands/flow.test.js",
43
+ "tests/commands/spec-create.test.js",
44
+ "specs/quiver-v33-approval-ux-and-planner-progress/**"
45
+ ],
46
+ "depends_on": [
47
+ "slice-01-approval-candidates-model",
48
+ "slice-02-approve-interactive-selection",
49
+ "slice-03-technical-plan-review-decision-data"
50
+ ],
51
+ "parallel_safe": "no",
52
+ "parallel_safe_reason": "This slice touches multiple workflow surfaces and should land after core approval behavior is stable.",
53
+ "must": [
54
+ "Update `ai approvals` to use shared approval candidate data.",
55
+ "Update `flow` recommendations to avoid conflicting approval guidance.",
56
+ "Update `ai status` and `ai resume` next safe commands where approval selection applies.",
57
+ "Update `spec create --interactive` to show reviewed and approved technical-plan input using shared data.",
58
+ "Keep read-only/machine-readable surfaces free of prompts.",
59
+ "Avoid duplicating decision logic in each command."
60
+ ],
61
+ "not_included": [
62
+ "Changing execution-plan logic.",
63
+ "Changing spec artifact generation semantics.",
64
+ "Adding new lifecycle phases unless unavoidable."
65
+ ],
66
+ "acceptance": [
67
+ "`ai approvals` shows the same recommended approval version as `ai approve`.",
68
+ "`flow` recommends approval commands consistent with candidate state.",
69
+ "`ai status` and `ai resume` do not contradict `ai approvals`.",
70
+ "`spec create --interactive` identifies the reviewed and approved technical plan clearly.",
71
+ "JSON and read-only commands remain prompt-free.",
72
+ "Tests cover drift-prone states."
73
+ ],
74
+ "tests": [
75
+ "node --test tests/commands/ai-run-state.test.js tests/commands/flow.test.js tests/commands/spec-create.test.js tests/commands/ai-review-plan.test.js",
76
+ "git diff --check"
77
+ ],
78
+ "validation_hints": [
79
+ "Prefer one shared formatting/data helper over duplicated command-specific state checks.",
80
+ "Keep command output stable enough for existing tests unless the visible contract intentionally changes."
81
+ ],
82
+ "estimated_hours": 8,
83
+ "status": "completed",
84
+ "blocked_reason": null,
85
+ "actual_hours": 8,
86
+ "completed_at": "2026-05-28"
87
+ }
@@ -0,0 +1,21 @@
1
+ # CLOSURE_BRIEF - slice-07 Docs, tests, and release readiness
2
+
3
+ ## Summary
4
+
5
+ Completed docs, template alignment, full test validation, smokes, package readiness, evidence, status metadata, and PR body updates for v33.
6
+
7
+ ## Validation
8
+
9
+ - [x] Docs are aligned.
10
+ - [x] Full tests pass.
11
+ - [x] Smokes pass.
12
+ - [x] Evidence and PR body are updated.
13
+
14
+ ## Pending
15
+
16
+ - None.
17
+
18
+ ## Remaining Risks
19
+
20
+ - None critical.
21
+ - This slice does not claim npm publication.
@@ -0,0 +1,55 @@
1
+ # EXECUTION_BRIEF - slice-07 Docs, tests, and release readiness
2
+
3
+ ## Context
4
+
5
+ This slice closes the spec after implementation slices land. It synchronizes documentation, evidence, and PR readiness.
6
+
7
+ ## Objective
8
+
9
+ Update docs and evidence, run validation, and prepare the PR for review without claiming package publication.
10
+
11
+ ## Scope
12
+
13
+ - `docs/CLI_UX_GUIDE.md`
14
+ - `docs/reference/commands.md`
15
+ - `README_FOR_AI.md`
16
+ - generated docs templates if affected
17
+ - changelog/roadmap if local release process requires it
18
+ - spec evidence and closure docs
19
+
20
+ ## Acceptance Criteria
21
+
22
+ - Public and AI-facing docs match implemented behavior.
23
+ - Generated templates match command guidance.
24
+ - Focused and full tests pass or blockers are explicit.
25
+ - Smoke/package readiness evidence is recorded.
26
+ - Spec status and PR body are updated.
27
+
28
+ ## Technical Plan Summary
29
+
30
+ Close documentation after behavior is real. Run focused tests first, then full suite and smokes.
31
+
32
+ ## Suggested Steps
33
+
34
+ 1. Update docs and templates.
35
+ 2. Run focused command tests.
36
+ 3. Run full tests and smokes.
37
+ 4. Update evidence and status.
38
+ 5. Update PR body.
39
+
40
+ ## Restrictions
41
+
42
+ - Do not claim npm publication.
43
+ - Do not introduce new behavior beyond documentation/test closure.
44
+
45
+ ## Risks
46
+
47
+ - Full smokes can be slow or environment-sensitive; record exact blockers if any fail.
48
+
49
+ ## Completion Checklist
50
+
51
+ - [ ] Docs updated.
52
+ - [ ] Focused tests run.
53
+ - [ ] Full tests/smokes run or blockers recorded.
54
+ - [ ] Evidence report updated.
55
+ - [ ] PR body ready.