create-yss-spec 3.4.1 → 3.4.3
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/README.md +1 -1
- package/package.json +2 -2
- package/template/.agents/skills/.strategic-design-skills-manifest.json +1 -1
- package/template/.agents/skills/archify/SKILL.md +1 -1
- package/template/.agents/skills/code-review/SKILL.md +12 -8
- package/template/.agents/skills/file-export-download/SKILL.md +1 -1
- package/template/.agents/skills/frontend-commit/SKILL.md +1 -1
- package/template/.agents/skills/java-backend-commit/SKILL.md +1 -1
- package/template/.agents/skills/llm-wiki/SKILL.md +1 -6
- package/template/.agents/skills/lombok/SKILL.md +10 -336
- package/template/.agents/skills/lombok/references/annotation-examples.md +307 -0
- package/template/.agents/skills/maintaining-skills/SKILL.md +2 -1
- package/template/.agents/skills/maintaining-skills/references/authoring.md +27 -0
- package/template/.agents/skills/mapstruct/SKILL.md +11 -318
- package/template/.agents/skills/mapstruct/references/annotation-examples.md +300 -0
- package/template/.agents/skills/page-form-module/SKILL.md +1 -1
- package/template/.agents/skills/page-skeleton/SKILL.md +1 -1
- package/template/.agents/skills/theme-token-usage/SKILL.md +1 -1
- package/template/.agents/skills/to-tickets/SKILL.md +1 -1
- package/template/.agents/skills/using-git-worktrees/SKILL.md +1 -1
- package/template/.agents/skills/wayfinder/SKILL.md +1 -1
- package/template/.agents/skills/yedit-table-usage/SKILL.md +1 -1
- package/template/.agents/skills/yss-api-integration/SKILL.md +1 -1
- package/template/.agents/skills/yss-audit-log/SKILL.md +1 -1
- package/template/.agents/skills/yss-cache/SKILL.md +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/SKILL.md +15 -2
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +15 -10
- package/template/.agents/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +3 -3
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +3 -3
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +5 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +5 -2
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +13 -10
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +2 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +35 -3
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +1 -1
- package/template/.agents/skills/yss-distributed-id/SKILL.md +1 -1
- package/template/.agents/skills/yss-dto/SKILL.md +5 -1
- package/template/.agents/skills/yss-excel-mvc/SKILL.md +1 -1
- package/template/.agents/skills/yss-exception/SKILL.md +5 -1
- package/template/.agents/skills/yss-formily-schema-generator/SKILL.md +1 -1
- package/template/.agents/skills/yss-implementation-contract-compiler/SKILL.md +13 -5
- package/template/.agents/skills/yss-implementation-contract-compiler/agents/openai.yaml +1 -1
- package/template/.agents/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +16 -0
- package/template/.agents/skills/yss-implementation-contract-compiler/references/slice-implementation-contract-v2.md +214 -0
- package/template/.agents/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +66 -204
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/SKILL.md +15 -2
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +28 -19
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +10 -10
- package/template/.agents/skills/yss-mybatis/SKILL.md +4 -0
- package/template/.agents/skills/yss-openapi-draft-review/SKILL.md +1 -1
- package/template/.agents/skills/yss-openapi-governance/SKILL.md +1 -1
- package/template/.agents/skills/yss-product-lifecycle/SKILL.md +4 -4
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +7 -2
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +4 -0
- package/template/.agents/skills/yss-product-lifecycle/references/state-model.md +2 -0
- package/template/.agents/skills/yss-product-lifecycle/references/user-decisions.md +23 -3
- package/template/.agents/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.agents/skills/yss-repository/SKILL.md +4 -0
- package/template/.agents/skills/yss-research/SKILL.md +1 -1
- package/template/.agents/skills/yss-resilience4j/SKILL.md +1 -1
- package/template/.agents/skills/yss-security-algorithm/SKILL.md +1 -1
- package/template/.agents/skills/yss-tactical-design/SKILL.md +4 -0
- package/template/.agents/skills/yss-technical-design/SKILL.md +4 -0
- package/template/.agents/skills/yss-technical-design/scripts/validate-technical-design.mjs +2 -2
- package/template/.agents/skills/yss-ui/SKILL.md +1 -1
- package/template/.agents/skills/yss-ui-business-page-generation/SKILL.md +1 -1
- package/template/.agents/skills/yss-up-springboot3/SKILL.md +1 -1
- package/template/.agents/skills/yss-use-table-height/SKILL.md +1 -1
- package/template/.agents/skills/yss-use-tree-height/SKILL.md +1 -1
- package/template/.agents/skills/yss-userinfo/SKILL.md +1 -1
- package/template/.agents/skills/yss-validation/SKILL.md +5 -1
- package/template/.agents/skills/yss-web-controller/SKILL.md +5 -1
- package/template/.agents/skills/yss-web-controller/scripts/generate_controller.mjs +5 -2
- package/template/.agents/skills/ytable-usage/SKILL.md +1 -1
- package/template/.agents/skills/ytree-usage/SKILL.md +1 -1
- package/template/.codex/skills/archify/SKILL.md +1 -1
- package/template/.codex/skills/code-review/SKILL.md +12 -8
- package/template/.codex/skills/data-analytics/skills/analyze-data-quality/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/build-dashboard/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/build-report/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/design-kpis/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/gather-business-context/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/index/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/jupyter-notebooks/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/kpi-reporting/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/market-sizing/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/metric-diagnostics/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/product-business-analysis/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/spreadsheets/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/validate-data/SKILL.md +1 -1
- package/template/.codex/skills/data-analytics/skills/visualize-data/SKILL.md +1 -1
- package/template/.codex/skills/file-export-download/SKILL.md +1 -1
- package/template/.codex/skills/frontend-commit/SKILL.md +1 -1
- package/template/.codex/skills/java-backend-commit/SKILL.md +1 -1
- package/template/.codex/skills/llm-wiki/SKILL.md +1 -6
- package/template/.codex/skills/lombok/SKILL.md +10 -336
- package/template/.codex/skills/lombok/references/annotation-examples.md +307 -0
- package/template/.codex/skills/maintaining-skills/SKILL.md +2 -1
- package/template/.codex/skills/maintaining-skills/references/authoring.md +27 -0
- package/template/.codex/skills/mapstruct/SKILL.md +11 -318
- package/template/.codex/skills/mapstruct/references/annotation-examples.md +300 -0
- package/template/.codex/skills/page-form-module/SKILL.md +1 -1
- package/template/.codex/skills/page-skeleton/SKILL.md +1 -1
- package/template/.codex/skills/product-design/skills/audit/SKILL.md +1 -1
- package/template/.codex/skills/product-design/skills/design-qa/SKILL.md +1 -1
- package/template/.codex/skills/product-design/skills/get-context/SKILL.md +1 -1
- package/template/.codex/skills/product-design/skills/ideate/SKILL.md +1 -1
- package/template/.codex/skills/product-design/skills/image-to-code/SKILL.md +1 -1
- package/template/.codex/skills/product-design/skills/index/SKILL.md +1 -1
- package/template/.codex/skills/product-design/skills/prototype/SKILL.md +1 -1
- package/template/.codex/skills/product-design/skills/research/SKILL.md +1 -1
- package/template/.codex/skills/product-design/skills/user-context/SKILL.md +1 -1
- package/template/.codex/skills/theme-token-usage/SKILL.md +1 -1
- package/template/.codex/skills/to-tickets/SKILL.md +1 -1
- package/template/.codex/skills/using-git-worktrees/SKILL.md +1 -1
- package/template/.codex/skills/wayfinder/SKILL.md +1 -1
- package/template/.codex/skills/yedit-table-usage/SKILL.md +1 -1
- package/template/.codex/skills/yss-api-integration/SKILL.md +1 -1
- package/template/.codex/skills/yss-audit-log/SKILL.md +1 -1
- package/template/.codex/skills/yss-cache/SKILL.md +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +15 -2
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +15 -10
- package/template/.codex/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +3 -3
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +3 -3
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +5 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +5 -2
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +13 -10
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +2 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +35 -3
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +1 -1
- package/template/.codex/skills/yss-distributed-id/SKILL.md +1 -1
- package/template/.codex/skills/yss-dto/SKILL.md +5 -1
- package/template/.codex/skills/yss-excel-mvc/SKILL.md +1 -1
- package/template/.codex/skills/yss-exception/SKILL.md +5 -1
- package/template/.codex/skills/yss-formily-schema-generator/SKILL.md +1 -1
- package/template/.codex/skills/yss-implementation-contract-compiler/SKILL.md +13 -5
- package/template/.codex/skills/yss-implementation-contract-compiler/agents/openai.yaml +1 -1
- package/template/.codex/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +16 -0
- package/template/.codex/skills/yss-implementation-contract-compiler/references/slice-implementation-contract-v2.md +214 -0
- package/template/.codex/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +66 -204
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/SKILL.md +15 -2
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +28 -19
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +10 -10
- package/template/.codex/skills/yss-mybatis/SKILL.md +4 -0
- package/template/.codex/skills/yss-openapi-draft-review/SKILL.md +1 -1
- package/template/.codex/skills/yss-openapi-governance/SKILL.md +1 -1
- package/template/.codex/skills/yss-product-lifecycle/SKILL.md +4 -4
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +7 -2
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +4 -0
- package/template/.codex/skills/yss-product-lifecycle/references/state-model.md +2 -0
- package/template/.codex/skills/yss-product-lifecycle/references/user-decisions.md +23 -3
- package/template/.codex/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.codex/skills/yss-repository/SKILL.md +4 -0
- package/template/.codex/skills/yss-research/SKILL.md +1 -1
- package/template/.codex/skills/yss-resilience4j/SKILL.md +1 -1
- package/template/.codex/skills/yss-security-algorithm/SKILL.md +1 -1
- package/template/.codex/skills/yss-tactical-design/SKILL.md +4 -0
- package/template/.codex/skills/yss-technical-design/SKILL.md +4 -0
- package/template/.codex/skills/yss-technical-design/scripts/validate-technical-design.mjs +2 -2
- package/template/.codex/skills/yss-ui/SKILL.md +1 -1
- package/template/.codex/skills/yss-ui-business-page-generation/SKILL.md +1 -1
- package/template/.codex/skills/yss-up-springboot3/SKILL.md +1 -1
- package/template/.codex/skills/yss-use-table-height/SKILL.md +1 -1
- package/template/.codex/skills/yss-use-tree-height/SKILL.md +1 -1
- package/template/.codex/skills/yss-userinfo/SKILL.md +1 -1
- package/template/.codex/skills/yss-validation/SKILL.md +5 -1
- package/template/.codex/skills/yss-web-controller/SKILL.md +5 -1
- package/template/.codex/skills/yss-web-controller/scripts/generate_controller.mjs +5 -2
- package/template/.codex/skills/ytable-usage/SKILL.md +1 -1
- package/template/.codex/skills/ytree-usage/SKILL.md +1 -1
- package/template/.cursor/skills/archify/SKILL.md +1 -1
- package/template/.cursor/skills/code-review/SKILL.md +12 -8
- package/template/.cursor/skills/file-export-download/SKILL.md +1 -1
- package/template/.cursor/skills/frontend-commit/SKILL.md +1 -1
- package/template/.cursor/skills/java-backend-commit/SKILL.md +1 -1
- package/template/.cursor/skills/llm-wiki/SKILL.md +1 -6
- package/template/.cursor/skills/lombok/SKILL.md +10 -336
- package/template/.cursor/skills/lombok/references/annotation-examples.md +307 -0
- package/template/.cursor/skills/maintaining-skills/SKILL.md +2 -1
- package/template/.cursor/skills/maintaining-skills/references/authoring.md +27 -0
- package/template/.cursor/skills/mapstruct/SKILL.md +11 -318
- package/template/.cursor/skills/mapstruct/references/annotation-examples.md +300 -0
- package/template/.cursor/skills/page-form-module/SKILL.md +1 -1
- package/template/.cursor/skills/page-skeleton/SKILL.md +1 -1
- package/template/.cursor/skills/theme-token-usage/SKILL.md +1 -1
- package/template/.cursor/skills/to-tickets/SKILL.md +1 -1
- package/template/.cursor/skills/using-git-worktrees/SKILL.md +1 -1
- package/template/.cursor/skills/wayfinder/SKILL.md +1 -1
- package/template/.cursor/skills/yedit-table-usage/SKILL.md +1 -1
- package/template/.cursor/skills/yss-api-integration/SKILL.md +1 -1
- package/template/.cursor/skills/yss-audit-log/SKILL.md +1 -1
- package/template/.cursor/skills/yss-cache/SKILL.md +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/SKILL.md +15 -2
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +15 -10
- package/template/.cursor/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +3 -3
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +3 -3
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +5 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +5 -2
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +13 -10
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +2 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +35 -3
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +1 -1
- package/template/.cursor/skills/yss-distributed-id/SKILL.md +1 -1
- package/template/.cursor/skills/yss-dto/SKILL.md +5 -1
- package/template/.cursor/skills/yss-excel-mvc/SKILL.md +1 -1
- package/template/.cursor/skills/yss-exception/SKILL.md +5 -1
- package/template/.cursor/skills/yss-formily-schema-generator/SKILL.md +1 -1
- package/template/.cursor/skills/yss-implementation-contract-compiler/SKILL.md +13 -5
- package/template/.cursor/skills/yss-implementation-contract-compiler/agents/openai.yaml +1 -1
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +16 -0
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/slice-implementation-contract-v2.md +214 -0
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +66 -204
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/SKILL.md +15 -2
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +28 -19
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +10 -10
- package/template/.cursor/skills/yss-mybatis/SKILL.md +4 -0
- package/template/.cursor/skills/yss-openapi-draft-review/SKILL.md +1 -1
- package/template/.cursor/skills/yss-openapi-governance/SKILL.md +1 -1
- package/template/.cursor/skills/yss-product-lifecycle/SKILL.md +4 -4
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +7 -2
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration.md +4 -0
- package/template/.cursor/skills/yss-product-lifecycle/references/state-model.md +2 -0
- package/template/.cursor/skills/yss-product-lifecycle/references/user-decisions.md +23 -3
- package/template/.cursor/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.cursor/skills/yss-repository/SKILL.md +4 -0
- package/template/.cursor/skills/yss-research/SKILL.md +1 -1
- package/template/.cursor/skills/yss-resilience4j/SKILL.md +1 -1
- package/template/.cursor/skills/yss-security-algorithm/SKILL.md +1 -1
- package/template/.cursor/skills/yss-tactical-design/SKILL.md +4 -0
- package/template/.cursor/skills/yss-technical-design/SKILL.md +4 -0
- package/template/.cursor/skills/yss-technical-design/scripts/validate-technical-design.mjs +2 -2
- package/template/.cursor/skills/yss-ui/SKILL.md +1 -1
- package/template/.cursor/skills/yss-ui-business-page-generation/SKILL.md +1 -1
- package/template/.cursor/skills/yss-up-springboot3/SKILL.md +1 -1
- package/template/.cursor/skills/yss-use-table-height/SKILL.md +1 -1
- package/template/.cursor/skills/yss-use-tree-height/SKILL.md +1 -1
- package/template/.cursor/skills/yss-userinfo/SKILL.md +1 -1
- package/template/.cursor/skills/yss-validation/SKILL.md +5 -1
- package/template/.cursor/skills/yss-web-controller/SKILL.md +5 -1
- package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.mjs +5 -2
- package/template/.cursor/skills/ytable-usage/SKILL.md +1 -1
- package/template/.cursor/skills/ytree-usage/SKILL.md +1 -1
- package/template/.pi/skills/archify/SKILL.md +1 -1
- package/template/.pi/skills/code-review/SKILL.md +12 -8
- package/template/.pi/skills/file-export-download/SKILL.md +1 -1
- package/template/.pi/skills/frontend-commit/SKILL.md +1 -1
- package/template/.pi/skills/java-backend-commit/SKILL.md +1 -1
- package/template/.pi/skills/llm-wiki/SKILL.md +1 -6
- package/template/.pi/skills/lombok/SKILL.md +10 -336
- package/template/.pi/skills/lombok/references/annotation-examples.md +307 -0
- package/template/.pi/skills/maintaining-skills/SKILL.md +2 -1
- package/template/.pi/skills/maintaining-skills/references/authoring.md +27 -0
- package/template/.pi/skills/mapstruct/SKILL.md +11 -318
- package/template/.pi/skills/mapstruct/references/annotation-examples.md +300 -0
- package/template/.pi/skills/page-form-module/SKILL.md +1 -1
- package/template/.pi/skills/page-skeleton/SKILL.md +1 -1
- package/template/.pi/skills/theme-token-usage/SKILL.md +1 -1
- package/template/.pi/skills/to-tickets/SKILL.md +1 -1
- package/template/.pi/skills/using-git-worktrees/SKILL.md +1 -1
- package/template/.pi/skills/wayfinder/SKILL.md +1 -1
- package/template/.pi/skills/yedit-table-usage/SKILL.md +1 -1
- package/template/.pi/skills/yss-api-integration/SKILL.md +1 -1
- package/template/.pi/skills/yss-audit-log/SKILL.md +1 -1
- package/template/.pi/skills/yss-cache/SKILL.md +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/SKILL.md +15 -2
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +15 -10
- package/template/.pi/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +3 -3
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +3 -3
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +5 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +5 -2
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +13 -10
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +2 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +35 -3
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +1 -1
- package/template/.pi/skills/yss-distributed-id/SKILL.md +1 -1
- package/template/.pi/skills/yss-dto/SKILL.md +5 -1
- package/template/.pi/skills/yss-excel-mvc/SKILL.md +1 -1
- package/template/.pi/skills/yss-exception/SKILL.md +5 -1
- package/template/.pi/skills/yss-formily-schema-generator/SKILL.md +1 -1
- package/template/.pi/skills/yss-implementation-contract-compiler/SKILL.md +13 -5
- package/template/.pi/skills/yss-implementation-contract-compiler/agents/openai.yaml +1 -1
- package/template/.pi/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +16 -0
- package/template/.pi/skills/yss-implementation-contract-compiler/references/slice-implementation-contract-v2.md +214 -0
- package/template/.pi/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +66 -204
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/SKILL.md +15 -2
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +28 -19
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +10 -10
- package/template/.pi/skills/yss-mybatis/SKILL.md +4 -0
- package/template/.pi/skills/yss-openapi-draft-review/SKILL.md +1 -1
- package/template/.pi/skills/yss-openapi-governance/SKILL.md +1 -1
- package/template/.pi/skills/yss-product-lifecycle/SKILL.md +4 -4
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +7 -2
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +4 -0
- package/template/.pi/skills/yss-product-lifecycle/references/state-model.md +2 -0
- package/template/.pi/skills/yss-product-lifecycle/references/user-decisions.md +23 -3
- package/template/.pi/skills/yss-prototype-stage/SKILL.md +1 -1
- package/template/.pi/skills/yss-repository/SKILL.md +4 -0
- package/template/.pi/skills/yss-research/SKILL.md +1 -1
- package/template/.pi/skills/yss-resilience4j/SKILL.md +1 -1
- package/template/.pi/skills/yss-security-algorithm/SKILL.md +1 -1
- package/template/.pi/skills/yss-tactical-design/SKILL.md +4 -0
- package/template/.pi/skills/yss-technical-design/SKILL.md +4 -0
- package/template/.pi/skills/yss-technical-design/scripts/validate-technical-design.mjs +2 -2
- package/template/.pi/skills/yss-ui/SKILL.md +1 -1
- package/template/.pi/skills/yss-ui-business-page-generation/SKILL.md +1 -1
- package/template/.pi/skills/yss-up-springboot3/SKILL.md +1 -1
- package/template/.pi/skills/yss-use-table-height/SKILL.md +1 -1
- package/template/.pi/skills/yss-use-tree-height/SKILL.md +1 -1
- package/template/.pi/skills/yss-userinfo/SKILL.md +1 -1
- package/template/.pi/skills/yss-validation/SKILL.md +5 -1
- package/template/.pi/skills/yss-web-controller/SKILL.md +5 -1
- package/template/.pi/skills/yss-web-controller/scripts/generate_controller.mjs +5 -2
- package/template/.pi/skills/ytable-usage/SKILL.md +1 -1
- package/template/.pi/skills/ytree-usage/SKILL.md +1 -1
- package/template/AGENTS.md +1 -0
- package/template/CONTEXT.md +2 -1
- package/template/docs/agents/backend-architecture-profiles.md +1 -1
- package/template/docs/agents/digital-human-roles.yaml +25 -1
- package/template/docs/agents/issue-tracker.md +2 -0
- package/template/docs/engineering/backend-platforms.json +174 -0
- package/template/docs/engineering/backend-platforms.md +77 -0
- package/template/docs/process/MATT-POCOCK-ENGINEERING-SKILLS.md +1 -0
- package/template/docs/process/harness-process-tailoring.md +9 -1
- package/template/docs/process/lifecycle-artifact-map.md +4 -4
- package/template/docs/process/lifecycle-registry-baseline.json +1 -1
- package/template/docs/process/lifecycle-registry.yaml +4 -4
- package/template/docs/process/schemas/backend-architecture-identity.schema.json +91 -0
- package/template/docs/process/schemas/digital-human-task-package.schema.json +2 -1
- package/template/docs/process/schemas/lifecycle-checkpoint.schema.json +4 -0
- package/template/docs/process/schemas/project-scaffold-contract.schema.json +602 -83
- package/template/docs/process/schemas/scaffold-architecture-decisions.schema.json +323 -39
- package/template/docs/process/schemas/slice-implementation-contract-v3.schema.json +925 -0
- package/template/docs/templates/approval-record-template.yaml +2 -0
- package/template/docs/templates/vertical-slice-ticket-template.md +22 -31
- package/template/scripts/backend-platforms +14 -0
- package/template/scripts/lib/approval-record.mjs +32 -6
- package/template/scripts/lib/approved-execution-context.mjs +31 -8
- package/template/scripts/lib/backend-architecture.mjs +6 -0
- package/template/scripts/lib/backend-platform-provenance.mjs +67 -0
- package/template/scripts/lib/backend-platform-verification.mjs +210 -0
- package/template/scripts/lib/backend-platform.mjs +175 -0
- package/template/scripts/lib/backend-scaffold-prerequisites.mjs +1 -1
- package/template/scripts/lib/decision-continuation.mjs +79 -0
- package/template/scripts/lib/delivery-preflight.mjs +6 -5
- package/template/scripts/lib/digital-human-roles.mjs +10 -0
- package/template/scripts/lib/frontend-delivery-boundary.mjs +3 -0
- package/template/scripts/lib/implementation-contract-compiler.mjs +42 -9
- package/template/scripts/lib/lifecycle-controls.mjs +2 -2
- package/template/scripts/lib/lifecycle-transition.mjs +3 -1
- package/template/scripts/lib/plan-spec-entry.mjs +3 -3
- package/template/scripts/lib/scaffold-local-database.mjs +1 -0
- package/template/scripts/lib/slice-applicability.mjs +10 -0
- package/template/scripts/lib/slice-contract-preparation.mjs +257 -0
- package/template/scripts/lib/slice-contract-views.mjs +52 -0
- package/template/scripts/lib/slice-contract.mjs +211 -0
- package/template/scripts/lib/slice-repositories.mjs +49 -0
- package/template/scripts/lib/slice-task-package.mjs +66 -0
- package/template/scripts/lib/strategic-handoff.mjs +12 -1
- package/template/scripts/lib/task-package.mjs +6 -2
- package/template/scripts/lib/technical-design-boundary.mjs +1 -0
- package/template/scripts/lib/user-decision-reuse.mjs +1 -0
- package/template/scripts/lib/user-decision.mjs +4 -1
- package/template/scripts/preflight-delivery +2 -2
- package/template/scripts/slice-contract +30 -0
- package/template/scripts/verify-backend-platform-matrix +69 -0
- package/template/scripts/verify-scaffold-architecture-decisions +5 -0
- package/template/scripts/verify-user-decision +7 -2
- package/template/skills-lock.json +60 -55
- package/template.snapshot.json +3 -3
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
# Slice v2 历史读取与显式迁移
|
|
2
|
+
|
|
3
|
+
本页仅描述旧格式。新合同使用 [Slice v3](slice-implementation-contract.md);v2 保留原验证和过期判定,修改时显式生成新版本,不继承批准。
|
|
4
|
+
|
|
5
|
+
# Slice Implementation Contract
|
|
6
|
+
|
|
7
|
+
后端合同还必须绑定 `architecture_identity`(schema 见 `docs/process/schemas/backend-architecture-identity.schema.json`),并与工程基线、登记和 Manifest 一致。将同一身份复制到 `resolution`、backend 工作单元和执行结果;Profile 的成熟度/Recipe 来源是技能注册表,draft 不得 ready-for-agent。旧 backend.domain-behavior/persistence-mybatis/http-api Recipe 只读退役,重新编译时显式选择 backend.ddd-* 或 backend.mvc-*。
|
|
8
|
+
|
|
9
|
+
`yss-implementation-contract-compiler` 生成草案;`yss-product-lifecycle` 核验、批准并持久化。合同缺少必填字段时状态为 `blocked`。schema v1 已停止支持,必须重新编译为 v2,不提供自动升级。
|
|
10
|
+
|
|
11
|
+
采用专职前端 profile 时,`frontend.delivery` 绑定 `{acceptance_ref, digest}`,来自 `scripts/verify-frontend-delivery` 的当前结果;也可由 `resolution.frontend_delivery` 承载,两处并存时必须一致。正式执行从持久化合同读取并重验输入。细则见 `docs/process/frontend-backend-delivery.md`。
|
|
12
|
+
|
|
13
|
+
```yaml
|
|
14
|
+
slice_contract:
|
|
15
|
+
schema_version: 2
|
|
16
|
+
contract_id:
|
|
17
|
+
contract_version: 1
|
|
18
|
+
slice_id:
|
|
19
|
+
status: draft
|
|
20
|
+
suggested_owner_role_id: # role.frontend-engineer | role.backend-engineer | role.test-engineer;编译器只建议,生命周期编排器派活并批准
|
|
21
|
+
lifecycle_refs:
|
|
22
|
+
spec:
|
|
23
|
+
ticket:
|
|
24
|
+
requirement_freeze:
|
|
25
|
+
low_fidelity_review:
|
|
26
|
+
prototype_review:
|
|
27
|
+
prototype_profile_decision:
|
|
28
|
+
prototype_deliverable:
|
|
29
|
+
prototype_deliverable_verification:
|
|
30
|
+
prototype_confirmation:
|
|
31
|
+
openapi_freeze_or_no_impact:
|
|
32
|
+
architecture_review:
|
|
33
|
+
data_architecture:
|
|
34
|
+
engineering_baseline:
|
|
35
|
+
technical_design: # 阅读引用;与 resolution.technical_design.ref 指向同一文件
|
|
36
|
+
tactical_design: # 旧 DDD 引用兼容
|
|
37
|
+
build_architecture_checklist:
|
|
38
|
+
implementation_repository:
|
|
39
|
+
frontend_repository:
|
|
40
|
+
backend_repository:
|
|
41
|
+
maven_wrapper:
|
|
42
|
+
readiness:
|
|
43
|
+
blockers: []
|
|
44
|
+
stale_inputs: []
|
|
45
|
+
not_applicable:
|
|
46
|
+
- item:
|
|
47
|
+
reason:
|
|
48
|
+
resolution:
|
|
49
|
+
technical_design: # 有技术设计影响时由编译器绑定,DDD / MVC 共用
|
|
50
|
+
ref:
|
|
51
|
+
version:
|
|
52
|
+
digest: # 已持久化合同原始字节摘要
|
|
53
|
+
required_capabilities: []
|
|
54
|
+
required_skills: []
|
|
55
|
+
recipe_ids: []
|
|
56
|
+
conditions: []
|
|
57
|
+
reason_chains: {}
|
|
58
|
+
registry_digest: # sha256 of normalized docs/agents/yss-skill-registry.yaml
|
|
59
|
+
compiler_contract_digest: # sha256 of normalized compiler-contract.yaml
|
|
60
|
+
compiled_at:
|
|
61
|
+
freshness: current # digest 变化后为 stale
|
|
62
|
+
common:
|
|
63
|
+
impacted_areas: []
|
|
64
|
+
implementation_path_policy: harness-apps-multi-project # or external-repository-native | git-submodule-harness-apps
|
|
65
|
+
project_roots: []
|
|
66
|
+
required_capabilities: []
|
|
67
|
+
required_skills: []
|
|
68
|
+
optional_skills: []
|
|
69
|
+
unavailable_skills:
|
|
70
|
+
- skill:
|
|
71
|
+
provider:
|
|
72
|
+
fallback: blocked | approved-equivalent
|
|
73
|
+
resolution:
|
|
74
|
+
allowed_write_paths: []
|
|
75
|
+
forbidden_patterns: []
|
|
76
|
+
expected_evidence_files: []
|
|
77
|
+
verification_commands: []
|
|
78
|
+
human_review_points: []
|
|
79
|
+
full_reroute_triggers: []
|
|
80
|
+
quality_baseline_ref:
|
|
81
|
+
context_plan:
|
|
82
|
+
required_context_refs: []
|
|
83
|
+
on_demand_context_refs: []
|
|
84
|
+
context_stop_rule: minimal-sufficient-evidence
|
|
85
|
+
missing_context_action: blocked # or reroute
|
|
86
|
+
doubt_driven_review:
|
|
87
|
+
status: not-applicable # or required / completed / blocked
|
|
88
|
+
trigger_impacts: []
|
|
89
|
+
claim:
|
|
90
|
+
counterclaim:
|
|
91
|
+
evidence_refs: []
|
|
92
|
+
residual_risks: []
|
|
93
|
+
reviewer_ref:
|
|
94
|
+
frontend:
|
|
95
|
+
status: not-applicable
|
|
96
|
+
required_skills: []
|
|
97
|
+
approved_prototype_ref:
|
|
98
|
+
state_matrix_ref:
|
|
99
|
+
visual_baseline_ref:
|
|
100
|
+
visual_baseline_case_ids: []
|
|
101
|
+
generated_api_client_ref:
|
|
102
|
+
allowed_write_paths: []
|
|
103
|
+
component_test_seams: []
|
|
104
|
+
e2e_paths: []
|
|
105
|
+
backend:
|
|
106
|
+
status: not-applicable
|
|
107
|
+
affected_layers: []
|
|
108
|
+
component_impacts: []
|
|
109
|
+
required_skills: []
|
|
110
|
+
application_boundary:
|
|
111
|
+
transaction_boundary:
|
|
112
|
+
persistence_strategy:
|
|
113
|
+
tactical_design_ref:
|
|
114
|
+
tactical_design_version:
|
|
115
|
+
aggregate_refs: []
|
|
116
|
+
invariant_refs: []
|
|
117
|
+
state_behavior_refs: []
|
|
118
|
+
gateway_boundary_ref:
|
|
119
|
+
domain_test_seams: []
|
|
120
|
+
application_test_seams: []
|
|
121
|
+
tactical_ddd:
|
|
122
|
+
status: not-applicable
|
|
123
|
+
tactical_design_ref:
|
|
124
|
+
tactical_design_version:
|
|
125
|
+
aggregate_refs: []
|
|
126
|
+
invariant_refs: []
|
|
127
|
+
state_behavior_refs: []
|
|
128
|
+
gateway_boundary_ref:
|
|
129
|
+
domain_test_seams: []
|
|
130
|
+
application_test_seams: []
|
|
131
|
+
allowed_write_paths: []
|
|
132
|
+
forbidden_patterns: []
|
|
133
|
+
expected_evidence_files: []
|
|
134
|
+
seam_deferred: []
|
|
135
|
+
verification_commands: []
|
|
136
|
+
contract:
|
|
137
|
+
api_impact: false
|
|
138
|
+
freeze_ref:
|
|
139
|
+
no_api_impact_ref:
|
|
140
|
+
generated_clients: []
|
|
141
|
+
contract_tests: []
|
|
142
|
+
regeneration_commands: []
|
|
143
|
+
cross_repo:
|
|
144
|
+
repositories: []
|
|
145
|
+
delivery_order: []
|
|
146
|
+
integration_verification: []
|
|
147
|
+
rollback_order: []
|
|
148
|
+
work_units:
|
|
149
|
+
- id: slice-frontend
|
|
150
|
+
role_id: role.frontend-engineer
|
|
151
|
+
runtime_id: runtime.skill-projection
|
|
152
|
+
execution_state: Worker
|
|
153
|
+
workflow_status: not-started
|
|
154
|
+
task_package_ref:
|
|
155
|
+
contract_id: # must equal slice_contract.contract_id
|
|
156
|
+
contract_version: # must equal slice_contract.contract_version
|
|
157
|
+
downstream_consumers: []
|
|
158
|
+
convergence_ref:
|
|
159
|
+
work_unit:
|
|
160
|
+
behavior:
|
|
161
|
+
primary_skill:
|
|
162
|
+
supporting_skills: []
|
|
163
|
+
tdd_mode: behavior-tdd
|
|
164
|
+
allowed_write_paths: []
|
|
165
|
+
expected_evidence: []
|
|
166
|
+
verification_commands: []
|
|
167
|
+
- id: slice-backend
|
|
168
|
+
role_id: role.backend-engineer
|
|
169
|
+
runtime_id: runtime.skill-projection
|
|
170
|
+
execution_state: Worker
|
|
171
|
+
workflow_status: not-started
|
|
172
|
+
task_package_ref:
|
|
173
|
+
contract_id:
|
|
174
|
+
contract_version:
|
|
175
|
+
downstream_consumers: []
|
|
176
|
+
convergence_ref:
|
|
177
|
+
work_unit:
|
|
178
|
+
behavior:
|
|
179
|
+
primary_skill:
|
|
180
|
+
supporting_skills: []
|
|
181
|
+
tdd_mode: behavior-tdd
|
|
182
|
+
allowed_write_paths: []
|
|
183
|
+
expected_evidence: []
|
|
184
|
+
verification_commands: []
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
工作单元:
|
|
188
|
+
|
|
189
|
+
```yaml
|
|
190
|
+
work_unit:
|
|
191
|
+
id:
|
|
192
|
+
behavior:
|
|
193
|
+
primary_skill:
|
|
194
|
+
supporting_skills: []
|
|
195
|
+
tdd_mode: behavior-tdd
|
|
196
|
+
allowed_write_paths: []
|
|
197
|
+
expected_evidence: []
|
|
198
|
+
verification_commands: []
|
|
199
|
+
controlled_generation:
|
|
200
|
+
exception_reason:
|
|
201
|
+
generator:
|
|
202
|
+
generator_inputs: []
|
|
203
|
+
expected_files: []
|
|
204
|
+
verification_commands: []
|
|
205
|
+
behavior_tests_after_generation: []
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
`controlled_generation` 仅在 `tdd_mode: controlled-generation` 时必填;其他模式标记 `not-applicable`。明确写入需求的权限业务行为仍使用 `behavior-tdd`;API schema 与 database schema 分别触发契约或数据架构回退,不得用一个含糊的 schema 类型决定路线。
|
|
209
|
+
|
|
210
|
+
`work_units` 中的前端、后端和测试任务是切片级子任务,不是新的生命周期阶段。每个子任务必须引用独立任务包;任务包只能消费同一份已批准且版本当前的 Slice Contract。`workflow_status` 追踪执行过程,不能替代生命周期状态;`contract_id`、`contract_version` 或 resolution digest 不一致时必须阻断并回到实现合同编译器。
|
|
211
|
+
|
|
212
|
+
一个切片可以组合多个窄 Recipe,但只计算一次闭包。Recipe 只能引用 capability;合同同时冻结 `required_capabilities`、`required_skills`、完整原因链和 Registry/Compiler digest。任一 digest 或 Visual Baseline 版本 / digest 改变时,当前合同标记 `stale`,重新编译后仍须由 `yss-product-lifecycle` 再批准。UI 切片只消费 `visual_baseline_case_ids` 指定的图片,并先读取 manifest 与语义引用,禁止按目录 glob 猜测图片含义。
|
|
213
|
+
|
|
214
|
+
技术设计编译绑定使用 `technical_design: {ref, version, digest}` 与 `slice_id`,校验器规则见 `yss-technical-design/references/technical-design-contract.md`。`backend.tactical_ddd` 仅适用于 `domain-driven`;MVC 消费共同技术设计绑定与 `design` 的用例、规则、事务和测试 seam,不填聚合或 Gateway 字段。
|
|
@@ -1,210 +1,72 @@
|
|
|
1
|
-
# Slice Implementation Contract
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
`
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
prototype_review:
|
|
23
|
-
prototype_profile_decision:
|
|
24
|
-
prototype_deliverable:
|
|
25
|
-
prototype_deliverable_verification:
|
|
26
|
-
prototype_confirmation:
|
|
27
|
-
openapi_freeze_or_no_impact:
|
|
28
|
-
architecture_review:
|
|
29
|
-
data_architecture:
|
|
30
|
-
engineering_baseline:
|
|
31
|
-
technical_design: # 阅读引用;与 resolution.technical_design.ref 指向同一文件
|
|
32
|
-
tactical_design: # 旧 DDD 引用兼容
|
|
33
|
-
build_architecture_checklist:
|
|
34
|
-
implementation_repository:
|
|
35
|
-
frontend_repository:
|
|
36
|
-
backend_repository:
|
|
37
|
-
maven_wrapper:
|
|
38
|
-
readiness:
|
|
39
|
-
blockers: []
|
|
40
|
-
stale_inputs: []
|
|
41
|
-
not_applicable:
|
|
42
|
-
- item:
|
|
43
|
-
reason:
|
|
44
|
-
resolution:
|
|
45
|
-
technical_design: # 有技术设计影响时由编译器绑定,DDD / MVC 共用
|
|
46
|
-
ref:
|
|
47
|
-
version:
|
|
48
|
-
digest: # 已持久化合同原始字节摘要
|
|
49
|
-
required_capabilities: []
|
|
50
|
-
required_skills: []
|
|
51
|
-
recipe_ids: []
|
|
52
|
-
conditions: []
|
|
53
|
-
reason_chains: {}
|
|
54
|
-
registry_digest: # sha256 of normalized docs/agents/yss-skill-registry.yaml
|
|
55
|
-
compiler_contract_digest: # sha256 of normalized compiler-contract.yaml
|
|
56
|
-
compiled_at:
|
|
57
|
-
freshness: current # digest 变化后为 stale
|
|
58
|
-
common:
|
|
59
|
-
impacted_areas: []
|
|
60
|
-
implementation_path_policy: harness-apps-multi-project # or external-repository-native | git-submodule-harness-apps
|
|
61
|
-
project_roots: []
|
|
62
|
-
required_capabilities: []
|
|
63
|
-
required_skills: []
|
|
64
|
-
optional_skills: []
|
|
65
|
-
unavailable_skills:
|
|
66
|
-
- skill:
|
|
67
|
-
provider:
|
|
68
|
-
fallback: blocked | approved-equivalent
|
|
69
|
-
resolution:
|
|
70
|
-
allowed_write_paths: []
|
|
71
|
-
forbidden_patterns: []
|
|
72
|
-
expected_evidence_files: []
|
|
73
|
-
verification_commands: []
|
|
74
|
-
human_review_points: []
|
|
75
|
-
full_reroute_triggers: []
|
|
76
|
-
quality_baseline_ref:
|
|
77
|
-
context_plan:
|
|
78
|
-
required_context_refs: []
|
|
79
|
-
on_demand_context_refs: []
|
|
80
|
-
context_stop_rule: minimal-sufficient-evidence
|
|
81
|
-
missing_context_action: blocked # or reroute
|
|
82
|
-
doubt_driven_review:
|
|
83
|
-
status: not-applicable # or required / completed / blocked
|
|
84
|
-
trigger_impacts: []
|
|
85
|
-
claim:
|
|
86
|
-
counterclaim:
|
|
87
|
-
evidence_refs: []
|
|
88
|
-
residual_risks: []
|
|
89
|
-
reviewer_ref:
|
|
90
|
-
frontend:
|
|
91
|
-
status: not-applicable
|
|
92
|
-
required_skills: []
|
|
93
|
-
approved_prototype_ref:
|
|
94
|
-
state_matrix_ref:
|
|
95
|
-
visual_baseline_ref:
|
|
96
|
-
visual_baseline_case_ids: []
|
|
97
|
-
generated_api_client_ref:
|
|
98
|
-
allowed_write_paths: []
|
|
99
|
-
component_test_seams: []
|
|
100
|
-
e2e_paths: []
|
|
101
|
-
backend:
|
|
102
|
-
status: not-applicable
|
|
103
|
-
affected_layers: []
|
|
104
|
-
component_impacts: []
|
|
105
|
-
required_skills: []
|
|
106
|
-
application_boundary:
|
|
107
|
-
transaction_boundary:
|
|
108
|
-
persistence_strategy:
|
|
109
|
-
tactical_design_ref:
|
|
110
|
-
tactical_design_version:
|
|
111
|
-
aggregate_refs: []
|
|
112
|
-
invariant_refs: []
|
|
113
|
-
state_behavior_refs: []
|
|
114
|
-
gateway_boundary_ref:
|
|
115
|
-
domain_test_seams: []
|
|
116
|
-
application_test_seams: []
|
|
117
|
-
tactical_ddd:
|
|
118
|
-
status: not-applicable
|
|
119
|
-
tactical_design_ref:
|
|
120
|
-
tactical_design_version:
|
|
121
|
-
aggregate_refs: []
|
|
122
|
-
invariant_refs: []
|
|
123
|
-
state_behavior_refs: []
|
|
124
|
-
gateway_boundary_ref:
|
|
125
|
-
domain_test_seams: []
|
|
126
|
-
application_test_seams: []
|
|
127
|
-
allowed_write_paths: []
|
|
128
|
-
forbidden_patterns: []
|
|
129
|
-
expected_evidence_files: []
|
|
130
|
-
seam_deferred: []
|
|
131
|
-
verification_commands: []
|
|
132
|
-
contract:
|
|
133
|
-
api_impact: false
|
|
134
|
-
freeze_ref:
|
|
135
|
-
no_api_impact_ref:
|
|
136
|
-
generated_clients: []
|
|
137
|
-
contract_tests: []
|
|
138
|
-
regeneration_commands: []
|
|
139
|
-
cross_repo:
|
|
140
|
-
repositories: []
|
|
141
|
-
delivery_order: []
|
|
142
|
-
integration_verification: []
|
|
143
|
-
rollback_order: []
|
|
144
|
-
work_units:
|
|
145
|
-
- id: slice-frontend
|
|
146
|
-
role_id: role.frontend-engineer
|
|
147
|
-
runtime_id: runtime.skill-projection
|
|
148
|
-
execution_state: Worker
|
|
149
|
-
workflow_status: not-started
|
|
150
|
-
task_package_ref:
|
|
151
|
-
contract_id: # must equal slice_contract.contract_id
|
|
152
|
-
contract_version: # must equal slice_contract.contract_version
|
|
153
|
-
downstream_consumers: []
|
|
154
|
-
convergence_ref:
|
|
155
|
-
work_unit:
|
|
156
|
-
behavior:
|
|
157
|
-
primary_skill:
|
|
158
|
-
supporting_skills: []
|
|
159
|
-
tdd_mode: behavior-tdd
|
|
160
|
-
allowed_write_paths: []
|
|
161
|
-
expected_evidence: []
|
|
162
|
-
verification_commands: []
|
|
163
|
-
- id: slice-backend
|
|
164
|
-
role_id: role.backend-engineer
|
|
165
|
-
runtime_id: runtime.skill-projection
|
|
166
|
-
execution_state: Worker
|
|
167
|
-
workflow_status: not-started
|
|
168
|
-
task_package_ref:
|
|
169
|
-
contract_id:
|
|
170
|
-
contract_version:
|
|
171
|
-
downstream_consumers: []
|
|
172
|
-
convergence_ref:
|
|
173
|
-
work_unit:
|
|
174
|
-
behavior:
|
|
175
|
-
primary_skill:
|
|
176
|
-
supporting_skills: []
|
|
177
|
-
tdd_mode: behavior-tdd
|
|
178
|
-
allowed_write_paths: []
|
|
179
|
-
expected_evidence: []
|
|
180
|
-
verification_commands: []
|
|
181
|
-
```
|
|
1
|
+
# Slice Implementation Contract v3
|
|
2
|
+
|
|
3
|
+
YAML 是唯一权威合同。Agent 从已确认上游整理草案;用户确认目标、范围、验收和关键取舍;独立专业审查核验工程约束,生命周期主控关闭 `gate.slice-contract-approved`。新合同使用 schema v3;[v2](slice-implementation-contract-v2.md) 保留原规则读取和校验,schema v1 继续拒绝。
|
|
4
|
+
|
|
5
|
+
结构权威为 `docs/process/schemas/slice-implementation-contract-v3.schema.json`。Registry、编译规则与 Execution Result 继续使用各自版本;Slice v3 不要求它们一同升级。
|
|
6
|
+
|
|
7
|
+
## 只保存一次
|
|
8
|
+
|
|
9
|
+
| 分组 | 填写内容 | 不再重复填写 |
|
|
10
|
+
|---|---|---|
|
|
11
|
+
| 身份 | schema_version、contract_id、contract_version、slice_id、status | 任务内不复制合同身份 |
|
|
12
|
+
| basis | 上游 ref、原字节 digest、已知 version 和适用 approval_ref | 同一文件用本组键名别名,不复制 Spec、技术设计正文 |
|
|
13
|
+
| scope | 影响面、工程根、写边界及本切片约束 | 子合同不再保存同一 Skill、路径、命令 |
|
|
14
|
+
| applicability | frontend/backend/api/cross_repo 的 required 或带理由的 not-applicable | 不适用的 extensions 整段省略;缺信息不能省略 |
|
|
15
|
+
| resolution | 冻结 capability、Skill、Recipe、条件、Registry/Compiler 摘要及适用架构身份 | 原因链、编译时间、实时 freshness 不进入权威合同 |
|
|
16
|
+
| acceptance | 本切片验收 ID 对应 basis 来源和 locator | 验收正文仍在 Ticket / Spec |
|
|
17
|
+
| verification | 命令、cwd、test_seams、expected_evidence、acceptance_refs | 工作单元通过 verification_refs 选择;required_for_all 自动继承 |
|
|
18
|
+
| work_units | 行为、角色、主辅 Skill、TDD 模式、验收和验证引用 | 写路径默认继承 scope,只能收窄;runtime、派发和进度留在任务包 |
|
|
19
|
+
| extensions | 适用 frontend/backend/api/cross_repo 的独有信息 | 后端设计用 design_refs 定位;仅切片新增约束进入 backend.constraints |
|
|
20
|
+
|
|
21
|
+
`basis` 别名必须可解析且无循环。所有引用先校验原字节摘要;已知版本必须绑定。locator 支持唯一文字/稳定 ID、`lines:起始-结束`、结构化资产的 `pointer:/design/...`;歧义或缺失阻断。行区间绑定文件摘要,源内容变化后必须重新核验。
|
|
182
22
|
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
controlled_generation:
|
|
196
|
-
exception_reason:
|
|
197
|
-
generator:
|
|
198
|
-
generator_inputs: []
|
|
199
|
-
expected_files: []
|
|
200
|
-
verification_commands: []
|
|
201
|
-
behavior_tests_after_generation: []
|
|
23
|
+
scope.implementation_path_policy 保留 `external-repository-native`、`harness-apps-multi-project`、`git-submodule-harness-apps`;gitlink 登记、attached HEAD 和禁止覆盖的边界仍按原仓库接入规则校验。
|
|
24
|
+
|
|
25
|
+
每项验收必须映射到工作单元与验证。每条验证指定已登记工程内的 cwd;多工程工作单元明确 project_root。跨仓扩展保留交付、联合验证和回滚顺序,数组顺序不能排序消除。任务所选 Skill 必须属于冻结闭包;共享约束始终继承。
|
|
26
|
+
|
|
27
|
+
## 准备和查看
|
|
28
|
+
|
|
29
|
+
```sh
|
|
30
|
+
scripts/slice-contract prepare <ticket.md> --input <本切片补充.yaml> --output <新合同.yaml> --root <治理根>
|
|
31
|
+
scripts/slice-contract view <合同.yaml> --root <治理根>
|
|
32
|
+
scripts/slice-contract view <合同.yaml> --unit <work-unit-id> --root <治理根>
|
|
33
|
+
scripts/slice-contract diff <旧合同.yaml> <新合同.yaml> --root <治理根>
|
|
34
|
+
scripts/slice-contract migrate <旧v2.yaml> --input <迁移补充.yaml> --output <新v3.yaml> --root <治理根>
|
|
202
35
|
```
|
|
203
36
|
|
|
204
|
-
`
|
|
37
|
+
`--input` 只传 `sources` 来源选择、`refinements` 新增细化,以及需要时的 checkpoint_ref / approved_slice。可直接调用 `prepareSliceImplementationContract`,避免另存补充文件;临时补充不是批准或执行合同。Ticket 已有 `slice_implementation` frontmatter 或 checkpoint 中同名事实时自动读取,不要求补录全部合同。普通 Markdown Ticket 的验收列表自动按原行定位;其他非结构化语义由 Agent 带来源整理,仍需专业审查。
|
|
38
|
+
|
|
39
|
+
先复用登记中的工程根和基线中的架构身份。登记写范围仅为上限,不能当作切片授权。多来源冲突、未明影响和缺少必要资产输出具体 blocker。输入变化不能用最后覆盖处理;先修正来源或重新确定切片细化。
|
|
40
|
+
|
|
41
|
+
输出为 `{slice_contract, report}`;report 包含来源、缺口、原因链和检查结果,不是第二份合同。`persistSliceDraft` 只写新路径,保存前复核读取过的来源,不覆盖既有草案或已批准合同。CLI `verify` 只检查合同与来源,不证明批准有效。
|
|
42
|
+
|
|
43
|
+
审阅视图展示交付行为、范围、验收、取舍与风险,任务视图附完整全局和专项约束。Markdown 和结构化视图同源,携带合同 ID、版本与原字节摘要,不可反向作为执行授权。差异按原字节与结构比较,未知字段、缺少旧来源快照或来源漂移明确显示,不自动判定用户授权可以延续。
|
|
44
|
+
|
|
45
|
+
## 审查、批准与派发
|
|
46
|
+
|
|
47
|
+
- 默认一名有对应能力的独立专业审查者,核验范围、验收覆盖、工程约束和验证充分性。相邻检查可共用现有 review-bundle;不重复要求用户审阅工程字段。
|
|
48
|
+
- 当前合同的工程审查使用现有 `check.design-reviewed` 会签记录,绑定 `subject_ref`、无前缀 subject_digest、artifact_bindings,以及不同的 principal_ref / drafter_principal_ref;findings 为明确数组。未关闭缺陷、缺证据和重要风险阻断,建议须有 follow_up。
|
|
49
|
+
- 生命周期把审查记录引用放入 Slice gate 的 evidence_refs。合同最终字节(包含生命周期设置的状态)冻结后绑定审查和 checkpoint;单独的 `status: approved` 不授予执行权。
|
|
50
|
+
- 用户决定沿用现有 user-decisions 协议:已覆盖且无实质变化时复用,缺失确认或决定变化才集中询问。Spec 确认不自动升级为实施授权,不改写原回复。
|
|
51
|
+
- `compileSliceTaskPackage` 只从已批准原始 YAML 生成任务包,角色 Skill 来自 `taskPackageDefaults`;运行时身份在派发时选择。已有任务包 schema 不变,`contract.gate_refs` 为唯一当前批准 checkpoint 引用。
|
|
52
|
+
- 批准、范围、派发、freshness 和结果核验共用 `normalizeSliceContract`;展开只在内存发生。执行结果仍是 v2,并用 verification_results 的 cwd 证明命令执行位置;任务验收需要全部声明命令、实际结果及可读预期证据。
|
|
53
|
+
|
|
54
|
+
## 兼容与迁移
|
|
55
|
+
|
|
56
|
+
v2 不自动改写,也不忽略旧 Compiler/Registry 摘要漂移。显式迁移要求新 contract_version,输出草案并重新计算冻结结果;不继承旧批准。重复字段冲突、未映射约束、模糊验收映射和子合同独有边界均阻断并列明恢复动作。v2 runtime / workflow 状态不进入 v3 合同,保留在原文件和现有任务证据中。
|
|
57
|
+
|
|
58
|
+
本试点不改技术设计、脚手架、审批记录、交付合同结构,不新增管理页面或跨进程缓存。
|
|
59
|
+
|
|
60
|
+
## 第二轮增量规则
|
|
61
|
+
|
|
62
|
+
新草案的 `ticket_policy` 声明 `frozen-requirements` / `tracker-or-task-package`,Ticket 必须有 requirement_version 或显式绑定版本。冻结后进度、验收结果、会签与重路由记录进入现有 tracker / 任务包;需求改动生成新版本,不重新解释旧合同的绑定。审阅视图分别显示冻结时状态与当前状态的读取位置。
|
|
63
|
+
|
|
64
|
+
明确 `scope.risk_level` 后,准备器绑定生命周期注册表和裁剪依据,并从注册表已发布架构审查的 trigger 条件计算 `applicability.checks`。缺少该声明的旧 v3 保留原保守材料要求。已有 UI 承接须声明 `frontend.baseline_kind: existing-ui-baseline` 与 `ui_change: none`,绑定已有观测包和前端交付验收;UI 变化仍走产品设计证据。未知影响、必要证据缺失和外部强制审批不能裁掉。
|
|
65
|
+
|
|
66
|
+
准备报告按来源发现、独立检查、依赖检查和组装给出诊断;blocker 的稳定 code、field、source_ref、responsibility 与 recovery 可用于一次回交。责任类别为 agent、professional-review、user-decision。依赖缺失的下游标记 not-executed。报告随草案保存为 `.preparation.json`,绑定 YAML 原始字节;阻断草案只显示诊断,不能批准或执行。报告 metrics 只记录本次实测准备耗时,未观测的补材料轮次与人工确认次数为 null,不把夹具当成真实工时收益。
|
|
205
67
|
|
|
206
|
-
`
|
|
68
|
+
多工程新草案在 `basis.repository_preparation` 绑定现有 schema v2 多项目准备结果。`extensions.cross_repo.repository_bindings` 以工程根为键,仅引用 basis 中各工程的 implementation_repository、engineering_baseline、manifest、technical_design 或 frontend_delivery;不复制文件事实。可用 recipe_refs / capability_refs 选择全局编译输入中的适用项。逐仓登记、基线身份、写上限、设计与编译约束都必须满足;所有工作单元显式选择 project_root。delivery_order 与 rollback_order 完整列出工程根;integration_verification 引用 verification 的 ID,联合验证用 cwd 和 dependency_roots 明确位置及依赖。
|
|
207
69
|
|
|
208
|
-
|
|
70
|
+
跨仓 `createApprovedExecutionContext` / `createApprovedRecompilationContext` 使用 `work_unit_id`,歧义阻断。Execution Result 保持 schema v2,跨仓 changed_files / evidence_files 使用 `{path, project_root}`;证据文件从所属工程读取,verification_results 必须携带真实 cwd 和适用 dependency_roots。单仓旧调用继续兼容。接收端重读来源批准与编译摘要并检查角色范围,不能用本地默认编译结果替换不支持的来源版本。
|
|
209
71
|
|
|
210
|
-
|
|
72
|
+
来源别名在单次读取内合并,审阅复用本次规范化的来源快照;没有外部可传入的缓存对象。执行边界始终重新读取。差异的 scope / acceptance / authorization / engineering-detail 分类附原字节证据与待审查说明;presentation-only 也不授予批准或确认语义等价。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: yss-layered-mvc-scaffold-generator
|
|
3
|
-
description:
|
|
3
|
+
description: 用于在生命周期已批准的脚手架合同下生成按批准 Spring Boot / Java 平台生成通用 YSS 分层 MVC 后端工程;核心模块为 server、service、repository,并按能力确定性增加 adapter、client、feign-client。
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# YSS Layered MVC Scaffold Generator
|
|
@@ -16,13 +16,26 @@ description: 用于在生命周期已批准的脚手架合同下生成通用 YSS
|
|
|
16
16
|
|
|
17
17
|
任一条件缺失时返回 `blocked`。本生成器无交互、无默认回退;用户选择由 `yss-product-lifecycle` 在 `work-unit.technical-analysis` 的工程基线内完成。
|
|
18
18
|
|
|
19
|
+
## Spring Boot / Java 平台选择
|
|
20
|
+
|
|
21
|
+
调用本技能时先展示 `scripts/backend-platforms` 的精确版本清单及兼容状态。由生命周期编排器把架构、Spring Boot、Java 和 YSS 父 POM/BOM 合并展示并取得真实用户确认;生成器不提问、不猜版本、不使用 `x` 或 `latest`。已有批准且当前的选择展示摘要后复用。
|
|
22
|
+
|
|
23
|
+
- 候选平台:Boot 2.7.18 / Java 8,Boot 3.5.16 / Java 17 或 21,Boot 4.1.1 / Java 17 或 21。新 Boot 默认推荐 Java 17;候选不等于可生成。
|
|
24
|
+
- 独立子项目可继承主项目组合或覆盖,必须逐项目确认(允许一次确认明确列出的项目);同一 Maven Reactor 使用一个平台。
|
|
25
|
+
- 只开放共享兼容清单中已有真实 YSS 构建、依赖和启动证据的组合。缺少兼容父 POM、BOM、starter 或相应能力证据即 `blocked`;不替换官方组件、不降级回退。
|
|
26
|
+
- 新生成合同必须有 `platform_configuration` v2,与架构决策、Maven 坐标及兼容条目摘要一致。Boot、Java、YSS 坐标或依赖配方变化时回生命周期重新确认并编译合同;仅追加同配置验证记录不重复确认,仍核验证据有效性。
|
|
27
|
+
- Spring MVC、Servlet、Validation、Jackson 和 starter 坐标消费共享平台清单;Boot 3.5 / 4.1 拒绝 Java 8/11。Jakarta 转换不包括 `javax.sql` 等 Java SE API。
|
|
28
|
+
- 平台候选维护验证产物标记 `platform_verification=candidate`,不能交给业务生成、升级完成等级或进入首切片验证。测试夹具不证明 YSS 兼容。
|
|
29
|
+
|
|
30
|
+
版本清单、合同字段、候选验证和支持晋级规则见 仓库共享合同 `docs/engineering/backend-platforms.md`。
|
|
31
|
+
|
|
19
32
|
## 架构与 Profile
|
|
20
33
|
|
|
21
34
|
- 固定核心模块:`server`、`service`、`repository`。
|
|
22
35
|
- `external-integration` 增加 `adapter`。
|
|
23
36
|
- `published-client` 增加 `client`。
|
|
24
37
|
- `feign-client` 增加 `client`、`feign-client`。
|
|
25
|
-
-
|
|
38
|
+
- 平台来自批准的 `platform_configuration`;保留 YSS BOM、MyBatis-Plus,不固定单一 Boot/Java/Validation 命名空间。
|
|
26
39
|
- 固定 architecture_profile=layered-mvc-service;verification_database=h2、production_database=not-bound。测试使用 H2,本地运行显式启用 scaffold-local;不引入外部驱动/数据源。
|
|
27
40
|
|
|
28
41
|
能力解析规则、模块职责和依赖方向见 [architecture.md](references/architecture.md)。生成器必须同时校验 `requested_capabilities` 与 `resolved_modules`,不得自行补猜模块。
|