create-quiver 0.15.2 → 0.15.4
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/workflows/ci.yml +3 -0
- package/AGENTS.md.es.template +37 -0
- package/README.md +1 -0
- package/README_FOR_AI.md +6 -4
- package/docs/AI_CONTEXT.md.es.template +35 -0
- package/docs/AI_ONBOARDING_PROMPT.md.es.template +22 -0
- package/docs/CLI_UX_GUIDE.md +47 -1
- package/docs/COMMANDS.md.es.template +28 -0
- package/docs/COMMANDS.md.template +14 -3
- package/docs/CONTEXTO.md.es.template +33 -0
- package/docs/DECISIONS.md.es.template +17 -0
- package/docs/GITFLOW_PR_GUIDE.md.es.template +25 -0
- package/docs/INDEX.md +96 -0
- package/docs/INDEX.md.es.template +36 -0
- package/docs/STATUS.md.es.template +28 -0
- package/docs/SUPPORT_MATRIX.md.es.template +22 -0
- package/docs/TESTING_GUIDE_FOR_AI.md.es.template +19 -0
- package/docs/TROUBLESHOOTING.md.es.template +35 -0
- package/docs/WORKFLOW.md.es.template +29 -0
- package/docs/WORKFLOW.md.template +2 -2
- package/docs/ai/LESSONS.md.es.template +24 -0
- package/docs/getting-started/installation.md +19 -0
- package/docs/reference/commands.md +68 -2
- package/package.json +3 -1
- package/specs/quiver-v34-cli-dashboard-status/EVIDENCE_REPORT.md +119 -0
- package/specs/quiver-v34-cli-dashboard-status/EXECUTION_PLAN.md +77 -0
- package/specs/quiver-v34-cli-dashboard-status/SPEC.md +152 -0
- package/specs/quiver-v34-cli-dashboard-status/STATUS.md +29 -0
- package/specs/quiver-v34-cli-dashboard-status/pr.md +99 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-00-dashboard-foundation/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-00-dashboard-foundation/EXECUTION_BRIEF.md +49 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-00-dashboard-foundation/slice.json +68 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-01-dashboard-report-contract/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-01-dashboard-report-contract/EXECUTION_BRIEF.md +53 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-01-dashboard-report-contract/slice.json +78 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-02-dashboard-command-rendering/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-02-dashboard-command-rendering/EXECUTION_BRIEF.md +53 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-02-dashboard-command-rendering/slice.json +82 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-03-dashboard-edge-cases-and-guardrails/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-03-dashboard-edge-cases-and-guardrails/EXECUTION_BRIEF.md +54 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-03-dashboard-edge-cases-and-guardrails/slice.json +77 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-04-docs-templates-and-scripts/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-04-docs-templates-and-scripts/EXECUTION_BRIEF.md +54 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-04-docs-templates-and-scripts/slice.json +88 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-05-tests-smokes-release-readiness/CLOSURE_BRIEF.md +26 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-05-tests-smokes-release-readiness/EXECUTION_BRIEF.md +57 -0
- package/specs/quiver-v34-cli-dashboard-status/slices/slice-05-tests-smokes-release-readiness/slice.json +85 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/EVIDENCE_REPORT.md +43 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/EXECUTION_PLAN.md +85 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/SPEC.md +147 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/STATUS.md +33 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/pr.md +106 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-00-foundation-and-doc-router/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-00-foundation-and-doc-router/EXECUTION_BRIEF.md +38 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-00-foundation-and-doc-router/slice.json +64 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-01-dashboard-cli-contract/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-01-dashboard-cli-contract/EXECUTION_BRIEF.md +49 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-01-dashboard-cli-contract/slice.json +80 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-02-dashboard-compact-renderer/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-02-dashboard-compact-renderer/EXECUTION_BRIEF.md +48 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-02-dashboard-compact-renderer/slice.json +73 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-03-dashboard-details-sections/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-03-dashboard-details-sections/EXECUTION_BRIEF.md +48 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-03-dashboard-details-sections/slice.json +72 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-04-version-command/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-04-version-command/EXECUTION_BRIEF.md +49 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-04-version-command/slice.json +82 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-05-docs-help-generated-guidance/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-05-docs-help-generated-guidance/EXECUTION_BRIEF.md +50 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-05-docs-help-generated-guidance/slice.json +90 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-06-tests-smokes-release-readiness/CLOSURE_BRIEF.md +21 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-06-tests-smokes-release-readiness/EXECUTION_BRIEF.md +51 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-06-tests-smokes-release-readiness/slice.json +85 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-07-package-and-cross-platform-smoke/CLOSURE_BRIEF.md +20 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-07-package-and-cross-platform-smoke/EXECUTION_BRIEF.md +49 -0
- package/specs/quiver-v35-compact-dashboard-version-ux/slices/slice-07-package-and-cross-platform-smoke/slice.json +79 -0
- package/specs/quiver-v36-ai-run-watch-portable/EVIDENCE_REPORT.md +33 -0
- package/specs/quiver-v36-ai-run-watch-portable/EXECUTION_PLAN.md +39 -0
- package/specs/quiver-v36-ai-run-watch-portable/SPEC.md +166 -0
- package/specs/quiver-v36-ai-run-watch-portable/STATUS.md +31 -0
- package/specs/quiver-v36-ai-run-watch-portable/pr.md +78 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-00-foundation-and-handoffs/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-00-foundation-and-handoffs/EXECUTION_BRIEF.md +43 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-00-foundation-and-handoffs/slice.json +61 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-01-run-schema-path-safety/CLOSURE_BRIEF.md +18 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-01-run-schema-path-safety/EXECUTION_BRIEF.md +43 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-01-run-schema-path-safety/slice.json +65 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-02-event-writer-redacted-logs/CLOSURE_BRIEF.md +18 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-02-event-writer-redacted-logs/EXECUTION_BRIEF.md +43 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-02-event-writer-redacted-logs/slice.json +66 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-03-provider-streaming-integration/CLOSURE_BRIEF.md +18 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-03-provider-streaming-integration/EXECUTION_BRIEF.md +41 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-03-provider-streaming-integration/slice.json +71 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-04-ai-run-watch-command/CLOSURE_BRIEF.md +18 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-04-ai-run-watch-command/EXECUTION_BRIEF.md +44 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-04-ai-run-watch-command/slice.json +73 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-05-main-progress-user-guidance/CLOSURE_BRIEF.md +18 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-05-main-progress-user-guidance/EXECUTION_BRIEF.md +44 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-05-main-progress-user-guidance/slice.json +71 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-06-docs-generated-guidance/CLOSURE_BRIEF.md +19 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-06-docs-generated-guidance/EXECUTION_BRIEF.md +45 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-06-docs-generated-guidance/slice.json +77 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-07-tests-cross-platform-readiness/CLOSURE_BRIEF.md +22 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-07-tests-cross-platform-readiness/EXECUTION_BRIEF.md +46 -0
- package/specs/quiver-v36-ai-run-watch-portable/slices/slice-07-tests-cross-platform-readiness/slice.json +87 -0
- package/specs/quiver-v37-cli-i18n-foundation/EVIDENCE_REPORT.md +73 -0
- package/specs/quiver-v37-cli-i18n-foundation/EXECUTION_PLAN.md +34 -0
- package/specs/quiver-v37-cli-i18n-foundation/SPEC.md +91 -0
- package/specs/quiver-v37-cli-i18n-foundation/STATUS.md +29 -0
- package/specs/quiver-v37-cli-i18n-foundation/pr.md +97 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-00-foundation-and-program-roadmap/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-00-foundation-and-program-roadmap/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-00-foundation-and-program-roadmap/slice.json +54 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-01-language-resolution-contract/CLOSURE_BRIEF.md +30 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-01-language-resolution-contract/EXECUTION_BRIEF.md +27 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-01-language-resolution-contract/slice.json +66 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-02-message-catalog-interpolation/CLOSURE_BRIEF.md +27 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-02-message-catalog-interpolation/EXECUTION_BRIEF.md +26 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-02-message-catalog-interpolation/slice.json +62 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-03-config-language-command/CLOSURE_BRIEF.md +32 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-03-config-language-command/EXECUTION_BRIEF.md +25 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-03-config-language-command/slice.json +66 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-04-parser-help-error-foundation/CLOSURE_BRIEF.md +30 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-04-parser-help-error-foundation/EXECUTION_BRIEF.md +24 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-04-parser-help-error-foundation/slice.json +65 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-05-foundation-docs-tests-package-readiness/CLOSURE_BRIEF.md +27 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-05-foundation-docs-tests-package-readiness/EXECUTION_BRIEF.md +23 -0
- package/specs/quiver-v37-cli-i18n-foundation/slices/slice-05-foundation-docs-tests-package-readiness/slice.json +67 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/EVIDENCE_REPORT.md +69 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/EXECUTION_PLAN.md +25 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/SPEC.md +52 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/STATUS.md +24 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/pr.md +119 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-00-read-only-foundation/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-00-read-only-foundation/EXECUTION_BRIEF.md +21 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-00-read-only-foundation/slice.json +53 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-01-version-dashboard-help/CLOSURE_BRIEF.md +17 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-01-version-dashboard-help/EXECUTION_BRIEF.md +23 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-01-version-dashboard-help/slice.json +69 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-02-flow-doctor-next-graph/CLOSURE_BRIEF.md +13 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-02-flow-doctor-next-graph/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-02-flow-doctor-next-graph/slice.json +77 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-03-ai-inspection-and-export/CLOSURE_BRIEF.md +12 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-03-ai-inspection-and-export/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-03-ai-inspection-and-export/slice.json +66 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-04-read-only-tests-smokes/CLOSURE_BRIEF.md +13 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-04-read-only-tests-smokes/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v38-cli-i18n-read-only-commands/slices/slice-04-read-only-tests-smokes/slice.json +61 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/EVIDENCE_REPORT.md +71 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/EXECUTION_PLAN.md +25 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/SPEC.md +53 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/STATUS.md +24 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/pr.md +104 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-00-setup-foundation/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-00-setup-foundation/EXECUTION_BRIEF.md +21 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-00-setup-foundation/slice.json +53 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-01-init-interactive-language/CLOSURE_BRIEF.md +12 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-01-init-interactive-language/EXECUTION_BRIEF.md +23 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-01-init-interactive-language/slice.json +68 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-02-analyze-migrate-prepare/CLOSURE_BRIEF.md +12 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-02-analyze-migrate-prepare/EXECUTION_BRIEF.md +23 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-02-analyze-migrate-prepare/slice.json +62 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-03-demo-evidence-onboarding/CLOSURE_BRIEF.md +12 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-03-demo-evidence-onboarding/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-03-demo-evidence-onboarding/slice.json +72 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-04-setup-tests-smokes/CLOSURE_BRIEF.md +15 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-04-setup-tests-smokes/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v39-cli-i18n-setup-onboarding/slices/slice-04-setup-tests-smokes/slice.json +61 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/EVIDENCE_REPORT.md +50 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/EXECUTION_PLAN.md +25 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/SPEC.md +52 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/STATUS.md +24 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/pr.md +94 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-00-spec-slice-foundation/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-00-spec-slice-foundation/EXECUTION_BRIEF.md +21 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-00-spec-slice-foundation/slice.json +53 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-01-spec-create-start-status/CLOSURE_BRIEF.md +12 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-01-spec-create-start-status/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-01-spec-create-start-status/slice.json +63 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-02-spec-validate-close/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-02-spec-validate-close/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-02-spec-validate-close/slice.json +63 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-03-slice-lifecycle-handoffs/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-03-slice-lifecycle-handoffs/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-03-slice-lifecycle-handoffs/slice.json +72 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-04-spec-slice-tests-smokes/CLOSURE_BRIEF.md +15 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-04-spec-slice-tests-smokes/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v40-cli-i18n-spec-slice-workflows/slices/slice-04-spec-slice-tests-smokes/slice.json +69 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/EVIDENCE_REPORT.md +90 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/EXECUTION_PLAN.md +33 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/SPEC.md +57 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/STATUS.md +26 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/pr.md +103 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-00-ai-i18n-foundation/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-00-ai-i18n-foundation/EXECUTION_BRIEF.md +21 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-00-ai-i18n-foundation/slice.json +53 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-01-ai-run-status-resume/CLOSURE_BRIEF.md +13 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-01-ai-run-status-resume/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-01-ai-run-status-resume/slice.json +68 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-02-ai-agent-models/CLOSURE_BRIEF.md +12 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-02-ai-agent-models/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-02-ai-agent-models/slice.json +66 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-03-ai-planner-approval-review/CLOSURE_BRIEF.md +12 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-03-ai-planner-approval-review/EXECUTION_BRIEF.md +23 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-03-ai-planner-approval-review/slice.json +68 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-04-ai-execution-pr/CLOSURE_BRIEF.md +13 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-04-ai-execution-pr/EXECUTION_BRIEF.md +23 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-04-ai-execution-pr/slice.json +72 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-05-ai-tests-smokes/CLOSURE_BRIEF.md +15 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-05-ai-tests-smokes/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-05-ai-tests-smokes/slice.json +66 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-06-ai-prepare-context-progress-i18n-fix/CLOSURE_BRIEF.md +11 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-06-ai-prepare-context-progress-i18n-fix/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v41-cli-i18n-ai-lifecycle/slices/slice-06-ai-prepare-context-progress-i18n-fix/slice.json +70 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/EVIDENCE_REPORT.md +64 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/EXECUTION_PLAN.md +26 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/SPEC.md +52 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/STATUS.md +24 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/pr.md +125 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-00-generated-docs-foundation/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-00-generated-docs-foundation/EXECUTION_BRIEF.md +21 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-00-generated-docs-foundation/slice.json +53 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-01-template-language-routing/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-01-template-language-routing/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-01-template-language-routing/slice.json +62 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-02-init-docs-and-i18n-assets/CLOSURE_BRIEF.md +11 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-02-init-docs-and-i18n-assets/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-02-init-docs-and-i18n-assets/slice.json +72 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-03-docs-reference-guides/CLOSURE_BRIEF.md +12 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-03-docs-reference-guides/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-03-docs-reference-guides/slice.json +60 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-04-generated-docs-tests-smokes/CLOSURE_BRIEF.md +16 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-04-generated-docs-tests-smokes/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v42-cli-i18n-generated-docs/slices/slice-04-generated-docs-tests-smokes/slice.json +62 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/EVIDENCE_REPORT.md +203 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/EXECUTION_PLAN.md +27 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/SPEC.md +54 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/STATUS.md +24 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/command-language-mode-matrix.json +545 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/cross-platform-smoke-matrix.md +35 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/pr.md +155 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-00-audit-foundation/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-00-audit-foundation/EXECUTION_BRIEF.md +21 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-00-audit-foundation/slice.json +53 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-01-command-language-mode-matrix/CLOSURE_BRIEF.md +13 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-01-command-language-mode-matrix/EXECUTION_BRIEF.md +23 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-01-command-language-mode-matrix/slice.json +62 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-02-public-string-audit/CLOSURE_BRIEF.md +18 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-02-public-string-audit/EXECUTION_BRIEF.md +22 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-02-public-string-audit/slice.json +59 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-03-cross-platform-smokes/CLOSURE_BRIEF.md +15 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-03-cross-platform-smokes/EXECUTION_BRIEF.md +23 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-03-cross-platform-smokes/slice.json +62 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-04-package-release-readiness/CLOSURE_BRIEF.md +17 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-04-package-release-readiness/EXECUTION_BRIEF.md +24 -0
- package/specs/quiver-v43-cli-i18n-audit-release-readiness/slices/slice-04-package-release-readiness/slice.json +66 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/EVIDENCE_REPORT.md +18 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/EXECUTION_PLAN.md +31 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/SPEC.md +118 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/STATUS.md +25 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/pr.md +92 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-00-tui-lite-contract-foundation/CLOSURE_BRIEF.md +11 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-00-tui-lite-contract-foundation/EXECUTION_BRIEF.md +23 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-00-tui-lite-contract-foundation/slice.json +64 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-01-provider-stream-hooks/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-01-provider-stream-hooks/EXECUTION_BRIEF.md +24 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-01-provider-stream-hooks/slice.json +65 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-02-live-output-renderer/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-02-live-output-renderer/EXECUTION_BRIEF.md +24 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-02-live-output-renderer/slice.json +70 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-03-prepare-context-integration/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-03-prepare-context-integration/EXECUTION_BRIEF.md +25 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-03-prepare-context-integration/slice.json +70 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-04-planner-command-audit-adoption/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-04-planner-command-audit-adoption/EXECUTION_BRIEF.md +26 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-04-planner-command-audit-adoption/slice.json +72 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-05-docs-tests-readiness/CLOSURE_BRIEF.md +15 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-05-docs-tests-readiness/EXECUTION_BRIEF.md +26 -0
- package/specs/quiver-v44-provider-live-output-tui-lite/slices/slice-05-docs-tests-readiness/slice.json +75 -0
- package/specs/quiver-v45-ci-actions-node24-readiness/EVIDENCE_REPORT.md +30 -0
- package/specs/quiver-v45-ci-actions-node24-readiness/EXECUTION_PLAN.md +22 -0
- package/specs/quiver-v45-ci-actions-node24-readiness/SPEC.md +49 -0
- package/specs/quiver-v45-ci-actions-node24-readiness/STATUS.md +21 -0
- package/specs/quiver-v45-ci-actions-node24-readiness/pr.md +67 -0
- package/specs/quiver-v45-ci-actions-node24-readiness/slices/slice-00-ci-actions-foundation/CLOSURE_BRIEF.md +10 -0
- package/specs/quiver-v45-ci-actions-node24-readiness/slices/slice-00-ci-actions-foundation/EXECUTION_BRIEF.md +21 -0
- package/specs/quiver-v45-ci-actions-node24-readiness/slices/slice-00-ci-actions-foundation/slice.json +48 -0
- package/specs/quiver-v45-ci-actions-node24-readiness/slices/slice-01-actions-node24-readiness/CLOSURE_BRIEF.md +14 -0
- package/specs/quiver-v45-ci-actions-node24-readiness/slices/slice-01-actions-node24-readiness/EXECUTION_BRIEF.md +23 -0
- package/specs/quiver-v45-ci-actions-node24-readiness/slices/slice-01-actions-node24-readiness/slice.json +65 -0
- package/src/create-quiver/commands/ai.js +485 -307
- package/src/create-quiver/commands/config.js +124 -0
- package/src/create-quiver/commands/dashboard.js +31 -0
- package/src/create-quiver/commands/demo.js +2 -2
- package/src/create-quiver/commands/evidence.js +6 -4
- package/src/create-quiver/commands/flow.js +108 -16
- package/src/create-quiver/commands/graph.js +1 -0
- package/src/create-quiver/commands/next.js +21 -18
- package/src/create-quiver/commands/plan.js +23 -6
- package/src/create-quiver/commands/spec.js +66 -57
- package/src/create-quiver/index.js +606 -136
- package/src/create-quiver/lib/ai/execution-plan.js +23 -20
- package/src/create-quiver/lib/ai/executor.js +60 -44
- package/src/create-quiver/lib/ai/export-state.js +75 -64
- package/src/create-quiver/lib/ai/github.js +24 -21
- package/src/create-quiver/lib/ai/run-state.js +28 -25
- package/src/create-quiver/lib/cli/ux-flags.js +6 -0
- package/src/create-quiver/lib/dashboard.js +939 -0
- package/src/create-quiver/lib/demo.js +14 -12
- package/src/create-quiver/lib/handoff.js +16 -7
- package/src/create-quiver/lib/i18n/catalog.js +152 -0
- package/src/create-quiver/lib/i18n/language.js +279 -0
- package/src/create-quiver/lib/i18n/messages/en.js +853 -0
- package/src/create-quiver/lib/i18n/messages/es.js +968 -0
- package/src/create-quiver/lib/i18n/read-only-format.js +26 -0
- package/src/create-quiver/lib/i18n/templates.js +172 -0
- package/src/create-quiver/lib/init-docs.js +24 -4
- package/src/create-quiver/lib/init-layout.js +8 -0
- package/src/create-quiver/lib/lifecycle.js +53 -46
- package/src/create-quiver/lib/project-state-resolver.js +22 -2
- package/src/create-quiver/lib/readiness.js +77 -67
- package/src/create-quiver/lib/renderers/tree.js +9 -6
- package/src/create-quiver/lib/spec-worktrees.js +34 -30
- package/src/create-quiver/lib/version.js +159 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
## Title
|
|
2
|
+
|
|
3
|
+
Quiver v37 CLI i18n foundation
|
|
4
|
+
|
|
5
|
+
## Summary
|
|
6
|
+
|
|
7
|
+
- Adds the shared foundation for Spanish and English CLI output.
|
|
8
|
+
- Persists the configured language so users do not need flags after setup.
|
|
9
|
+
- Keeps JSON output stable and non-localized.
|
|
10
|
+
- Adds the approved follow-up i18n specs v38-v43 as the program roadmap.
|
|
11
|
+
|
|
12
|
+
## Scope
|
|
13
|
+
|
|
14
|
+
- Language resolution and config persistence.
|
|
15
|
+
- Message catalogs and translation helpers.
|
|
16
|
+
- `config language` commands.
|
|
17
|
+
- Localized help/parser/early errors.
|
|
18
|
+
- Docs and validation for the i18n foundation.
|
|
19
|
+
- Roadmap specs for read-only commands, setup/onboarding, spec/slice workflows, AI lifecycle, generated docs, and release readiness.
|
|
20
|
+
|
|
21
|
+
## Files
|
|
22
|
+
|
|
23
|
+
- `src/create-quiver/index.js`
|
|
24
|
+
- `src/create-quiver/commands/config.js`
|
|
25
|
+
- `src/create-quiver/lib/i18n/**`
|
|
26
|
+
- `tests/commands/cli-contract.test.js`
|
|
27
|
+
- `tests/commands/config-language.test.js`
|
|
28
|
+
- `tests/lib/i18n-catalog.test.js`
|
|
29
|
+
- `tests/lib/i18n-language.test.js`
|
|
30
|
+
- `docs/CLI_UX_GUIDE.md`
|
|
31
|
+
- `docs/reference/commands.md`
|
|
32
|
+
- `docs/INDEX.md`
|
|
33
|
+
- `specs/quiver-v37-cli-i18n-foundation/**`
|
|
34
|
+
- `specs/quiver-v38-cli-i18n-read-only-commands/**`
|
|
35
|
+
- `specs/quiver-v39-cli-i18n-setup-onboarding/**`
|
|
36
|
+
- `specs/quiver-v40-cli-i18n-spec-slice-workflows/**`
|
|
37
|
+
- `specs/quiver-v41-cli-i18n-ai-lifecycle/**`
|
|
38
|
+
- `specs/quiver-v42-cli-i18n-generated-docs/**`
|
|
39
|
+
- `specs/quiver-v43-cli-i18n-audit-release-readiness/**`
|
|
40
|
+
|
|
41
|
+
## How to Test (DETAILED - REQUIRED)
|
|
42
|
+
|
|
43
|
+
### Required Environment
|
|
44
|
+
|
|
45
|
+
- Node.js and npm available.
|
|
46
|
+
- Repository checked out on macOS, Linux, or Windows-compatible shell.
|
|
47
|
+
|
|
48
|
+
### Worktree Access
|
|
49
|
+
|
|
50
|
+
- This PR is based on `main`.
|
|
51
|
+
- No external services are required for local validation.
|
|
52
|
+
|
|
53
|
+
### Run the Project
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
node bin/create-quiver.js --help
|
|
57
|
+
node bin/create-quiver.js --lang es --help
|
|
58
|
+
node bin/create-quiver.js config language show
|
|
59
|
+
node bin/create-quiver.js config language set es --json
|
|
60
|
+
node bin/create-quiver.js version --json
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### Use Cases
|
|
64
|
+
|
|
65
|
+
1. Run `node bin/create-quiver.js --lang es --help` and verify headings/descriptions are in Spanish while commands and flags remain exact.
|
|
66
|
+
2. Run `QUIVER_LANG=es node bin/create-quiver.js --unknown-flag` and verify the early parser error is localized.
|
|
67
|
+
3. Run `node bin/create-quiver.js version --json --lang es` and verify stdout remains parseable JSON with stable field names.
|
|
68
|
+
4. Run `node bin/create-quiver.js config language set es` in a temp project and verify `.quiver/config.json` stores `language: "es"` without deleting existing keys.
|
|
69
|
+
|
|
70
|
+
### Technical Verification
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
node --test tests/**/*.test.js
|
|
74
|
+
git diff --check
|
|
75
|
+
node bin/create-quiver.js spec validate specs/quiver-v37-cli-i18n-foundation --strict
|
|
76
|
+
npm run package:quiver
|
|
77
|
+
npm run smoke:create-quiver
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## Evidence
|
|
81
|
+
|
|
82
|
+
- `node --test tests/**/*.test.js` passed with 549 tests.
|
|
83
|
+
- `git diff --check` passed.
|
|
84
|
+
- `node bin/create-quiver.js spec validate specs/quiver-v37-cli-i18n-foundation --strict` passed.
|
|
85
|
+
- `npm run package:quiver` passed.
|
|
86
|
+
- `npm run smoke:create-quiver` passed.
|
|
87
|
+
|
|
88
|
+
## Rollback
|
|
89
|
+
|
|
90
|
+
- Revert this PR.
|
|
91
|
+
- Remove `.quiver/config.json` language entries only if a local project used the new `config language set` command during manual testing.
|
|
92
|
+
|
|
93
|
+
## Risks / Notes
|
|
94
|
+
|
|
95
|
+
- Parser-level errors can bypass command-local i18n if the foundation is not wired before dispatch.
|
|
96
|
+
- JSON contracts must remain stable across languages.
|
|
97
|
+
- v38-v43 are specs only in this PR; command-specific migrations remain pending by design.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# CLOSURE_BRIEF - slice-00 Foundation and program roadmap
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
Documentation package created. No runtime implementation was performed.
|
|
6
|
+
|
|
7
|
+
## Validation
|
|
8
|
+
|
|
9
|
+
- Pending `npx create-quiver spec validate specs/quiver-v37-cli-i18n-foundation --strict`.
|
|
10
|
+
- Pending `git diff --check`.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# EXECUTION_BRIEF - slice-00 Foundation and program roadmap
|
|
2
|
+
|
|
3
|
+
## Context
|
|
4
|
+
|
|
5
|
+
The user approved a multi-spec roadmap for full Spanish and English CLI support. This slice creates only the documentation package and handoffs.
|
|
6
|
+
|
|
7
|
+
## Objective
|
|
8
|
+
|
|
9
|
+
Create the v37 foundation spec, roadmap, and implementation slices without modifying runtime code.
|
|
10
|
+
|
|
11
|
+
## Acceptance Criteria
|
|
12
|
+
|
|
13
|
+
- The spec package exists under `specs/quiver-v37-cli-i18n-foundation`.
|
|
14
|
+
- Each slice has `slice.json`, `EXECUTION_BRIEF.md`, and `CLOSURE_BRIEF.md`.
|
|
15
|
+
- The next executable slice is clearly marked as ready.
|
|
16
|
+
- No runtime code is modified by this slice.
|
|
17
|
+
|
|
18
|
+
## Completion Checklist
|
|
19
|
+
|
|
20
|
+
- [x] Spec root documents created.
|
|
21
|
+
- [x] Slice handoffs created.
|
|
22
|
+
- [x] Runtime implementation deferred.
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slice_id": "slice-00-foundation-and-program-roadmap",
|
|
3
|
+
"ticket": "QUIVER-37-00",
|
|
4
|
+
"type": "documentation",
|
|
5
|
+
"title": "Foundation and program roadmap",
|
|
6
|
+
"objective": "Create the approved v37 i18n foundation spec package and handoffs without runtime implementation.",
|
|
7
|
+
"description": "Documents the shared foundation required before migrating commands to Spanish and English output.",
|
|
8
|
+
"git": {
|
|
9
|
+
"branch_type": "docs",
|
|
10
|
+
"base_branch": "main",
|
|
11
|
+
"branch_slug": "v37-i18n-foundation-roadmap",
|
|
12
|
+
"branch_name": "docs/QUIVER-37-00-v37-i18n-foundation-roadmap"
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"specs/quiver-v37-cli-i18n-foundation/**"
|
|
16
|
+
],
|
|
17
|
+
"expected_read_paths": [
|
|
18
|
+
"docs/INDEX.md",
|
|
19
|
+
"docs/CLI_UX_GUIDE.md",
|
|
20
|
+
"docs/reference/commands.md"
|
|
21
|
+
],
|
|
22
|
+
"allowed_write_paths": [
|
|
23
|
+
"specs/quiver-v37-cli-i18n-foundation/**"
|
|
24
|
+
],
|
|
25
|
+
"depends_on": [],
|
|
26
|
+
"parallel_safe": "no",
|
|
27
|
+
"parallel_safe_reason": "This creates the contract for all later v37 slices.",
|
|
28
|
+
"must": [
|
|
29
|
+
"Create the spec package and slice handoffs.",
|
|
30
|
+
"Document the language precedence and JSON stability guardrails.",
|
|
31
|
+
"Mark slice-01 as ready."
|
|
32
|
+
],
|
|
33
|
+
"not_included": [
|
|
34
|
+
"Runtime implementation.",
|
|
35
|
+
"Catalog migration for existing commands."
|
|
36
|
+
],
|
|
37
|
+
"acceptance": [
|
|
38
|
+
"Spec root documents exist.",
|
|
39
|
+
"Each slice has execution and closure briefs.",
|
|
40
|
+
"slice.json files are valid JSON.",
|
|
41
|
+
"Runtime code is untouched."
|
|
42
|
+
],
|
|
43
|
+
"tests": [
|
|
44
|
+
"npx create-quiver spec validate specs/quiver-v37-cli-i18n-foundation --strict",
|
|
45
|
+
"git diff --check"
|
|
46
|
+
],
|
|
47
|
+
"validation_hints": [
|
|
48
|
+
"Strict validation requires completed slices to be referenced in EVIDENCE_REPORT.md."
|
|
49
|
+
],
|
|
50
|
+
"estimated_hours": 1,
|
|
51
|
+
"status": "completed",
|
|
52
|
+
"completed_at": "2026-05-28T00:00:00.000Z",
|
|
53
|
+
"blocked_reason": null
|
|
54
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# CLOSURE_BRIEF - slice-01 Language resolution contract
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
Implemented the language resolution foundation for `en` and `es`.
|
|
6
|
+
|
|
7
|
+
Added:
|
|
8
|
+
|
|
9
|
+
- `src/create-quiver/lib/i18n/language.js`
|
|
10
|
+
- global `--lang` extraction before command dispatch
|
|
11
|
+
- project/global config helpers for `.quiver/config.json` and `~/.quiver/config.json`
|
|
12
|
+
- locale normalization for supported `en` and `es` variants
|
|
13
|
+
- warnings for unsupported explicit language sources
|
|
14
|
+
- focused unit and CLI contract tests
|
|
15
|
+
|
|
16
|
+
## Validation
|
|
17
|
+
|
|
18
|
+
- [x] `node --test tests/lib/i18n-language.test.js`
|
|
19
|
+
- [x] `node --test tests/commands/cli-contract.test.js`
|
|
20
|
+
- [x] `node --test tests/**/*.test.js`
|
|
21
|
+
- [x] `node bin/create-quiver.js spec validate specs/quiver-v37-cli-i18n-foundation --strict`
|
|
22
|
+
- [x] `git diff --check`
|
|
23
|
+
|
|
24
|
+
## Pending
|
|
25
|
+
|
|
26
|
+
- Package and smoke validation are deferred to `slice-05-foundation-docs-tests-package-readiness`.
|
|
27
|
+
|
|
28
|
+
## Remaining Risks
|
|
29
|
+
|
|
30
|
+
- Command output is not translated yet; slice-02 through slice-05 own catalog, command wiring, and docs/package readiness.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# EXECUTION_BRIEF - slice-01 Language resolution contract
|
|
2
|
+
|
|
3
|
+
## Context
|
|
4
|
+
|
|
5
|
+
Users should configure language once and then receive CLI responses in that language without repeating flags.
|
|
6
|
+
|
|
7
|
+
## Objective
|
|
8
|
+
|
|
9
|
+
Implement the language resolution contract and config read/write primitives for `en` and `es`.
|
|
10
|
+
|
|
11
|
+
## Acceptance Criteria
|
|
12
|
+
|
|
13
|
+
- Resolution order is `--lang`, `QUIVER_LANG`, project config, global config, locale, `en`.
|
|
14
|
+
- `--lang` works before and after the command name.
|
|
15
|
+
- Project config is `.quiver/config.json`.
|
|
16
|
+
- Global config is `~/.quiver/config.json` resolved with `os.homedir()`.
|
|
17
|
+
- Locale detection reads `LC_ALL`, `LC_MESSAGES`, `LANG`, `LANGUAGE`, and `Intl.DateTimeFormat().resolvedOptions().locale`.
|
|
18
|
+
- `es_AR`, `es-AR`, `en_US`, and `en-US` normalize correctly.
|
|
19
|
+
- Unsupported values fall back to `en` with human-mode guidance.
|
|
20
|
+
- `--json` remains stable and does not include localized prose unless an existing schema explicitly allows it.
|
|
21
|
+
|
|
22
|
+
## Completion Checklist
|
|
23
|
+
|
|
24
|
+
- [x] Resolver helper implemented.
|
|
25
|
+
- [x] Config read/write helper implemented.
|
|
26
|
+
- [x] Global flag parser supports before/after command.
|
|
27
|
+
- [x] Unit tests cover precedence and locale normalization.
|
package/specs/quiver-v37-cli-i18n-foundation/slices/slice-01-language-resolution-contract/slice.json
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slice_id": "slice-01-language-resolution-contract",
|
|
3
|
+
"ticket": "QUIVER-37-01",
|
|
4
|
+
"type": "feature",
|
|
5
|
+
"title": "Language resolution contract",
|
|
6
|
+
"objective": "Implement the ordered language resolution and config persistence foundation for Spanish and English CLI output.",
|
|
7
|
+
"description": "Adds the reusable resolver that all localized command output will consume.",
|
|
8
|
+
"git": {
|
|
9
|
+
"branch_type": "feature",
|
|
10
|
+
"base_branch": "main",
|
|
11
|
+
"branch_slug": "v37-language-resolution-contract",
|
|
12
|
+
"branch_name": "feature/QUIVER-37-01-v37-language-resolution-contract"
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"src/create-quiver/lib/i18n/language.js",
|
|
16
|
+
"tests/lib/i18n-language.test.js"
|
|
17
|
+
],
|
|
18
|
+
"expected_read_paths": [
|
|
19
|
+
"src/create-quiver/index.js",
|
|
20
|
+
"src/create-quiver/lib/paths.js",
|
|
21
|
+
"docs/CLI_UX_GUIDE.md",
|
|
22
|
+
"specs/quiver-v37-cli-i18n-foundation/SPEC.md"
|
|
23
|
+
],
|
|
24
|
+
"allowed_write_paths": [
|
|
25
|
+
"src/create-quiver/lib/i18n/language.js",
|
|
26
|
+
"src/create-quiver/index.js",
|
|
27
|
+
"tests/lib/i18n-language.test.js",
|
|
28
|
+
"tests/commands/cli-contract.test.js",
|
|
29
|
+
"specs/quiver-v37-cli-i18n-foundation/**"
|
|
30
|
+
],
|
|
31
|
+
"depends_on": [
|
|
32
|
+
"slice-00-foundation-and-program-roadmap"
|
|
33
|
+
],
|
|
34
|
+
"parallel_safe": "no",
|
|
35
|
+
"parallel_safe_reason": "All later i18n work depends on the exact precedence and parser contract.",
|
|
36
|
+
"must": [
|
|
37
|
+
"Support only en and es.",
|
|
38
|
+
"Apply the approved precedence order.",
|
|
39
|
+
"Resolve global config through os.homedir().",
|
|
40
|
+
"Normalize common locale variants.",
|
|
41
|
+
"Keep JSON output stable."
|
|
42
|
+
],
|
|
43
|
+
"not_included": [
|
|
44
|
+
"Message catalog implementation.",
|
|
45
|
+
"Command-by-command migration."
|
|
46
|
+
],
|
|
47
|
+
"acceptance": [
|
|
48
|
+
"Tests prove each language source wins in the approved order.",
|
|
49
|
+
"Tests prove --lang works before and after commands.",
|
|
50
|
+
"Unsupported language values fall back to en with human guidance.",
|
|
51
|
+
"No JSON schema keys are localized."
|
|
52
|
+
],
|
|
53
|
+
"tests": [
|
|
54
|
+
"node --test tests/lib/i18n-language.test.js",
|
|
55
|
+
"node --test tests/commands/cli-contract.test.js",
|
|
56
|
+
"git diff --check"
|
|
57
|
+
],
|
|
58
|
+
"validation_hints": [
|
|
59
|
+
"Use environment isolation in tests.",
|
|
60
|
+
"Include Windows-style home path coverage where practical."
|
|
61
|
+
],
|
|
62
|
+
"estimated_hours": 5,
|
|
63
|
+
"status": "completed",
|
|
64
|
+
"completed_at": "2026-05-29T00:00:00.000Z",
|
|
65
|
+
"blocked_reason": null
|
|
66
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# CLOSURE_BRIEF - slice-02 Message catalog and interpolation
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
Implemented the shared message catalog foundation.
|
|
6
|
+
|
|
7
|
+
Added:
|
|
8
|
+
|
|
9
|
+
- versioned `en` and `es` catalogs
|
|
10
|
+
- translation helper
|
|
11
|
+
- safe interpolation with predictable missing params
|
|
12
|
+
- one/other plural support
|
|
13
|
+
- explicit fallback to English
|
|
14
|
+
- catalog completeness validation
|
|
15
|
+
|
|
16
|
+
## Validation
|
|
17
|
+
|
|
18
|
+
- [x] `node --test tests/lib/i18n-catalog.test.js`
|
|
19
|
+
- [ ] `git diff --check`
|
|
20
|
+
|
|
21
|
+
## Pending
|
|
22
|
+
|
|
23
|
+
- Run `git diff --check` after final docs updates.
|
|
24
|
+
|
|
25
|
+
## Remaining Risks
|
|
26
|
+
|
|
27
|
+
- Commands do not consume catalog keys yet; slice-03 through slice-05 own command wiring, parser/help migration, and docs/package readiness.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# EXECUTION_BRIEF - slice-02 Message catalog and interpolation
|
|
2
|
+
|
|
3
|
+
## Context
|
|
4
|
+
|
|
5
|
+
Localized output must be maintainable and testable. Hardcoded Spanish or English strings in command bodies would make coverage incomplete.
|
|
6
|
+
|
|
7
|
+
## Objective
|
|
8
|
+
|
|
9
|
+
Add the catalog and translation helper used by the CLI for human output.
|
|
10
|
+
|
|
11
|
+
## Acceptance Criteria
|
|
12
|
+
|
|
13
|
+
- Catalogs exist for `en` and `es`.
|
|
14
|
+
- Catalog metadata includes a version.
|
|
15
|
+
- Interpolation escapes missing or unsafe values predictably.
|
|
16
|
+
- Plural forms support at least `one` and `other`.
|
|
17
|
+
- Missing keys fail tests.
|
|
18
|
+
- Fallback to `en` is explicit and tested.
|
|
19
|
+
- Suggested commands and flags remain exact literals.
|
|
20
|
+
|
|
21
|
+
## Completion Checklist
|
|
22
|
+
|
|
23
|
+
- [x] Catalog files added.
|
|
24
|
+
- [x] Translation helper added.
|
|
25
|
+
- [x] Missing-key and fallback tests added.
|
|
26
|
+
- [x] Pluralization tests added.
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slice_id": "slice-02-message-catalog-interpolation",
|
|
3
|
+
"ticket": "QUIVER-37-02",
|
|
4
|
+
"type": "feature",
|
|
5
|
+
"title": "Message catalog and interpolation",
|
|
6
|
+
"objective": "Create versioned English and Spanish catalogs with safe interpolation, pluralization, fallback, and missing-key coverage.",
|
|
7
|
+
"description": "Provides the string infrastructure needed before migrating command output.",
|
|
8
|
+
"git": {
|
|
9
|
+
"branch_type": "feature",
|
|
10
|
+
"base_branch": "main",
|
|
11
|
+
"branch_slug": "v37-message-catalog-interpolation",
|
|
12
|
+
"branch_name": "feature/QUIVER-37-02-v37-message-catalog-interpolation"
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"src/create-quiver/lib/i18n/catalog.js",
|
|
16
|
+
"src/create-quiver/lib/i18n/messages/en.js",
|
|
17
|
+
"src/create-quiver/lib/i18n/messages/es.js",
|
|
18
|
+
"tests/lib/i18n-catalog.test.js"
|
|
19
|
+
],
|
|
20
|
+
"expected_read_paths": [
|
|
21
|
+
"src/create-quiver/lib/i18n/language.js",
|
|
22
|
+
"specs/quiver-v37-cli-i18n-foundation/SPEC.md"
|
|
23
|
+
],
|
|
24
|
+
"allowed_write_paths": [
|
|
25
|
+
"src/create-quiver/lib/i18n/**",
|
|
26
|
+
"tests/lib/i18n-catalog.test.js",
|
|
27
|
+
"specs/quiver-v37-cli-i18n-foundation/**"
|
|
28
|
+
],
|
|
29
|
+
"depends_on": [
|
|
30
|
+
"slice-01-language-resolution-contract"
|
|
31
|
+
],
|
|
32
|
+
"parallel_safe": "no",
|
|
33
|
+
"parallel_safe_reason": "Later command migrations must share the same catalog API.",
|
|
34
|
+
"must": [
|
|
35
|
+
"Implement en and es catalogs.",
|
|
36
|
+
"Support interpolation and one/other plural forms.",
|
|
37
|
+
"Fail tests on missing keys.",
|
|
38
|
+
"Keep command snippets untranslated."
|
|
39
|
+
],
|
|
40
|
+
"not_included": [
|
|
41
|
+
"Migrating all command output.",
|
|
42
|
+
"Generated docs localization."
|
|
43
|
+
],
|
|
44
|
+
"acceptance": [
|
|
45
|
+
"All keys present in en exist in es and vice versa.",
|
|
46
|
+
"Missing key behavior is deterministic.",
|
|
47
|
+
"Fallback behavior is tested.",
|
|
48
|
+
"Pluralization covers one and other."
|
|
49
|
+
],
|
|
50
|
+
"tests": [
|
|
51
|
+
"node --test tests/lib/i18n-catalog.test.js",
|
|
52
|
+
"git diff --check"
|
|
53
|
+
],
|
|
54
|
+
"validation_hints": [
|
|
55
|
+
"Use stable key names grouped by command or domain.",
|
|
56
|
+
"Avoid embedding ANSI codes in catalog strings."
|
|
57
|
+
],
|
|
58
|
+
"estimated_hours": 5,
|
|
59
|
+
"status": "completed",
|
|
60
|
+
"completed_at": "2026-05-29T00:00:00.000Z",
|
|
61
|
+
"blocked_reason": null
|
|
62
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# CLOSURE_BRIEF - slice-03 Config language command
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
Implemented `config language` commands.
|
|
6
|
+
|
|
7
|
+
Added:
|
|
8
|
+
|
|
9
|
+
- `config language show`
|
|
10
|
+
- `config language show --json`
|
|
11
|
+
- `config language set <en|es>`
|
|
12
|
+
- `config language set <en|es> --global`
|
|
13
|
+
- project config writes to `.quiver/config.json`
|
|
14
|
+
- global config writes to `~/.quiver/config.json`
|
|
15
|
+
- stable JSON output for show/set
|
|
16
|
+
- command reference documentation
|
|
17
|
+
|
|
18
|
+
## Validation
|
|
19
|
+
|
|
20
|
+
- [x] `node --test tests/commands/config-language.test.js`
|
|
21
|
+
- [x] `node --test tests/lib/i18n-catalog.test.js tests/lib/i18n-language.test.js tests/commands/cli-contract.test.js`
|
|
22
|
+
- [x] `node --test tests/**/*.test.js`
|
|
23
|
+
- [x] `node bin/create-quiver.js spec validate specs/quiver-v37-cli-i18n-foundation --strict`
|
|
24
|
+
- [x] `git diff --check`
|
|
25
|
+
|
|
26
|
+
## Pending
|
|
27
|
+
|
|
28
|
+
- No pending work for this slice.
|
|
29
|
+
|
|
30
|
+
## Remaining Risks
|
|
31
|
+
|
|
32
|
+
- Parser/help localization is still pending in `slice-04-parser-help-error-foundation`.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# EXECUTION_BRIEF - slice-03 Config language command
|
|
2
|
+
|
|
3
|
+
## Context
|
|
4
|
+
|
|
5
|
+
Language changes should be discoverable after init and usable in scripts.
|
|
6
|
+
|
|
7
|
+
## Objective
|
|
8
|
+
|
|
9
|
+
Add `config language show` and `config language set <en|es>` with project and global persistence.
|
|
10
|
+
|
|
11
|
+
## Acceptance Criteria
|
|
12
|
+
|
|
13
|
+
- `config language show` reports effective language and source.
|
|
14
|
+
- `config language set es` and `config language set en` update project config by default.
|
|
15
|
+
- A global option writes to `~/.quiver/config.json` without requiring a project.
|
|
16
|
+
- Invalid languages fail with actionable guidance.
|
|
17
|
+
- `--json` returns stable keys and codes.
|
|
18
|
+
- Existing config keys are preserved.
|
|
19
|
+
|
|
20
|
+
## Completion Checklist
|
|
21
|
+
|
|
22
|
+
- [x] Command parser route added.
|
|
23
|
+
- [x] Project/global write paths tested.
|
|
24
|
+
- [x] JSON and human modes covered.
|
|
25
|
+
- [x] Docs updated.
|
package/specs/quiver-v37-cli-i18n-foundation/slices/slice-03-config-language-command/slice.json
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
{
|
|
2
|
+
"slice_id": "slice-03-config-language-command",
|
|
3
|
+
"ticket": "QUIVER-37-03",
|
|
4
|
+
"type": "feature",
|
|
5
|
+
"title": "Config language command",
|
|
6
|
+
"objective": "Add user-facing commands to inspect and update Quiver language configuration.",
|
|
7
|
+
"description": "Lets users change language without editing JSON by hand.",
|
|
8
|
+
"git": {
|
|
9
|
+
"branch_type": "feature",
|
|
10
|
+
"base_branch": "main",
|
|
11
|
+
"branch_slug": "v37-config-language-command",
|
|
12
|
+
"branch_name": "feature/QUIVER-37-03-v37-config-language-command"
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"src/create-quiver/commands/config.js",
|
|
16
|
+
"tests/commands/config-language.test.js",
|
|
17
|
+
"docs/reference/commands.md"
|
|
18
|
+
],
|
|
19
|
+
"expected_read_paths": [
|
|
20
|
+
"src/create-quiver/index.js",
|
|
21
|
+
"src/create-quiver/lib/i18n/language.js",
|
|
22
|
+
"src/create-quiver/lib/i18n/catalog.js",
|
|
23
|
+
"docs/reference/commands.md"
|
|
24
|
+
],
|
|
25
|
+
"allowed_write_paths": [
|
|
26
|
+
"src/create-quiver/commands/config.js",
|
|
27
|
+
"src/create-quiver/index.js",
|
|
28
|
+
"src/create-quiver/lib/i18n/**",
|
|
29
|
+
"tests/commands/config-language.test.js",
|
|
30
|
+
"docs/reference/commands.md",
|
|
31
|
+
"specs/quiver-v37-cli-i18n-foundation/**"
|
|
32
|
+
],
|
|
33
|
+
"depends_on": [
|
|
34
|
+
"slice-01-language-resolution-contract",
|
|
35
|
+
"slice-02-message-catalog-interpolation"
|
|
36
|
+
],
|
|
37
|
+
"parallel_safe": "conditional",
|
|
38
|
+
"parallel_safe_reason": "Can run alongside parser work after catalog ownership is settled.",
|
|
39
|
+
"must": [
|
|
40
|
+
"Implement show and set subcommands.",
|
|
41
|
+
"Preserve existing config keys.",
|
|
42
|
+
"Support project and global config scopes.",
|
|
43
|
+
"Keep JSON contracts stable."
|
|
44
|
+
],
|
|
45
|
+
"not_included": [
|
|
46
|
+
"Migrating unrelated command output."
|
|
47
|
+
],
|
|
48
|
+
"acceptance": [
|
|
49
|
+
"Users can set es or en for the project.",
|
|
50
|
+
"Users can set es or en globally.",
|
|
51
|
+
"show identifies effective language and source.",
|
|
52
|
+
"Invalid language values fail clearly."
|
|
53
|
+
],
|
|
54
|
+
"tests": [
|
|
55
|
+
"node --test tests/commands/config-language.test.js",
|
|
56
|
+
"git diff --check"
|
|
57
|
+
],
|
|
58
|
+
"validation_hints": [
|
|
59
|
+
"Use temp HOME in tests for global config.",
|
|
60
|
+
"Assert existing .quiver/config.json content is preserved."
|
|
61
|
+
],
|
|
62
|
+
"estimated_hours": 5,
|
|
63
|
+
"status": "completed",
|
|
64
|
+
"completed_at": "2026-05-29T00:00:00.000Z",
|
|
65
|
+
"blocked_reason": null
|
|
66
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# CLOSURE_BRIEF - slice-04 Parser, help, and early error foundation
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
Implemented parser/help/error i18n foundation.
|
|
6
|
+
|
|
7
|
+
Added:
|
|
8
|
+
|
|
9
|
+
- language-aware top-level help rendering
|
|
10
|
+
- cataloged help headings and command descriptions
|
|
11
|
+
- localized unsupported command errors
|
|
12
|
+
- localized unsupported flag errors
|
|
13
|
+
- localized missing flag value errors, including missing `--lang`
|
|
14
|
+
- localized unsupported-language warnings in CLI entrypoint
|
|
15
|
+
- tests for explicit `--lang`, project-configured language, JSON stdout cleanliness, no-color help, and literal command preservation
|
|
16
|
+
|
|
17
|
+
## Validation
|
|
18
|
+
|
|
19
|
+
- [x] `node --test tests/commands/cli-contract.test.js`
|
|
20
|
+
- [x] `node --test tests/lib/i18n-catalog.test.js tests/lib/i18n-language.test.js`
|
|
21
|
+
- [x] `node --test tests/commands/config-language.test.js`
|
|
22
|
+
- [ ] `git diff --check`
|
|
23
|
+
|
|
24
|
+
## Pending
|
|
25
|
+
|
|
26
|
+
- Run `git diff --check` after final docs updates.
|
|
27
|
+
|
|
28
|
+
## Remaining Risks
|
|
29
|
+
|
|
30
|
+
- Command-specific business output is intentionally not migrated in this slice; it is covered by later i18n specs.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# EXECUTION_BRIEF - slice-04 Parser, help, and early error foundation
|
|
2
|
+
|
|
3
|
+
## Context
|
|
4
|
+
|
|
5
|
+
Some messages are emitted before command handlers run. They must still respect the selected language.
|
|
6
|
+
|
|
7
|
+
## Objective
|
|
8
|
+
|
|
9
|
+
Route help text, parser errors, unsupported command errors, and global option errors through the i18n foundation.
|
|
10
|
+
|
|
11
|
+
## Acceptance Criteria
|
|
12
|
+
|
|
13
|
+
- `--help` uses the resolved language.
|
|
14
|
+
- Unknown command and unsupported flag errors use the resolved language.
|
|
15
|
+
- `--lang` errors work even when `--lang` appears before the command.
|
|
16
|
+
- `--json` errors keep stable machine fields.
|
|
17
|
+
- `--no-color`, CI, and no-TTY modes remain clean.
|
|
18
|
+
|
|
19
|
+
## Completion Checklist
|
|
20
|
+
|
|
21
|
+
- [ ] Parser-level i18n wiring added.
|
|
22
|
+
- [ ] Help output cataloged.
|
|
23
|
+
- [ ] Early error tests added for `en` and `es`.
|
|
24
|
+
- [ ] JSON/no-TTY tests updated.
|