create-quiver 0.15.4 → 0.16.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 (179) hide show
  1. package/.github/pull_request_template.md +17 -0
  2. package/.github/workflows/ci.yml +76 -0
  3. package/.markdown-link-check.json +15 -0
  4. package/.markdownlint.json +11 -0
  5. package/.quiver/runs/run-2026-06-09t19-14-39z/approvals.json +5 -0
  6. package/.quiver/runs/run-2026-06-09t19-14-39z/decisions.md +2 -0
  7. package/.quiver/runs/run-2026-06-09t19-14-39z/requirement.md +0 -0
  8. package/.quiver/runs/run-2026-06-09t19-14-39z/snapshots/20260609T191439Z/docs/INDEX.md +97 -0
  9. package/.quiver/runs/run-2026-06-09t19-14-39z/snapshots/20260609T191439Z/manifest.json +61 -0
  10. package/.quiver/runs/run-2026-06-09t19-14-39z/state.json +28 -0
  11. package/ACTIVE_SLICES.md +43 -0
  12. package/ARCHITECTURE.md +133 -0
  13. package/CHANGELOG.md +12 -0
  14. package/CONTRIBUTING.md +174 -9
  15. package/README.md +10 -1
  16. package/ROADMAP.md +4 -0
  17. package/SECURITY.md +9 -2
  18. package/auditoria-ux-ui-performance-documentacion.md +705 -0
  19. package/copys-landing-page.md +244 -0
  20. package/docs/AI_CONTEXT.md.es.template +3 -1
  21. package/docs/AI_CONTEXT.md.template +3 -1
  22. package/docs/CLI_UX_GUIDE.md +9 -1
  23. package/docs/COMMANDS.md.template +20 -6
  24. package/docs/GITFLOW_PR_GUIDE.md +73 -11
  25. package/docs/GITFLOW_PR_GUIDE.md.es.template +61 -2
  26. package/docs/GITFLOW_PR_GUIDE.md.template +72 -10
  27. package/docs/INDEX.md +1 -0
  28. package/docs/QUICK.md.template +2 -1
  29. package/docs/STANDARD.md.template +2 -1
  30. package/docs/WORKFLOW.md.es.template +3 -1
  31. package/docs/WORKFLOW.md.template +6 -4
  32. package/docs/ai/ACTIVE_SLICE.md +61 -0
  33. package/docs/getting-started/installation.md +7 -0
  34. package/docs/reference/commands.md +104 -6
  35. package/docs/reference/slice-schema.md +37 -0
  36. package/docs/schema/slice.schema.json +221 -0
  37. package/docs/specs/01-spec/01-slice/01-slice.json +36 -0
  38. package/docs/specs/01-spec/01-slice/01-slice.md +106 -0
  39. package/docs/specs/01-spec/01-slice/CLOSURE_BRIEF.md +80 -0
  40. package/docs/specs/01-spec/01-slice/EXECUTION_BRIEF.md +39 -0
  41. package/docs/specs/01-spec/02-slice/02-slice.json +36 -0
  42. package/docs/specs/01-spec/02-slice/02-slice.md +108 -0
  43. package/docs/specs/01-spec/02-slice/CLOSURE_BRIEF.md +88 -0
  44. package/docs/specs/01-spec/02-slice/EXECUTION_BRIEF.md +40 -0
  45. package/docs/specs/01-spec/03-slice/03-slice.json +36 -0
  46. package/docs/specs/01-spec/03-slice/03-slice.md +103 -0
  47. package/docs/specs/01-spec/03-slice/CLOSURE_BRIEF.md +54 -0
  48. package/docs/specs/01-spec/03-slice/EXECUTION_BRIEF.md +39 -0
  49. package/docs/specs/01-spec/04-slice/04-slice.json +36 -0
  50. package/docs/specs/01-spec/04-slice/04-slice.md +107 -0
  51. package/docs/specs/01-spec/04-slice/CLOSURE_BRIEF.md +46 -0
  52. package/docs/specs/01-spec/04-slice/EXECUTION_BRIEF.md +39 -0
  53. package/docs/specs/01-spec/05-slice/05-slice.json +36 -0
  54. package/docs/specs/01-spec/05-slice/05-slice.md +106 -0
  55. package/docs/specs/01-spec/05-slice/CLOSURE_BRIEF.md +84 -0
  56. package/docs/specs/01-spec/05-slice/EXECUTION_BRIEF.md +109 -0
  57. package/docs/specs/01-spec/06-slice/06-slice.json +36 -0
  58. package/docs/specs/01-spec/06-slice/06-slice.md +107 -0
  59. package/docs/specs/01-spec/06-slice/CLOSURE_BRIEF.md +67 -0
  60. package/docs/specs/01-spec/06-slice/EXECUTION_BRIEF.md +39 -0
  61. package/docs/specs/01-spec/07-slice/07-slice.json +36 -0
  62. package/docs/specs/01-spec/07-slice/07-slice.md +105 -0
  63. package/docs/specs/01-spec/07-slice/CLOSURE_BRIEF.md +71 -0
  64. package/docs/specs/01-spec/07-slice/EXECUTION_BRIEF.md +39 -0
  65. package/docs/specs/01-spec/08-slice/08-slice.json +36 -0
  66. package/docs/specs/01-spec/08-slice/08-slice.md +105 -0
  67. package/docs/specs/01-spec/08-slice/CLOSURE_BRIEF.md +114 -0
  68. package/docs/specs/01-spec/08-slice/EXECUTION_BRIEF.md +39 -0
  69. package/docs/specs/01-spec/CLOSURE_BRIEF.md +87 -0
  70. package/docs/specs/01-spec/spec.md +197 -0
  71. package/docs/workflows/full-ai-spec-to-pr.md +46 -3
  72. package/i18n/es/docs/GITFLOW_PR_GUIDE.md.template +38 -1
  73. package/package.json +27 -1
  74. package/pr.md +154 -0
  75. package/scripts/package-quiver.sh +82 -2
  76. package/scripts/release-quiver.sh +14 -3
  77. package/specs/[project-name]/slices/pr.md.template +19 -0
  78. package/specs/quiver-v43-cli-i18n-audit-release-readiness/command-language-mode-matrix.json +91 -0
  79. package/specs/quiver-v50-audit-trust-foundation/EVIDENCE_REPORT.md +151 -0
  80. package/specs/quiver-v50-audit-trust-foundation/EXECUTION_PLAN.md +34 -0
  81. package/specs/quiver-v50-audit-trust-foundation/SPEC.md +113 -0
  82. package/specs/quiver-v50-audit-trust-foundation/STATUS.md +26 -0
  83. package/specs/quiver-v50-audit-trust-foundation/pr.md +120 -0
  84. package/specs/quiver-v50-audit-trust-foundation/slices/slice-00-audit-baseline-and-resolved-findings/CLOSURE_BRIEF.md +20 -0
  85. package/specs/quiver-v50-audit-trust-foundation/slices/slice-00-audit-baseline-and-resolved-findings/EXECUTION_BRIEF.md +58 -0
  86. package/specs/quiver-v50-audit-trust-foundation/slices/slice-00-audit-baseline-and-resolved-findings/slice.json +57 -0
  87. package/specs/quiver-v50-audit-trust-foundation/slices/slice-01-runtime-minimum-and-package-metadata/CLOSURE_BRIEF.md +24 -0
  88. package/specs/quiver-v50-audit-trust-foundation/slices/slice-01-runtime-minimum-and-package-metadata/EXECUTION_BRIEF.md +67 -0
  89. package/specs/quiver-v50-audit-trust-foundation/slices/slice-01-runtime-minimum-and-package-metadata/slice.json +71 -0
  90. package/specs/quiver-v50-audit-trust-foundation/slices/slice-02-migrate-write-safety-contract/CLOSURE_BRIEF.md +24 -0
  91. package/specs/quiver-v50-audit-trust-foundation/slices/slice-02-migrate-write-safety-contract/EXECUTION_BRIEF.md +71 -0
  92. package/specs/quiver-v50-audit-trust-foundation/slices/slice-02-migrate-write-safety-contract/slice.json +81 -0
  93. package/specs/quiver-v50-audit-trust-foundation/slices/slice-03-security-reporting-channel/CLOSURE_BRIEF.md +22 -0
  94. package/specs/quiver-v50-audit-trust-foundation/slices/slice-03-security-reporting-channel/EXECUTION_BRIEF.md +57 -0
  95. package/specs/quiver-v50-audit-trust-foundation/slices/slice-03-security-reporting-channel/slice.json +56 -0
  96. package/specs/quiver-v50-audit-trust-foundation/slices/slice-04-user-facing-i18n-error-coverage/CLOSURE_BRIEF.md +23 -0
  97. package/specs/quiver-v50-audit-trust-foundation/slices/slice-04-user-facing-i18n-error-coverage/EXECUTION_BRIEF.md +68 -0
  98. package/specs/quiver-v50-audit-trust-foundation/slices/slice-04-user-facing-i18n-error-coverage/slice.json +84 -0
  99. package/specs/quiver-v50-audit-trust-foundation/slices/slice-05-init-analyze-progress-and-summaries/CLOSURE_BRIEF.md +25 -0
  100. package/specs/quiver-v50-audit-trust-foundation/slices/slice-05-init-analyze-progress-and-summaries/EXECUTION_BRIEF.md +73 -0
  101. package/specs/quiver-v50-audit-trust-foundation/slices/slice-05-init-analyze-progress-and-summaries/slice.json +72 -0
  102. package/specs/quiver-v50-audit-trust-foundation/slices/slice-06-contributor-and-architecture-docs/CLOSURE_BRIEF.md +22 -0
  103. package/specs/quiver-v50-audit-trust-foundation/slices/slice-06-contributor-and-architecture-docs/EXECUTION_BRIEF.md +66 -0
  104. package/specs/quiver-v50-audit-trust-foundation/slices/slice-06-contributor-and-architecture-docs/slice.json +74 -0
  105. package/specs/quiver-v50-audit-trust-foundation/slices/slice-07-ci-and-documentation-lint-baseline/CLOSURE_BRIEF.md +29 -0
  106. package/specs/quiver-v50-audit-trust-foundation/slices/slice-07-ci-and-documentation-lint-baseline/EXECUTION_BRIEF.md +74 -0
  107. package/specs/quiver-v50-audit-trust-foundation/slices/slice-07-ci-and-documentation-lint-baseline/slice.json +81 -0
  108. package/specs/quiver-v51-cli-ergonomics-automation-contracts/EVIDENCE_REPORT.md +145 -0
  109. package/specs/quiver-v51-cli-ergonomics-automation-contracts/EXECUTION_PLAN.md +32 -0
  110. package/specs/quiver-v51-cli-ergonomics-automation-contracts/SPEC.md +109 -0
  111. package/specs/quiver-v51-cli-ergonomics-automation-contracts/STATUS.md +25 -0
  112. package/specs/quiver-v51-cli-ergonomics-automation-contracts/pr.md +69 -0
  113. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-00-cli-contract-baseline/CLOSURE_BRIEF.md +20 -0
  114. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-00-cli-contract-baseline/EXECUTION_BRIEF.md +58 -0
  115. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-00-cli-contract-baseline/slice.json +56 -0
  116. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-01-flow-json-compatibility/CLOSURE_BRIEF.md +21 -0
  117. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-01-flow-json-compatibility/EXECUTION_BRIEF.md +61 -0
  118. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-01-flow-json-compatibility/slice.json +68 -0
  119. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-02-dashboard-section-validation-i18n/CLOSURE_BRIEF.md +25 -0
  120. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-02-dashboard-section-validation-i18n/EXECUTION_BRIEF.md +65 -0
  121. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-02-dashboard-section-validation-i18n/pr.md +134 -0
  122. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-02-dashboard-section-validation-i18n/slice.json +80 -0
  123. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-03-base-branch-resolution-policy/CLOSURE_BRIEF.md +31 -0
  124. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-03-base-branch-resolution-policy/EXECUTION_BRIEF.md +80 -0
  125. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-03-base-branch-resolution-policy/pr.md +159 -0
  126. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-03-base-branch-resolution-policy/slice.json +102 -0
  127. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-04-next-plan-graph-ux-edge-cases/CLOSURE_BRIEF.md +25 -0
  128. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-04-next-plan-graph-ux-edge-cases/EXECUTION_BRIEF.md +74 -0
  129. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-04-next-plan-graph-ux-edge-cases/pr.md +147 -0
  130. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-04-next-plan-graph-ux-edge-cases/slice.json +91 -0
  131. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-05-evidence-robustness-path-safety/CLOSURE_BRIEF.md +28 -0
  132. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-05-evidence-robustness-path-safety/EXECUTION_BRIEF.md +73 -0
  133. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-05-evidence-robustness-path-safety/pr.md +146 -0
  134. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-05-evidence-robustness-path-safety/slice.json +100 -0
  135. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-06-namespace-compatibility-windows-scripts/CLOSURE_BRIEF.md +36 -0
  136. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-06-namespace-compatibility-windows-scripts/EXECUTION_BRIEF.md +76 -0
  137. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-06-namespace-compatibility-windows-scripts/pr.md +155 -0
  138. package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-06-namespace-compatibility-windows-scripts/slice.json +111 -0
  139. package/specs/quiver-v52-schema-docs-release-hygiene/EVIDENCE_REPORT.md +95 -0
  140. package/specs/quiver-v52-schema-docs-release-hygiene/EXECUTION_PLAN.md +31 -0
  141. package/specs/quiver-v52-schema-docs-release-hygiene/SPEC.md +107 -0
  142. package/specs/quiver-v52-schema-docs-release-hygiene/STATUS.md +22 -0
  143. package/specs/quiver-v52-schema-docs-release-hygiene/pr.md +69 -0
  144. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-00-schema-docs-release-baseline/CLOSURE_BRIEF.md +21 -0
  145. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-00-schema-docs-release-baseline/EXECUTION_BRIEF.md +60 -0
  146. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-00-schema-docs-release-baseline/slice.json +62 -0
  147. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-01-json-schema-for-slice-json/CLOSURE_BRIEF.md +34 -0
  148. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-01-json-schema-for-slice-json/EXECUTION_BRIEF.md +71 -0
  149. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-01-json-schema-for-slice-json/pr.md +146 -0
  150. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-01-json-schema-for-slice-json/slice.json +106 -0
  151. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-02-generated-cli-reference/CLOSURE_BRIEF.md +33 -0
  152. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-02-generated-cli-reference/EXECUTION_BRIEF.md +67 -0
  153. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-02-generated-cli-reference/pr.md +144 -0
  154. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-02-generated-cli-reference/slice.json +86 -0
  155. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-03-changelog-package-release-smoke-hygiene/CLOSURE_BRIEF.md +38 -0
  156. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-03-changelog-package-release-smoke-hygiene/EXECUTION_BRIEF.md +75 -0
  157. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-03-changelog-package-release-smoke-hygiene/pr.md +159 -0
  158. package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-03-changelog-package-release-smoke-hygiene/slice.json +105 -0
  159. package/src/create-quiver/commands/changelog.js +93 -0
  160. package/src/create-quiver/commands/config.js +16 -5
  161. package/src/create-quiver/commands/evidence.js +33 -2
  162. package/src/create-quiver/commands/flow.js +1 -0
  163. package/src/create-quiver/commands/graph.js +8 -2
  164. package/src/create-quiver/commands/plan.js +6 -0
  165. package/src/create-quiver/commands/spec.js +28 -13
  166. package/src/create-quiver/index.js +294 -94
  167. package/src/create-quiver/lib/ai/github.js +5 -2
  168. package/src/create-quiver/lib/ai/spec-templates.js +19 -0
  169. package/src/create-quiver/lib/cli/command-registry.js +71 -0
  170. package/src/create-quiver/lib/cli/parser.js +14 -0
  171. package/src/create-quiver/lib/evidence.js +161 -6
  172. package/src/create-quiver/lib/git.js +99 -0
  173. package/src/create-quiver/lib/i18n/messages/en.js +52 -7
  174. package/src/create-quiver/lib/i18n/messages/es.js +54 -9
  175. package/src/create-quiver/lib/init-docs.js +1 -1
  176. package/src/create-quiver/lib/init-layout.js +9 -8
  177. package/src/create-quiver/lib/lifecycle.js +24 -26
  178. package/src/create-quiver/lib/readiness.js +67 -56
  179. package/src/create-quiver/lib/spec-worktrees.js +16 -34
@@ -0,0 +1,244 @@
1
+ # Copys para Landing Page de Quiver
2
+
3
+ > Basados exclusivamente en funcionalidades y propuesta de valor documentadas en el proyecto.
4
+ > Los campos marcados con `[Completar con información real del producto]` requieren datos del equipo.
5
+
6
+ ---
7
+
8
+ ## 1. Hero Section
9
+
10
+ ### Título principal
11
+
12
+ **"Que la IA trabaje rápido. Pero con orden."**
13
+
14
+ ---
15
+
16
+ ### Subtítulo
17
+
18
+ Los agentes de IA aceleran el desarrollo, pero sin estructura generan caos. Quiver convierte el trabajo asistido por IA en un flujo guiado: requerimientos, criterios, plan técnico, specs, slices, commits y pull requests — todo visible, todo verificable.
19
+
20
+ ---
21
+
22
+ ### CTA principal
23
+
24
+ **Empezar ahora** → `npx create-quiver@latest init --name "Mi Proyecto"`
25
+
26
+ ---
27
+
28
+ ### CTA secundario
29
+
30
+ **Ver la guía completa** → [docs/workflows/full-ai-spec-to-pr.md]
31
+
32
+ ---
33
+
34
+ ## 2. Propuesta de Valor
35
+
36
+ ### Bloque 1 — Del caos al flujo repetible
37
+
38
+ **"Un proceso que se puede repetir, auditar y mejorar."**
39
+
40
+ En lugar de pedirle a un agente "hacé esto y vemos qué pasa", Quiver define un camino repetible: entender el repositorio, preparar contexto, planificar con aprobaciones humanas, generar specs, ejecutar slice por slice, validar con evidencia y abrir el PR.
41
+
42
+ ---
43
+
44
+ ### Bloque 2 — El humano siempre aprueba lo importante
45
+
46
+ **"IA rápida, decisiones humanas."**
47
+
48
+ Quiver separa los pasos que necesitan aprobación humana (criterios de aceptación, plan técnico) de los que puede automatizar la IA (ejecución de slices, commits, validación). El humano mantiene el control sin perder velocidad.
49
+
50
+ ---
51
+
52
+ ### Bloque 3 — Contexto mínimo, resultados máximos
53
+
54
+ **"El agente ejecutor solo lee lo que necesita."**
55
+
56
+ Quiver entrega a cada agente un contexto acotado: el slice exacto, sus dependencias y su alcance aprobado. Sin ruido. Sin contexto incorrecto. Sin implementaciones que se desvían del plan.
57
+
58
+ ---
59
+
60
+ ### Bloque 4 — Documentación generada, no escrita
61
+
62
+ **"El proyecto se documenta solo mientras se trabaja."**
63
+
64
+ Quiver crea y mantiene `AI_CONTEXT.md`, `PROJECT_MAP.md`, `AGENTS.md`, briefs de ejecución y reportes de evidencia como parte del flujo normal de trabajo. No como tarea adicional.
65
+
66
+ ---
67
+
68
+ ### Bloque 5 — Compatible con tu stack y tu equipo
69
+
70
+ **"Funciona donde ya trabajás."**
71
+
72
+ Quiver se ejecuta con `npx` sin instalación. Soporta macOS, Linux y Windows. Compatible con npm, yarn, pnpm y bun. Funciona con Codex, Claude, Gemini y cualquier CLI de proveedor que soporte.
73
+
74
+ ---
75
+
76
+ ## 3. Beneficios Principales
77
+
78
+ - **Trazabilidad completa:** cada cambio tiene una spec aprobada, un slice definido y evidencia de validación asociada.
79
+ - **Sin sorpresas en el PR:** el alcance del pull request está definido antes de que el agente escriba una sola línea.
80
+ - **Onboarding instantáneo para agentes:** `AGENTS.md` y `AI_ONBOARDING_PROMPT.md` generados automáticamente le dan a cualquier agente el contexto necesario en segundos.
81
+ - **Independiente de cualquier proveedor de IA:** Quiver orquesta el flujo; los proveedores (Codex, Claude, Gemini) hacen el trabajo de generación.
82
+ - **Flujo verificable en cualquier momento:** `quiver flow`, `quiver dashboard` y `quiver doctor` muestran el estado real del proyecto en cualquier momento.
83
+ - **Sin API keys en el repositorio:** las credenciales viven en los CLIs de proveedor y en el sistema operativo, nunca en los archivos de Quiver.
84
+ - **Soporte en inglés y español:** output del CLI, documentación generada y mensajes de error disponibles en ambos idiomas.
85
+ - **Funciona con proyectos nuevos y existentes:** `init` para proyectos nuevos, `migrate` para los que ya tienen código.
86
+
87
+ ---
88
+
89
+ ## 4. Sección de Problema
90
+
91
+ ### "¿Por qué los agentes de IA fallan en proyectos reales?"
92
+
93
+ Los agentes de IA pueden escribir código rápido. Pero suelen fallar por motivos sorprendentemente mundanos:
94
+
95
+ - **Leen demasiado contexto o el contexto incorrecto.** El agente procesa miles de líneas que no tienen que ver con la tarea.
96
+ - **Implementan antes de cerrar criterios de aceptación.** El equipo no sabe qué construyó el agente hasta que ya está hecho.
97
+ - **Saltean la aprobación del plan.** No hay una fase donde el humano valide qué se va a cambiar antes de que se cambie.
98
+ - **Mezclan cambios no relacionados en el mismo PR.** Un pull request que toca diez cosas distintas es imposible de revisar.
99
+ - **Olvidan qué se decidió en fases anteriores.** Sin estado persistente, cada sesión empieza de cero.
100
+ - **Generan código sin evidencia de validación.** Nadie puede auditar si los tests pasaron, cuánto tardaron o qué salida produjeron.
101
+ - **Dejan al equipo reconstruyendo qué pasó.** El historial de chat se pierde. El contexto desaparece.
102
+
103
+ El resultado: trabajo más rápido en el corto plazo, caos técnico que crece con cada iteración.
104
+
105
+ ---
106
+
107
+ ## 5. Sección de Solución
108
+
109
+ ### "Quiver convierte el trabajo asistido por IA en un flujo con estructura."
110
+
111
+ Quiver no reemplaza al agente. Lo ordena.
112
+
113
+ Combina dos metodologías complementarias:
114
+ - **WDD (Workflow-Driven Development):** primero se define cómo se trabaja, después se trabaja.
115
+ - **SDD (Spec-Driven Development):** el trabajo se describe como specs y slices antes de implementarse.
116
+
117
+ En la práctica, Quiver separa dos roles de agentes:
118
+
119
+ - Un **agente planificador** prepara criterios de aceptación, plan técnico, specs, slices, briefs y el cuerpo del PR. El humano aprueba en cada fase importante.
120
+ - Un **agente ejecutor** recibe solo el contexto mínimo de un slice y modifica código dentro del alcance exacto que fue aprobado.
121
+
122
+ El resultado es un flujo visible de principio a fin: requerimiento → criterios aprobados → plan aprobado → spec generada → slices ejecutados → evidencia validada → PR abierto → spec cerrada.
123
+
124
+ Cada paso es verificable. Cada decisión es auditable. El equipo mantiene el control.
125
+
126
+ ---
127
+
128
+ ## 6. Features Destacadas
129
+
130
+ ### `quiver flow` — Tu brújula de workflow
131
+
132
+ Ejecutá `quiver flow` en cualquier momento para saber exactamente en qué etapa está el proyecto y cuál es el próximo comando seguro. Funciona como un GPS para el flujo de trabajo: siempre te dice dónde estás y hacia dónde ir.
133
+
134
+ ---
135
+
136
+ ### `quiver ai plan` — El planner genera el plan, el humano lo aprueba
137
+
138
+ En lugar de pedirle al agente que "haga algo", Quiver hace que el agente proponga criterios de aceptación y un plan técnico estructurado. Guardás los borradores, los revisás, y aprobás la versión que querés usar como base para la implementación. Sin aprobación, no hay avance.
139
+
140
+ ---
141
+
142
+ ### `quiver spec create` — De plan aprobado a spec lista para ejecutar
143
+
144
+ Una vez aprobado el plan técnico, `spec create` genera automáticamente la estructura de spec: directorio, slices numerados, briefs de ejecución, cuerpo del PR y plan de ejecución en olas. Todo listo para que el ejecutor trabaje slice por slice.
145
+
146
+ ---
147
+
148
+ ### `quiver ai execute-slice` — Ejecución controlada, un slice por vez
149
+
150
+ El agente ejecutor recibe solo el contexto del slice que tiene que implementar: archivos en scope, dependencias, criterios de validación. Ejecuta, valida y commitea. El alcance está definido de antemano; si el agente se desvía, Quiver lo detecta.
151
+
152
+ ---
153
+
154
+ ### `quiver evidence run` — Validación con registro
155
+
156
+ Ejecutá cualquier comando (tests, builds, linters) y Quiver registra automáticamente el código de salida, la duración y el output redactado como archivo de evidencia Markdown. Sin capturas de pantalla, sin copy-paste. Evidencia reproducible por defecto.
157
+
158
+ ---
159
+
160
+ ### `quiver dashboard` — Estado consolidado en un vistazo
161
+
162
+ Un resumen compacto de specs, slices, runs, aprobaciones y agentes configurados. Filtrable por sección, spec y cantidad de items. Con `--json` para integrarlo en dashboards externos.
163
+
164
+ ---
165
+
166
+ ### `quiver ai agent set` — Configura tus agentes una sola vez
167
+
168
+ Configurá un perfil de planner, ejecutor, revisor y doctor con proveedor y modelo técnico. Quiver les pasa el modelo exacto al CLI del proveedor en cada ejecución. Sin configurar lo mismo en cada sesión. Sin guardar API keys en el repositorio.
169
+
170
+ ---
171
+
172
+ ### `quiver doctor` — Diagnóstico del contrato del proyecto
173
+
174
+ Valida que la estructura del proyecto esté sana: archivos requeridos, scripts de `package.json`, estado de Quiver. Con `--fix` aplica reparaciones seguras y no destructivas. Con `--json` es integrable en pipelines de CI.
175
+
176
+ ---
177
+
178
+ ## 7. Sección de Confianza
179
+
180
+ ### Construido con el mismo flujo que describe
181
+
182
+ Quiver se desarrolla usando Quiver. El repositorio es la demostración del producto: cada spec visible en `specs/`, cada slice ejecutado con evidencia, cada PR abierto siguiendo el flujo documentado.
183
+
184
+ ---
185
+
186
+ ### Transparencia de implementación
187
+
188
+ Todo el código de Quiver es código abierto bajo licencia MIT. Los specs, slices y evidencias del desarrollo del framework están en el repositorio. Podés ver exactamente qué se implementó, cómo, y por qué.
189
+
190
+ ---
191
+
192
+ ### Independiente de cualquier proveedor
193
+
194
+ Quiver no te ata a un proveedor de IA. Hoy podés usar Codex, mañana Claude, pasado Gemini. Las credenciales viven en los CLIs de cada proveedor. Quiver solo orquesta el flujo.
195
+
196
+ ---
197
+
198
+ ### Sin datos de proyecto enviados a servicios externos
199
+
200
+ `quiver flow`, `quiver doctor`, `quiver plan` y `quiver dashboard` son comandos que solo leen el estado local del proyecto. No envían datos a ningún servicio externo. El código y el contexto de tu proyecto no salen de tu máquina salvo cuando vos explícitamente invocás un proveedor de IA.
201
+
202
+ ---
203
+
204
+ ### Disponible en npm desde el día uno
205
+
206
+ ```bash
207
+ npx create-quiver@latest --help
208
+ ```
209
+
210
+ Sin registro. Sin trial. Sin tarjeta de crédito. Ejecutable en segundos desde cualquier terminal con Node.js.
211
+
212
+ ---
213
+
214
+ ### Soporte en múltiples plataformas
215
+
216
+ macOS · Linux · Windows PowerShell · Windows Git Bash · WSL
217
+
218
+ Documentación de instalación paso a paso para cada plataforma.
219
+
220
+ ---
221
+
222
+ ## 8. CTA Final
223
+
224
+ ### "Tu próximo feature. Con IA. Con orden."
225
+
226
+ No necesitás cambiar tu stack, tu repositorio ni tu equipo.
227
+
228
+ Solo necesitás correr un comando desde la raíz de tu proyecto:
229
+
230
+ ```bash
231
+ npx create-quiver@latest init --name "Mi Proyecto"
232
+ ```
233
+
234
+ En minutos tenés el contexto de IA preparado, el flujo definido y el primer paso claro.
235
+
236
+ **[Empezar gratis →]** `npx create-quiver@latest init`
237
+
238
+ **[Leer la guía completa →]** Ver documentación
239
+
240
+ **[Ver el código →]** [Completar con información real del producto: URL del repositorio]
241
+
242
+ ---
243
+
244
+ > *Quiver es MIT. No hay costos de licencia. El único costo es el de los proveedores de IA que elijas usar.*
@@ -20,7 +20,9 @@ Este archivo comprime el contrato de trabajo para agentes IA. Usa los documentos
20
20
  ## Reglas criticas
21
21
 
22
22
  - Un slice equivale a un commit.
23
- - Un spec equivale a un PR.
23
+ - Un slice equivale a un PR por defecto.
24
+ - Un spec puede generar multiples PRs.
25
+ - Los PRs agrupados son excepciones y deben cumplir `docs/GITFLOW_PR_GUIDE.md`.
24
26
  - No inventes archivos, rutas, flags ni reglas de negocio.
25
27
  - No sobrescribas contenido humano sin revisar si debe preservarse.
26
28
  - Usa `TODO`, `Assumption` o `Pending confirmation` para incertidumbre.
@@ -34,7 +34,9 @@ This file is the main context pack after `AGENTS.md` and `docs/PROJECT_MAP.md`.
34
34
  ## Critical Rules
35
35
 
36
36
  - One slice maps to one commit.
37
- - One spec maps to one PR.
37
+ - One slice maps to one PR by default.
38
+ - One spec can produce multiple PRs.
39
+ - Grouped PRs are exceptions and must follow `docs/GITFLOW_PR_GUIDE.md`.
38
40
  - Slice numbering resets inside each spec.
39
41
  - Do not invent files that the bootstrap did not generate.
40
42
  - Use canonical paths when a path matters.
@@ -7,7 +7,7 @@ Este documento define el estandar de experiencia para los comandos de Quiver. La
7
7
  - Los comandos deben explicar que modo estan usando: deterministico, planner-assisted, dry-run, review, interactive, JSON o CI.
8
8
  - `--dry-run` debe ser el primer paso recomendado antes de escrituras, proveedores externos, worktrees, PRs o reparaciones.
9
9
  - La salida humana puede usar jerarquia visual, loaders y color; la salida JSON debe permanecer limpia y parseable.
10
- - Los prompts interactivos son opt-in. Ningun comando debe bloquear automatizaciones si `--interactive` no fue pedido.
10
+ - Los prompts interactivos son opt-in, salvo confirmaciones de seguridad para comandos destructivos como `migrate`. Ningun comando debe quedar esperando input en CI/no-TTY; debe fallar con guia accionable o aceptar un bypass explicito como `--yes`.
11
11
  - Las revisiones humanas ocurren antes de escrituras persistentes siempre que el comando soporte `--review`.
12
12
  - Las credenciales viven en los CLIs de proveedor, `gh`, Git o el sistema operativo. Quiver no debe guardarlas.
13
13
 
@@ -93,6 +93,7 @@ Reglas:
93
93
  | Comando | `--with-planner` | `--interactive` | `--review` | Notas |
94
94
  |---|---:|---:|---:|---|
95
95
  | `init` | no | si | no | Interactive guia modo de proyecto, metodologia `wdd-sdd`, perfil inicial y proximo paso de perfiles de agentes. |
96
+ | `migrate` | no | no | no | En TTY confirma antes de escribir; en CI/no-TTY requiere `--yes`. `--dry-run` no pide confirmacion ni escribe. |
96
97
  | `ai prepare-context` | si | si | si | Modo deterministico por defecto; planner opcional con contrato docs-only. |
97
98
  | `ai plan` | si | si | si | El planner ya es implicito; `--with-planner` se acepta por consistencia. |
98
99
  | `spec create` | si | si | si | Consume un plan tecnico aprobado del planner; no vuelve a ejecutar proveedor. Review previsualiza el paquete antes de escribir. |
@@ -108,6 +109,13 @@ Reglas:
108
109
  | `flow`, `dashboard`, `next`, `graph`, `version` | no | no | no | Lectura/inspeccion; `dashboard` puede acotarse con `--details`, `--section` y `--limit`, pero no acepta flags decorativas. |
109
110
  | `ai inspect`, `ai export`, `ai specs list`, `ai slices list`, `ai trace report` | no | no | no | Superficies read-only o machine-readable. |
110
111
 
112
+ ## Contratos read-only de plan, graph y next
113
+
114
+ - `next --auto-start` requiere TTY interactiva; en CI/no-TTY falla antes de iniciar un slice y no emite JSON parcial.
115
+ - `plan` mantiene JSON limpio. Las advertencias sobre slices sin `estimated_hours` positivo aparecen solo en salida humana y esos slices cuentan como `0h`.
116
+ - `graph --level <n>` mantiene JSON limpio. Si el nivel no existe, la salida humana muestra un estado vacio localizado y `--json` emite `levels: []` / `conflicts: []`.
117
+ - `graph --json` tiene precedencia sobre `--format tree|mermaid|dot`; con ambos flags, la salida sigue siendo JSON parseable.
118
+
111
119
  ## Flujo recomendado para contexto de IA
112
120
 
113
121
  Modo deterministico:
@@ -21,7 +21,7 @@ This document is the canonical command reference for the orchestration roadmap.
21
21
  | `npx create-quiver flow` | Shows the read-only guided flow entrypoint, context source/freshness, package-manager-aware script guidance, and next safe command | macOS, Linux, Windows | v0.11 | `npx create-quiver flow` |
22
22
  | `npx create-quiver dashboard` | Shows a compact read-only summary of project, spec, slice, run, approval, and agent status | macOS, Linux, Windows | next | `npx create-quiver dashboard --spec <spec>` |
23
23
  | `npx create-quiver dashboard --details` | Shows the full human dashboard report for audit/debug sessions | macOS, Linux, Windows | next | `npx create-quiver dashboard --details` |
24
- | `npx create-quiver dashboard --section <name>` | Shows one human dashboard section such as `specs`, `slices`, `blockers`, `warnings`, `agents`, `approvals`, `runs`, `active-slice`, or `next-steps` | macOS, Linux, Windows | next | `npx create-quiver dashboard --section slices --limit 10` |
24
+ | `npx create-quiver dashboard --section <name>` | Shows one human dashboard section such as `overview`, `specs`, `slices`, `blockers`, `warnings`, `agents`, `approvals`, `runs`, `active-slice`, or `next-steps` | macOS, Linux, Windows | next | `npx create-quiver dashboard --section slices --limit 10` |
25
25
  | `npx create-quiver analyze --dry-run` | Previews scan, project-map, and AI context writes without creating files | macOS, Linux, Windows | v0.13 | `npx create-quiver analyze --dry-run` |
26
26
  | `quiver:analyze` | Writes raw analyzer data to `.quiver/scans/PROJECT_SCAN.json`, the visible project map to `docs/PROJECT_MAP.md`, and refreshed AI context | macOS, Linux, Windows | v0.8 | `npm run quiver:analyze` |
27
27
  | `quiver:flow` | Runs the guided flow entrypoint through the generated npm script | macOS, Linux, Windows | v0.11 | `npm run quiver:flow` |
@@ -32,6 +32,8 @@ This document is the canonical command reference for the orchestration roadmap.
32
32
  | `quiver:doctor -- --fix --dry-run` | Previews safe non-destructive repairs without writing files | macOS, Linux, Windows | v0.11 | `npm run quiver:doctor -- --fix --dry-run` |
33
33
  | `quiver:doctor -- --fix` | Applies safe idempotent repairs after review | macOS, Linux, Windows | v0.11 | `npm run quiver:doctor -- --fix` |
34
34
  | `quiver:evidence -- run -- <command>` | Captures command validation evidence with exit code, duration, redacted/truncated output, and a local Markdown record | macOS, Linux, Windows | v0.11 | `npm run quiver:evidence -- run -- npm test` |
35
+ | `quiver:evidence -- list --json` | Lists local evidence records as parseable JSON for automation | macOS, Linux, Windows | next | `npm run quiver:evidence -- list --json` |
36
+ | `quiver:evidence -- show <path> --json` | Shows one local evidence record with content and metadata as parseable JSON | macOS, Linux, Windows | next | `npm run quiver:evidence -- show .quiver/evidence/evidence.md --json` |
35
37
  | `npx create-quiver ai run create --input <requirements.md>` | Creates a persistent AI lifecycle run under `.quiver/runs/` | macOS, Linux, Windows | v0.12 | `npx create-quiver ai run create --input requirements.md` |
36
38
  | `npx create-quiver ai status` | Shows the current AI lifecycle phase and next safe command | macOS, Linux, Windows | v0.12 | `npx create-quiver ai status` |
37
39
  | `npx create-quiver ai resume` | Resumes guidance from the last valid AI lifecycle phase | macOS, Linux, Windows | v0.12 | `npx create-quiver ai resume` |
@@ -85,8 +87,13 @@ This document is the canonical command reference for the orchestration roadmap.
85
87
  | `quiver:spec:status` | Shows spec worktree, branch, `slice-00`, and pending slices | macOS, Linux, Windows | v0.10 | `npm run quiver:spec:status -- specs/<spec>` |
86
88
  | `quiver:spec:validate` | Validates spec docs, slices, briefs, evidence, status, dependencies, and safe paths | macOS, Linux, Windows | v0.13 | `npm run quiver:spec:validate -- specs/<spec>` |
87
89
  | `quiver:spec:close` | Closes a merged clean spec worktree and pulls the main checkout | macOS, Linux, Windows | v0.10 | `npm run quiver:spec:close -- specs/<spec> --dry-run` |
90
+ | `quiver:start-slice` | Starts one slice through the canonical `slice start` namespace without requiring Bash | macOS, Linux, Windows | next | `npm run quiver:start-slice -- specs/<spec>/slices/<slice>/slice.json` |
88
91
  | `quiver:check-slice -- --local <slice.json>` | Runs local structural slice validation without remote/base checks | macOS, Linux, Windows | v0.11 | `npm run quiver:check-slice -- --local specs/<spec>/slices/<slice>/slice.json` |
92
+ | `quiver:check-pr` | Validates PR readiness through the canonical `slice pr` namespace without requiring Bash | macOS, Linux, Windows | next | `npm run quiver:check-pr -- specs/<spec>/slices/<slice>/slice.json` |
93
+ | `quiver:check-scope` | Compares changed files with the declared slice scope without requiring Bash | macOS, Linux, Windows | next | `npm run quiver:check-scope -- specs/<spec>/slices/<slice>/slice.json --base main` |
94
+ | `quiver:cleanup-slice` | Cleans active-slice state through the canonical `slice cleanup` namespace without requiring Bash | macOS, Linux, Windows | next | `npm run quiver:cleanup-slice -- specs/<spec>/slices/<slice>/slice.json --dry-run` |
89
95
  | `quiver:check-handoff -- <handoff-or-brief.md>` | Validates legacy `HANDOFF.md` files and per-slice `EXECUTION_BRIEF.md` / `CLOSURE_BRIEF.md` files | macOS, Linux, Windows | v0.12.1 | `npm run quiver:check-handoff -- specs/<spec>/slices/<slice>/EXECUTION_BRIEF.md` |
96
+ | `quiver:new-handoff` | Creates an exceptional handoff through the canonical `handoff new` namespace without requiring Bash | macOS, Linux, Windows | next | `npm run quiver:new-handoff -- <spec-slug>` |
90
97
 
91
98
  ## CLI Flags
92
99
 
@@ -101,9 +108,9 @@ This document is the canonical command reference for the orchestration roadmap.
101
108
  | `--output <file>` | `evidence run` | Write the evidence Markdown file to an explicit path instead of `.quiver/evidence/` |
102
109
  | `--max-output <n>` | `evidence run` | Limit captured stdout and stderr characters per section |
103
110
  | `--dir <target>` | `demo create spec-viewer` | Select the demo target directory; default is `./quiver-spec-viewer` |
104
- | `--json` | `dashboard`, `version`, `plan`, `graph`, `next` | Emit machine-readable JSON |
111
+ | `--json` | `dashboard`, `version`, `plan`, `graph`, `next`, `evidence list`, `evidence show` | Emit machine-readable JSON |
105
112
  | `--details` | `dashboard` | Show the full human dashboard report instead of the compact default; incompatible with `--json` and `--section` |
106
- | `--section <name>` | `dashboard` | Show one human dashboard section; incompatible with `--json` and `--details` |
113
+ | `--section <name>` | `dashboard` | Show one human dashboard section: `overview`, `specs`, `slices`, `blockers`, `warnings`, `agents`, `approvals`, `runs`, `active-slice`, or `next-steps`; incompatible with `--json` and `--details` |
107
114
  | `--limit <n>` | `dashboard` | Limit compact dashboard lists between 1 and 100; incompatible with `--json` |
108
115
  | `--all-ready` | `next` | List all ready slices instead of just the next one |
109
116
  | `--only-ready` | `plan` | Show only slices with no pending dependencies |
@@ -131,7 +138,7 @@ This document is the canonical command reference for the orchestration roadmap.
131
138
  | `--execute` | `ai execute-plan` | Execute the planned waves instead of printing commands |
132
139
  | `--mode <auto\|manual\|delegated>` | `ai execute-plan` | Choose compatible sequential execution, manual prompt output, or delegated worktree execution |
133
140
  | `--create` | `ai pr` | Create the GitHub PR after preflight and plan review |
134
- | `--base <branch>` | `ai pr`, `spec close` | Select PR base or cleanup base branch |
141
+ | `--base <branch>` | `check-slice`, `check-scope`, `check-pr`, `ai pr`, `spec start`, `spec close` | Override base branch resolution; explicit values win before Remote HEAD and fallback branches |
135
142
  | `--allow-dirty` | `ai execute-slice`, `ai execute-plan` | Allow pre-existing dirty files and ignore them for scope diff |
136
143
  | `--ssh-host-alias <alias>` | `ai doctor`, `ai pr` | SSH host alias from the user's Git config, for example `github-work` |
137
144
  | `--identity-file <path>` | `ai doctor`, `ai pr` | SSH key path to validate separately from the host alias |
@@ -143,10 +150,15 @@ This document is the canonical command reference for the orchestration roadmap.
143
150
  - The `quiver` binary is an alias to the same package CLI after local installation. Keep `npx create-quiver` as the bootstrap command.
144
151
  - Keep the table concise and cross-platform.
145
152
  - Shared graph library: `src/create-quiver/lib/slice-graph.js`.
153
+ - `quiver:plan` shows a human-only note when slices have no positive `estimated_hours`; JSON remains machine-readable and reports those hours as `0`.
146
154
  - `quiver:graph --format mermaid` is the PR-friendly Mermaid export; `--format dot` is for Graphviz/DOT consumers.
147
- - `quiver:next` prints the next ready slice and can auto-start it behind a confirmation prompt.
155
+ - `quiver:graph --json` takes precedence over `--format tree|mermaid|dot`, so combined flags still emit parseable JSON.
156
+ - `quiver:graph --level <n>` reports a localized human empty state when the level has no slices; JSON emits empty `levels` and `conflicts` arrays.
157
+ - `quiver:next` prints the next ready slice and can auto-start it behind a confirmation prompt in interactive TTY sessions only.
148
158
  - `check-slice` validates `depends_on` targets and requires `parallel_safe_reason` when `parallel_safe` is `never`.
149
159
  - `check-handoff` validates both exceptional `HANDOFF.md` transfers and current slice-local `EXECUTION_BRIEF.md` / `CLOSURE_BRIEF.md` contracts.
160
+ - Prefer canonical namespaces for new usage: `slice start|check|pr|scope|cleanup|refresh-active` and `handoff check|new`. Legacy aliases such as `start-slice`, `check-slice`, and `check-handoff` remain available and warn only on stderr.
161
+ - On Windows PowerShell, use `npx create-quiver ...` directly or generated `quiver:*` npm scripts. Bash-only scripts such as `start:slice` and `check:slice` are legacy compatibility paths for Bash-capable shells.
150
162
  - `quiver:ai:onboard`, `quiver:ai:plan`, `quiver:ai:revise`, `quiver:ai:review-plan`, and `quiver:ai:execute-slice` support `codex`, `claude`, and `gemini` through local CLIs. Use `--dry-run` first to inspect the invocation without requiring provider auth, or `--print-prompt` to print the exact planner/reviewer prompt without executing a provider.
151
163
  - `quiver:ai:prepare-context -- --dry-run` previews deterministic docs-only context drafts, diff snippets, assumptions, risks, contradictions, and omitted paths. Write mode stores snapshots under `.quiver/runs/<run-id>/snapshots/` and preserves human-authored content by appending or refreshing a Quiver-managed block.
152
164
  - `quiver:ai:prepare-context -- --with-planner` invokes a planner provider and only accepts a validated docs-only proposal. Use `--print-prompt` for external planners, `--review` to inspect the proposal before writing, and `--interactive` to require confirmation.
@@ -169,7 +181,9 @@ This document is the canonical command reference for the orchestration roadmap.
169
181
  - `quiver:ai:approvals`, `quiver:flow`, `quiver:ai:status`, `quiver:ai:resume`, and `quiver:spec:create -- --interactive` use the same approval-candidate data so next-step guidance stays consistent.
170
182
  - `quiver:ai:prompt-slice -- --dry-run` prints a paste-ready manual executor prompt and does not call a provider.
171
183
  - For commands pasted into another AI agent, prefer a non-interactive pinned form such as `npx --yes create-quiver@<version> ai prompt-slice --slice specs/<spec>/slices/<slice>/slice.json --dry-run`.
172
- - `quiver:evidence -- run -- <command>` preserves the wrapped command exit code. Redaction is best effort; avoid commands that intentionally print secrets.
184
+ - `quiver:evidence -- run -- <command>` preserves the wrapped command exit code, writes failure evidence, records signal termination as `Signal`, and returns the standard `128 + signal` exit code for signaled processes.
185
+ - Explicit `quiver:evidence -- run --output <file>` targets and `quiver:evidence -- show <path>` reads must stay inside the project root; Quiver rejects path traversal and symlink escapes before command execution or file reads.
186
+ - Evidence output redaction/truncation is best effort; avoid commands that intentionally print secrets.
173
187
  - `demo create spec-viewer` is optional and static; it must stay outside default `init`.
174
188
  - `quiver:spec:start -- --dry-run specs/<spec>` previews the spec worktree path and branch without creating a worktree.
175
189
  - `quiver:ai:execute-slice -- --commit` creates exactly one commit only after provider, branch/worktree, scope, and validation commands pass. Commit mode refuses pre-existing dirty files even if `--allow-dirty` is set. Successful execution updates `CLOSURE_BRIEF.md`, `EVIDENCE_REPORT.md`, `COMMAND_LOG.md`, `STATUS.md`, and `slice.json`; likely secrets in captured stdout/stderr are redacted.
@@ -1,21 +1,78 @@
1
1
  # Git and PR Guide
2
2
 
3
- **Version:** 2.0
4
- **Last updated:** 2026-05-26
3
+ **Version:** 2.1
4
+ **Last updated:** 2026-06-02
5
5
 
6
6
  ## Purpose
7
7
 
8
- This guide explains how to open and review spec PRs without breaking the canonical workflow.
8
+ This guide explains how to open, review, and merge slice PRs without breaking the canonical workflow.
9
9
 
10
10
  ## Core Rule
11
11
 
12
- - One slice = one commit
13
- - One spec = one PR
14
- - One spec should be worked from one dedicated worktree/branch.
12
+ - One slice = one commit.
13
+ - One slice = one PR by default.
14
+ - One spec can produce multiple PRs. Grouped PRs are exceptions and must meet the grouped PR policy below.
15
+ - One active PR should be worked from one dedicated worktree/branch.
15
16
  - Slice numbers reset per spec. `slice-01` is the first slice in each spec.
16
- - Do not commit directly to `develop`
17
- - Open and merge the documentation PR before the first slice starts execution
18
- - Do not open the spec PR before the documentation PR is merged
17
+ - Do not commit directly to `develop` or any protected base branch.
18
+ - Open and merge the documentation PR that establishes `slice-00` before runtime slices start execution.
19
+ - Do not open runtime slice PRs before the documentation foundation is merged.
20
+
21
+ ## PR Sizing Policy
22
+
23
+ ### Individual PR Required
24
+
25
+ Open an individual PR for any slice that includes:
26
+
27
+ - Functional code.
28
+ - UI/UX changes.
29
+ - Supabase, Edge Functions, auth, or storage changes.
30
+ - Preview or deployment behavior.
31
+ - Performance or code-splitting changes.
32
+ - Refactors.
33
+ - Tests or CI changes that affect gates.
34
+
35
+ ### Grouped PR Exception
36
+
37
+ A grouped PR is allowed only when all conditions are true:
38
+
39
+ - It contains at most 2-3 slices.
40
+ - Every included slice is docs-only, research-only, or low-risk mechanical cleanup.
41
+ - It does not change behavior.
42
+ - It does not mix docs with UI, backend, refactor, or performance work.
43
+ - Each slice keeps separate evidence.
44
+ - The whole PR can be reverted without leaving partial state.
45
+
46
+ If any condition fails, split the work into individual slice PRs.
47
+
48
+ ## Merge Policy
49
+
50
+ - Human merge is the default.
51
+ - AI agents may create PRs, fix CI, monitor checks, and mark PRs as ready.
52
+ - Assisted auto-merge is allowed only when explicitly authorized by a human for that PR or for a documented category.
53
+
54
+ ## Assisted Auto-Merge Policy
55
+
56
+ Assisted auto-merge is allowed only when all conditions are true:
57
+
58
+ - The PR is docs-only or chore-only.
59
+ - Risk is low.
60
+ - There are no runtime changes.
61
+ - There are no production configuration changes.
62
+ - Checks are green.
63
+ - There are no pending comments.
64
+
65
+ Assisted auto-merge is prohibited for:
66
+
67
+ - UI.
68
+ - Supabase.
69
+ - Edge Functions.
70
+ - Auth.
71
+ - Storage.
72
+ - Preview.
73
+ - Performance.
74
+ - Refactors.
75
+ - Changes with doubtful rollback.
19
76
 
20
77
  ## AI PR Preflight
21
78
 
@@ -36,10 +93,11 @@ Use the SSH host alias from your Git remote separately from the key path. Quiver
36
93
 
37
94
  ## Required PR Headings
38
95
 
39
- All spec PR notes must use:
96
+ All slice PR notes must use:
40
97
 
41
98
  - `## Title`
42
99
  - `## Summary`
100
+ - `## PR Policy`
43
101
  - `## Scope`
44
102
  - `## Files`
45
103
  - `## How to Test (DETAILED - REQUIRED)`
@@ -66,5 +124,9 @@ Inside `How to Test`, use:
66
124
  ## Anti-Patterns
67
125
 
68
126
  - Pushing directly to `develop`
69
- - Reusing the same branch for multiple specs
127
+ - Reusing the same branch for unrelated PRs
128
+ - Grouping behavior-changing slices
129
+ - Mixing docs-only slices with UI, backend, refactor, or performance work
130
+ - Auto-merging without explicit human authorization
131
+ - Auto-merging prohibited categories
70
132
  - Writing PR bodies outside `pr.md`
@@ -3,10 +3,68 @@
3
3
  ## Reglas principales
4
4
 
5
5
  - Un slice equivale a un commit.
6
- - Un spec equivale a un PR.
7
- - No mezclar specs en la misma branch.
6
+ - Un slice equivale a un PR por defecto.
7
+ - Un spec puede generar multiples PRs.
8
+ - Los PRs agrupados son excepciones y deben cumplir la politica de agrupacion.
9
+ - No mezclar PRs no relacionados en la misma branch.
8
10
  - No abrir PR sin evidencia de validacion.
9
11
 
12
+ ## Politica de tamano de PR
13
+
14
+ ### PR individual obligatorio
15
+
16
+ Abri un PR individual para cualquier slice que incluya:
17
+
18
+ - codigo funcional;
19
+ - UI/UX;
20
+ - Supabase, Edge Functions, auth o storage;
21
+ - preview o comportamiento de deploy;
22
+ - performance o code-splitting;
23
+ - refactors;
24
+ - tests o CI que afecten gates.
25
+
26
+ ### PR agrupado permitido
27
+
28
+ Un PR agrupado esta permitido solo si:
29
+
30
+ - incluye como maximo 2-3 slices;
31
+ - todos los slices son docs-only, research-only o limpieza mecanica de bajo riesgo;
32
+ - no cambia comportamiento;
33
+ - no mezcla docs con UI, backend, refactor o performance;
34
+ - cada slice mantiene evidencia separada;
35
+ - el PR completo puede revertirse sin dejar estado parcial.
36
+
37
+ Si una condicion falla, separa el trabajo en PRs individuales por slice.
38
+
39
+ ## Politica de merge
40
+
41
+ - El merge humano es el default.
42
+ - Los agentes IA pueden crear PRs, corregir CI, monitorear checks y marcar PRs como listos.
43
+ - El auto-merge asistido solo esta permitido con autorizacion humana explicita para ese PR o para una categoria documentada.
44
+
45
+ ## Politica de auto-merge asistido
46
+
47
+ El auto-merge asistido esta permitido solo si:
48
+
49
+ - el PR es docs-only o chore-only;
50
+ - el riesgo es bajo;
51
+ - no hay cambios runtime;
52
+ - no hay cambios de configuracion productiva;
53
+ - los checks estan verdes;
54
+ - no hay comentarios pendientes.
55
+
56
+ El auto-merge asistido esta prohibido para:
57
+
58
+ - UI;
59
+ - Supabase;
60
+ - Edge Functions;
61
+ - auth;
62
+ - storage;
63
+ - preview;
64
+ - performance;
65
+ - refactors;
66
+ - cambios con rollback dudoso.
67
+
10
68
  ## Preflight de PR
11
69
 
12
70
  ```bash
@@ -17,6 +75,7 @@ npx create-quiver ai pr --dry-run --ssh-host-alias <alias> --identity-file <key>
17
75
 
18
76
  - `## Title`
19
77
  - `## Summary`
78
+ - `## PR Policy`
20
79
  - `## Scope`
21
80
  - `## Files`
22
81
  - `## How to Test (DETAILED - REQUIRED)`