@zeyue0329/xiaoma-cli 1.13.0 → 1.15.1
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/package.json +24 -14
- package/src/core-skills/module-help.csv +13 -0
- package/src/{core → core-skills}/module.yaml +8 -0
- package/src/{core/skills/xiaoma-advanced-elicitation/workflow.md → core-skills/xiaoma-advanced-elicitation/SKILL.md} +10 -3
- package/src/core-skills/xiaoma-advanced-elicitation/methods.csv +70 -0
- package/src/{core/skills → core-skills}/xiaoma-brainstorming/steps/step-03-technique-execution.md +6 -4
- package/src/{core/skills → core-skills}/xiaoma-brainstorming/workflow.md +1 -1
- package/src/core-skills/xiaoma-customize/SKILL.md +111 -0
- package/src/core-skills/xiaoma-customize/scripts/list_customizable_skills.js +172 -0
- package/src/{core/skills → core-skills}/xiaoma-distillator/resources/distillate-format-reference.md +1 -1
- package/src/{core/skills → core-skills}/xiaoma-distillator/scripts/analyze_sources.py +2 -2
- package/src/{core/skills/xiaoma-editorial-review-prose/workflow.md → core-skills/xiaoma-editorial-review-prose/SKILL.md} +5 -0
- package/src/{core/skills/xiaoma-editorial-review-structure/workflow.md → core-skills/xiaoma-editorial-review-structure/SKILL.md} +5 -0
- package/src/core-skills/xiaoma-help/SKILL.md +75 -0
- package/src/{core/skills/xiaoma-index-docs/workflow.md → core-skills/xiaoma-index-docs/SKILL.md} +5 -0
- package/src/core-skills/xiaoma-party-mode/SKILL.md +128 -0
- package/src/{core/skills/xiaoma-review-adversarial-general/workflow.md → core-skills/xiaoma-review-adversarial-general/SKILL.md} +5 -0
- package/src/{core/skills/xiaoma-review-edge-case-hunter/workflow.md → core-skills/xiaoma-review-edge-case-hunter/SKILL.md} +5 -0
- package/src/{core/skills/xiaoma-shard-doc/workflow.md → core-skills/xiaoma-shard-doc/SKILL.md} +5 -0
- package/src/core-skills/xiaoma-spec/SKILL.md +129 -0
- package/src/core-skills/xiaoma-spec/assets/headless-schemas.md +33 -0
- package/src/core-skills/xiaoma-spec/assets/spec-template.md +49 -0
- package/src/core-skills/xiaoma-spec/customize.toml +53 -0
- package/src/scripts/resolve_config.js +163 -0
- package/src/scripts/resolve_customization.js +188 -0
- package/src/scripts/toml.js +338 -0
- package/src/xmc-skills/1-analysis/research/xiaoma-domain-research/SKILL.md +96 -0
- package/src/xmc-skills/1-analysis/research/xiaoma-domain-research/customize.toml +41 -0
- package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-domain-research/domain-steps/step-06-research-synthesis.md +6 -0
- package/src/xmc-skills/1-analysis/research/xiaoma-market-research/SKILL.md +96 -0
- package/src/xmc-skills/1-analysis/research/xiaoma-market-research/customize.toml +41 -0
- package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-market-research/steps/step-06-research-completion.md +6 -0
- package/src/xmc-skills/1-analysis/research/xiaoma-technical-research/SKILL.md +96 -0
- package/src/xmc-skills/1-analysis/research/xiaoma-technical-research/customize.toml +41 -0
- package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-technical-research/technical-steps/step-06-research-synthesis.md +6 -0
- package/src/xmc-skills/1-analysis/xiaoma-agent-analyst/SKILL.md +76 -0
- package/src/xmc-skills/1-analysis/xiaoma-agent-analyst/customize.toml +90 -0
- package/src/xmc-skills/1-analysis/xiaoma-agent-tech-writer/SKILL.md +76 -0
- package/src/xmc-skills/1-analysis/xiaoma-agent-tech-writer/customize.toml +81 -0
- package/src/xmc-skills/1-analysis/xiaoma-agent-tech-writer/explain-concept.md +20 -0
- package/src/xmc-skills/1-analysis/xiaoma-agent-tech-writer/mermaid-gen.md +20 -0
- package/src/xmc-skills/1-analysis/xiaoma-agent-tech-writer/validate-doc.md +19 -0
- package/src/xmc-skills/1-analysis/xiaoma-agent-tech-writer/write-document.md +20 -0
- package/src/{xmc/workflows/1-analysis/auto-requirements-pipeline → xmc-skills/1-analysis/xiaoma-auto-requirements-pipeline}/checklist.md +5 -2
- package/src/{xmc/workflows/1-analysis/auto-requirements-pipeline → xmc-skills/1-analysis/xiaoma-auto-requirements-pipeline}/steps/step-01-init-and-validate.md +18 -1
- package/src/{xmc/workflows/1-analysis/auto-requirements-pipeline → xmc-skills/1-analysis/xiaoma-auto-requirements-pipeline}/steps/step-02-requirements-analysis.md +3 -1
- package/src/{xmc/workflows/1-analysis/auto-requirements-pipeline → xmc-skills/1-analysis/xiaoma-auto-requirements-pipeline}/steps/step-03-architecture-analysis.md +5 -3
- package/src/{xmc/workflows/1-analysis/auto-requirements-pipeline → xmc-skills/1-analysis/xiaoma-auto-requirements-pipeline}/steps/step-04-create-prd.md +12 -14
- package/src/{xmc/workflows/1-analysis/auto-requirements-pipeline → xmc-skills/1-analysis/xiaoma-auto-requirements-pipeline}/steps/step-05-validate-prd.md +20 -15
- package/src/{xmc/workflows/1-analysis/auto-requirements-pipeline → xmc-skills/1-analysis/xiaoma-auto-requirements-pipeline}/steps/step-06-create-epics.md +9 -5
- package/src/{xmc/workflows/1-analysis/auto-requirements-pipeline → xmc-skills/1-analysis/xiaoma-auto-requirements-pipeline}/steps/step-07-create-architecture.md +10 -7
- package/src/xmc-skills/1-analysis/xiaoma-auto-requirements-pipeline/steps/step-08-finalize.md +184 -0
- package/src/xmc-skills/1-analysis/xiaoma-auto-requirements-pipeline/workflow.md +140 -0
- package/src/xmc-skills/1-analysis/xiaoma-auto-requirements-pipeline/xiaoma-skill-manifest.yaml +24 -0
- package/src/xmc-skills/1-analysis/xiaoma-document-project/SKILL.md +62 -0
- package/src/xmc-skills/1-analysis/xiaoma-document-project/customize.toml +41 -0
- package/src/{xmc/workflows → xmc-skills/1-analysis}/xiaoma-document-project/workflows/deep-dive-instructions.md +1 -0
- package/src/{xmc/workflows → xmc-skills/1-analysis}/xiaoma-document-project/workflows/full-scan-instructions.md +1 -0
- package/src/xmc-skills/1-analysis/xiaoma-prfaq/SKILL.md +135 -0
- package/src/xmc-skills/1-analysis/xiaoma-prfaq/agents/artifact-analyzer.md +60 -0
- package/src/xmc-skills/1-analysis/xiaoma-prfaq/agents/web-researcher.md +49 -0
- package/src/xmc-skills/1-analysis/xiaoma-prfaq/assets/prfaq-template.md +62 -0
- package/src/xmc-skills/1-analysis/xiaoma-prfaq/customize.toml +41 -0
- package/src/xmc-skills/1-analysis/xiaoma-prfaq/references/customer-faq.md +55 -0
- package/src/xmc-skills/1-analysis/xiaoma-prfaq/references/internal-faq.md +51 -0
- package/src/xmc-skills/1-analysis/xiaoma-prfaq/references/press-release.md +60 -0
- package/src/xmc-skills/1-analysis/xiaoma-prfaq/references/verdict.md +83 -0
- package/src/xmc-skills/1-analysis/xiaoma-prfaq/xiaoma-manifest.json +16 -0
- package/src/xmc-skills/1-analysis/xiaoma-product-brief/SKILL.md +91 -0
- package/src/xmc-skills/1-analysis/xiaoma-product-brief/assets/brief-template.md +41 -0
- package/src/xmc-skills/1-analysis/xiaoma-product-brief/customize.toml +99 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-agent-pm/SKILL.md +76 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-agent-pm/customize.toml +75 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-agent-ux-designer/SKILL.md +76 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-agent-ux-designer/customize.toml +60 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-create-prd/SKILL.md +30 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-create-prd/customize.toml +41 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-edit-prd/SKILL.md +30 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-edit-prd/customize.toml +42 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-prd/SKILL.md +92 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-prd/assets/headless-schemas.md +76 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-prd/assets/prd-template.md +165 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-prd/assets/prd-validation-checklist.md +217 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-prd/assets/validation-report-template.html +325 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-prd/customize.toml +147 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-prd/references/headless.md +39 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-prd/references/validate.md +97 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/SKILL.md +90 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/assets/color-themes.md +9 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/assets/design-directions.md +9 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/assets/design-example-editorial.md +158 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/assets/design-example-mobile.md +93 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/assets/design-example-shadcn.md +109 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/assets/excalidraw-wireframe.md +19 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/assets/experience-example-mobile.md +112 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/assets/experience-example-shadcn.md +133 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/assets/headless-schemas.md +84 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/assets/key-screens.md +29 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/assets/validation-report-template.html +319 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/customize.toml +100 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/references/creative-tools.md +19 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/references/design-md-spec.md +50 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/references/headless.md +37 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-ux/references/validate.md +115 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-validate-prd/SKILL.md +30 -0
- package/src/xmc-skills/2-plan-workflows/xiaoma-validate-prd/customize.toml +31 -0
- package/src/xmc-skills/3-solutioning/xiaoma-agent-architect/SKILL.md +76 -0
- package/src/xmc-skills/3-solutioning/xiaoma-agent-architect/customize.toml +65 -0
- package/src/xmc-skills/3-solutioning/xiaoma-check-implementation-readiness/SKILL.md +91 -0
- package/src/xmc-skills/3-solutioning/xiaoma-check-implementation-readiness/customize.toml +41 -0
- package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-check-implementation-readiness/steps/step-01-document-discovery.md +1 -1
- package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-check-implementation-readiness/steps/step-02-prd-analysis.md +1 -1
- package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-check-implementation-readiness/steps/step-03-epic-coverage-validation.md +1 -1
- package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-check-implementation-readiness/steps/step-06-final-assessment.md +6 -0
- package/src/xmc-skills/3-solutioning/xiaoma-create-architecture/SKILL.md +74 -0
- package/src/xmc-skills/3-solutioning/xiaoma-create-architecture/customize.toml +41 -0
- package/src/xmc-skills/3-solutioning/xiaoma-create-architecture/references/headless.md +37 -0
- package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-architecture/steps/step-07-validation.md +23 -21
- package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-architecture/steps/step-08-complete.md +6 -0
- package/src/xmc-skills/3-solutioning/xiaoma-create-epics-and-stories/SKILL.md +93 -0
- package/src/xmc-skills/3-solutioning/xiaoma-create-epics-and-stories/customize.toml +41 -0
- package/src/xmc-skills/3-solutioning/xiaoma-create-epics-and-stories/references/headless.md +35 -0
- package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-epics-and-stories/steps/step-02-design-epics.md +34 -4
- package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-epics-and-stories/steps/step-04-final-validation.md +12 -0
- package/src/xmc-skills/3-solutioning/xiaoma-generate-project-context/SKILL.md +81 -0
- package/src/xmc-skills/3-solutioning/xiaoma-generate-project-context/customize.toml +41 -0
- package/src/{xmc/workflows → xmc-skills/3-solutioning}/xiaoma-generate-project-context/steps/step-03-complete.md +6 -0
- package/src/xmc-skills/4-implementation/xiaoma-agent-dev/SKILL.md +76 -0
- package/src/xmc-skills/4-implementation/xiaoma-agent-dev/customize.toml +131 -0
- package/src/xmc-skills/4-implementation/xiaoma-auto-story-pipeline/checklist.md +29 -0
- package/src/{xmc/workflows/4-implementation/auto-story-pipeline → xmc-skills/4-implementation/xiaoma-auto-story-pipeline}/steps/step-01-init-and-validate.md +16 -8
- package/src/xmc-skills/4-implementation/xiaoma-auto-story-pipeline/steps/step-02-create-story.md +111 -0
- package/src/{xmc/workflows/4-implementation/auto-story-pipeline → xmc-skills/4-implementation/xiaoma-auto-story-pipeline}/steps/step-03-validate-story.md +4 -2
- package/src/{xmc/workflows/4-implementation/auto-story-pipeline → xmc-skills/4-implementation/xiaoma-auto-story-pipeline}/steps/step-04-develop-story.md +10 -6
- package/src/xmc-skills/4-implementation/xiaoma-auto-story-pipeline/steps/step-05-code-review.md +99 -0
- package/src/{xmc/workflows/4-implementation/auto-story-pipeline → xmc-skills/4-implementation/xiaoma-auto-story-pipeline}/steps/step-06-test-story.md +25 -12
- package/src/{xmc/workflows/4-implementation/auto-story-pipeline → xmc-skills/4-implementation/xiaoma-auto-story-pipeline}/steps/step-07-fix-and-retest.md +28 -13
- package/src/xmc-skills/4-implementation/xiaoma-auto-story-pipeline/steps/step-08-complete-story.md +174 -0
- package/src/xmc-skills/4-implementation/xiaoma-auto-story-pipeline/steps/step-09-finalize.md +145 -0
- package/src/xmc-skills/4-implementation/xiaoma-auto-story-pipeline/workflow.md +127 -0
- package/src/xmc-skills/4-implementation/xiaoma-auto-story-pipeline/xiaoma-skill-manifest.yaml +27 -0
- package/src/{xmc/workflows/4-implementation/auto-story-pipeline-batch → xmc-skills/4-implementation/xiaoma-auto-story-pipeline-batch}/SKILL.md +2 -2
- package/src/xmc-skills/4-implementation/xiaoma-auto-story-pipeline-batch/checklist.md +45 -0
- package/src/{xmc/workflows/4-implementation/auto-story-pipeline-batch → xmc-skills/4-implementation/xiaoma-auto-story-pipeline-batch}/workflow.md +152 -9
- package/src/{xmc/workflows/4-implementation/auto-story-pipeline-batch → xmc-skills/4-implementation/xiaoma-auto-story-pipeline-batch}/xiaoma-skill-manifest.yaml +2 -2
- package/src/xmc-skills/4-implementation/xiaoma-checkpoint-preview/SKILL.md +68 -0
- package/src/xmc-skills/4-implementation/xiaoma-checkpoint-preview/customize.toml +41 -0
- package/src/xmc-skills/4-implementation/xiaoma-checkpoint-preview/generate-trail.md +38 -0
- package/src/xmc-skills/4-implementation/xiaoma-checkpoint-preview/step-01-orientation.md +105 -0
- package/src/xmc-skills/4-implementation/xiaoma-checkpoint-preview/step-02-walkthrough.md +89 -0
- package/src/xmc-skills/4-implementation/xiaoma-checkpoint-preview/step-03-detail-pass.md +106 -0
- package/src/xmc-skills/4-implementation/xiaoma-checkpoint-preview/step-04-testing.md +74 -0
- package/src/xmc-skills/4-implementation/xiaoma-checkpoint-preview/step-05-wrapup.md +30 -0
- package/src/xmc-skills/4-implementation/xiaoma-code-review/SKILL.md +90 -0
- package/src/xmc-skills/4-implementation/xiaoma-code-review/customize.toml +41 -0
- package/src/xmc-skills/4-implementation/xiaoma-code-review/steps/step-01-gather-context.md +85 -0
- package/src/xmc-skills/4-implementation/xiaoma-code-review/steps/step-02-review.md +35 -0
- package/src/{xmc/workflows → xmc-skills}/4-implementation/xiaoma-code-review/steps/step-03-triage.md +7 -8
- package/src/xmc-skills/4-implementation/xiaoma-code-review/steps/step-04-present.md +132 -0
- package/src/{xmc/workflows/4-implementation/xiaoma-correct-course/workflow.md → xmc-skills/4-implementation/xiaoma-correct-course/SKILL.md} +65 -31
- package/src/{xmc/workflows → xmc-skills}/4-implementation/xiaoma-correct-course/checklist.md +2 -2
- package/src/xmc-skills/4-implementation/xiaoma-correct-course/customize.toml +41 -0
- package/src/{xmc/workflows/4-implementation/xiaoma-create-story/workflow.md → xmc-skills/4-implementation/xiaoma-create-story/SKILL.md} +60 -11
- package/src/xmc-skills/4-implementation/xiaoma-create-story/customize.toml +41 -0
- package/src/xmc-skills/4-implementation/xiaoma-create-story/references/headless.md +32 -0
- package/src/{xmc/workflows/4-implementation/xiaoma-dev-story/workflow.md → xmc-skills/4-implementation/xiaoma-dev-story/SKILL.md} +70 -20
- package/src/xmc-skills/4-implementation/xiaoma-dev-story/customize.toml +41 -0
- package/src/xmc-skills/4-implementation/xiaoma-investigate/SKILL.md +196 -0
- package/src/xmc-skills/4-implementation/xiaoma-investigate/customize.toml +62 -0
- package/src/xmc-skills/4-implementation/xiaoma-investigate/references/case-file-template.md +127 -0
- package/src/{xmc/workflows/xiaoma-qa-generate-e2e-tests/workflow.md → xmc-skills/4-implementation/xiaoma-qa-generate-e2e-tests/SKILL.md} +51 -23
- package/src/{xmc/workflows → xmc-skills/4-implementation}/xiaoma-qa-generate-e2e-tests/checklist.md +1 -5
- package/src/xmc-skills/4-implementation/xiaoma-qa-generate-e2e-tests/customize.toml +41 -0
- package/src/xmc-skills/4-implementation/xiaoma-quick-dev/SKILL.md +111 -0
- package/src/xmc-skills/4-implementation/xiaoma-quick-dev/compile-epic-context.md +62 -0
- package/src/xmc-skills/4-implementation/xiaoma-quick-dev/customize.toml +41 -0
- package/src/xmc-skills/4-implementation/xiaoma-quick-dev/spec-template.md +88 -0
- package/src/xmc-skills/4-implementation/xiaoma-quick-dev/step-01-clarify-and-route.md +100 -0
- package/src/xmc-skills/4-implementation/xiaoma-quick-dev/step-02-plan.md +47 -0
- package/src/xmc-skills/4-implementation/xiaoma-quick-dev/step-03-implement.md +41 -0
- package/src/xmc-skills/4-implementation/xiaoma-quick-dev/step-04-review.md +50 -0
- package/src/xmc-skills/4-implementation/xiaoma-quick-dev/step-05-present.md +78 -0
- package/src/xmc-skills/4-implementation/xiaoma-quick-dev/step-oneshot.md +71 -0
- package/src/xmc-skills/4-implementation/xiaoma-quick-dev/sync-sprint-status.md +19 -0
- package/src/{xmc/workflows/4-implementation/xiaoma-retrospective/workflow.md → xmc-skills/4-implementation/xiaoma-retrospective/SKILL.md} +185 -152
- package/src/xmc-skills/4-implementation/xiaoma-retrospective/customize.toml +41 -0
- package/src/{xmc/workflows/4-implementation/xiaoma-sprint-planning/workflow.md → xmc-skills/4-implementation/xiaoma-sprint-planning/SKILL.md} +59 -15
- package/src/xmc-skills/4-implementation/xiaoma-sprint-planning/customize.toml +41 -0
- package/src/xmc-skills/4-implementation/xiaoma-sprint-planning/references/headless.md +28 -0
- package/src/{xmc/workflows → xmc-skills}/4-implementation/xiaoma-sprint-planning/sprint-status-template.yaml +3 -3
- package/src/{xmc/workflows/4-implementation/xiaoma-sprint-status/workflow.md → xmc-skills/4-implementation/xiaoma-sprint-status/SKILL.md} +57 -20
- package/src/xmc-skills/4-implementation/xiaoma-sprint-status/customize.toml +41 -0
- package/src/{xmc/workflows/5-full-pipeline/auto-full-pipeline → xmc-skills/5-full-pipeline/xiaoma-auto-full-pipeline}/checklist.md +6 -0
- package/src/{xmc/workflows/5-full-pipeline/auto-full-pipeline → xmc-skills/5-full-pipeline/xiaoma-auto-full-pipeline}/steps/step-01-init-and-validate.md +28 -4
- package/src/{xmc/workflows/5-full-pipeline/auto-full-pipeline → xmc-skills/5-full-pipeline/xiaoma-auto-full-pipeline}/steps/step-02-run-requirements-pipeline.md +2 -1
- package/src/{xmc/workflows/5-full-pipeline/auto-full-pipeline → xmc-skills/5-full-pipeline/xiaoma-auto-full-pipeline}/steps/step-03-bridge-sprint-planning.md +63 -9
- package/src/{xmc/workflows/5-full-pipeline/auto-full-pipeline → xmc-skills/5-full-pipeline/xiaoma-auto-full-pipeline}/steps/step-04-run-story-pipeline.md +2 -1
- package/src/{xmc/workflows/5-full-pipeline/auto-full-pipeline → xmc-skills/5-full-pipeline/xiaoma-auto-full-pipeline}/steps/step-05-finalize.md +30 -3
- package/src/{xmc/workflows/5-full-pipeline/auto-full-pipeline → xmc-skills/5-full-pipeline/xiaoma-auto-full-pipeline}/workflow.md +7 -8
- package/src/{xmc/workflows/5-full-pipeline/auto-prd-to-stories → xmc-skills/5-full-pipeline/xiaoma-auto-prd-to-stories}/checklist.md +4 -0
- package/src/{xmc/workflows/5-full-pipeline/auto-prd-to-stories → xmc-skills/5-full-pipeline/xiaoma-auto-prd-to-stories}/steps/step-01-init-and-validate.md +8 -7
- package/src/{xmc/workflows/5-full-pipeline/auto-prd-to-stories → xmc-skills/5-full-pipeline/xiaoma-auto-prd-to-stories}/steps/step-02-create-epics.md +3 -2
- package/src/{xmc/workflows/5-full-pipeline/auto-prd-to-stories → xmc-skills/5-full-pipeline/xiaoma-auto-prd-to-stories}/steps/step-03-bridge-sprint-planning.md +68 -14
- package/src/{xmc/workflows/5-full-pipeline/auto-prd-to-stories → xmc-skills/5-full-pipeline/xiaoma-auto-prd-to-stories}/steps/step-04-batch-create-stories.md +9 -7
- package/src/{xmc/workflows/5-full-pipeline/auto-prd-to-stories → xmc-skills/5-full-pipeline/xiaoma-auto-prd-to-stories}/steps/step-05-finalize.md +48 -8
- package/src/{xmc/workflows/5-full-pipeline/auto-prd-to-stories → xmc-skills/5-full-pipeline/xiaoma-auto-prd-to-stories}/workflow.md +7 -8
- package/src/xmc-skills/module-help.csv +32 -0
- package/src/xmc-skills/module.yaml +95 -0
- package/src/xpm-skills/module-help.csv +3 -0
- package/src/xpm-skills/module.yaml +36 -0
- package/src/xpm-skills/xiaoma-agent-patent-advisor/SKILL.md +75 -0
- package/src/xpm-skills/xiaoma-agent-patent-advisor/customize.toml +46 -0
- package/src/xpm-skills/xiaoma-patent-mining/SKILL.md +6 -0
- package/src/xpm-skills/xiaoma-patent-mining/steps/step-01-project-analysis.md +65 -0
- package/src/xpm-skills/xiaoma-patent-mining/steps/step-02-patent-mining.md +87 -0
- package/src/xpm-skills/xiaoma-patent-mining/steps/step-03-disclosure-writing.md +110 -0
- package/src/xpm-skills/xiaoma-patent-mining/steps/step-04-ai-taste-removal.md +85 -0
- package/src/xpm-skills/xiaoma-patent-mining/steps/step-05-docx-generation.md +111 -0
- package/src/xpm-skills/xiaoma-patent-mining/workflow.md +94 -0
- package/tools/format-workflow-md.js +263 -0
- package/tools/{cli → installer}/README.md +2 -2
- package/tools/installer/cli-utils.js +57 -0
- package/tools/installer/commands/install.js +146 -0
- package/tools/{cli → installer}/commands/status.js +15 -7
- package/tools/{cli → installer}/commands/uninstall.js +7 -7
- package/tools/installer/core/config.js +73 -0
- package/tools/installer/core/existing-install.js +121 -0
- package/tools/installer/core/install-paths.js +132 -0
- package/tools/installer/core/installer.js +1624 -0
- package/tools/installer/core/legacy-warnings.js +156 -0
- package/tools/installer/core/manifest-generator.js +859 -0
- package/tools/installer/core/manifest.js +434 -0
- package/tools/{cli/lib → installer}/file-ops.js +1 -1
- package/tools/installer/fs-native.js +116 -0
- package/tools/installer/ide/_config-driven.js +972 -0
- package/tools/{cli/installers/lib → installer}/ide/manager.js +82 -62
- package/tools/installer/ide/platform-codes.js +80 -0
- package/tools/installer/ide/platform-codes.yaml +322 -0
- package/tools/installer/ide/shared/installed-skills.js +50 -0
- package/tools/{cli/installers/lib → installer}/ide/shared/path-utils.js +0 -145
- package/tools/{cli/installers/lib → installer}/ide/shared/skill-manifest.js +3 -36
- package/tools/installer/list-options.js +210 -0
- package/tools/{cli/installers/lib → installer}/message-loader.js +3 -3
- package/tools/installer/modules/channel-plan.js +203 -0
- package/tools/installer/modules/channel-resolver.js +241 -0
- package/tools/installer/modules/custom-module-manager.js +912 -0
- package/tools/installer/modules/external-manager.js +533 -0
- package/tools/installer/modules/module-help-schema.js +13 -0
- package/tools/{cli/installers/lib/core/config-collector.js → installer/modules/official-modules.js} +1052 -110
- package/tools/installer/modules/plugin-resolver.js +398 -0
- package/tools/installer/modules/version-resolver.js +336 -0
- package/tools/installer/project-root.js +230 -0
- package/tools/{cli/lib → installer}/prompts.js +143 -100
- package/tools/installer/set-overrides.js +367 -0
- package/tools/installer/ui.js +2078 -0
- package/tools/{cli → installer}/xiaoma-cli.js +9 -10
- package/tools/{cli/lib → installer}/yaml-format.js +1 -1
- package/tools/migrate-custom-module-paths.js +124 -0
- package/tools/schema/step.js +855 -0
- package/tools/skill-validator.md +323 -0
- package/tools/validate-file-refs.js +566 -0
- package/tools/validate-frontmatter-prose-routing.js +334 -0
- package/tools/validate-skills.js +702 -0
- package/tools/validate-step-schemas.js +401 -0
- package/tools/validate-svg-changes.sh +1 -1
- package/tools/validate-trigger-column-vs-emits.js +375 -0
- package/tools/validate-warnings-samples.js +261 -0
- package/tools/xiaoma/rebrand.mjs +0 -0
- package/tools/xiaoma-npx-wrapper.js +2 -2
- package/.playwright-cli/console-2026-05-13T06-36-26-793Z.log +0 -2
- package/.playwright-cli/page-2026-05-13T06-36-27-725Z.yml +0 -1
- package/CLAUDE.md +0 -111
- package/README.md +0 -128
- package/XiaoMa-CLI-2026H2-/350/277/255/344/273/243/350/247/204/345/210/222.pptx +0 -0
- package/demo/xiaoma-bug-circle-resolve/SKILL.md +0 -6
- package/demo/xiaoma-bug-circle-resolve/workflow.md +0 -254
- package/demo/xiaoma-bug-resolve/SKILL.md +0 -6
- package/demo/xiaoma-bug-resolve/workflow.md +0 -269
- package/demo/xiaoma-prd-saas-zh/README.md +0 -57
- package/demo/xiaoma-prd-saas-zh/domain-research.md +0 -128
- package/demo/xiaoma-prd-saas-zh/epics.md +0 -303
- package/demo/xiaoma-prd-saas-zh/market-research-2026-q1.md +0 -183
- package/demo/xiaoma-prd-saas-zh/prd-bad-examples.md +0 -268
- package/demo/xiaoma-prd-saas-zh/prd.md +0 -409
- package/demo/xiaoma-prd-saas-zh/product-brief.md +0 -97
- package/demo/xiaoma-prd-saas-zh/validation-report.md +0 -279
- package/docs/roadshow/01-/351/241/271/347/233/256/346/246/202/350/247/210/344/270/216/346/236/266/346/236/204.md +0 -189
- package/docs/roadshow/02-/346/231/272/350/203/275/344/275/223/347/263/273/347/273/237/350/257/246/350/247/243.md +0 -464
- package/docs/roadshow/03-/346/231/272/350/203/275/344/275/223/344/272/244/344/272/222/346/265/201/347/250/213/345/233/276.md +0 -334
- package/docs/roadshow/04-/345/267/245/344/275/234/346/265/201/346/211/247/350/241/214/350/257/246/350/247/243.md +0 -1038
- package/docs/roadshow/05-/346/212/200/346/234/257/345/256/236/347/216/260/344/270/216/345/210/233/346/226/260/344/272/256/347/202/271.md +0 -205
- package/docs/roadshow/06-/350/267/257/346/274/224/346/200/273/347/273/223/344/270/216/346/274/224/347/244/272/345/273/272/350/256/256.md +0 -167
- package/media/doc1_fig1.png +0 -0
- package/media/doc1_fig2.png +0 -0
- package/media/doc1_fig3.png +0 -0
- package/media/doc1_fig4.png +0 -0
- package/media/doc2_fig1.png +0 -0
- package/media/doc2_fig2.png +0 -0
- package/media/doc2_fig3.png +0 -0
- package/media/doc2_fig4.png +0 -0
- package/media/doc3_fig1.png +0 -0
- package/media/doc3_fig2.png +0 -0
- package/media/doc3_fig3.png +0 -0
- package/media/doc3_fig4.png +0 -0
- package/media/doc4_fig1.png +0 -0
- package/media/doc4_fig2.png +0 -0
- package/media/doc4_fig3.png +0 -0
- package/media/doc5_fig1.png +0 -0
- package/media/doc5_fig2.png +0 -0
- package/media/doc5_fig3.png +0 -0
- package/patent-disclosure-optimized/SKILL.md +0 -416
- package/src/core/module-help.csv +0 -11
- package/src/core/skills/xiaoma-advanced-elicitation/SKILL.md +0 -6
- package/src/core/skills/xiaoma-advanced-elicitation/methods.csv +0 -51
- package/src/core/skills/xiaoma-editorial-review-prose/SKILL.md +0 -6
- package/src/core/skills/xiaoma-editorial-review-structure/SKILL.md +0 -6
- package/src/core/skills/xiaoma-help/SKILL.md +0 -6
- package/src/core/skills/xiaoma-help/workflow.md +0 -88
- package/src/core/skills/xiaoma-help/xiaoma-skill-manifest.yaml +0 -1
- package/src/core/skills/xiaoma-index-docs/SKILL.md +0 -6
- package/src/core/skills/xiaoma-index-docs/xiaoma-skill-manifest.yaml +0 -1
- package/src/core/skills/xiaoma-party-mode/SKILL.md +0 -6
- package/src/core/skills/xiaoma-party-mode/steps/step-01-agent-loading.md +0 -138
- package/src/core/skills/xiaoma-party-mode/steps/step-02-discussion-orchestration.md +0 -187
- package/src/core/skills/xiaoma-party-mode/steps/step-03-graceful-exit.md +0 -167
- package/src/core/skills/xiaoma-party-mode/workflow.md +0 -190
- package/src/core/skills/xiaoma-party-mode/xiaoma-skill-manifest.yaml +0 -1
- package/src/core/skills/xiaoma-review-adversarial-general/SKILL.md +0 -6
- package/src/core/skills/xiaoma-review-adversarial-general/xiaoma-skill-manifest.yaml +0 -1
- package/src/core/skills/xiaoma-review-edge-case-hunter/SKILL.md +0 -6
- package/src/core/skills/xiaoma-review-edge-case-hunter/xiaoma-skill-manifest.yaml +0 -1
- package/src/core/skills/xiaoma-shard-doc/SKILL.md +0 -6
- package/src/core/skills/xiaoma-shard-doc/xiaoma-skill-manifest.yaml +0 -1
- package/src/core/tasks/xiaoma-create-prd/SKILL.md +0 -6
- package/src/core/tasks/xiaoma-create-prd/data/prd-purpose.md +0 -354
- package/src/core/tasks/xiaoma-create-prd/data/upstream-input-contract.md +0 -168
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-01-init.md +0 -178
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-01b-continue.md +0 -161
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-02-discovery.md +0 -208
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-02b-vision.md +0 -142
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-02c-executive-summary.md +0 -158
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-03-success.md +0 -214
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-04-journeys.md +0 -201
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-05-domain.md +0 -194
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-06-innovation.md +0 -211
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-07-project-type.md +0 -222
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-08-scoping.md +0 -216
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-09-functional.md +0 -219
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-10-nonfunctional.md +0 -230
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-11-polish.md +0 -221
- package/src/core/tasks/xiaoma-create-prd/steps-c/step-12-complete.md +0 -115
- package/src/core/tasks/xiaoma-create-prd/templates/prd-skeleton-reference.md +0 -428
- package/src/core/tasks/xiaoma-create-prd/templates/prd-template.md +0 -108
- package/src/core/tasks/xiaoma-create-prd/workflow.md +0 -62
- package/src/core/tasks/xiaoma-create-prd/xiaoma-skill-manifest.yaml +0 -1
- package/src/utility/agent-components/activation-rules.txt +0 -6
- package/src/utility/agent-components/activation-steps.txt +0 -14
- package/src/utility/agent-components/agent-command-header.md +0 -1
- package/src/utility/agent-components/agent.customize.template.yaml +0 -41
- package/src/utility/agent-components/handler-action.txt +0 -4
- package/src/utility/agent-components/handler-data.txt +0 -5
- package/src/utility/agent-components/handler-exec.txt +0 -6
- package/src/utility/agent-components/handler-multi.txt +0 -13
- package/src/utility/agent-components/handler-tmpl.txt +0 -5
- package/src/utility/agent-components/menu-handlers.txt +0 -6
- package/src/xmc/agents/analyst.agent.yaml +0 -47
- package/src/xmc/agents/architect.agent.yaml +0 -29
- package/src/xmc/agents/dev.agent.yaml +0 -38
- package/src/xmc/agents/pm.agent.yaml +0 -44
- package/src/xmc/agents/qa.agent.yaml +0 -58
- package/src/xmc/agents/quick-flow-solo-dev.agent.yaml +0 -36
- package/src/xmc/agents/sm.agent.yaml +0 -53
- package/src/xmc/agents/tech-writer/tech-writer-sidecar/documentation-standards.md +0 -224
- package/src/xmc/agents/tech-writer/tech-writer.agent.yaml +0 -46
- package/src/xmc/agents/tech-writer/xiaoma-skill-manifest.yaml +0 -3
- package/src/xmc/agents/ux-designer.agent.yaml +0 -27
- package/src/xmc/agents/xiaoma-skill-manifest.yaml +0 -39
- package/src/xmc/data/project-context-template.md +0 -26
- package/src/xmc/module-help.csv +0 -32
- package/src/xmc/module.yaml +0 -50
- package/src/xmc/teams/default-party.csv +0 -20
- package/src/xmc/teams/team-fullstack.yaml +0 -12
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/steps/step-08-finalize.md +0 -124
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/workflow.md +0 -107
- package/src/xmc/workflows/1-analysis/auto-requirements-pipeline/xiaoma-skill-manifest.yaml +0 -3
- package/src/xmc/workflows/1-analysis/research/market-steps/step-01-init.md +0 -182
- package/src/xmc/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +0 -237
- package/src/xmc/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +0 -249
- package/src/xmc/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +0 -259
- package/src/xmc/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +0 -177
- package/src/xmc/workflows/1-analysis/research/market-steps/step-06-research-completion.md +0 -476
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/SKILL.md +0 -6
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/workflow.md +0 -49
- package/src/xmc/workflows/1-analysis/research/xiaoma-domain-research/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/SKILL.md +0 -6
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/workflow.md +0 -49
- package/src/xmc/workflows/1-analysis/research/xiaoma-market-research/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/SKILL.md +0 -6
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/research.template.md +0 -29
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/workflow.md +0 -50
- package/src/xmc/workflows/1-analysis/research/xiaoma-technical-research/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/SKILL.md +0 -6
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/product-brief.template.md +0 -10
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-01-init.md +0 -170
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-01b-continue.md +0 -158
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-02-vision.md +0 -193
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-03-users.md +0 -196
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-04-metrics.md +0 -199
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-05-scope.md +0 -213
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/steps/step-06-complete.md +0 -159
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/workflow.md +0 -55
- package/src/xmc/workflows/1-analysis/xiaoma-create-product-brief/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/1-analysis/xiaoma-product-brief-preview/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/2-plan-workflows/create-prd/data/domain-complexity.csv +0 -15
- package/src/xmc/workflows/2-plan-workflows/create-prd/data/prd-purpose.md +0 -197
- package/src/xmc/workflows/2-plan-workflows/create-prd/data/project-types.csv +0 -11
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +0 -224
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-02-format-detection.md +0 -191
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-02b-parity-check.md +0 -209
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-03-density-validation.md +0 -174
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-04-brief-coverage-validation.md +0 -214
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-05-measurability-validation.md +0 -228
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-06-traceability-validation.md +0 -217
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-07-implementation-leakage-validation.md +0 -205
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-08-domain-compliance-validation.md +0 -243
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-09-project-type-validation.md +0 -263
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-10-smart-validation.md +0 -209
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-11-holistic-quality-validation.md +0 -264
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-12-completeness-validation.md +0 -242
- package/src/xmc/workflows/2-plan-workflows/create-prd/steps-v/step-v-13-report-complete.md +0 -232
- package/src/xmc/workflows/2-plan-workflows/create-prd/workflow-validate-prd.md +0 -65
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/SKILL.md +0 -6
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-01-init.md +0 -135
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-01b-continue.md +0 -127
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-02-discovery.md +0 -190
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-03-core-experience.md +0 -217
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-04-emotional-response.md +0 -220
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-05-inspiration.md +0 -235
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-06-design-system.md +0 -253
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-07-defining-experience.md +0 -255
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-08-visual-foundation.md +0 -225
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-09-design-directions.md +0 -225
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-10-user-journeys.md +0 -242
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-11-component-strategy.md +0 -249
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-12-ux-patterns.md +0 -238
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-13-responsive-accessibility.md +0 -265
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/steps/step-14-complete.md +0 -171
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/ux-design-template.md +0 -13
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/workflow.md +0 -36
- package/src/xmc/workflows/2-plan-workflows/xiaoma-create-ux-design/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/SKILL.md +0 -6
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/steps-e/step-e-01-discovery.md +0 -242
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/steps-e/step-e-01b-legacy-conversion.md +0 -204
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/steps-e/step-e-02-review.md +0 -245
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/steps-e/step-e-03-edit.md +0 -250
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/steps-e/step-e-04-complete.md +0 -165
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/workflow.md +0 -63
- package/src/xmc/workflows/2-plan-workflows/xiaoma-edit-prd/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/SKILL.md +0 -6
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/data/domain-complexity.csv +0 -15
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/data/prd-purpose.md +0 -197
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/data/prd-quality-rubric.csv +0 -14
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/data/project-types.csv +0 -11
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-01-discovery.md +0 -221
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-02-format-detection.md +0 -188
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-02b-parity-check.md +0 -206
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-03-density-validation.md +0 -171
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-04-brief-coverage-validation.md +0 -211
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-05-measurability-validation.md +0 -225
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-06-traceability-validation.md +0 -214
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-07-implementation-leakage-validation.md +0 -202
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-08-domain-compliance-validation.md +0 -240
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-09-project-type-validation.md +0 -260
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-10-smart-validation.md +0 -206
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-11-holistic-quality-validation.md +0 -261
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-12-completeness-validation.md +0 -239
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/steps-v/step-v-13-report-complete.md +0 -229
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/workflow.md +0 -62
- package/src/xmc/workflows/2-plan-workflows/xiaoma-validate-prd/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/SKILL.md +0 -6
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/workflow.md +0 -49
- package/src/xmc/workflows/3-solutioning/xiaoma-check-implementation-readiness/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/SKILL.md +0 -6
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/workflow.md +0 -38
- package/src/xmc/workflows/3-solutioning/xiaoma-create-architecture/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/3-solutioning/xiaoma-create-epics-and-stories/SKILL.md +0 -6
- package/src/xmc/workflows/3-solutioning/xiaoma-create-epics-and-stories/workflow.md +0 -53
- package/src/xmc/workflows/3-solutioning/xiaoma-create-epics-and-stories/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/checklist.md +0 -22
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-02-create-story.md +0 -102
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-05-code-review.md +0 -95
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-08-complete-story.md +0 -114
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/steps/step-09-finalize.md +0 -69
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/workflow.md +0 -89
- package/src/xmc/workflows/4-implementation/auto-story-pipeline/xiaoma-skill-manifest.yaml +0 -3
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/SKILL.md +0 -6
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/checklist.md +0 -23
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/steps/step-01-gather-context.md +0 -61
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/steps/step-02-review.md +0 -41
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/steps/step-04-present.md +0 -38
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/workflow.md +0 -54
- package/src/xmc/workflows/4-implementation/xiaoma-code-review/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/4-implementation/xiaoma-correct-course/SKILL.md +0 -6
- package/src/xmc/workflows/4-implementation/xiaoma-correct-course/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/4-implementation/xiaoma-create-story/SKILL.md +0 -6
- package/src/xmc/workflows/4-implementation/xiaoma-create-story/discover-inputs.md +0 -88
- package/src/xmc/workflows/4-implementation/xiaoma-create-story/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/4-implementation/xiaoma-dev-story/SKILL.md +0 -6
- package/src/xmc/workflows/4-implementation/xiaoma-dev-story/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/4-implementation/xiaoma-retrospective/SKILL.md +0 -6
- package/src/xmc/workflows/4-implementation/xiaoma-retrospective/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/4-implementation/xiaoma-sprint-planning/SKILL.md +0 -6
- package/src/xmc/workflows/4-implementation/xiaoma-sprint-planning/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/4-implementation/xiaoma-sprint-status/SKILL.md +0 -6
- package/src/xmc/workflows/4-implementation/xiaoma-sprint-status/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/xiaoma-document-project/SKILL.md +0 -6
- package/src/xmc/workflows/xiaoma-document-project/workflow.md +0 -27
- package/src/xmc/workflows/xiaoma-document-project/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/xiaoma-generate-project-context/SKILL.md +0 -6
- package/src/xmc/workflows/xiaoma-generate-project-context/workflow.md +0 -43
- package/src/xmc/workflows/xiaoma-generate-project-context/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/xiaoma-qa-generate-e2e-tests/SKILL.md +0 -6
- package/src/xmc/workflows/xiaoma-qa-generate-e2e-tests/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/SKILL.md +0 -6
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/steps/step-01-mode-detection.md +0 -169
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/steps/step-02-context-gathering.md +0 -114
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/steps/step-03-execute.md +0 -107
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/steps/step-04-self-check.md +0 -107
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/steps/step-05-adversarial-review.md +0 -94
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/steps/step-06-resolve-findings.md +0 -144
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/workflow.md +0 -38
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-dev-new-preview/xiaoma-skill-manifest.yaml +0 -1
- package/src/xmc/workflows/xiaoma-quick-flow/xiaoma-quick-spec/xiaoma-skill-manifest.yaml +0 -1
- package/tools/cli/commands/install.js +0 -87
- package/tools/cli/external-official-modules.yaml +0 -4
- package/tools/cli/installers/lib/core/custom-module-cache.js +0 -260
- package/tools/cli/installers/lib/core/dependency-resolver.js +0 -743
- package/tools/cli/installers/lib/core/detector.js +0 -223
- package/tools/cli/installers/lib/core/ide-config-manager.js +0 -157
- package/tools/cli/installers/lib/core/installer.js +0 -3212
- package/tools/cli/installers/lib/core/manifest-generator.js +0 -1374
- package/tools/cli/installers/lib/core/manifest.js +0 -1040
- package/tools/cli/installers/lib/custom/handler.js +0 -358
- package/tools/cli/installers/lib/ide/_base-ide.js +0 -673
- package/tools/cli/installers/lib/ide/_config-driven.js +0 -1058
- package/tools/cli/installers/lib/ide/platform-codes.js +0 -100
- package/tools/cli/installers/lib/ide/platform-codes.yaml +0 -321
- package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +0 -181
- package/tools/cli/installers/lib/ide/shared/module-injections.js +0 -136
- package/tools/cli/installers/lib/ide/shared/task-tool-command-generator.js +0 -368
- package/tools/cli/installers/lib/ide/shared/workflow-command-generator.js +0 -179
- package/tools/cli/installers/lib/ide/shared/xiaoma-artifacts.js +0 -181
- package/tools/cli/installers/lib/ide/templates/agent-command-template.md +0 -14
- package/tools/cli/installers/lib/ide/templates/combined/antigravity.md +0 -8
- package/tools/cli/installers/lib/ide/templates/combined/default-agent.md +0 -15
- package/tools/cli/installers/lib/ide/templates/combined/default-task.md +0 -10
- package/tools/cli/installers/lib/ide/templates/combined/default-tool.md +0 -10
- package/tools/cli/installers/lib/ide/templates/combined/default-workflow.md +0 -6
- package/tools/cli/installers/lib/ide/templates/combined/gemini-agent.toml +0 -14
- package/tools/cli/installers/lib/ide/templates/combined/gemini-task.toml +0 -11
- package/tools/cli/installers/lib/ide/templates/combined/gemini-tool.toml +0 -11
- package/tools/cli/installers/lib/ide/templates/combined/gemini-workflow-yaml.toml +0 -16
- package/tools/cli/installers/lib/ide/templates/combined/gemini-workflow.toml +0 -14
- package/tools/cli/installers/lib/ide/templates/combined/kiro-agent.md +0 -16
- package/tools/cli/installers/lib/ide/templates/combined/kiro-task.md +0 -9
- package/tools/cli/installers/lib/ide/templates/combined/kiro-tool.md +0 -9
- package/tools/cli/installers/lib/ide/templates/combined/kiro-workflow.md +0 -7
- package/tools/cli/installers/lib/ide/templates/combined/opencode-agent.md +0 -15
- package/tools/cli/installers/lib/ide/templates/combined/opencode-task.md +0 -13
- package/tools/cli/installers/lib/ide/templates/combined/opencode-tool.md +0 -13
- package/tools/cli/installers/lib/ide/templates/combined/opencode-workflow-yaml.md +0 -16
- package/tools/cli/installers/lib/ide/templates/combined/opencode-workflow.md +0 -16
- package/tools/cli/installers/lib/ide/templates/combined/rovodev.md +0 -9
- package/tools/cli/installers/lib/ide/templates/combined/trae.md +0 -9
- package/tools/cli/installers/lib/ide/templates/combined/windsurf-workflow.md +0 -10
- package/tools/cli/installers/lib/ide/templates/split/.gitkeep +0 -0
- package/tools/cli/installers/lib/modules/external-manager.js +0 -136
- package/tools/cli/installers/lib/modules/manager.js +0 -1382
- package/tools/cli/lib/activation-builder.js +0 -165
- package/tools/cli/lib/agent/compiler.js +0 -516
- package/tools/cli/lib/agent/installer.js +0 -680
- package/tools/cli/lib/agent/template-engine.js +0 -152
- package/tools/cli/lib/agent-analyzer.js +0 -97
- package/tools/cli/lib/agent-party-generator.js +0 -194
- package/tools/cli/lib/cli-utils.js +0 -182
- package/tools/cli/lib/config.js +0 -213
- package/tools/cli/lib/platform-codes.js +0 -116
- package/tools/cli/lib/project-root.js +0 -77
- package/tools/cli/lib/ui.js +0 -1960
- package/tools/cli/lib/xml-handler.js +0 -177
- package/tools/cli/lib/xml-to-markdown.js +0 -82
- package/tools/cli/lib/yaml-xml-builder.js +0 -570
- package/tools/platform-codes.yaml +0 -157
- package/tools/schema/agent.js +0 -489
- package//344/270/223/345/210/251/344/272/244/345/272/225/344/271/246_1_/351/235/242/345/220/221AI/346/231/272/350/203/275/344/275/223/347/232/204/345/244/232/351/200/232/351/201/223/344/276/235/350/265/226_20260318.md +0 -483
- package//344/270/223/345/210/251/344/272/244/345/272/225/344/271/246_2_/345/237/272/344/272/216/351/205/215/347/275/256/351/251/261/345/212/250/347/232/204/350/267/250/345/271/263/345/217/260IDE/346/231/272/350/203/275_20260318.md +0 -592
- package//344/270/223/345/210/251/344/272/244/345/272/225/344/271/246_3_AI/346/231/272/350/203/275/344/275/223/345/243/260/346/230/216/345/274/217/345/256/232/344/271/211/347/232/204/347/274/226/350/257/221/346/265/201/346/260/264_20260318.md +0 -624
- package//344/270/223/345/210/251/344/272/244/345/272/225/344/271/246_4_/345/237/272/344/272/216/345/223/210/345/270/214/346/214/207/347/272/271/347/232/204/346/231/272/350/203/275/344/275/223/351/231/204/345/261/236/350/265/204/346/272/220/351/200/211_20260318.md +0 -628
- package//344/270/223/345/210/251/344/272/244/345/272/225/344/271/246_5_AI/346/231/272/350/203/275/344/275/223/350/247/246/345/217/221/346/214/207/344/273/244/347/232/204/345/244/215/345/220/210/346/240/274/345/274/217/346/240/241_20260318.md +0 -652
- /package/src/{core/skills → core-skills}/xiaoma-brainstorming/SKILL.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-brainstorming/brain-methods.csv +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-brainstorming/steps/step-01-session-setup.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-brainstorming/steps/step-01b-continue.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-brainstorming/steps/step-02a-user-selected.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-brainstorming/steps/step-02b-ai-recommended.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-brainstorming/steps/step-02c-random-selection.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-brainstorming/steps/step-02d-progressive-flow.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-brainstorming/steps/step-04-idea-organization.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-brainstorming/template.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-distillator/SKILL.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-distillator/agents/distillate-compressor.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-distillator/agents/round-trip-reconstructor.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-distillator/resources/compression-rules.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-distillator/resources/splitting-strategy.md +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-distillator/scripts/tests/test_analyze_sources.py +0 -0
- /package/src/{core/skills → core-skills}/xiaoma-distillator/xiaoma-skill-manifest.yaml +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-domain-research/domain-steps/step-01-init.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-domain-research/domain-steps/step-02-domain-analysis.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-domain-research/domain-steps/step-03-competitive-landscape.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-domain-research/domain-steps/step-04-regulatory-focus.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-domain-research/domain-steps/step-05-technical-trends.md +0 -0
- /package/src/{xmc/workflows/1-analysis/research → xmc-skills/1-analysis/research/xiaoma-domain-research}/research.template.md +0 -0
- /package/src/{xmc/workflows/1-analysis/research/xiaoma-domain-research → xmc-skills/1-analysis/research/xiaoma-market-research}/research.template.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-market-research/steps/step-01-init.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-market-research/steps/step-02-customer-behavior.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-market-research/steps/step-03-customer-pain-points.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-market-research/steps/step-04-customer-decisions.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-market-research/steps/step-05-competitive-analysis.md +0 -0
- /package/src/{xmc/workflows/1-analysis/research/xiaoma-market-research → xmc-skills/1-analysis/research/xiaoma-technical-research}/research.template.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-technical-research/technical-steps/step-01-init.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-technical-research/technical-steps/step-02-technical-overview.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-technical-research/technical-steps/step-03-integration-patterns.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-technical-research/technical-steps/step-04-architectural-patterns.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/research/xiaoma-technical-research/technical-steps/step-05-implementation-research.md +0 -0
- /package/src/{xmc/workflows/1-analysis/auto-requirements-pipeline → xmc-skills/1-analysis/xiaoma-auto-requirements-pipeline}/SKILL.md +0 -0
- /package/src/{xmc/workflows → xmc-skills/1-analysis}/xiaoma-document-project/checklist.md +0 -0
- /package/src/{xmc/workflows → xmc-skills/1-analysis}/xiaoma-document-project/documentation-requirements.csv +0 -0
- /package/src/{xmc/workflows → xmc-skills/1-analysis}/xiaoma-document-project/instructions.md +0 -0
- /package/src/{xmc/workflows → xmc-skills/1-analysis}/xiaoma-document-project/templates/deep-dive-template.md +0 -0
- /package/src/{xmc/workflows → xmc-skills/1-analysis}/xiaoma-document-project/templates/index-template.md +0 -0
- /package/src/{xmc/workflows → xmc-skills/1-analysis}/xiaoma-document-project/templates/project-overview-template.md +0 -0
- /package/src/{xmc/workflows → xmc-skills/1-analysis}/xiaoma-document-project/templates/project-scan-report-schema.json +0 -0
- /package/src/{xmc/workflows → xmc-skills/1-analysis}/xiaoma-document-project/templates/source-tree-template.md +0 -0
- /package/src/{xmc/workflows → xmc-skills/1-analysis}/xiaoma-document-project/workflows/deep-dive-workflow.md +0 -0
- /package/src/{xmc/workflows → xmc-skills/1-analysis}/xiaoma-document-project/workflows/full-scan-workflow.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/xiaoma-product-brief-preview/SKILL.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/xiaoma-product-brief-preview/agents/artifact-analyzer.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/xiaoma-product-brief-preview/agents/opportunity-reviewer.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/xiaoma-product-brief-preview/agents/skeptic-reviewer.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/xiaoma-product-brief-preview/agents/web-researcher.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/xiaoma-product-brief-preview/prompts/contextual-discovery.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/xiaoma-product-brief-preview/prompts/draft-and-review.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/xiaoma-product-brief-preview/prompts/finalize.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/xiaoma-product-brief-preview/prompts/guided-elicitation.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/xiaoma-product-brief-preview/resources/brief-template.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/1-analysis/xiaoma-product-brief-preview/xiaoma-manifest.json +0 -0
- /package/src/{core/skills/xiaoma-advanced-elicitation → xmc-skills/1-analysis/xiaoma-product-brief-preview}/xiaoma-skill-manifest.yaml +0 -0
- /package/src/{core/tasks/xiaoma-create-prd/data → xmc-skills/2-plan-workflows/xiaoma-prd/assets}/domain-complexity.csv +0 -0
- /package/src/{core/tasks/xiaoma-create-prd/data → xmc-skills/2-plan-workflows/xiaoma-prd/assets}/project-types.csv +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-check-implementation-readiness/steps/step-04-ux-alignment.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-check-implementation-readiness/steps/step-05-epic-quality-review.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-check-implementation-readiness/templates/readiness-report-template.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-architecture/architecture-decision-template.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-architecture/data/domain-complexity.csv +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-architecture/data/project-types.csv +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-architecture/steps/step-01-init.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-architecture/steps/step-01b-continue.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-architecture/steps/step-02-context.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-architecture/steps/step-03-starter.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-architecture/steps/step-04-decisions.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-architecture/steps/step-05-patterns.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-architecture/steps/step-06-structure.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-epics-and-stories/steps/step-01-validate-prerequisites.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-epics-and-stories/steps/step-03-create-stories.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/3-solutioning/xiaoma-create-epics-and-stories/templates/epics-template.md +0 -0
- /package/src/{xmc/workflows → xmc-skills/3-solutioning}/xiaoma-generate-project-context/project-context-template.md +0 -0
- /package/src/{xmc/workflows → xmc-skills/3-solutioning}/xiaoma-generate-project-context/steps/step-01-discover.md +0 -0
- /package/src/{xmc/workflows → xmc-skills/3-solutioning}/xiaoma-generate-project-context/steps/step-02-generate.md +0 -0
- /package/src/{xmc/workflows/4-implementation/auto-story-pipeline → xmc-skills/4-implementation/xiaoma-auto-story-pipeline}/SKILL.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/4-implementation/xiaoma-create-story/checklist.md +0 -0
- /package/src/{xmc/workflows/4-implementation/xiaoma-code-review → xmc-skills/4-implementation/xiaoma-create-story}/discover-inputs.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/4-implementation/xiaoma-create-story/template.md +0 -0
- /package/src/{xmc/workflows → xmc-skills}/4-implementation/xiaoma-dev-story/checklist.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-dev-new-preview/SKILL.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-dev-new-preview/steps/step-01-clarify-and-route.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-dev-new-preview/steps/step-02-plan.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-dev-new-preview/steps/step-03-implement.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-dev-new-preview/steps/step-04-review.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-dev-new-preview/steps/step-05-present.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-dev-new-preview/tech-spec-template.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-dev-new-preview/workflow.md +0 -0
- /package/src/{core/skills/xiaoma-brainstorming → xmc-skills/4-implementation/xiaoma-quick-dev-new-preview}/xiaoma-skill-manifest.yaml +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-spec/SKILL.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-spec/steps/step-01-understand.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-spec/steps/step-02-investigate.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-spec/steps/step-03-generate.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-spec/steps/step-04-review.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-spec/tech-spec-template.md +0 -0
- /package/src/{xmc/workflows/xiaoma-quick-flow → xmc-skills/4-implementation}/xiaoma-quick-spec/workflow.md +0 -0
- /package/src/{core/skills/xiaoma-editorial-review-prose → xmc-skills/4-implementation/xiaoma-quick-spec}/xiaoma-skill-manifest.yaml +0 -0
- /package/src/{xmc/workflows → xmc-skills}/4-implementation/xiaoma-sprint-planning/checklist.md +0 -0
- /package/src/{xmc/workflows/5-full-pipeline/auto-full-pipeline → xmc-skills/5-full-pipeline/xiaoma-auto-full-pipeline}/SKILL.md +0 -0
- /package/src/{xmc/workflows/5-full-pipeline/auto-full-pipeline → xmc-skills/5-full-pipeline/xiaoma-auto-full-pipeline}/xiaoma-skill-manifest.yaml +0 -0
- /package/src/{xmc/workflows/5-full-pipeline/auto-prd-to-stories → xmc-skills/5-full-pipeline/xiaoma-auto-prd-to-stories}/SKILL.md +0 -0
- /package/src/{xmc/workflows/5-full-pipeline/auto-prd-to-stories → xmc-skills/5-full-pipeline/xiaoma-auto-prd-to-stories}/xiaoma-skill-manifest.yaml +0 -0
- /package/{patent-disclosure-optimized → src/xpm-skills/xiaoma-patent-mining}/references/disclosure-template.md +0 -0
- /package/{patent-disclosure-optimized → src/xpm-skills/xiaoma-patent-mining}/references/docx-format-spec.md +0 -0
- /package/{patent-disclosure-optimized → src/xpm-skills/xiaoma-patent-mining}/references/mining-principles.md +0 -0
- /package/{patent-disclosure-optimized → src/xpm-skills/xiaoma-patent-mining}/scripts/md2docx.js +0 -0
- /package/src/{core/skills/xiaoma-editorial-review-structure → xpm-skills/xiaoma-patent-mining}/xiaoma-skill-manifest.yaml +0 -0
- /package/tools/{cli/installers → installer}/install-messages.yaml +0 -0
|
@@ -3,13 +3,14 @@ name: "step-06-test-story"
|
|
|
3
3
|
description: "Perform functional testing with real data using QA role"
|
|
4
4
|
nextStepFile: "./step-08-complete-story.md"
|
|
5
5
|
nextStepFile_fail: "./step-07-fix-and-retest.md"
|
|
6
|
+
kind: "quality-gate"
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# Step 6 of 9: QA Functional Testing
|
|
9
10
|
|
|
10
11
|
**Goal:** Perform comprehensive functional testing using real data to verify all acceptance criteria are met.
|
|
11
12
|
|
|
12
|
-
**Role:**
|
|
13
|
+
**Role:** Dev (xiaokai) — QA mode (functional testing)
|
|
13
14
|
|
|
14
15
|
---
|
|
15
16
|
|
|
@@ -27,10 +28,10 @@ nextStepFile_fail: "./step-07-fix-and-retest.md"
|
|
|
27
28
|
|
|
28
29
|
## EXECUTION SEQUENCE
|
|
29
30
|
|
|
30
|
-
### 1. Switch to QA
|
|
31
|
+
### 1. Switch to QA Mode
|
|
31
32
|
|
|
32
|
-
Adopt the QA
|
|
33
|
-
- You are
|
|
33
|
+
Adopt the Dev agent's QA mode:
|
|
34
|
+
- You are xiaokai, the Dev agent in QA mode, focused on functional correctness
|
|
34
35
|
- Your mission: verify every acceptance criterion with real data
|
|
35
36
|
- Zero tolerance for mock data or fake test passes
|
|
36
37
|
- Test from the user's perspective — does it actually work?
|
|
@@ -53,6 +54,7 @@ Invoke the `xiaoma-qa-generate-e2e-tests` skill to generate automated test files
|
|
|
53
54
|
- Generate API tests for any new/modified endpoints
|
|
54
55
|
- Generate E2E tests for any new/modified UI features
|
|
55
56
|
- Run the generated tests to verify they pass; fix any failures immediately
|
|
57
|
+
- When invoking a test runner directly, target specific test files or an explicit glob — NOT a bare directory (e.g. `node --test test/foo.test.js`, not `node --test <dir>`, which errors on some Node versions and would falsely report a failed suite). Prefer the project's configured test script (e.g. `npm test`) when one exists
|
|
56
58
|
|
|
57
59
|
If the project has no test framework or tests are not applicable for this story type, skip this step and proceed directly to functional verification.
|
|
58
60
|
|
|
@@ -121,10 +123,10 @@ Create a test results summary:
|
|
|
121
123
|
## NEXT STEP
|
|
122
124
|
|
|
123
125
|
**If tests pass:**
|
|
124
|
-
**NEXT:** Read fully and follow:
|
|
126
|
+
**NEXT:** Read fully and follow: `./steps/step-08-complete-story.md`
|
|
125
127
|
|
|
126
128
|
**If tests fail:**
|
|
127
|
-
**NEXT:** Read fully and follow:
|
|
129
|
+
**NEXT:** Read fully and follow: `./steps/step-07-fix-and-retest.md`
|
|
128
130
|
|
|
129
131
|
---
|
|
130
132
|
|
|
@@ -190,16 +192,27 @@ Create a test results summary:
|
|
|
190
192
|
|
|
191
193
|
### 3. 测试覆盖率阈值 (Coverage Thresholds)
|
|
192
194
|
|
|
193
|
-
|
|
194
|
-
- 单元测试覆盖率: >= 75%
|
|
195
|
-
- 集成测试覆盖率: >= 60%
|
|
196
|
-
- 接受标准覆盖率: 100% (所有AC必须有至少1个测试)
|
|
195
|
+
**配置 (Configurable via `{project-root}/_xiaoma/xmc/config.yaml`):**
|
|
197
196
|
|
|
198
|
-
|
|
197
|
+
Read the following keys from config (defaults shown). If a key is absent, use the default. If the project is a type for which a metric is not meaningful (e.g., a CLI without integration tests), set the corresponding key to `null` in config to disable that threshold.
|
|
198
|
+
|
|
199
|
+
- `qa.unit_coverage_threshold` — default 75 (percent)
|
|
200
|
+
- `qa.integration_coverage_threshold` — default 60 (percent)
|
|
201
|
+
- `qa.ac_coverage_threshold` — default 100 (percent — required)
|
|
202
|
+
- `qa.enforce_coverage_thresholds` — default `true`. If `false`, missing-threshold failures are recorded as warnings instead of blocking.
|
|
203
|
+
|
|
204
|
+
**强制要求 (when `enforce_coverage_thresholds` is true and thresholds are not `null`):**
|
|
205
|
+
- 单元测试覆盖率: >= `{unit_coverage_threshold}` (default 75%)
|
|
206
|
+
- 集成测试覆盖率: >= `{integration_coverage_threshold}` (default 60%)
|
|
207
|
+
- 接受标准覆盖率: >= `{ac_coverage_threshold}` (default 100% — every AC must have at least 1 test)
|
|
208
|
+
|
|
209
|
+
**如果未达到 (and enforcement is on):**
|
|
199
210
|
- 不允许进入step-07
|
|
200
211
|
- 回到开发阶段添加缺失的tests
|
|
201
212
|
- Type: AC-Incomplete failure → 标记story为"NEEDS_MORE_TESTS"
|
|
202
213
|
|
|
214
|
+
**If enforcement is off:** Log a WARNING in the QA Results section noting the gap; continue. Append to `{run_warnings}`: `[step-06] Coverage threshold not enforced (enforce_coverage_thresholds=false) for {current_story_key} — unit {unit_pct}% / integration {integration_pct}% / AC {ac_pct}%`
|
|
215
|
+
|
|
203
216
|
### 4. 记录失败详情 (Document Failures)
|
|
204
217
|
|
|
205
218
|
在Story文件的"QA Results"部分记录:
|
|
@@ -233,7 +246,7 @@ Create a test results summary:
|
|
|
233
246
|
|
|
234
247
|
### 5. 条件通过规则 (Conditional Pass)
|
|
235
248
|
|
|
236
|
-
故事可以在以下条件下**有条件通过**到step-
|
|
249
|
+
故事可以在以下条件下**有条件通过**到step-08:
|
|
237
250
|
|
|
238
251
|
✅ **全部Type A/B失败已解决**
|
|
239
252
|
✅ **至少80%的接受标准通过**
|
|
@@ -3,6 +3,7 @@ name: "step-07-fix-and-retest"
|
|
|
3
3
|
description: "Fix bugs found in review/testing, then re-run tests. Self-referencing loop with max 5 iterations."
|
|
4
4
|
nextStepFile: "./step-08-complete-story.md"
|
|
5
5
|
nextStepFile_loop: "./step-07-fix-and-retest.md"
|
|
6
|
+
kind: "loop"
|
|
6
7
|
---
|
|
7
8
|
|
|
8
9
|
# Step 7 of 9: Fix and Retest
|
|
@@ -23,13 +24,25 @@ Set `{max_fix_iterations}` from config (or default 5).
|
|
|
23
24
|
|
|
24
25
|
## LOOP CONTROL
|
|
25
26
|
|
|
27
|
+
This step uses a hybrid loop pattern:
|
|
28
|
+
- `{fix_iteration}` is the canonical iteration counter (incremented once per entry to this step file).
|
|
29
|
+
- The "next step → step-07" recursion in section 6 exists only to force a fresh file reload (combats long-context degradation). It is NOT a counter — the counter is `{fix_iteration}`.
|
|
30
|
+
|
|
31
|
+
0. **Nil guard — initialize `{fix_iteration}` if it is unset or null.**
|
|
32
|
+
- Normal entry: step-01 initialized `{fix_iteration}` = 0, so this guard is a no-op.
|
|
33
|
+
- Resume entry: future resume modes that jump directly to step-07 (e.g., resuming a story whose status is `review` and which already has known fix work pending) may not have re-initialized the counter. To stay safe, treat unset / null as 0 here.
|
|
34
|
+
- Routed-from-step-05 entry: step-05 routes to step-07 with `{fix_iteration}` carried over from earlier in the same run; nothing to do.
|
|
35
|
+
- Action: `IF {fix_iteration} is null OR unset: set {fix_iteration} = 0`. This is idempotent and never overwrites an existing positive counter.
|
|
36
|
+
|
|
26
37
|
1. Increment `{fix_iteration}` by 1
|
|
27
38
|
2. **IF `{fix_iteration}` > `{max_fix_iterations}`:**
|
|
39
|
+
- Append to `{run_warnings}`: `[step-07] Max fix iterations ({max_fix_iterations}) reached for {current_story_key} — escalation dispatched (see protocol A/B/C/D)`
|
|
28
40
|
- HALT — "Fix iteration limit reached ({max_fix_iterations} attempts) for story {current_story_key}. Remaining issues: {unresolved_issues}. Manual intervention required."
|
|
29
41
|
- Output a summary of all fix attempts and remaining issues
|
|
30
42
|
- **DO NOT CONTINUE** — This is a hard stop
|
|
43
|
+
- *(Note: this append happens before HALT so any partial-status snapshot writer downstream of a future escalation-recovery path can serialize the warning; on hard HALT the warning will not reach step-09's status JSON because step-09 does not execute.)*
|
|
31
44
|
|
|
32
|
-
3.
|
|
45
|
+
3. Increment `{steps_completed}` ONLY on the first entry to step-07 (when `{fix_iteration}` == 1). Subsequent loop re-entries (iterations 2..N) do NOT increment `{steps_completed}` — the step file is the same step, just re-loaded. This keeps the `{steps_completed}` semantic stable as "distinct pipeline step files executed", so the final report shows e.g. 9/9 regardless of how many fix iterations occurred.
|
|
33
46
|
4. Output: "Fix Iteration {fix_iteration}/{max_fix_iterations} for story {current_story_key}"
|
|
34
47
|
|
|
35
48
|
---
|
|
@@ -52,9 +65,9 @@ Adopt the Dev persona:
|
|
|
52
65
|
- Mixed (both code review and QA issues): → `{fix_source}` = "mixed"
|
|
53
66
|
3. Record `{fix_source}` — this determines post-fix routing (see section 6)
|
|
54
67
|
4. Compile a prioritized fix list:
|
|
55
|
-
- **Priority 1:** HIGH severity issues / failed acceptance criteria
|
|
68
|
+
- **Priority 1:** CRITICAL and HIGH severity issues / failed acceptance criteria (CRITICAL issues are routed here by step-05 §4 as Priority 1 — see step-05-code-review.md L47 routing contract)
|
|
56
69
|
- **Priority 2:** MEDIUM severity issues / partial AC failures
|
|
57
|
-
- **Priority 3:** LOW severity issues (fix if time permits)
|
|
70
|
+
- **Priority 3:** LOW severity issues (fix if time permits; LOW may remain as documented tech debt per step-05 §4 pass criteria)
|
|
58
71
|
|
|
59
72
|
### 3. Build Fix Plan
|
|
60
73
|
|
|
@@ -90,31 +103,31 @@ After all fixes are applied:
|
|
|
90
103
|
**IF all tests pass AND all previously failed ACs now pass:**
|
|
91
104
|
- Output: "All issues resolved in fix iteration {fix_iteration}. Tests passing."
|
|
92
105
|
- Determine routing based on `{fix_source}`:
|
|
93
|
-
- **IF `{fix_source}` == "code-review" or "mixed":** Run a targeted code re-check: re-verify that the specific code-review HIGH/MEDIUM issues are genuinely resolved (no full re-delegation required — do a focused inline verification of the fixed areas). If verified clean: **NEXT:** Proceed to step-08 (complete story). If new issues surface: Loop back to step-07.
|
|
94
|
-
- **IF `{fix_source}` == "qa-testing":** **NEXT:** Proceed to step-08 (complete story) directly — no additional code review needed.
|
|
106
|
+
- **IF `{fix_source}` == "code-review" or "mixed":** Run a targeted code re-check: re-verify that the specific code-review HIGH/MEDIUM issues are genuinely resolved (no full re-delegation required — do a focused inline verification of the fixed areas). If verified clean: **NEXT:** Proceed to step-08 (complete story) [frontmatter: nextStepFile]. If new issues surface: Loop back to step-07.
|
|
107
|
+
- **IF `{fix_source}` == "qa-testing":** **NEXT:** Proceed to step-08 (complete story) directly — no additional code review needed [frontmatter: nextStepFile].
|
|
95
108
|
|
|
96
109
|
**IF some issues remain:**
|
|
97
110
|
- Output: "Fix iteration {fix_iteration} resolved {fixed_count} issues. {remaining_count} issues remain: {remaining_list}"
|
|
98
|
-
- **NEXT:** Loop back to this step (step-07) for another iteration
|
|
111
|
+
- **NEXT:** Loop back to this step (step-07) for another iteration [frontmatter: nextStepFile_loop]
|
|
99
112
|
|
|
100
113
|
---
|
|
101
114
|
|
|
102
115
|
## NEXT STEP
|
|
103
116
|
|
|
104
117
|
**If all issues resolved AND (`{fix_source}` == "qa-testing" OR post-fix code re-check passed):**
|
|
105
|
-
**NEXT:** Read fully and follow:
|
|
118
|
+
**NEXT:** Read fully and follow: `./steps/step-08-complete-story.md`
|
|
106
119
|
|
|
107
120
|
**If all issues resolved but post-fix code re-check surfaced new issues (`{fix_source}` was "code-review" or "mixed"):**
|
|
108
|
-
**NEXT:** Read fully and follow:
|
|
121
|
+
**NEXT:** Read fully and follow: `./steps/step-07-fix-and-retest.md`
|
|
109
122
|
|
|
110
123
|
**If issues remain and `{fix_iteration}` <= `{max_fix_iterations}`:**
|
|
111
|
-
**NEXT:** Read fully and follow:
|
|
124
|
+
**NEXT:** Read fully and follow: `./steps/step-07-fix-and-retest.md`
|
|
112
125
|
|
|
113
126
|
---
|
|
114
127
|
|
|
115
128
|
## SUCCESS METRICS
|
|
116
129
|
|
|
117
|
-
- All HIGH and MEDIUM issues resolved
|
|
130
|
+
- All CRITICAL, HIGH and MEDIUM issues resolved (consistent with step-05 §4 pass criteria; LOW issues may remain as documented tech debt)
|
|
118
131
|
- All previously failed acceptance criteria now pass
|
|
119
132
|
- Full test suite passes with no regressions
|
|
120
133
|
- Fix details documented in story file
|
|
@@ -129,7 +142,9 @@ After all fixes are applied:
|
|
|
129
142
|
|
|
130
143
|
---
|
|
131
144
|
|
|
132
|
-
##
|
|
145
|
+
## Escalation Path: Beyond Max Fix Iterations (当超过最大修复迭代次数)
|
|
146
|
+
|
|
147
|
+
> **English summary (normative for non-Chinese readers):** When `{fix_iteration}` exceeds `{max_fix_iterations}` (default 5), this step HALTs the pipeline and dispatches an escalation. The escalation produces (1) an Escalation Report documenting all fix attempts and root-cause analysis, (2) a notification to Story Owner/Dev (xiaokai) and Tech Lead/Architect (xiaojia), and (3) four handling options — A: Mark as BLOCKED (architectural review), B: Reduce scope (defer failing AC), C: Tech Lead deep-dive (re-route to architect), D: Fresh start (revert and re-execute step-04 onward). The Chinese sections below detail each option's state-transition contract. All four options re-enter the pipeline at a different step (A → out-of-sprint, B → step-08, C → step-07 after architect input, D → step-04). The append of `[step-07] Max fix iterations reached without convergence; escalation A/B/C/D dispatched` to `{run_warnings}` (per workflow.md prefix-tag table) happens BEFORE the HALT so downstream consumers see the escalation event.
|
|
133
148
|
|
|
134
149
|
**触发条件:** `{fix_iteration}` > `{max_fix_iterations}` (默认 > 5)
|
|
135
150
|
|
|
@@ -160,7 +175,7 @@ Recommended Action: [A/B/C below]
|
|
|
160
175
|
### 2. 通知团队 (Owner Notification)
|
|
161
176
|
|
|
162
177
|
发送通知至:
|
|
163
|
-
- **Primary:** Story Owner /
|
|
178
|
+
- **Primary:** Story Owner / Dev agent (xiaokai)
|
|
164
179
|
- **Secondary:** Tech Lead / Architect (xiaojia)
|
|
165
180
|
|
|
166
181
|
**Notification Template:**
|
|
@@ -224,7 +239,7 @@ estimated_resolution_time: [hours]
|
|
|
224
239
|
### 5. 防止进度堵塞 (Prevent Sprint Blocking)
|
|
225
240
|
|
|
226
241
|
- 不允许story卡在此步骤超过{max_fix_iterations} + 4小时
|
|
227
|
-
-
|
|
242
|
+
- 自动上报以处理 escalation(由 Developer xiaokai 跟进)
|
|
228
243
|
- 在sprint status中标记为"NEEDS_DECISION"
|
|
229
244
|
- 不将此issue计入sprint velocity(因为未完成)
|
|
230
245
|
|
package/src/xmc-skills/4-implementation/xiaoma-auto-story-pipeline/steps/step-08-complete-story.md
ADDED
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "step-08-complete-story"
|
|
3
|
+
description: "Mark story as done, update sprint-status, and generate completion summary"
|
|
4
|
+
nextStepFile: "./step-09-finalize.md"
|
|
5
|
+
kind: "finalize"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Step 8 of 9: Complete Story
|
|
9
|
+
|
|
10
|
+
**Goal:** Mark the story as done, sync all tracking artifacts, and generate a completion summary.
|
|
11
|
+
|
|
12
|
+
**Role:** Pipeline Orchestrator
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## EXECUTION SEQUENCE
|
|
17
|
+
|
|
18
|
+
### 1. Final Validation
|
|
19
|
+
|
|
20
|
+
Before marking complete, verify all gates:
|
|
21
|
+
1. **Fresh Read:** Read the COMPLETE story file at `{current_story_path}` directly from disk (not from cache or prior state). This is critical because step-07 may have modified the file (e.g., updated task checkboxes, changed story status), and you MUST verify the current on-disk state, not a stale in-memory version.
|
|
22
|
+
2. Verify ALL tasks and subtasks are marked [x], [X], or [✓] (case-insensitive, all formats accepted)
|
|
23
|
+
3. Verify ALL acceptance criteria have been tested and passed
|
|
24
|
+
4. Verify no unresolved HIGH or MEDIUM issues remain
|
|
25
|
+
5. Verify the full test suite passes
|
|
26
|
+
|
|
27
|
+
If any gate fails: **DO NOT mark as done** — return to the appropriate step:
|
|
28
|
+
- Incomplete tasks → step-04 (develop)
|
|
29
|
+
- Failed tests → step-07 (fix and retest)
|
|
30
|
+
- Unresolved review issues → step-07 (fix and retest)
|
|
31
|
+
|
|
32
|
+
### 1.5. AC ↔ Test Traceability Verification (best-effort, advisory-only)
|
|
33
|
+
|
|
34
|
+
Best-effort cross-document check that each acceptance criterion (AC) in the story file maps to at least one passing test in the step-06 test report. **Surface-only / non-gating** — symmetric in design to the requirement-level traceability check in `auto-requirements-pipeline/steps/step-08-finalize.md §2.4`. Failures here append a prefix-tagged warning to `{run_warnings}` but do NOT block the story from being marked done; the existing gate at §1 item 3 ("ALL acceptance criteria have been tested and passed") remains the authoritative block. The purpose is to make orphan ACs (acceptance criteria that were checked off by gate §1 item 3 but cannot be machine-linked back to a concrete test execution record) visible to downstream consumers (ASPB scheduler, auto-full-pipeline `[phase-3]` aggregator, dashboards, retro-tooling).
|
|
35
|
+
|
|
36
|
+
**Procedure:**
|
|
37
|
+
|
|
38
|
+
1. **Locate the test report.** Read `step-06`'s test report from the story file's "QA Results" or "Test Results" section (whichever convention is used in this project — discoverable from the story file directly). If neither section exists, or the section is empty: Append to `{run_warnings}` exactly one summary entry: `[step-08] AC-test traceability check skipped — step-06 test report not found in story file` ; then skip to §2.
|
|
39
|
+
2. **Extract AC identifiers.** From the story file's "Acceptance Criteria" section, extract each AC identifier using best-effort heuristics: (a) explicit IDs like `AC1`, `AC-2`, `[AC-3]`; (b) numbered list items (`1.`, `2.`, etc.); (c) bullet list items with leading bold keywords (`**Given...**`, `**When...**`, `**Then...**`). If extraction yields zero IDs: Append to `{run_warnings}` exactly one summary entry: `[step-08] AC-test traceability check skipped — acceptance criteria section does not use a recognizable identifier convention` ; then skip to §2.
|
|
40
|
+
3. **Walk the mapping.** For each extracted AC ID, search the test report for at least one passing test referencing it (by ID, by description keyword overlap ≥2 tokens, or by explicit "AC-N" annotation). Use the same loose-matching heuristic as `validate:trigger-emit-bidi` (case-insensitive, normalized whitespace).
|
|
41
|
+
4. **Emit orphans.** For each AC with no matching passing test, Append to `{run_warnings}`: `[step-08] AC-test traceability orphan detected: {ac_id} has no passing test in step-06 report — manual review recommended` and continue (no halt). The §1 item 3 gate already prevented this section from being reached if any AC was outright failing; orphans here are ACs that were marked passed but cannot be machine-linked.
|
|
42
|
+
5. **Continue to §2.** Regardless of orphan count, proceed to "Update Story Status". The check is observational; the gate at §1 is authoritative for halting.
|
|
43
|
+
|
|
44
|
+
**Why a sub-section, not a new step:** Adding a 10th step would inflate the pipeline count and break the documented `N/9` rendering throughout step-09's completion report. A §1.5 sub-section keeps the pipeline cardinality stable while delivering the missing check. The numbering for downstream items (§2 update status, §3 sprint-status, etc.) is preserved.
|
|
45
|
+
|
|
46
|
+
### 2. Update Story Status
|
|
47
|
+
|
|
48
|
+
1. Update the story Status field to "done"
|
|
49
|
+
2. Add completion timestamp to Dev Agent Record
|
|
50
|
+
3. Add final Change Log entry: "Story completed via auto-pipeline on {date}"
|
|
51
|
+
4. Save the story file
|
|
52
|
+
|
|
53
|
+
### 3. Update Sprint Status
|
|
54
|
+
|
|
55
|
+
1. Load the FULL file: `{sprint_status}`
|
|
56
|
+
2. Find `development_status` key matching `{current_story_key}`
|
|
57
|
+
3. Update `development_status[{current_story_key}]` = "done"
|
|
58
|
+
4. Update `last_updated` field to current date
|
|
59
|
+
5. Save file, preserving ALL comments and structure
|
|
60
|
+
6. **Write safely (avoid half-written sprint-status.yaml):**
|
|
61
|
+
- Write the updated YAML to a sibling temp file in the same directory (e.g., `{sprint_status}.tmp`)
|
|
62
|
+
- Verify the temp file is non-empty and parses as valid YAML
|
|
63
|
+
- Atomically rename the temp file over `{sprint_status}` (this avoids leaving a half-written file if the process is interrupted between writes — important because step-09 reads this file again and the auto-story-pipeline-batch / auto-full-pipeline orchestrators may read it across pipeline runs)
|
|
64
|
+
- If the rename fails or YAML re-parse fails: Append to `{run_warnings}`: `[step-08] Sprint-status write failed for {current_story_key} (rename or YAML re-parse error) — manual recovery required` ; then HALT — "Sprint-status write failed for {current_story_key}. Manual recovery required: check {sprint_status} and {sprint_status}.tmp."
|
|
65
|
+
|
|
66
|
+
### 4. Check Epic Completion
|
|
67
|
+
|
|
68
|
+
1. Extract `{epic_num}` from `{current_story_key}` using pattern matching:
|
|
69
|
+
- Pattern: story key must match `{epic_num}-{story_num}-{name}` where epic_num and story_num are positive integers
|
|
70
|
+
- Extract: Read first numeric component before first dash
|
|
71
|
+
- Example: "1-2-user-auth" → epic_num = "1"
|
|
72
|
+
- Example: "12-3-payment-flow" → epic_num = "12"
|
|
73
|
+
- Skip keys that don't match pattern (e.g., "epic-1-retrospective" is an epic marker, not a story)
|
|
74
|
+
- If key doesn't match expected pattern: Output WARNING — "Could not extract epic number from {current_story_key}. Skipping epic completion check." and skip to section 5
|
|
75
|
+
- Append to `{run_warnings}`: `[step-08] Could not extract epic number from {current_story_key} — epic completion check skipped`
|
|
76
|
+
- If extraction fails for any reason: Continue without epic update (non-blocking)
|
|
77
|
+
2. In sprint-status.yaml, find all stories for epic `{epic_num}` (pattern: `{epic_num}-*`, excluding epic markers like `epic-{epic_num}` and retrospectives like `epic-{epic_num}-retrospective`)
|
|
78
|
+
3. Check if ALL stories in this epic have status "done"
|
|
79
|
+
4. If all stories are done:
|
|
80
|
+
- Update `development_status[epic-{epic_num}]` = "done"
|
|
81
|
+
- Set `{epic_just_completed}` = `{epic_num}` (consumed in step-09 for retrospective recommendation)
|
|
82
|
+
- Output: "Epic {epic_num} fully completed! All stories are done."
|
|
83
|
+
5. If some stories remain:
|
|
84
|
+
- Set `{epic_just_completed}` = null
|
|
85
|
+
- Output: "Epic {epic_num}: {done_in_epic}/{total_in_epic} stories completed."
|
|
86
|
+
|
|
87
|
+
### 5. Generate Completion Summary
|
|
88
|
+
|
|
89
|
+
Increment `{stories_completed}` by 1
|
|
90
|
+
|
|
91
|
+
**QA Testing phase marker (conditional):** Step-06 (QA Testing) is bypassed when step-05 routes code-review findings directly to step-07 (`{fix_source}` == "code-review"; see step-07 §6 — code-review fixes go straight to step-08, never back through step-06). In that case render the QA Testing line in the report below as `[-] QA Testing (QA) — skipped (code-review issues routed step-05 → step-07; full QA with real data was not run for this story)` instead of `[x] QA Testing (QA)`. For every other path (`{fix_source}` unset on the clean route, or "qa-testing" / "mixed"), step-06 ran — keep `[x] QA Testing (QA)`.
|
|
92
|
+
|
|
93
|
+
Output:
|
|
94
|
+
```
|
|
95
|
+
Story {current_story_key} — COMPLETED
|
|
96
|
+
|
|
97
|
+
Summary:
|
|
98
|
+
- Story: {story_title}
|
|
99
|
+
- File: {current_story_path}
|
|
100
|
+
- Status: done
|
|
101
|
+
- Fix Iterations Used: {fix_iteration}
|
|
102
|
+
- Stories Completed This Pipeline Run: {stories_completed}
|
|
103
|
+
|
|
104
|
+
Pipeline Phases Completed:
|
|
105
|
+
[x] Story Creation (Dev)
|
|
106
|
+
[x] Story Validation (PM)
|
|
107
|
+
[x] Development (Dev)
|
|
108
|
+
[x] Code Review (Reviewer)
|
|
109
|
+
[x] QA Testing (QA)
|
|
110
|
+
[x] Status Updated (done)
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### 6. Pipeline Status Update
|
|
114
|
+
|
|
115
|
+
- Set `{pipeline_status}` = "story-completed"
|
|
116
|
+
- Set `{steps_completed}` = `{steps_completed}` + 1
|
|
117
|
+
|
|
118
|
+
### 7. Batch-Mode Result Block (conditional)
|
|
119
|
+
|
|
120
|
+
**Trigger:** This section applies ONLY when this step-08 file is being executed by an Agent subprocess launched by the `auto-story-pipeline-batch` (ASPB) scheduler. The signal is behavioral, not a state variable: the ASPB scheduler's prompt explicitly instructs the Agent to "STOP after step-08 and return STORY_RESULT" (see `auto-story-pipeline-batch/workflow.md` section 2.3 part 5 "Important instructions for the Agent"). In single-story mode (no ASPB wrapper) or resume mode, skip this section and proceed to step-09 normally per the NEXT STEP below.
|
|
121
|
+
|
|
122
|
+
**Why an explicit template here?** Without it, the Agent may emit STORY_RESULT but omit or empty the `warnings` field, silently dropping every prefix-tagged warning accumulated in `{run_warnings}` during step-02 → step-08. The contract defines the field; this template ensures the producer side actually populates it.
|
|
123
|
+
|
|
124
|
+
**Emit the following STORY_RESULT block as the final output before exiting:**
|
|
125
|
+
|
|
126
|
+
```
|
|
127
|
+
STORY_RESULT:
|
|
128
|
+
- story_key: {current_story_key}
|
|
129
|
+
- final_status: done
|
|
130
|
+
- fix_iterations_used: {fix_iteration}
|
|
131
|
+
- validation_attempts: {validation_attempt}
|
|
132
|
+
- files_modified: [<list of file paths modified during step-04 through step-08>]
|
|
133
|
+
- summary: <one-line description of what was done>
|
|
134
|
+
- error: <empty string on success; populated only if a HALT was reached>
|
|
135
|
+
- warnings: {run_warnings}
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
**Serialization rules:**
|
|
139
|
+
|
|
140
|
+
1. `warnings:` MUST serialize the full `{run_warnings}` list as-is — do NOT strip, reorder, or de-duplicate. Each entry must retain its `[step-NN]` prefix tag (see `auto-story-pipeline/workflow.md` → "Warning Prefix-Tag Convention" for the dictionary). If `{run_warnings}` is empty, emit `warnings: []`.
|
|
141
|
+
2. `final_status` is "done" when this section executes (gate failures earlier in step-08 would have routed back to step-04/07 before reaching here). The "halted" / "failed" variants only apply when a HALT path in step-02 → step-08 returned control before reaching this section — in that case the Agent emits STORY_RESULT at the HALT site, not here.
|
|
142
|
+
3. `files_modified:` is the union of files written across step-04 (dev), step-05 (review auto-fix), step-07 (fix-retest), and step-08 (story file + sprint-status.yaml).
|
|
143
|
+
4. `error:` is empty on success. Reserved for downstream parsers — never omit the field.
|
|
144
|
+
|
|
145
|
+
**After emitting STORY_RESULT, STOP.** Do NOT read step-09. The ASPB scheduler's section 2.4 will parse this block and section 2.4b will write the per-story archive `story-pipeline-status.{current_story_key}.json` (which is the batch-mode replacement for step-09's single-story `story-pipeline-status.json`).
|
|
146
|
+
|
|
147
|
+
**Concrete sample output:** Two realistic STORY_RESULT examples (one `done` with accumulated warnings, one `halted` at step-07 max-iter) are documented in `auto-story-pipeline-batch/workflow.md` section 2.3's "Concrete examples" block (an unnumbered block following part 6 "Return Format"). Agent runners should consult those samples to verify the shape of the emitted block before committing to a particular serialization style; the scheduler accepts both YAML-list and JSON-array forms for `warnings`/`files_modified`.
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## NEXT STEP
|
|
152
|
+
|
|
153
|
+
**Single-story mode / resume mode:** Read fully and follow: `./steps/step-09-finalize.md`
|
|
154
|
+
|
|
155
|
+
**Batch mode (ASPB subprocess):** Do NOT read step-09. Emit the STORY_RESULT block from section 7 above and exit.
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## SUCCESS METRICS
|
|
160
|
+
|
|
161
|
+
- Story status set to "done" in story file
|
|
162
|
+
- Sprint-status.yaml updated with "done" for story key
|
|
163
|
+
- Epic completion checked and updated if applicable
|
|
164
|
+
- Completion summary generated
|
|
165
|
+
- `{stories_completed}` counter incremented
|
|
166
|
+
- **Batch mode:** STORY_RESULT block emitted with `warnings: {run_warnings}` serialized as-is (full list, prefix tags preserved); Agent exits without reading step-09
|
|
167
|
+
|
|
168
|
+
## FAILURE MODES
|
|
169
|
+
|
|
170
|
+
- Marking story done without verifying all gates
|
|
171
|
+
- Not updating sprint-status.yaml
|
|
172
|
+
- Not checking epic-level completion
|
|
173
|
+
- Not generating completion summary
|
|
174
|
+
- **Batch mode:** Emitting STORY_RESULT with `warnings: []` when `{run_warnings}` was non-empty (silently drops accumulated warnings — breaks the warnings plumbing); omitting the `warnings` field entirely (legacy contract — scheduler tolerates this but downstream consumers lose Phase-3 visibility); reading step-09 after section 7 was triggered (step-09 will attempt to write the single-story canonical `story-pipeline-status.json` and conflict with the per-story archive)
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "step-09-finalize"
|
|
3
|
+
description: "Finalize the single-story pipeline run and output completion report."
|
|
4
|
+
nextStepFile: null
|
|
5
|
+
kind: "terminal"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Step 9 of 9: Pipeline Finalization
|
|
9
|
+
|
|
10
|
+
**Goal:** Generate the final completion report for this single-story pipeline run.
|
|
11
|
+
|
|
12
|
+
**Role:** Pipeline Orchestrator
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## EXECUTION SEQUENCE
|
|
17
|
+
|
|
18
|
+
### 1. Refresh Sprint Status
|
|
19
|
+
|
|
20
|
+
1. Load the FULL file: `{sprint_status}` (fresh read from disk — do NOT rely on in-memory state from earlier steps; step-08 may have updated multiple keys including the epic marker)
|
|
21
|
+
2. Read ALL lines from beginning to end — do not skip any content
|
|
22
|
+
3. Recount all stories by current status (exclude epic markers like `epic-{n}` and retrospective markers like `epic-{n}-retrospective` from story counts; tally them separately if useful):
|
|
23
|
+
- `{backlog_count}` — Stories with status "backlog"
|
|
24
|
+
- `{ready_count}` — Stories with status "ready-for-dev"
|
|
25
|
+
- `{in_progress_count}` — Stories with status "in-progress"
|
|
26
|
+
- `{review_count}` — Stories with status "review"
|
|
27
|
+
- `{done_count}` — Stories with status "done"
|
|
28
|
+
4. Sanity check: verify the just-completed story `{current_story_key}` has status "done" in sprint-status.yaml. If it does NOT:
|
|
29
|
+
- Output WARNING — "Sprint status for {current_story_key} is '{actual_status}', not 'done'. step-08 may not have synced. Manual review recommended."
|
|
30
|
+
- Append to `{run_warnings}` with canonical prefix tag: `[step-09] Sprint status for {current_story_key} is '{actual_status}', not 'done' — step-08 sync may have failed`
|
|
31
|
+
- Continue with report generation regardless.
|
|
32
|
+
|
|
33
|
+
### 2. Generate Final Report
|
|
34
|
+
|
|
35
|
+
Increment `{steps_completed}` to count step-09 itself as a distinct executed step file (mirrors the +1 pattern used by steps 02–08; without this line, a fresh run that executes all nine step files would display `8 / 9` instead of `9 / 9`, because step-09 would otherwise be silently uncounted):
|
|
36
|
+
|
|
37
|
+
- Set `{steps_completed}` = `{steps_completed}` + 1
|
|
38
|
+
|
|
39
|
+
**Note on `{steps_completed}` semantics:** `{steps_completed}` is the count of *distinct step files executed in THIS pipeline run*, not the total step count in the pipeline (which is always 9). A fresh run reaches 9 only when every step file executes exactly once. Common fresh runs legitimately finish below 9: a run where step-05 routes directly to step-07 skips step-06 (QA testing), and a run that needs no fixes skips step-07 (fix-and-retest) — both correctly display `8 / 9`. A value under 9 is therefore expected, not an error, because the counter tracks distinct step files actually executed. For a `resume` run (e.g., starting at step-04 because story status was "in-progress"), the value reflects only the steps actually loaded plus step-09 itself — display it relative to 9 so it is unambiguous.
|
|
40
|
+
|
|
41
|
+
Output:
|
|
42
|
+
```
|
|
43
|
+
Auto Story Pipeline — COMPLETE
|
|
44
|
+
|
|
45
|
+
Pipeline Summary:
|
|
46
|
+
- Mode: {pipeline_mode}
|
|
47
|
+
- Story Processed: {current_story_key}
|
|
48
|
+
- Steps Executed (this run): {steps_completed} / 9
|
|
49
|
+
- Fix Iterations: {fix_iteration} / {max_fix_iterations}
|
|
50
|
+
- Pipeline Status: finalized
|
|
51
|
+
|
|
52
|
+
Sprint Status (current):
|
|
53
|
+
- Backlog: {backlog_count} remaining
|
|
54
|
+
- Ready for Dev: {ready_count}
|
|
55
|
+
- In Progress: {in_progress_count}
|
|
56
|
+
- In Review: {review_count}
|
|
57
|
+
- Done: {done_count}
|
|
58
|
+
|
|
59
|
+
The automated story development pipeline has finished.
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
**IF `{epic_just_completed}` is set (signal from step-08 section 4):**
|
|
63
|
+
- Output: "Epic {epic_just_completed} is now fully complete. Recommended next action: run epic-retrospective (ER) to capture lessons learned before starting the next epic. Command: `/xiaoma-retrospective` (or `ER` from the Dev (xiaokai) menu)."
|
|
64
|
+
|
|
65
|
+
**IF `{backlog_count}` == 0 AND `{ready_count}` == 0 AND `{in_progress_count}` == 0 AND `{review_count}` == 0:**
|
|
66
|
+
- Output: "All stories in the sprint are complete! Consider running epic-retrospective (ER) to review the work."
|
|
67
|
+
|
|
68
|
+
**IF `{backlog_count}` > 0 OR `{ready_count}` > 0:**
|
|
69
|
+
- Output: "There are still {backlog_count + ready_count} pending stories. Run ASPB (`/xiaoma-auto-story-pipeline-batch`) to process all remaining stories in batch mode, or run ASP again to process the next story."
|
|
70
|
+
|
|
71
|
+
### 3. Generate Machine-Readable Status File
|
|
72
|
+
|
|
73
|
+
Write machine-readable status to: `{implementation_artifacts}/story-pipeline-status.json`
|
|
74
|
+
|
|
75
|
+
This brings parity with `auto-requirements-pipeline` (which writes `pipeline-status.json`) and enables downstream tools — including `auto-story-pipeline-batch` (ASPB) and `auto-full-pipeline` — to inspect per-story outcomes programmatically without re-parsing sprint-status.yaml.
|
|
76
|
+
|
|
77
|
+
**Warnings serialization:**
|
|
78
|
+
|
|
79
|
+
Read the accumulated `{run_warnings}` list and serialize it as-is into the `warnings` array — each entry MUST already carry its canonical `[step-NN]` prefix tag (see `auto-story-pipeline/workflow.md` → "Warning Prefix-Tag Convention" for the dictionary). Do NOT strip, reorder, or de-duplicate entries here; downstream consumers (ASPB scheduler, auto-full step-05-finalize) handle de-dup and 100-entry truncation in their own aggregation passes.
|
|
80
|
+
|
|
81
|
+
Common sources that contribute entries to `{run_warnings}` during a typical run:
|
|
82
|
+
- `[step-01]` — prerequisite probe (stale `pipeline-status.json`); incomplete story-file routing entry
|
|
83
|
+
- `[step-02]` — sprint-status / on-disk inconsistency; incomplete created story retry
|
|
84
|
+
- `[step-03]` — non-terminal validation iteration WARNING
|
|
85
|
+
- `[step-05]` — CRITICAL finding routed to step-07; auto-fix produced regression
|
|
86
|
+
- `[step-06]` — coverage threshold not enforced; type-C performance carve-out
|
|
87
|
+
- `[step-07]` — max fix iterations reached / escalation dispatched
|
|
88
|
+
- `[step-08]` — sprint-status write fallback; epic-completion check skipped due to unparseable story key
|
|
89
|
+
- `[step-09]` — sanity-check WARNING from section 1 item 4 above (this step). (Note: this step's section 1 contains 4 numbered items, not subsections; AW2 fixed an earlier "section 1.4" reference that implied a non-existent `### 1.4` heading.)
|
|
90
|
+
|
|
91
|
+
If `{run_warnings}` is empty, serialize as `[]`.
|
|
92
|
+
|
|
93
|
+
```json
|
|
94
|
+
{
|
|
95
|
+
"pipeline": "auto-story-pipeline",
|
|
96
|
+
"date": "{date}",
|
|
97
|
+
"project": "{project_name}",
|
|
98
|
+
"mode": "{pipeline_mode}",
|
|
99
|
+
"story_key": "{current_story_key}",
|
|
100
|
+
"story_path": "{current_story_path}",
|
|
101
|
+
"final_status": "done",
|
|
102
|
+
"steps_completed_this_run": {steps_completed},
|
|
103
|
+
"pipeline_total_steps": 9,
|
|
104
|
+
"fix_iterations_used": {fix_iteration},
|
|
105
|
+
"max_fix_iterations": {max_fix_iterations},
|
|
106
|
+
"epic_just_completed": "{epic_just_completed}",
|
|
107
|
+
"sprint_snapshot": {
|
|
108
|
+
"backlog": {backlog_count},
|
|
109
|
+
"ready_for_dev": {ready_count},
|
|
110
|
+
"in_progress": {in_progress_count},
|
|
111
|
+
"review": {review_count},
|
|
112
|
+
"done": {done_count}
|
|
113
|
+
},
|
|
114
|
+
"warnings": [
|
|
115
|
+
"[step-NN] human-readable description (see workflow.md → Warning Prefix-Tag Convention)",
|
|
116
|
+
"..."
|
|
117
|
+
]
|
|
118
|
+
}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
If `{epic_just_completed}` is null, write `"epic_just_completed": null` (not the literal placeholder). If no warnings were captured, write `"warnings": []`. Each warning entry MUST retain its `[step-NN]` prefix tag as emitted by the source step — do not strip.
|
|
122
|
+
|
|
123
|
+
**Write strategy:** Write to a temp file in the same directory (e.g., `story-pipeline-status.json.tmp`), then rename to the final name. This avoids leaving a half-written status file if the process is interrupted between writes.
|
|
124
|
+
|
|
125
|
+
**HALT** — Pipeline complete.
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
129
|
+
## SUCCESS METRICS
|
|
130
|
+
|
|
131
|
+
- Final sprint status refreshed from disk
|
|
132
|
+
- Sanity check on `{current_story_key}` performed (warning emitted if not "done"; tagged `[step-09]` and appended to `{run_warnings}`)
|
|
133
|
+
- Comprehensive completion report generated, with `{steps_completed}` rendered as `N / 9` for clarity
|
|
134
|
+
- `{epic_just_completed}` signal consumed (ER recommendation emitted when set)
|
|
135
|
+
- `story-pipeline-status.json` written atomically with full run metadata
|
|
136
|
+
- `warnings[]` entries all carry canonical `[step-NN]` prefix tags (single-source-of-truth dictionary lives in `auto-story-pipeline/workflow.md` → "Warning Prefix-Tag Convention")
|
|
137
|
+
- User informed of remaining stories and next steps
|
|
138
|
+
|
|
139
|
+
## FAILURE MODES
|
|
140
|
+
|
|
141
|
+
- Not refreshing sprint status before generating report
|
|
142
|
+
- Skipping final report generation
|
|
143
|
+
- Writing `story-pipeline-status.json` without temp-file-then-rename (risk of half-written JSON if interrupted)
|
|
144
|
+
- Reporting `{steps_completed}` without the `/ 9` denominator (ambiguous in resume mode)
|
|
145
|
+
- Serializing `warnings[]` entries WITHOUT the `[step-NN]` prefix (breaks ASPB / auto-full-pipeline aggregation contract — single-story mode and batch mode would diverge in warning format)
|