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.
- package/.github/pull_request_template.md +17 -0
- package/.github/workflows/ci.yml +76 -0
- package/.markdown-link-check.json +15 -0
- package/.markdownlint.json +11 -0
- package/.quiver/runs/run-2026-06-09t19-14-39z/approvals.json +5 -0
- package/.quiver/runs/run-2026-06-09t19-14-39z/decisions.md +2 -0
- package/.quiver/runs/run-2026-06-09t19-14-39z/requirement.md +0 -0
- package/.quiver/runs/run-2026-06-09t19-14-39z/snapshots/20260609T191439Z/docs/INDEX.md +97 -0
- package/.quiver/runs/run-2026-06-09t19-14-39z/snapshots/20260609T191439Z/manifest.json +61 -0
- package/.quiver/runs/run-2026-06-09t19-14-39z/state.json +28 -0
- package/ACTIVE_SLICES.md +43 -0
- package/ARCHITECTURE.md +133 -0
- package/CHANGELOG.md +12 -0
- package/CONTRIBUTING.md +174 -9
- package/README.md +10 -1
- package/ROADMAP.md +4 -0
- package/SECURITY.md +9 -2
- package/auditoria-ux-ui-performance-documentacion.md +705 -0
- package/copys-landing-page.md +244 -0
- package/docs/AI_CONTEXT.md.es.template +3 -1
- package/docs/AI_CONTEXT.md.template +3 -1
- package/docs/CLI_UX_GUIDE.md +9 -1
- package/docs/COMMANDS.md.template +20 -6
- package/docs/GITFLOW_PR_GUIDE.md +73 -11
- package/docs/GITFLOW_PR_GUIDE.md.es.template +61 -2
- package/docs/GITFLOW_PR_GUIDE.md.template +72 -10
- package/docs/INDEX.md +1 -0
- package/docs/QUICK.md.template +2 -1
- package/docs/STANDARD.md.template +2 -1
- package/docs/WORKFLOW.md.es.template +3 -1
- package/docs/WORKFLOW.md.template +6 -4
- package/docs/ai/ACTIVE_SLICE.md +61 -0
- package/docs/getting-started/installation.md +7 -0
- package/docs/reference/commands.md +104 -6
- package/docs/reference/slice-schema.md +37 -0
- package/docs/schema/slice.schema.json +221 -0
- package/docs/specs/01-spec/01-slice/01-slice.json +36 -0
- package/docs/specs/01-spec/01-slice/01-slice.md +106 -0
- package/docs/specs/01-spec/01-slice/CLOSURE_BRIEF.md +80 -0
- package/docs/specs/01-spec/01-slice/EXECUTION_BRIEF.md +39 -0
- package/docs/specs/01-spec/02-slice/02-slice.json +36 -0
- package/docs/specs/01-spec/02-slice/02-slice.md +108 -0
- package/docs/specs/01-spec/02-slice/CLOSURE_BRIEF.md +88 -0
- package/docs/specs/01-spec/02-slice/EXECUTION_BRIEF.md +40 -0
- package/docs/specs/01-spec/03-slice/03-slice.json +36 -0
- package/docs/specs/01-spec/03-slice/03-slice.md +103 -0
- package/docs/specs/01-spec/03-slice/CLOSURE_BRIEF.md +54 -0
- package/docs/specs/01-spec/03-slice/EXECUTION_BRIEF.md +39 -0
- package/docs/specs/01-spec/04-slice/04-slice.json +36 -0
- package/docs/specs/01-spec/04-slice/04-slice.md +107 -0
- package/docs/specs/01-spec/04-slice/CLOSURE_BRIEF.md +46 -0
- package/docs/specs/01-spec/04-slice/EXECUTION_BRIEF.md +39 -0
- package/docs/specs/01-spec/05-slice/05-slice.json +36 -0
- package/docs/specs/01-spec/05-slice/05-slice.md +106 -0
- package/docs/specs/01-spec/05-slice/CLOSURE_BRIEF.md +84 -0
- package/docs/specs/01-spec/05-slice/EXECUTION_BRIEF.md +109 -0
- package/docs/specs/01-spec/06-slice/06-slice.json +36 -0
- package/docs/specs/01-spec/06-slice/06-slice.md +107 -0
- package/docs/specs/01-spec/06-slice/CLOSURE_BRIEF.md +67 -0
- package/docs/specs/01-spec/06-slice/EXECUTION_BRIEF.md +39 -0
- package/docs/specs/01-spec/07-slice/07-slice.json +36 -0
- package/docs/specs/01-spec/07-slice/07-slice.md +105 -0
- package/docs/specs/01-spec/07-slice/CLOSURE_BRIEF.md +71 -0
- package/docs/specs/01-spec/07-slice/EXECUTION_BRIEF.md +39 -0
- package/docs/specs/01-spec/08-slice/08-slice.json +36 -0
- package/docs/specs/01-spec/08-slice/08-slice.md +105 -0
- package/docs/specs/01-spec/08-slice/CLOSURE_BRIEF.md +114 -0
- package/docs/specs/01-spec/08-slice/EXECUTION_BRIEF.md +39 -0
- package/docs/specs/01-spec/CLOSURE_BRIEF.md +87 -0
- package/docs/specs/01-spec/spec.md +197 -0
- package/docs/workflows/full-ai-spec-to-pr.md +46 -3
- package/i18n/es/docs/GITFLOW_PR_GUIDE.md.template +38 -1
- package/package.json +27 -1
- package/pr.md +154 -0
- package/scripts/package-quiver.sh +82 -2
- package/scripts/release-quiver.sh +14 -3
- package/specs/[project-name]/slices/pr.md.template +19 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/command-language-mode-matrix.json +91 -0
- package/specs/quiver-v50-audit-trust-foundation/EVIDENCE_REPORT.md +151 -0
- package/specs/quiver-v50-audit-trust-foundation/EXECUTION_PLAN.md +34 -0
- package/specs/quiver-v50-audit-trust-foundation/SPEC.md +113 -0
- package/specs/quiver-v50-audit-trust-foundation/STATUS.md +26 -0
- package/specs/quiver-v50-audit-trust-foundation/pr.md +120 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-00-audit-baseline-and-resolved-findings/CLOSURE_BRIEF.md +20 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-00-audit-baseline-and-resolved-findings/EXECUTION_BRIEF.md +58 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-00-audit-baseline-and-resolved-findings/slice.json +57 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-01-runtime-minimum-and-package-metadata/CLOSURE_BRIEF.md +24 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-01-runtime-minimum-and-package-metadata/EXECUTION_BRIEF.md +67 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-01-runtime-minimum-and-package-metadata/slice.json +71 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-02-migrate-write-safety-contract/CLOSURE_BRIEF.md +24 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-02-migrate-write-safety-contract/EXECUTION_BRIEF.md +71 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-02-migrate-write-safety-contract/slice.json +81 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-03-security-reporting-channel/CLOSURE_BRIEF.md +22 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-03-security-reporting-channel/EXECUTION_BRIEF.md +57 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-03-security-reporting-channel/slice.json +56 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-04-user-facing-i18n-error-coverage/CLOSURE_BRIEF.md +23 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-04-user-facing-i18n-error-coverage/EXECUTION_BRIEF.md +68 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-04-user-facing-i18n-error-coverage/slice.json +84 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-05-init-analyze-progress-and-summaries/CLOSURE_BRIEF.md +25 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-05-init-analyze-progress-and-summaries/EXECUTION_BRIEF.md +73 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-05-init-analyze-progress-and-summaries/slice.json +72 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-06-contributor-and-architecture-docs/CLOSURE_BRIEF.md +22 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-06-contributor-and-architecture-docs/EXECUTION_BRIEF.md +66 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-06-contributor-and-architecture-docs/slice.json +74 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-07-ci-and-documentation-lint-baseline/CLOSURE_BRIEF.md +29 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-07-ci-and-documentation-lint-baseline/EXECUTION_BRIEF.md +74 -0
- package/specs/quiver-v50-audit-trust-foundation/slices/slice-07-ci-and-documentation-lint-baseline/slice.json +81 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/EVIDENCE_REPORT.md +145 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/EXECUTION_PLAN.md +32 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/SPEC.md +109 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/STATUS.md +25 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/pr.md +69 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-00-cli-contract-baseline/CLOSURE_BRIEF.md +20 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-00-cli-contract-baseline/EXECUTION_BRIEF.md +58 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-00-cli-contract-baseline/slice.json +56 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-01-flow-json-compatibility/CLOSURE_BRIEF.md +21 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-01-flow-json-compatibility/EXECUTION_BRIEF.md +61 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-01-flow-json-compatibility/slice.json +68 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-02-dashboard-section-validation-i18n/CLOSURE_BRIEF.md +25 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-02-dashboard-section-validation-i18n/EXECUTION_BRIEF.md +65 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-02-dashboard-section-validation-i18n/pr.md +134 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-02-dashboard-section-validation-i18n/slice.json +80 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-03-base-branch-resolution-policy/CLOSURE_BRIEF.md +31 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-03-base-branch-resolution-policy/EXECUTION_BRIEF.md +80 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-03-base-branch-resolution-policy/pr.md +159 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-03-base-branch-resolution-policy/slice.json +102 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-04-next-plan-graph-ux-edge-cases/CLOSURE_BRIEF.md +25 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-04-next-plan-graph-ux-edge-cases/EXECUTION_BRIEF.md +74 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-04-next-plan-graph-ux-edge-cases/pr.md +147 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-04-next-plan-graph-ux-edge-cases/slice.json +91 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-05-evidence-robustness-path-safety/CLOSURE_BRIEF.md +28 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-05-evidence-robustness-path-safety/EXECUTION_BRIEF.md +73 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-05-evidence-robustness-path-safety/pr.md +146 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-05-evidence-robustness-path-safety/slice.json +100 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-06-namespace-compatibility-windows-scripts/CLOSURE_BRIEF.md +36 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-06-namespace-compatibility-windows-scripts/EXECUTION_BRIEF.md +76 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-06-namespace-compatibility-windows-scripts/pr.md +155 -0
- package/specs/quiver-v51-cli-ergonomics-automation-contracts/slices/slice-06-namespace-compatibility-windows-scripts/slice.json +111 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/EVIDENCE_REPORT.md +95 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/EXECUTION_PLAN.md +31 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/SPEC.md +107 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/STATUS.md +22 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/pr.md +69 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-00-schema-docs-release-baseline/CLOSURE_BRIEF.md +21 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-00-schema-docs-release-baseline/EXECUTION_BRIEF.md +60 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-00-schema-docs-release-baseline/slice.json +62 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-01-json-schema-for-slice-json/CLOSURE_BRIEF.md +34 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-01-json-schema-for-slice-json/EXECUTION_BRIEF.md +71 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-01-json-schema-for-slice-json/pr.md +146 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-01-json-schema-for-slice-json/slice.json +106 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-02-generated-cli-reference/CLOSURE_BRIEF.md +33 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-02-generated-cli-reference/EXECUTION_BRIEF.md +67 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-02-generated-cli-reference/pr.md +144 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-02-generated-cli-reference/slice.json +86 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-03-changelog-package-release-smoke-hygiene/CLOSURE_BRIEF.md +38 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-03-changelog-package-release-smoke-hygiene/EXECUTION_BRIEF.md +75 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-03-changelog-package-release-smoke-hygiene/pr.md +159 -0
- package/specs/quiver-v52-schema-docs-release-hygiene/slices/slice-03-changelog-package-release-smoke-hygiene/slice.json +105 -0
- package/src/create-quiver/commands/changelog.js +93 -0
- package/src/create-quiver/commands/config.js +16 -5
- package/src/create-quiver/commands/evidence.js +33 -2
- package/src/create-quiver/commands/flow.js +1 -0
- package/src/create-quiver/commands/graph.js +8 -2
- package/src/create-quiver/commands/plan.js +6 -0
- package/src/create-quiver/commands/spec.js +28 -13
- package/src/create-quiver/index.js +294 -94
- package/src/create-quiver/lib/ai/github.js +5 -2
- package/src/create-quiver/lib/ai/spec-templates.js +19 -0
- package/src/create-quiver/lib/cli/command-registry.js +71 -0
- package/src/create-quiver/lib/cli/parser.js +14 -0
- package/src/create-quiver/lib/evidence.js +161 -6
- package/src/create-quiver/lib/git.js +99 -0
- package/src/create-quiver/lib/i18n/messages/en.js +52 -7
- package/src/create-quiver/lib/i18n/messages/es.js +54 -9
- package/src/create-quiver/lib/init-docs.js +1 -1
- package/src/create-quiver/lib/init-layout.js +9 -8
- package/src/create-quiver/lib/lifecycle.js +24 -26
- package/src/create-quiver/lib/readiness.js +67 -56
- package/src/create-quiver/lib/spec-worktrees.js +16 -34
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# 07-slice - Docs, tests y evidencia
|
|
2
|
+
|
|
3
|
+
## 1. Nombre del slice
|
|
4
|
+
|
|
5
|
+
Docs, tests y evidencia.
|
|
6
|
+
|
|
7
|
+
## 2. Objetivo del slice
|
|
8
|
+
|
|
9
|
+
Planificar como validar y documentar cambios futuros para que CLI, docs y tests no diverjan.
|
|
10
|
+
|
|
11
|
+
## 3. Problema puntual que resuelve
|
|
12
|
+
|
|
13
|
+
Evita que tests nuevos den falsa seguridad o que docs generadas no coincidan con la CLI real.
|
|
14
|
+
|
|
15
|
+
## 4. Valor observable que entrega
|
|
16
|
+
|
|
17
|
+
Contrato de evidencia para futuras implementaciones: pruebas minimas, docs afectadas y criterios de cierre.
|
|
18
|
+
|
|
19
|
+
## 5. Alcance especifico
|
|
20
|
+
|
|
21
|
+
Plan documental de validacion, no ejecucion de tests ni cambios de docs.
|
|
22
|
+
|
|
23
|
+
## 6. Que incluye
|
|
24
|
+
|
|
25
|
+
- Mapa de cobertura existente.
|
|
26
|
+
- Reglas para no reemplazar cobertura sin equivalencia.
|
|
27
|
+
- Gate CLI/docs.
|
|
28
|
+
- Evidencia minima por tipo de cambio.
|
|
29
|
+
- Registro de validaciones pendientes.
|
|
30
|
+
|
|
31
|
+
## 7. Que no incluye
|
|
32
|
+
|
|
33
|
+
- Ejecutar tests.
|
|
34
|
+
- Modificar tests.
|
|
35
|
+
- Regenerar docs.
|
|
36
|
+
- Cambiar codigo.
|
|
37
|
+
|
|
38
|
+
## 8. Actores involucrados
|
|
39
|
+
|
|
40
|
+
Reviewer, implementador futuro, maintainer y usuarios CLI.
|
|
41
|
+
|
|
42
|
+
## 9. Precondiciones
|
|
43
|
+
|
|
44
|
+
Contrato de no regresion aprobado y planes de extraccion definidos.
|
|
45
|
+
|
|
46
|
+
## 10. Entradas necesarias
|
|
47
|
+
|
|
48
|
+
Baseline, matriz de comandos, tests existentes y docs actuales.
|
|
49
|
+
|
|
50
|
+
## 11. Flujo operativo paso a paso
|
|
51
|
+
|
|
52
|
+
1. Mapear tests actuales por comportamiento.
|
|
53
|
+
2. Identificar docs que describen comandos.
|
|
54
|
+
3. Definir evidencia minima por cambio.
|
|
55
|
+
4. Definir gate CLI/docs.
|
|
56
|
+
5. Definir criterios para cobertura reemplazada.
|
|
57
|
+
6. Definir reporte de cierre.
|
|
58
|
+
|
|
59
|
+
## 12. Salidas esperadas
|
|
60
|
+
|
|
61
|
+
Checklist de validacion y evidencia para implementaciones futuras.
|
|
62
|
+
|
|
63
|
+
## 13. Reglas de negocio aplicables
|
|
64
|
+
|
|
65
|
+
- No se elimina cobertura sin reemplazo equivalente.
|
|
66
|
+
- Docs deben reflejar CLI real.
|
|
67
|
+
- Evidencia no ejecutada se marca pendiente, no aprobada.
|
|
68
|
+
- Cambios de JSON/exit code requieren pruebas especificas.
|
|
69
|
+
|
|
70
|
+
## 14. Validaciones
|
|
71
|
+
|
|
72
|
+
- Cada tipo de cambio tiene evidencia minima.
|
|
73
|
+
- Hay criterio para docs generadas.
|
|
74
|
+
- Hay criterio para tests reemplazados.
|
|
75
|
+
- Hay formato de riesgos residuales.
|
|
76
|
+
|
|
77
|
+
## 15. Manejo de errores o edge cases
|
|
78
|
+
|
|
79
|
+
- Si una validacion no puede ejecutarse, registrar motivo y riesgo.
|
|
80
|
+
- Si docs se generan automaticamente, validar fuente y output.
|
|
81
|
+
- Si test viejo se borra, exigir mapeo de cobertura.
|
|
82
|
+
|
|
83
|
+
## 16. Criterios de aceptacion
|
|
84
|
+
|
|
85
|
+
- Existe checklist de evidencia por tipo de cambio.
|
|
86
|
+
- Existe gate CLI/docs.
|
|
87
|
+
- Existe regla de cobertura equivalente.
|
|
88
|
+
- Validaciones pendientes no se confunden con exitos.
|
|
89
|
+
- Cierre requiere riesgos residuales explicitos.
|
|
90
|
+
|
|
91
|
+
## 17. Dependencias tecnicas, funcionales o externas
|
|
92
|
+
|
|
93
|
+
Baseline, contrato y planes de extraccion.
|
|
94
|
+
|
|
95
|
+
## 18. Depende de slices
|
|
96
|
+
|
|
97
|
+
`03-slice`, `05-slice` y `06-slice` como insumos para tipos de cambio.
|
|
98
|
+
|
|
99
|
+
## 19. Riesgos / decisiones abiertas
|
|
100
|
+
|
|
101
|
+
Puede haber docs generadas cuyo proceso no este documentado.
|
|
102
|
+
|
|
103
|
+
## 20. Pendientes / preguntas abiertas
|
|
104
|
+
|
|
105
|
+
Definir si evidencia minima sera manual, automatizada o ambas.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# CLOSURE_BRIEF - 07-slice
|
|
2
|
+
|
|
3
|
+
## Resultado
|
|
4
|
+
|
|
5
|
+
Completado como contrato de docs, tests y evidencia, consolidado con el gate real usado durante `06-slice`.
|
|
6
|
+
|
|
7
|
+
## Evidencia
|
|
8
|
+
|
|
9
|
+
Checklist de evidencia por tipo de cambio futuro:
|
|
10
|
+
|
|
11
|
+
| Tipo de cambio | Evidencia minima |
|
|
12
|
+
|---|---|
|
|
13
|
+
| Parser/dispatch | `node --check` de entrypoints afectados; help global; comando desconocido; version human/json; matriz de comandos afectados |
|
|
14
|
+
| Comando existente | Antes/despues; flags; aliases; stdout/stderr; JSON si aplica; exit codes; side effects; rollback |
|
|
15
|
+
| Comando nuevo | No colisiona con namespace existente; registry actualizado; help actualizado; tests o evidencia manual; rollback |
|
|
16
|
+
| Docs de comandos | `npm run docs:commands:write` cuando cambie help o registry; `npm run docs:commands:check` como gate obligatorio |
|
|
17
|
+
| Tests reemplazados | Mapeo explicito de cobertura anterior -> nueva cobertura equivalente antes de borrar o debilitar tests |
|
|
18
|
+
| JSON contract | Ejemplo JSON parseable; campos estables; `schema_version` cuando exista contrato de versionado |
|
|
19
|
+
| Write-capable command | `--dry-run` o sandbox; rutas generadas; side effects esperados; rollback; evidencia de no tocar rutas fuera de alcance |
|
|
20
|
+
|
|
21
|
+
Gate CLI/docs:
|
|
22
|
+
|
|
23
|
+
- Docs de comandos no pueden cerrarse si contradicen `--help`.
|
|
24
|
+
- Docs generadas deben indicar fuente y comando/generador usado.
|
|
25
|
+
- Validaciones pendientes se registran como pendientes, no como exitos.
|
|
26
|
+
- Todo cambio que altere el command surface debe actualizar `docs/reference/commands.md` con `npm run docs:commands:write`.
|
|
27
|
+
- Todo PR que altere comandos debe pasar `npm run docs:commands:check`.
|
|
28
|
+
- Todo PR que altere `CHANGELOG.md` o comandos relacionados con changelog debe pasar `npm run changelog:check`.
|
|
29
|
+
|
|
30
|
+
Gate minimo por PR de CLI:
|
|
31
|
+
|
|
32
|
+
| Gate | Cuando aplica | Evidencia esperada |
|
|
33
|
+
|---|---|---|
|
|
34
|
+
| Sintaxis | Siempre que cambie JS ejecutable o tests JS | `node --check <archivos afectados>` |
|
|
35
|
+
| Contrato CLI | Parser, registry, dispatch, help, comandos publicos | `node --test tests/commands/parser-contract.test.js tests/commands/cli-contract.test.js` o suite equivalente justificada |
|
|
36
|
+
| Docs generadas | Cambios en help, registry o comandos documentados | `npm run docs:commands:check` |
|
|
37
|
+
| Changelog | Cambios en changelog o wrapper de changelog | `npm run changelog:check` |
|
|
38
|
+
| Comando manual | Comando nuevo o comportamiento modificado | Ejecucion humana y `--json` si aplica, con exit code esperado |
|
|
39
|
+
|
|
40
|
+
Regla de cobertura equivalente:
|
|
41
|
+
|
|
42
|
+
- No borrar tests existentes sin listar que comportamiento cubrian.
|
|
43
|
+
- No reemplazar tests por snapshots mas amplios si se pierde verificacion de campos, exit codes o stderr.
|
|
44
|
+
- Si una cobertura vieja no puede mantenerse, registrar riesgo residual y aprobacion requerida.
|
|
45
|
+
- Tests nuevos no sustituyen evidencia manual cuando el cambio afecta UX humana, help o side effects.
|
|
46
|
+
|
|
47
|
+
Formato obligatorio de cierre:
|
|
48
|
+
|
|
49
|
+
- Cambios de comportamiento: que hacia antes, que hace ahora, por que mejora.
|
|
50
|
+
- Evidencia ejecutada: comando exacto y resultado.
|
|
51
|
+
- Evidencia pendiente: comando no ejecutado, motivo y riesgo.
|
|
52
|
+
- Riesgos residuales: impacto posible y rollback.
|
|
53
|
+
- Decision sobre ramas: conservar, cerrar o revisar, sin ejecutar limpieza automatica.
|
|
54
|
+
|
|
55
|
+
## Cambios de comportamiento
|
|
56
|
+
|
|
57
|
+
Ninguno. Solo contrato de evidencia.
|
|
58
|
+
|
|
59
|
+
## Regresiones detectadas
|
|
60
|
+
|
|
61
|
+
Ninguna.
|
|
62
|
+
|
|
63
|
+
## Riesgos residuales
|
|
64
|
+
|
|
65
|
+
- No se ejecutaron tests en este slice porque no hubo implementacion runtime.
|
|
66
|
+
- El contrato depende de que cada slice tecnico declare sus archivos afectados y no oculte cambios de comportamiento.
|
|
67
|
+
- Si aparece una suite nueva de comandos, debe mapearse contra esta matriz antes de reemplazar la existente.
|
|
68
|
+
|
|
69
|
+
## Decision sobre ramas
|
|
70
|
+
|
|
71
|
+
No cerrar ramas fuente hasta completar evidencia de extraccion o decision de descarte.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# EXECUTION_BRIEF - 07-slice
|
|
2
|
+
|
|
3
|
+
## Objetivo
|
|
4
|
+
|
|
5
|
+
Definir evidencia minima para que docs, tests y CLI no diverjan.
|
|
6
|
+
|
|
7
|
+
## Base segura
|
|
8
|
+
|
|
9
|
+
Usar baseline y contrato aprobados.
|
|
10
|
+
|
|
11
|
+
## Archivos candidatos
|
|
12
|
+
|
|
13
|
+
Documentos de checklist/evidencia dentro del spec.
|
|
14
|
+
|
|
15
|
+
## Archivos excluidos
|
|
16
|
+
|
|
17
|
+
Tests reales, docs reales generadas y codigo fuente.
|
|
18
|
+
|
|
19
|
+
## Funcionalidad existente afectada
|
|
20
|
+
|
|
21
|
+
Ninguna durante este slice.
|
|
22
|
+
|
|
23
|
+
## Matriz antes/despues
|
|
24
|
+
|
|
25
|
+
Debe requerirse en implementaciones futuras que cambien comandos o docs.
|
|
26
|
+
|
|
27
|
+
## Validaciones
|
|
28
|
+
|
|
29
|
+
- Evidencia minima por tipo de cambio.
|
|
30
|
+
- Cobertura equivalente si se reemplazan tests.
|
|
31
|
+
- Gate CLI/docs.
|
|
32
|
+
|
|
33
|
+
## Riesgos
|
|
34
|
+
|
|
35
|
+
Falsa seguridad si se registran validaciones pendientes como exitos.
|
|
36
|
+
|
|
37
|
+
## Rollback
|
|
38
|
+
|
|
39
|
+
Corregir el contrato de evidencia antes de autorizar implementacion.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slice_id": "08-slice",
|
|
3
|
+
"slice_number": "08",
|
|
4
|
+
"title": "Limpieza controlada de ramas",
|
|
5
|
+
"objective": "Proponer cierre o eliminacion de ramas solo cuando exista evidencia y aprobacion explicita.",
|
|
6
|
+
"problem": "Evita borrar ramas utiles, protegidas, historicas o con PRs abiertos por una clasificacion incompleta.",
|
|
7
|
+
"value_outcome": "Lista final de acciones sugeridas por rama, con aprobacion requerida y sin ejecutar ninguna accion.",
|
|
8
|
+
"scope": {
|
|
9
|
+
"includes": ["Clasificacion final", "Local/remota/protegida/historica", "Dependencias", "Recomendaciones", "Comandos seguros sugeridos"],
|
|
10
|
+
"excludes": ["Delete local/remoto", "Cerrar PRs", "Push", "Cambiar protecciones"]
|
|
11
|
+
},
|
|
12
|
+
"actors": ["Maintainer", "Tech Lead", "Usuario aprobador"],
|
|
13
|
+
"preconditions": ["Extracciones completadas o decision de no extraer mas valor"],
|
|
14
|
+
"inputs": ["Inventario de ramas", "Matriz de extraccion", "Decisiones de cierre", "Aprobaciones"],
|
|
15
|
+
"outputs": ["Plan de limpieza pendiente de aprobacion"],
|
|
16
|
+
"workflow": [
|
|
17
|
+
{"step": 1, "name": "Revisar ramas", "description": "Revisar ramas sin delta y fuentes de extraccion."},
|
|
18
|
+
{"step": 2, "name": "Marcar protecciones", "description": "Distinguir historicas, protegidas y no tocar."},
|
|
19
|
+
{"step": 3, "name": "Verificar frescura", "description": "Verificar estado remoto antes de accion final."},
|
|
20
|
+
{"step": 4, "name": "Pedir aprobacion", "description": "Solicitar aprobacion explicita antes de eliminar."}
|
|
21
|
+
],
|
|
22
|
+
"business_rules": ["No eliminar sin aprobacion", "Cerrar y eliminar son distintos", "Historicas/protegidas se conservan", "Fuentes se conservan hasta cerrar extracciones"],
|
|
23
|
+
"validations": ["Accion y motivo por rama", "Eliminacion requiere aprobacion", "Estados diferenciados", "Sin extracciones pendientes"],
|
|
24
|
+
"error_cases": ["PR abierto", "Ref remota stale", "Backup historico"],
|
|
25
|
+
"acceptance_criteria": ["No se ejecuta eliminacion", "Destructivo pendiente de aprobacion", "Fuentes no eliminadas prematuramente", "Estados no mezclados", "Comandos seguros sugeridos"],
|
|
26
|
+
"dependencies": {
|
|
27
|
+
"functional": ["Inventario", "Decisiones de extraccion"],
|
|
28
|
+
"technical": ["Git"],
|
|
29
|
+
"external": ["Politica de proteccion de ramas si existe"],
|
|
30
|
+
"depends_on_slices": ["01-slice", "04-slice"]
|
|
31
|
+
},
|
|
32
|
+
"implementation_order": 8,
|
|
33
|
+
"slicing_rationale": "La limpieza se deja al final para no perder fuentes antes de extraer valor.",
|
|
34
|
+
"risks": ["Requiere verificacion remota o politica externa"],
|
|
35
|
+
"open_questions": ["Aprobacion por rama o por grupo claramente listado?"]
|
|
36
|
+
}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# 08-slice - Limpieza controlada de ramas
|
|
2
|
+
|
|
3
|
+
## 1. Nombre del slice
|
|
4
|
+
|
|
5
|
+
Limpieza controlada de ramas.
|
|
6
|
+
|
|
7
|
+
## 2. Objetivo del slice
|
|
8
|
+
|
|
9
|
+
Proponer cierre o eliminacion de ramas solo cuando exista evidencia y aprobacion explicita.
|
|
10
|
+
|
|
11
|
+
## 3. Problema puntual que resuelve
|
|
12
|
+
|
|
13
|
+
Evita borrar ramas utiles, protegidas, historicas o con PRs abiertos por una clasificacion incompleta.
|
|
14
|
+
|
|
15
|
+
## 4. Valor observable que entrega
|
|
16
|
+
|
|
17
|
+
Lista final de acciones sugeridas por rama, con aprobacion requerida y sin ejecutar ninguna accion.
|
|
18
|
+
|
|
19
|
+
## 5. Alcance especifico
|
|
20
|
+
|
|
21
|
+
Plan documental de limpieza. No elimina ramas.
|
|
22
|
+
|
|
23
|
+
## 6. Que incluye
|
|
24
|
+
|
|
25
|
+
- Clasificacion final de ramas.
|
|
26
|
+
- Distincion local/remota/protegida/historica.
|
|
27
|
+
- Dependencias con extracciones pendientes.
|
|
28
|
+
- Recomendacion: mantener, cerrar, eliminar con aprobacion, revisar.
|
|
29
|
+
- Comandos seguros sugeridos.
|
|
30
|
+
|
|
31
|
+
## 7. Que no incluye
|
|
32
|
+
|
|
33
|
+
- Ejecutar delete local/remoto.
|
|
34
|
+
- Cerrar PRs.
|
|
35
|
+
- Push.
|
|
36
|
+
- Cambiar protecciones.
|
|
37
|
+
|
|
38
|
+
## 8. Actores involucrados
|
|
39
|
+
|
|
40
|
+
Maintainer, Tech Lead y usuario aprobador.
|
|
41
|
+
|
|
42
|
+
## 9. Precondiciones
|
|
43
|
+
|
|
44
|
+
Slices de extraccion completados o decision explicita de no extraer mas valor.
|
|
45
|
+
|
|
46
|
+
## 10. Entradas necesarias
|
|
47
|
+
|
|
48
|
+
Inventario de ramas, matriz de extraccion, decisiones de cierre y aprobaciones.
|
|
49
|
+
|
|
50
|
+
## 11. Flujo operativo paso a paso
|
|
51
|
+
|
|
52
|
+
1. Revisar ramas sin delta.
|
|
53
|
+
2. Revisar ramas usadas como fuente de extraccion.
|
|
54
|
+
3. Marcar protegidas/historicas/no tocar.
|
|
55
|
+
4. Verificar freshness remota antes de accion final.
|
|
56
|
+
5. Agrupar recomendaciones.
|
|
57
|
+
6. Pedir aprobacion explicita antes de eliminar.
|
|
58
|
+
|
|
59
|
+
## 12. Salidas esperadas
|
|
60
|
+
|
|
61
|
+
Plan de limpieza con acciones pendientes de aprobacion.
|
|
62
|
+
|
|
63
|
+
## 13. Reglas de negocio aplicables
|
|
64
|
+
|
|
65
|
+
- No eliminar sin aprobacion explicita.
|
|
66
|
+
- `cerrar` y `eliminar` son acciones distintas.
|
|
67
|
+
- Ramas historicas/protegidas se conservan salvo decision explicita.
|
|
68
|
+
- Ramas fuente se conservan hasta cerrar extracciones.
|
|
69
|
+
|
|
70
|
+
## 14. Validaciones
|
|
71
|
+
|
|
72
|
+
- Cada rama tiene accion propuesta y motivo.
|
|
73
|
+
- Cada eliminacion requiere aprobacion.
|
|
74
|
+
- Local/remota/protegida/historica estan diferenciadas.
|
|
75
|
+
- No quedan extracciones pendientes antes de limpiar fuente.
|
|
76
|
+
|
|
77
|
+
## 15. Manejo de errores o edge cases
|
|
78
|
+
|
|
79
|
+
- Si hay PR abierto, marcar revision manual.
|
|
80
|
+
- Si rama remota no existe, registrar stale ref.
|
|
81
|
+
- Si rama es backup, confirmar si se conserva como historica.
|
|
82
|
+
|
|
83
|
+
## 16. Criterios de aceptacion
|
|
84
|
+
|
|
85
|
+
- No se ejecuta ninguna eliminacion.
|
|
86
|
+
- Toda accion destructiva queda como pendiente de aprobacion.
|
|
87
|
+
- Ramas usadas como fuente no se eliminan prematuramente.
|
|
88
|
+
- Estados `sin delta`, `cerrable` y `eliminable` no se mezclan.
|
|
89
|
+
- El plan incluye comandos seguros sugeridos.
|
|
90
|
+
|
|
91
|
+
## 17. Dependencias tecnicas, funcionales o externas
|
|
92
|
+
|
|
93
|
+
Inventario actualizado y decisiones de extraccion.
|
|
94
|
+
|
|
95
|
+
## 18. Depende de slices
|
|
96
|
+
|
|
97
|
+
`01-slice` y `04-slice`; idealmente despues de `05-slice` y `06-slice`.
|
|
98
|
+
|
|
99
|
+
## 19. Riesgos / decisiones abiertas
|
|
100
|
+
|
|
101
|
+
Puede requerir verificacion remota o politica externa de proteccion de ramas.
|
|
102
|
+
|
|
103
|
+
## 20. Pendientes / preguntas abiertas
|
|
104
|
+
|
|
105
|
+
Definir si la aprobacion sera por rama o por grupo de ramas claramente listado.
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
# CLOSURE_BRIEF - 08-slice
|
|
2
|
+
|
|
3
|
+
## Resultado
|
|
4
|
+
|
|
5
|
+
Completado como plan de limpieza controlada con snapshot remoto fresco del 2026-06-09; no se ejecuto limpieza.
|
|
6
|
+
|
|
7
|
+
## Evidencia
|
|
8
|
+
|
|
9
|
+
Politica de acciones:
|
|
10
|
+
|
|
11
|
+
| Estado | Accion permitida ahora | Requiere aprobacion |
|
|
12
|
+
|---|---|---|
|
|
13
|
+
| `sin delta` (`ahead=0`) | Marcar como sin merge pendiente | Cierre/eliminacion posterior |
|
|
14
|
+
| `historical/no-delta` | Conservar salvo decision explicita | Cualquier eliminacion |
|
|
15
|
+
| `review-for-extraction` | Mantener hasta decidir extraccion | Cierre/eliminacion |
|
|
16
|
+
| `extract-or-conflict-review` | Mantener hasta resolver matriz/riesgo | Cierre/eliminacion |
|
|
17
|
+
| remoto stale/no verificado | No tocar | Verificacion remota + aprobacion |
|
|
18
|
+
|
|
19
|
+
Snapshot usado:
|
|
20
|
+
|
|
21
|
+
| Dato | Valor |
|
|
22
|
+
|---|---|
|
|
23
|
+
| Fecha | 2026-06-09 |
|
|
24
|
+
| Base | `origin/main` |
|
|
25
|
+
| SHA base | `7c22ce1` |
|
|
26
|
+
| Rama activa | `feature/QUIVER-08-controlled-branch-cleanup` |
|
|
27
|
+
| Metodo remoto | `git fetch origin` + `git ls-remote --heads origin` |
|
|
28
|
+
| PRs abiertos detectados | `#94 feature/QUIVER-46-49-cli-modernization -> main` |
|
|
29
|
+
|
|
30
|
+
Ramas remotas reales en GitHub:
|
|
31
|
+
|
|
32
|
+
| Grupo | Ramas | Estado contra `origin/main` | Accion recomendada |
|
|
33
|
+
|---|---|---|---|
|
|
34
|
+
| Remotas sin delta pendiente | `docs/QUIVER-11-existing-project-migration`, `docs/QUIVER-21-ai-first-layout`, `docs/npx-node-modules-guidance`, `feature/QUIVER-04-next-command`, `feature/QUIVER-04-workflow-guardrails-alignment` | `ahead=0`; ya estan contenidas en `origin/main` | Candidatas a cierre/eliminacion remota con aprobacion explicita por grupo |
|
|
35
|
+
| Remotas con delta pendiente | `drafts/v19-v22-orchestration-followups`, `feature/QUIVER-01-ci-matrix-verified`, `feature/QUIVER-20-ai-cli-orchestration` | `ahead>0`; tienen commits no incluidos en `origin/main` | Revisar manualmente antes de cerrar o eliminar |
|
|
36
|
+
| Remota fuente con PR abierto | `feature/QUIVER-46-49-cli-modernization` | `ahead=3`; PR abierto `#94` | Mantener; no cerrar ni eliminar hasta resolver PR/extracciones |
|
|
37
|
+
| Protegida/base | `main` | Base actual | No tocar |
|
|
38
|
+
|
|
39
|
+
Refs `origin/*` locales stale detectadas:
|
|
40
|
+
|
|
41
|
+
| Ref local stale | Estado | Accion recomendada |
|
|
42
|
+
|---|---|---|
|
|
43
|
+
| `origin/feature/QUIVER-05-parser-command-registry` | No existe en `ls-remote`; `ahead=0` | Prune local de remote-tracking solo con aprobacion; no hay rama remota que eliminar |
|
|
44
|
+
| `origin/feature/QUIVER-06-command-wrappers` | No existe en `ls-remote`; `ahead=0` | Prune local de remote-tracking solo con aprobacion; no hay rama remota que eliminar |
|
|
45
|
+
| `origin/feature/QUIVER-07-docs-tests-evidence` | No existe en `ls-remote`; `ahead=0` | Prune local de remote-tracking solo con aprobacion; no hay rama remota que eliminar |
|
|
46
|
+
| `origin/feature/QUIVER-52-02-v52-generated-cli-reference` | No existe en `ls-remote`; `ahead=0` | Prune local de remote-tracking solo con aprobacion; no hay rama remota que eliminar |
|
|
47
|
+
| `origin/feature/QUIVER-52-03-v52-release-package-hygiene` | No existe en `ls-remote`; `ahead=0` | Prune local de remote-tracking solo con aprobacion; no hay rama remota que eliminar |
|
|
48
|
+
|
|
49
|
+
Ramas locales con delta pendiente o decision manual:
|
|
50
|
+
|
|
51
|
+
| Rama local | Estado | Accion recomendada |
|
|
52
|
+
|---|---|---|
|
|
53
|
+
| `main` | Divergida: `ahead=1`, `behind=50` contra `origin/main` | No usar como base; revisar y decidir sincronizacion por separado |
|
|
54
|
+
| `backup/QUIVER-52-03-before-squash` | Local-only backup; `ahead=3` | Mantener como historica hasta aprobacion explicita |
|
|
55
|
+
| `backup/main-before-pull-v31` | Local-only backup; `ahead=9` | Mantener como historica hasta aprobacion explicita |
|
|
56
|
+
| `docs/QUIVER-02-decision-log-context-checkpoint` | Local-only; `ahead=1` | Revisar manualmente antes de limpiar |
|
|
57
|
+
| `drafts/v19-v22-orchestration-followups` | Remota real; `ahead=1` | Revisar manualmente antes de limpiar |
|
|
58
|
+
| `feature/QUIVER-01-ci-matrix-verified` | Remota real; `ahead=2` | Revisar manualmente antes de limpiar |
|
|
59
|
+
| `feature/QUIVER-03-project-map-reading-order` | Local-only; `ahead=1` | Revisar manualmente antes de limpiar |
|
|
60
|
+
| `feature/QUIVER-20-ai-cli-orchestration` | Remota real; `ahead=1` | Revisar manualmente antes de limpiar |
|
|
61
|
+
| `feature/QUIVER-46-49-cli-modernization` | Remota real; `ahead=3`; PR `#94` abierto | Mantener; fuente principal y PR abierto |
|
|
62
|
+
| `feature/QUIVER-50-01-runtime-minimum-and-package-metadata` | Local-only; `ahead=1` | Revisar manualmente antes de limpiar |
|
|
63
|
+
| `feature/QUIVER-50-03-v50-security-reporting` | Local-only; `ahead=1` | Revisar manualmente antes de limpiar |
|
|
64
|
+
| `feature/QUIVER-50-06-contributor-and-architecture-docs` | Local-only; `ahead=1` | Revisar manualmente antes de limpiar |
|
|
65
|
+
|
|
66
|
+
Ramas locales sin delta pendiente candidatas a limpieza local con aprobacion:
|
|
67
|
+
|
|
68
|
+
| Grupo | Ramas | Accion recomendada |
|
|
69
|
+
|---|---|---|
|
|
70
|
+
| Slices ya mergeados | `feature/QUIVER-05-parser-command-registry`, `feature/QUIVER-06-command-wrappers`, `feature/QUIVER-07-docs-tests-evidence` | Candidatas a eliminar localmente con aprobacion despues de confirmar que no se necesitan para rollback |
|
|
71
|
+
| Docs historicas sin delta | `codex/wdd-sdd-ai-readme`, `docs/QUIVER-02-close-v06-roadmap`, `docs/QUIVER-20-ai-first-readme`, `docs/QUIVER-21-ai-first-layout`, `docs/mark-v08-v12-slices-completed`, `docs/npx-node-modules-guidance`, `docs/onboarding-prompt-contract`, `docs/pr-policy-slice-default`, `docs/quiver-v18-stabilization-close`, `docs/quiver-v18-stabilization-spec`, `docs/readme-cross-platform-onboarding`, `docs/restore-documentation-index`, `docs/update-v09-release` | Candidatas a limpieza local con aprobacion; conservar si se quieren como historicas |
|
|
72
|
+
| Features sin delta | `feature/QUIVER-01-auto-install-dev-dep`, `feature/QUIVER-22-guided-ai-workflow`, `feature/QUIVER-24-dx-onboarding-hardening`, `feature/QUIVER-28-pixel-quiver-feedback-reconciliation`, `feature/QUIVER-29-planner-prepare-context-cli-ux`, `feature/QUIVER-30-interactive-cli-ux-agent-selection`, `feature/QUIVER-31-ai-model-catalog-agent-selection`, `feature/QUIVER-33-approval-ux-and-planner-progress`, `feature/QUIVER-35-compact-dashboard-version-ux`, `feature/QUIVER-36-ai-run-watch-portable-spec`, `feature/QUIVER-37-cli-i18n-foundation`, `feature/QUIVER-38-01-v38-version-dashboard-help`, `feature/QUIVER-38-02-v38-flow-doctor-next-graph`, `feature/QUIVER-39-01-v39-init-interactive-language`, `feature/QUIVER-40-01-v40-spec-create-start-status`, `feature/QUIVER-41-01-v41-ai-run-status-resume`, `feature/QUIVER-42-01-v42-template-language-routing`, `feature/QUIVER-43-01-v43-command-language-mode-matrix`, `feature/QUIVER-44-00-v44-tui-lite-contract-foundation`, `feature/QUIVER-50-audit-trust-foundation`, `feature/QUIVER-50-audit-trust-foundation-execution`, `feature/QUIVER-51-01-v51-flow-json-compatibility`, `feature/QUIVER-51-02-v51-dashboard-section-i18n`, `feature/QUIVER-51-03-v51-base-branch-policy`, `feature/QUIVER-51-04-v51-next-plan-graph-ux`, `feature/QUIVER-51-05-v51-evidence-robustness`, `feature/QUIVER-51-06-v51-namespace-windows-scripts`, `feature/QUIVER-51-cli-ergonomics-automation-contracts`, `feature/QUIVER-52-01-v52-slice-json-schema`, `feature/QUIVER-52-02-v52-generated-cli-reference`, `feature/QUIVER-52-03-v52-release-package-hygiene`, `feature/QUIVER-52-schema-docs-release-hygiene`, `feature/quiver-readme-onboarding-guides`, `feature/quiver-v25-ai-first-lifecycle-orchestrator`, `feature/quiver-v26-0121-smoke-hardening` | Candidatas a limpieza local con aprobacion |
|
|
73
|
+
| Fix/hotfix/release sin delta | `fix/QUIVER-45-01-ci-actions-node24-readiness`, `hotfix/QUIVER-24-ci-after-merge`, `hotfix/onboarding-docs-0.9.1`, `release/0.8.0` | Candidatas a limpieza local con aprobacion; confirmar politica historica antes |
|
|
74
|
+
| Protegida/historica especial | `develop` | Aunque `ahead=0`, conservar o revisar manualmente por posible politica historica |
|
|
75
|
+
| Rama activa | `feature/QUIVER-08-controlled-branch-cleanup` | Mantener hasta cerrar este slice/PR |
|
|
76
|
+
|
|
77
|
+
Comandos seguros sugeridos para revision manual futura:
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
git ls-remote --heads origin
|
|
81
|
+
gh pr list --state open --json number,headRefName,baseRefName,title,url --limit 100
|
|
82
|
+
git remote prune origin --dry-run
|
|
83
|
+
git branch --contains <branch>
|
|
84
|
+
git log --oneline origin/main..<branch>
|
|
85
|
+
git diff --stat origin/main...<branch>
|
|
86
|
+
git merge-tree "$(git merge-base origin/main <branch>)" origin/main <branch>
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Comandos destructivos que no se ejecutaron y requieren aprobacion explicita:
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
git branch -d <branch>
|
|
93
|
+
git push origin --delete <branch>
|
|
94
|
+
git remote prune origin
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Cambios de comportamiento
|
|
98
|
+
|
|
99
|
+
Ninguno.
|
|
100
|
+
|
|
101
|
+
## Regresiones detectadas
|
|
102
|
+
|
|
103
|
+
Ninguna.
|
|
104
|
+
|
|
105
|
+
## Riesgos residuales
|
|
106
|
+
|
|
107
|
+
- Hubo `fetch`, pero no hubo `prune`; las refs stale siguen locales a proposito.
|
|
108
|
+
- La verificacion de PRs abiertos detecto `#94`; cualquier cambio de estado posterior requiere nueva consulta.
|
|
109
|
+
- Politicas externas de ramas protegidas no son visibles solo con Git local.
|
|
110
|
+
- Ramas `backup/*`, `develop`, `release/*` y `hotfix/*` pueden tener valor historico aunque no tengan delta pendiente.
|
|
111
|
+
|
|
112
|
+
## Decision sobre ramas
|
|
113
|
+
|
|
114
|
+
Ninguna rama fue eliminada, cerrada, mergeada o modificada. Toda accion destructiva queda pendiente de aprobacion explicita posterior.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# EXECUTION_BRIEF - 08-slice
|
|
2
|
+
|
|
3
|
+
## Objetivo
|
|
4
|
+
|
|
5
|
+
Preparar recomendaciones de limpieza sin ejecutar ninguna accion destructiva.
|
|
6
|
+
|
|
7
|
+
## Base segura
|
|
8
|
+
|
|
9
|
+
Usar inventario actualizado y decisiones de extraccion cerradas.
|
|
10
|
+
|
|
11
|
+
## Archivos candidatos
|
|
12
|
+
|
|
13
|
+
Documentos de plan de limpieza.
|
|
14
|
+
|
|
15
|
+
## Archivos excluidos
|
|
16
|
+
|
|
17
|
+
Refs Git, ramas locales/remotas, PRs y configuracion remota.
|
|
18
|
+
|
|
19
|
+
## Funcionalidad existente afectada
|
|
20
|
+
|
|
21
|
+
Ninguna durante este slice.
|
|
22
|
+
|
|
23
|
+
## Matriz antes/despues
|
|
24
|
+
|
|
25
|
+
No aplica a comportamiento de CLI. Debe existir matriz de estado por rama.
|
|
26
|
+
|
|
27
|
+
## Validaciones
|
|
28
|
+
|
|
29
|
+
- Cada rama tiene accion y motivo.
|
|
30
|
+
- Eliminaciones requieren aprobacion explicita.
|
|
31
|
+
- Fuentes de extraccion no se eliminan antes de cierre.
|
|
32
|
+
|
|
33
|
+
## Riesgos
|
|
34
|
+
|
|
35
|
+
Borrar una rama historica, protegida o con PR abierto si no se verifica correctamente.
|
|
36
|
+
|
|
37
|
+
## Rollback
|
|
38
|
+
|
|
39
|
+
No ejecutar delete. Si una recomendacion es incorrecta, corregir el plan antes de pedir aprobacion.
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# CLOSURE_BRIEF - Spec 01
|
|
2
|
+
|
|
3
|
+
## Resultado
|
|
4
|
+
|
|
5
|
+
Spec 01 cerrada como iniciativa de recuperacion segura de ramas y extraccion incremental sin regresiones.
|
|
6
|
+
|
|
7
|
+
El cierre es documental y operativo. No ejecuta limpieza de ramas, no elimina refs, no hace merge adicional, no hace rebase y no cambia comportamiento runtime.
|
|
8
|
+
|
|
9
|
+
## Base de cierre
|
|
10
|
+
|
|
11
|
+
| Dato | Valor |
|
|
12
|
+
|---|---|
|
|
13
|
+
| Fecha de cierre | 2026-06-09 |
|
|
14
|
+
| Base usada | `origin/main` |
|
|
15
|
+
| SHA base al crear rama de cierre | `fd62e8b` |
|
|
16
|
+
| Rama de cierre | `chore/QUIVER-01-final-closure` |
|
|
17
|
+
| Estado local relevante | `pr.md` sigue untracked y queda fuera del cierre |
|
|
18
|
+
|
|
19
|
+
## Estado por slice
|
|
20
|
+
|
|
21
|
+
| Slice | Estado | Evidencia |
|
|
22
|
+
|---|---|---|
|
|
23
|
+
| `01-slice` | Cerrado | Snapshot inicial de ramas documentado |
|
|
24
|
+
| `02-slice` | Cerrado | Baseline de comportamiento documentado |
|
|
25
|
+
| `03-slice` | Cerrado | Contrato de no regresion documentado |
|
|
26
|
+
| `04-slice` | Cerrado | Matriz de extraccion documentada |
|
|
27
|
+
| `05-slice` | Mergeado | Commit `96b9fad` contenido en `origin/main` |
|
|
28
|
+
| `06-slice` | Mergeado | PR `#110`; commit `28e6e8b` contenido en `origin/main` |
|
|
29
|
+
| `07-slice` | Mergeado | PR `#111`; commit `564b37d` contenido en `origin/main` |
|
|
30
|
+
| `08-slice` | Mergeado | PR `#112`; commit `dde1347` contenido en `origin/main` |
|
|
31
|
+
|
|
32
|
+
## Cambios integrados
|
|
33
|
+
|
|
34
|
+
- Parser y command registry extraidos de forma incremental.
|
|
35
|
+
- Wrapper read-only `changelog` integrado con help, docs generadas y tests contractuales.
|
|
36
|
+
- Gate de docs/tests/evidencia formalizado para futuros cambios de CLI.
|
|
37
|
+
- Plan de limpieza controlada de ramas documentado con snapshot remoto fresco.
|
|
38
|
+
|
|
39
|
+
## Funcionalidad existente
|
|
40
|
+
|
|
41
|
+
- No se quito funcionalidad existente.
|
|
42
|
+
- No se eliminaron aliases.
|
|
43
|
+
- No se modifico `package.json` ni versionado dentro del cierre.
|
|
44
|
+
- `status` top-level sigue sin habilitarse para evitar colision con `ai status` y `spec status`.
|
|
45
|
+
- Las acciones destructivas sobre ramas siguen bloqueadas hasta aprobacion explicita.
|
|
46
|
+
|
|
47
|
+
## Validaciones y evidencia consolidada
|
|
48
|
+
|
|
49
|
+
| Area | Evidencia |
|
|
50
|
+
|---|---|
|
|
51
|
+
| Parser/registry | Tests contractuales del `05-slice` ejecutados antes de merge |
|
|
52
|
+
| `changelog` | `node --test tests/commands/parser-contract.test.js tests/commands/cli-contract.test.js` paso con `17/17` |
|
|
53
|
+
| Docs generadas | `npm run docs:commands:check` paso antes del PR `#110` |
|
|
54
|
+
| Changelog | `npm run changelog:check` paso antes del PR `#110` |
|
|
55
|
+
| Limpieza de ramas | Solo snapshot y propuesta; no se ejecuto delete/prune |
|
|
56
|
+
|
|
57
|
+
## Decisiones finales
|
|
58
|
+
|
|
59
|
+
- `origin/main` queda como base segura para ramas nuevas.
|
|
60
|
+
- `main` local no debe usarse como base mientras siga divergida.
|
|
61
|
+
- `feature/QUIVER-46-49-cli-modernization` sigue siendo fuente historica y tiene manejo separado por PR abierto detectado en el `08-slice`.
|
|
62
|
+
- Ramas con `ahead=0` no quedan automaticamente autorizadas para eliminar.
|
|
63
|
+
- Cualquier limpieza local/remota requiere aprobacion posterior por rama o grupo claramente listado.
|
|
64
|
+
|
|
65
|
+
## Acciones no ejecutadas
|
|
66
|
+
|
|
67
|
+
No se ejecuto ninguno de estos comandos:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
git branch -d <branch>
|
|
71
|
+
git branch -D <branch>
|
|
72
|
+
git push origin --delete <branch>
|
|
73
|
+
git remote prune origin
|
|
74
|
+
git merge
|
|
75
|
+
git rebase
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Pendientes o riesgos residuales
|
|
79
|
+
|
|
80
|
+
- `pr.md` queda local sin trackear como archivo auxiliar de PR; no fue eliminado.
|
|
81
|
+
- La limpieza de ramas sigue pendiente de aprobacion explicita.
|
|
82
|
+
- El estado de PRs abiertos y ramas remotas puede cambiar; antes de limpiar, repetir `git fetch origin`, `git ls-remote --heads origin` y `gh pr list`.
|
|
83
|
+
- Politicas externas de proteccion de ramas no son completamente visibles desde Git local.
|
|
84
|
+
|
|
85
|
+
## Recomendacion
|
|
86
|
+
|
|
87
|
+
Cerrar esta spec con un PR documental. Despues del merge, decidir por separado si se autoriza limpieza de ramas por grupo, empezando por `git remote prune origin --dry-run` y sin borrar nada hasta nueva aprobacion.
|