create-yss-spec 3.4.5 → 3.4.7
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 +1 -1
- package/template/.agents/skills/.strategic-design-skills-manifest.json +1 -1
- package/template/.agents/skills/.yss-skills-manifest.json +1 -8
- package/template/.agents/skills/formily-mode-slot-detail/SKILL.md +3 -4
- package/template/.agents/skills/yedit-table-usage/SKILL.md +2 -0
- package/template/.agents/skills/yss-application/SKILL.md +8 -6
- package/template/.agents/skills/yss-audit-log/SKILL.md +12 -7
- package/template/.agents/skills/yss-audit-log/references/source-index.boot2-java8.md +57 -0
- package/template/.agents/skills/yss-audit-log/references/source-index.boot3-java17.md +58 -0
- package/template/.agents/skills/yss-audit-log/references/source-index.md +6 -39
- package/template/.agents/skills/yss-cache/SKILL.md +5 -1
- package/template/.agents/skills/yss-cache/references/source-index.boot2-java8.md +81 -0
- package/template/.agents/skills/yss-cache/references/source-index.boot3-java17.md +83 -0
- package/template/.agents/skills/yss-cache/references/source-index.md +6 -63
- package/template/.agents/skills/yss-cache/scripts/check-skill-freshness.sh +20 -15
- package/template/.agents/skills/yss-ddd-scaffold-generator/SKILL.md +2 -2
- package/template/{.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md → .agents/skills/yss-ddd-scaffold-generator/references/engineering-baseline.md} +0 -5
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +2 -2
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +1 -3
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +1 -1
- package/template/.agents/skills/yss-design-system/SKILL.md +2 -2
- package/template/.agents/skills/yss-distributed-id/SKILL.md +4 -0
- package/template/.agents/skills/yss-distributed-id/references/source-index.boot2-java8.md +102 -0
- package/template/.agents/skills/yss-distributed-id/references/source-index.boot3-java17.md +90 -0
- package/template/.agents/skills/yss-distributed-id/references/source-index.md +6 -82
- package/template/.agents/skills/yss-dto/SKILL.md +2 -2
- package/template/.agents/skills/yss-dto/references/source-index.boot2-java8.md +67 -0
- package/template/.agents/skills/yss-dto/references/source-index.boot3-java17.md +70 -0
- package/template/.agents/skills/yss-dto/references/source-index.md +6 -51
- package/template/.agents/skills/yss-excel-mvc/SKILL.md +4 -0
- package/template/.agents/skills/yss-excel-mvc/references/source-index.boot2-java8.md +90 -0
- package/template/.agents/skills/yss-excel-mvc/references/source-index.boot3-java17.md +58 -0
- package/template/.agents/skills/yss-excel-mvc/references/source-index.md +6 -70
- package/template/.agents/skills/yss-exception/SKILL.md +12 -9
- package/template/.agents/skills/yss-exception/references/source-index.boot2-java8.md +50 -0
- package/template/.agents/skills/yss-exception/references/source-index.boot3-java17.md +50 -0
- package/template/.agents/skills/yss-exception/references/source-index.md +6 -31
- package/template/.agents/skills/yss-formily/SKILL.md +2 -2
- package/template/.agents/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/README.md +1 -1
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/package.json +2 -2
- package/template/.agents/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/pnpm-lock.yaml +158 -0
- package/template/.agents/skills/yss-frontend-scaffold-generator/references/data-quality-v1.manifest.json +3 -3
- package/template/.agents/skills/yss-frontend-scaffold-generator/scripts/scaffold-generator.test.mjs +5 -0
- package/template/.agents/skills/yss-hook/SKILL.md +3 -2
- package/template/.agents/skills/yss-implementation-contract-compiler/SKILL.md +2 -0
- package/template/.agents/skills/yss-implementation-contract-compiler/references/boundaries.md +4 -6
- package/template/.agents/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +27 -2
- package/template/.agents/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -1
- package/template/.agents/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +60 -14
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/SKILL.md +6 -5
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +2 -2
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +2 -0
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/data-analysis-profile.mjs +82 -0
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +23 -9
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +23 -6
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/tests/scaffold-generator.test.mjs +2 -0
- package/template/.agents/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.agents/skills/yss-mybatis/references/source-index.boot2-java8.md +126 -0
- package/template/.agents/skills/yss-mybatis/references/source-index.boot3-java17.md +126 -0
- package/template/.agents/skills/yss-mybatis/references/source-index.md +6 -109
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +11 -11
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +2 -2
- package/template/.agents/skills/yss-repository/SKILL.md +1 -1
- package/template/.agents/skills/yss-resilience4j/SKILL.md +4 -0
- package/template/.agents/skills/yss-resilience4j/references/source-index.boot2-java8.md +48 -0
- package/template/.agents/skills/yss-resilience4j/references/source-index.boot3-java17.md +48 -0
- package/template/.agents/skills/yss-resilience4j/references/source-index.md +6 -29
- package/template/.agents/skills/yss-security-algorithm/SKILL.md +34 -10
- package/template/.agents/skills/yss-security-algorithm/references/source-index.boot2-java8.md +50 -0
- package/template/.agents/skills/yss-security-algorithm/references/source-index.boot3-java17.md +51 -0
- package/template/.agents/skills/yss-security-algorithm/references/source-index.md +6 -31
- package/template/.agents/skills/yss-skill-source-index-refresh/SKILL.md +12 -6
- package/template/.agents/skills/yss-skill-source-index-refresh/references/backend-component-platform-compatibility.md +27 -0
- package/template/.agents/skills/yss-skill-source-index-refresh/references/source-location.md +4 -4
- package/template/.agents/skills/yss-skill-source-index-refresh/references/source-map-config.md +13 -5
- package/template/.agents/skills/yss-skill-source-index-refresh/scripts/check-backend-skill-source-index.mjs +60 -0
- package/template/.agents/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +250 -56
- package/template/.agents/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.test.mjs +74 -7
- package/template/.agents/skills/yss-tactical-design/SKILL.md +1 -1
- package/template/.agents/skills/yss-tactical-design/references/output-template.md +1 -1
- package/template/.agents/skills/yss-technical-design/SKILL.md +3 -1
- package/template/.agents/skills/yss-technical-design/references/technical-design-contract.md +1 -1
- package/template/.agents/skills/yss-technical-design/scripts/generate-schema.mjs +1 -1
- package/template/.agents/skills/yss-technical-design/tests/run-scenarios.mjs +3 -1
- package/template/.agents/skills/yss-ui/SKILL.md +9 -6
- package/template/.agents/skills/yss-ui/references/component-routing.md +11 -4
- package/template/.agents/skills/yss-ui-business-page-generation/SKILL.md +5 -1
- package/template/.agents/skills/yss-ui-business-page-generation/references/hooks-map.md +3 -2
- package/template/.agents/skills/yss-up-springboot3/SKILL.md +23 -9
- package/template/.agents/skills/yss-userinfo/SKILL.md +21 -14
- package/template/.agents/skills/yss-userinfo/references/source-index.boot2-java8.md +49 -0
- package/template/.agents/skills/yss-userinfo/references/source-index.boot3-java17.md +54 -0
- package/template/.agents/skills/yss-userinfo/references/source-index.md +6 -30
- package/template/.agents/skills/yss-validation/SKILL.md +12 -17
- package/template/.agents/skills/yss-validation/references/source-index.boot2-java8.md +47 -0
- package/template/.agents/skills/yss-validation/references/source-index.boot3-java17.md +47 -0
- package/template/.agents/skills/yss-validation/references/source-index.md +6 -29
- package/template/.agents/skills/yss-web-controller/SKILL.md +4 -4
- package/template/.agents/skills/yss-web-controller/scripts/generate_controller.test.mjs +1 -1
- package/template/.agents/skills/ytable-usage/SKILL.md +14 -7
- package/template/.agents/skills/ytree-usage/SKILL.md +1 -0
- package/template/.codex/skills/formily-mode-slot-detail/SKILL.md +3 -4
- package/template/.codex/skills/yedit-table-usage/SKILL.md +2 -0
- package/template/.codex/skills/yss-application/SKILL.md +8 -6
- package/template/.codex/skills/yss-audit-log/SKILL.md +12 -7
- package/template/.codex/skills/yss-audit-log/references/source-index.boot2-java8.md +57 -0
- package/template/.codex/skills/yss-audit-log/references/source-index.boot3-java17.md +58 -0
- package/template/.codex/skills/yss-audit-log/references/source-index.md +6 -39
- package/template/.codex/skills/yss-cache/SKILL.md +5 -1
- package/template/.codex/skills/yss-cache/references/source-index.boot2-java8.md +81 -0
- package/template/.codex/skills/yss-cache/references/source-index.boot3-java17.md +83 -0
- package/template/.codex/skills/yss-cache/references/source-index.md +6 -63
- package/template/.codex/skills/yss-cache/scripts/check-skill-freshness.sh +20 -15
- package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +2 -2
- package/template/{.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md → .codex/skills/yss-ddd-scaffold-generator/references/engineering-baseline.md} +0 -5
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +2 -2
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +1 -3
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +1 -1
- package/template/.codex/skills/yss-design-system/SKILL.md +2 -2
- package/template/.codex/skills/yss-distributed-id/SKILL.md +4 -0
- package/template/.codex/skills/yss-distributed-id/references/source-index.boot2-java8.md +102 -0
- package/template/.codex/skills/yss-distributed-id/references/source-index.boot3-java17.md +90 -0
- package/template/.codex/skills/yss-distributed-id/references/source-index.md +6 -82
- package/template/.codex/skills/yss-dto/SKILL.md +2 -2
- package/template/.codex/skills/yss-dto/references/source-index.boot2-java8.md +67 -0
- package/template/.codex/skills/yss-dto/references/source-index.boot3-java17.md +70 -0
- package/template/.codex/skills/yss-dto/references/source-index.md +6 -51
- package/template/.codex/skills/yss-excel-mvc/SKILL.md +4 -0
- package/template/.codex/skills/yss-excel-mvc/references/source-index.boot2-java8.md +90 -0
- package/template/.codex/skills/yss-excel-mvc/references/source-index.boot3-java17.md +58 -0
- package/template/.codex/skills/yss-excel-mvc/references/source-index.md +6 -70
- package/template/.codex/skills/yss-exception/SKILL.md +12 -9
- package/template/.codex/skills/yss-exception/references/source-index.boot2-java8.md +50 -0
- package/template/.codex/skills/yss-exception/references/source-index.boot3-java17.md +50 -0
- package/template/.codex/skills/yss-exception/references/source-index.md +6 -31
- package/template/.codex/skills/yss-formily/SKILL.md +2 -2
- package/template/.codex/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/README.md +1 -1
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/package.json +2 -2
- package/template/.codex/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/pnpm-lock.yaml +158 -0
- package/template/.codex/skills/yss-frontend-scaffold-generator/references/data-quality-v1.manifest.json +3 -3
- package/template/.codex/skills/yss-frontend-scaffold-generator/scripts/scaffold-generator.test.mjs +5 -0
- package/template/.codex/skills/yss-hook/SKILL.md +3 -2
- package/template/.codex/skills/yss-implementation-contract-compiler/SKILL.md +2 -0
- package/template/.codex/skills/yss-implementation-contract-compiler/references/boundaries.md +4 -6
- package/template/.codex/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +27 -2
- package/template/.codex/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -1
- package/template/.codex/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +60 -14
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/SKILL.md +6 -5
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +2 -2
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +2 -0
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/data-analysis-profile.mjs +82 -0
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +23 -9
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +23 -6
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/tests/scaffold-generator.test.mjs +2 -0
- package/template/.codex/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.codex/skills/yss-mybatis/references/source-index.boot2-java8.md +126 -0
- package/template/.codex/skills/yss-mybatis/references/source-index.boot3-java17.md +126 -0
- package/template/.codex/skills/yss-mybatis/references/source-index.md +6 -109
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +11 -11
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +2 -2
- package/template/.codex/skills/yss-repository/SKILL.md +1 -1
- package/template/.codex/skills/yss-resilience4j/SKILL.md +4 -0
- package/template/.codex/skills/yss-resilience4j/references/source-index.boot2-java8.md +48 -0
- package/template/.codex/skills/yss-resilience4j/references/source-index.boot3-java17.md +48 -0
- package/template/.codex/skills/yss-resilience4j/references/source-index.md +6 -29
- package/template/.codex/skills/yss-security-algorithm/SKILL.md +34 -10
- package/template/.codex/skills/yss-security-algorithm/references/source-index.boot2-java8.md +50 -0
- package/template/.codex/skills/yss-security-algorithm/references/source-index.boot3-java17.md +51 -0
- package/template/.codex/skills/yss-security-algorithm/references/source-index.md +6 -31
- package/template/.codex/skills/yss-skill-source-index-refresh/SKILL.md +12 -6
- package/template/.codex/skills/yss-skill-source-index-refresh/references/backend-component-platform-compatibility.md +27 -0
- package/template/.codex/skills/yss-skill-source-index-refresh/references/source-location.md +4 -4
- package/template/.codex/skills/yss-skill-source-index-refresh/references/source-map-config.md +13 -5
- package/template/.codex/skills/yss-skill-source-index-refresh/scripts/check-backend-skill-source-index.mjs +60 -0
- package/template/.codex/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +250 -56
- package/template/.codex/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.test.mjs +74 -7
- package/template/.codex/skills/yss-tactical-design/SKILL.md +1 -1
- package/template/.codex/skills/yss-tactical-design/references/output-template.md +1 -1
- package/template/.codex/skills/yss-technical-design/SKILL.md +3 -1
- package/template/.codex/skills/yss-technical-design/references/technical-design-contract.md +1 -1
- package/template/.codex/skills/yss-technical-design/scripts/generate-schema.mjs +1 -1
- package/template/.codex/skills/yss-technical-design/tests/run-scenarios.mjs +3 -1
- package/template/.codex/skills/yss-ui/SKILL.md +9 -6
- package/template/.codex/skills/yss-ui/references/component-routing.md +11 -4
- package/template/.codex/skills/yss-ui-business-page-generation/SKILL.md +5 -1
- package/template/.codex/skills/yss-ui-business-page-generation/references/hooks-map.md +3 -2
- package/template/.codex/skills/yss-up-springboot3/SKILL.md +23 -9
- package/template/.codex/skills/yss-userinfo/SKILL.md +21 -14
- package/template/.codex/skills/yss-userinfo/references/source-index.boot2-java8.md +49 -0
- package/template/.codex/skills/yss-userinfo/references/source-index.boot3-java17.md +54 -0
- package/template/.codex/skills/yss-userinfo/references/source-index.md +6 -30
- package/template/.codex/skills/yss-validation/SKILL.md +12 -17
- package/template/.codex/skills/yss-validation/references/source-index.boot2-java8.md +47 -0
- package/template/.codex/skills/yss-validation/references/source-index.boot3-java17.md +47 -0
- package/template/.codex/skills/yss-validation/references/source-index.md +6 -29
- package/template/.codex/skills/yss-web-controller/SKILL.md +4 -4
- package/template/.codex/skills/yss-web-controller/scripts/generate_controller.test.mjs +1 -1
- package/template/.codex/skills/ytable-usage/SKILL.md +14 -7
- package/template/.codex/skills/ytree-usage/SKILL.md +1 -0
- package/template/.cursor/skills/formily-mode-slot-detail/SKILL.md +3 -4
- package/template/.cursor/skills/yedit-table-usage/SKILL.md +2 -0
- package/template/.cursor/skills/yss-application/SKILL.md +8 -6
- package/template/.cursor/skills/yss-audit-log/SKILL.md +12 -7
- package/template/.cursor/skills/yss-audit-log/references/source-index.boot2-java8.md +57 -0
- package/template/.cursor/skills/yss-audit-log/references/source-index.boot3-java17.md +58 -0
- package/template/.cursor/skills/yss-audit-log/references/source-index.md +6 -39
- package/template/.cursor/skills/yss-cache/SKILL.md +5 -1
- package/template/.cursor/skills/yss-cache/references/source-index.boot2-java8.md +81 -0
- package/template/.cursor/skills/yss-cache/references/source-index.boot3-java17.md +83 -0
- package/template/.cursor/skills/yss-cache/references/source-index.md +6 -63
- package/template/.cursor/skills/yss-cache/scripts/check-skill-freshness.sh +20 -15
- package/template/.cursor/skills/yss-ddd-scaffold-generator/SKILL.md +2 -2
- package/template/{.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md → .cursor/skills/yss-ddd-scaffold-generator/references/engineering-baseline.md} +0 -5
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +2 -2
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +1 -3
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +1 -1
- package/template/.cursor/skills/yss-design-system/SKILL.md +2 -2
- package/template/.cursor/skills/yss-distributed-id/SKILL.md +4 -0
- package/template/.cursor/skills/yss-distributed-id/references/source-index.boot2-java8.md +102 -0
- package/template/.cursor/skills/yss-distributed-id/references/source-index.boot3-java17.md +90 -0
- package/template/.cursor/skills/yss-distributed-id/references/source-index.md +6 -82
- package/template/.cursor/skills/yss-dto/SKILL.md +2 -2
- package/template/.cursor/skills/yss-dto/references/source-index.boot2-java8.md +67 -0
- package/template/.cursor/skills/yss-dto/references/source-index.boot3-java17.md +70 -0
- package/template/.cursor/skills/yss-dto/references/source-index.md +6 -51
- package/template/.cursor/skills/yss-excel-mvc/SKILL.md +4 -0
- package/template/.cursor/skills/yss-excel-mvc/references/source-index.boot2-java8.md +90 -0
- package/template/.cursor/skills/yss-excel-mvc/references/source-index.boot3-java17.md +58 -0
- package/template/.cursor/skills/yss-excel-mvc/references/source-index.md +6 -70
- package/template/.cursor/skills/yss-exception/SKILL.md +12 -9
- package/template/.cursor/skills/yss-exception/references/source-index.boot2-java8.md +50 -0
- package/template/.cursor/skills/yss-exception/references/source-index.boot3-java17.md +50 -0
- package/template/.cursor/skills/yss-exception/references/source-index.md +6 -31
- package/template/.cursor/skills/yss-formily/SKILL.md +2 -2
- package/template/.cursor/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/README.md +1 -1
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/package.json +2 -2
- package/template/.cursor/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/pnpm-lock.yaml +158 -0
- package/template/.cursor/skills/yss-frontend-scaffold-generator/references/data-quality-v1.manifest.json +3 -3
- package/template/.cursor/skills/yss-frontend-scaffold-generator/scripts/scaffold-generator.test.mjs +5 -0
- package/template/.cursor/skills/yss-hook/SKILL.md +3 -2
- package/template/.cursor/skills/yss-implementation-contract-compiler/SKILL.md +2 -0
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/boundaries.md +4 -6
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +27 -2
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -1
- package/template/.cursor/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +60 -14
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/SKILL.md +6 -5
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +2 -2
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +2 -0
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/data-analysis-profile.mjs +82 -0
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +23 -9
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +23 -6
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/tests/scaffold-generator.test.mjs +2 -0
- package/template/.cursor/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.cursor/skills/yss-mybatis/references/source-index.boot2-java8.md +126 -0
- package/template/.cursor/skills/yss-mybatis/references/source-index.boot3-java17.md +126 -0
- package/template/.cursor/skills/yss-mybatis/references/source-index.md +6 -109
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +11 -11
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration.md +2 -2
- package/template/.cursor/skills/yss-repository/SKILL.md +1 -1
- package/template/.cursor/skills/yss-resilience4j/SKILL.md +4 -0
- package/template/.cursor/skills/yss-resilience4j/references/source-index.boot2-java8.md +48 -0
- package/template/.cursor/skills/yss-resilience4j/references/source-index.boot3-java17.md +48 -0
- package/template/.cursor/skills/yss-resilience4j/references/source-index.md +6 -29
- package/template/.cursor/skills/yss-security-algorithm/SKILL.md +34 -10
- package/template/.cursor/skills/yss-security-algorithm/references/source-index.boot2-java8.md +50 -0
- package/template/.cursor/skills/yss-security-algorithm/references/source-index.boot3-java17.md +51 -0
- package/template/.cursor/skills/yss-security-algorithm/references/source-index.md +6 -31
- package/template/.cursor/skills/yss-skill-source-index-refresh/SKILL.md +12 -6
- package/template/.cursor/skills/yss-skill-source-index-refresh/references/backend-component-platform-compatibility.md +27 -0
- package/template/.cursor/skills/yss-skill-source-index-refresh/references/source-location.md +4 -4
- package/template/.cursor/skills/yss-skill-source-index-refresh/references/source-map-config.md +13 -5
- package/template/.cursor/skills/yss-skill-source-index-refresh/scripts/check-backend-skill-source-index.mjs +60 -0
- package/template/.cursor/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +250 -56
- package/template/.cursor/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.test.mjs +74 -7
- package/template/.cursor/skills/yss-tactical-design/SKILL.md +1 -1
- package/template/.cursor/skills/yss-tactical-design/references/output-template.md +1 -1
- package/template/.cursor/skills/yss-technical-design/SKILL.md +3 -1
- package/template/.cursor/skills/yss-technical-design/references/technical-design-contract.md +1 -1
- package/template/.cursor/skills/yss-technical-design/scripts/generate-schema.mjs +1 -1
- package/template/.cursor/skills/yss-technical-design/tests/run-scenarios.mjs +3 -1
- package/template/.cursor/skills/yss-ui/SKILL.md +9 -6
- package/template/.cursor/skills/yss-ui/references/component-routing.md +11 -4
- package/template/.cursor/skills/yss-ui-business-page-generation/SKILL.md +5 -1
- package/template/.cursor/skills/yss-ui-business-page-generation/references/hooks-map.md +3 -2
- package/template/.cursor/skills/yss-up-springboot3/SKILL.md +23 -9
- package/template/.cursor/skills/yss-userinfo/SKILL.md +21 -14
- package/template/.cursor/skills/yss-userinfo/references/source-index.boot2-java8.md +49 -0
- package/template/.cursor/skills/yss-userinfo/references/source-index.boot3-java17.md +54 -0
- package/template/.cursor/skills/yss-userinfo/references/source-index.md +6 -30
- package/template/.cursor/skills/yss-validation/SKILL.md +12 -17
- package/template/.cursor/skills/yss-validation/references/source-index.boot2-java8.md +47 -0
- package/template/.cursor/skills/yss-validation/references/source-index.boot3-java17.md +47 -0
- package/template/.cursor/skills/yss-validation/references/source-index.md +6 -29
- package/template/.cursor/skills/yss-web-controller/SKILL.md +4 -4
- package/template/.cursor/skills/yss-web-controller/scripts/generate_controller.test.mjs +1 -1
- package/template/.cursor/skills/ytable-usage/SKILL.md +14 -7
- package/template/.cursor/skills/ytree-usage/SKILL.md +1 -0
- package/template/.pi/skills/formily-mode-slot-detail/SKILL.md +3 -4
- package/template/.pi/skills/yedit-table-usage/SKILL.md +2 -0
- package/template/.pi/skills/yss-application/SKILL.md +8 -6
- package/template/.pi/skills/yss-audit-log/SKILL.md +12 -7
- package/template/.pi/skills/yss-audit-log/references/source-index.boot2-java8.md +57 -0
- package/template/.pi/skills/yss-audit-log/references/source-index.boot3-java17.md +58 -0
- package/template/.pi/skills/yss-audit-log/references/source-index.md +6 -39
- package/template/.pi/skills/yss-cache/SKILL.md +5 -1
- package/template/.pi/skills/yss-cache/references/source-index.boot2-java8.md +81 -0
- package/template/.pi/skills/yss-cache/references/source-index.boot3-java17.md +83 -0
- package/template/.pi/skills/yss-cache/references/source-index.md +6 -63
- package/template/.pi/skills/yss-cache/scripts/check-skill-freshness.sh +20 -15
- package/template/.pi/skills/yss-ddd-scaffold-generator/SKILL.md +2 -2
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/{yss-backend-scaffold-parent/SKILL.md → engineering-baseline.md} +0 -5
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +2 -2
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +1 -3
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +1 -1
- package/template/.pi/skills/yss-design-system/SKILL.md +2 -2
- package/template/.pi/skills/yss-distributed-id/SKILL.md +4 -0
- package/template/.pi/skills/yss-distributed-id/references/source-index.boot2-java8.md +102 -0
- package/template/.pi/skills/yss-distributed-id/references/source-index.boot3-java17.md +90 -0
- package/template/.pi/skills/yss-distributed-id/references/source-index.md +6 -82
- package/template/.pi/skills/yss-dto/SKILL.md +2 -2
- package/template/.pi/skills/yss-dto/references/source-index.boot2-java8.md +67 -0
- package/template/.pi/skills/yss-dto/references/source-index.boot3-java17.md +70 -0
- package/template/.pi/skills/yss-dto/references/source-index.md +6 -51
- package/template/.pi/skills/yss-excel-mvc/SKILL.md +4 -0
- package/template/.pi/skills/yss-excel-mvc/references/source-index.boot2-java8.md +90 -0
- package/template/.pi/skills/yss-excel-mvc/references/source-index.boot3-java17.md +58 -0
- package/template/.pi/skills/yss-excel-mvc/references/source-index.md +6 -70
- package/template/.pi/skills/yss-exception/SKILL.md +12 -9
- package/template/.pi/skills/yss-exception/references/source-index.boot2-java8.md +50 -0
- package/template/.pi/skills/yss-exception/references/source-index.boot3-java17.md +50 -0
- package/template/.pi/skills/yss-exception/references/source-index.md +6 -31
- package/template/.pi/skills/yss-formily/SKILL.md +2 -2
- package/template/.pi/skills/yss-frontend-scaffold-generator/SKILL.md +1 -1
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/README.md +1 -1
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/package.json +2 -2
- package/template/.pi/skills/yss-frontend-scaffold-generator/assets/data-quality-v1/pnpm-lock.yaml +158 -0
- package/template/.pi/skills/yss-frontend-scaffold-generator/references/data-quality-v1.manifest.json +3 -3
- package/template/.pi/skills/yss-frontend-scaffold-generator/scripts/scaffold-generator.test.mjs +5 -0
- package/template/.pi/skills/yss-hook/SKILL.md +3 -2
- package/template/.pi/skills/yss-implementation-contract-compiler/SKILL.md +2 -0
- package/template/.pi/skills/yss-implementation-contract-compiler/references/boundaries.md +4 -6
- package/template/.pi/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +27 -2
- package/template/.pi/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +2 -1
- package/template/.pi/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +60 -14
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/SKILL.md +6 -5
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/agents/openai.yaml +2 -2
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/references/architecture.md +2 -0
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/data-analysis-profile.mjs +82 -0
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/generate_scaffold.mjs +23 -9
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/scripts/scaffold-generator.test.mjs +23 -6
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/tests/scaffold-generator.test.mjs +2 -0
- package/template/.pi/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.pi/skills/yss-mybatis/references/source-index.boot2-java8.md +126 -0
- package/template/.pi/skills/yss-mybatis/references/source-index.boot3-java17.md +126 -0
- package/template/.pi/skills/yss-mybatis/references/source-index.md +6 -109
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +11 -11
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +2 -2
- package/template/.pi/skills/yss-repository/SKILL.md +1 -1
- package/template/.pi/skills/yss-resilience4j/SKILL.md +4 -0
- package/template/.pi/skills/yss-resilience4j/references/source-index.boot2-java8.md +48 -0
- package/template/.pi/skills/yss-resilience4j/references/source-index.boot3-java17.md +48 -0
- package/template/.pi/skills/yss-resilience4j/references/source-index.md +6 -29
- package/template/.pi/skills/yss-security-algorithm/SKILL.md +34 -10
- package/template/.pi/skills/yss-security-algorithm/references/source-index.boot2-java8.md +50 -0
- package/template/.pi/skills/yss-security-algorithm/references/source-index.boot3-java17.md +51 -0
- package/template/.pi/skills/yss-security-algorithm/references/source-index.md +6 -31
- package/template/.pi/skills/yss-skill-source-index-refresh/SKILL.md +12 -6
- package/template/.pi/skills/yss-skill-source-index-refresh/references/backend-component-platform-compatibility.md +27 -0
- package/template/.pi/skills/yss-skill-source-index-refresh/references/source-location.md +4 -4
- package/template/.pi/skills/yss-skill-source-index-refresh/references/source-map-config.md +13 -5
- package/template/.pi/skills/yss-skill-source-index-refresh/scripts/check-backend-skill-source-index.mjs +60 -0
- package/template/.pi/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +250 -56
- package/template/.pi/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.test.mjs +74 -7
- package/template/.pi/skills/yss-tactical-design/SKILL.md +1 -1
- package/template/.pi/skills/yss-tactical-design/references/output-template.md +1 -1
- package/template/.pi/skills/yss-technical-design/SKILL.md +3 -1
- package/template/.pi/skills/yss-technical-design/references/technical-design-contract.md +1 -1
- package/template/.pi/skills/yss-technical-design/scripts/generate-schema.mjs +1 -1
- package/template/.pi/skills/yss-technical-design/tests/run-scenarios.mjs +3 -1
- package/template/.pi/skills/yss-ui/SKILL.md +9 -6
- package/template/.pi/skills/yss-ui/references/component-routing.md +11 -4
- package/template/.pi/skills/yss-ui-business-page-generation/SKILL.md +5 -1
- package/template/.pi/skills/yss-ui-business-page-generation/references/hooks-map.md +3 -2
- package/template/.pi/skills/yss-up-springboot3/SKILL.md +23 -9
- package/template/.pi/skills/yss-userinfo/SKILL.md +21 -14
- package/template/.pi/skills/yss-userinfo/references/source-index.boot2-java8.md +49 -0
- package/template/.pi/skills/yss-userinfo/references/source-index.boot3-java17.md +54 -0
- package/template/.pi/skills/yss-userinfo/references/source-index.md +6 -30
- package/template/.pi/skills/yss-validation/SKILL.md +12 -17
- package/template/.pi/skills/yss-validation/references/source-index.boot2-java8.md +47 -0
- package/template/.pi/skills/yss-validation/references/source-index.boot3-java17.md +47 -0
- package/template/.pi/skills/yss-validation/references/source-index.md +6 -29
- package/template/.pi/skills/yss-web-controller/SKILL.md +4 -4
- package/template/.pi/skills/yss-web-controller/scripts/generate_controller.test.mjs +1 -1
- package/template/.pi/skills/ytable-usage/SKILL.md +14 -7
- package/template/.pi/skills/ytree-usage/SKILL.md +1 -0
- package/template/docs/agents/backend-architecture-profiles.md +1 -1
- package/template/docs/agents/digital-human-roles.yaml +3 -3
- package/template/docs/agents/skill-migrations.md +39 -3
- package/template/docs/agents/yss-skill-registry.yaml +93 -96
- package/template/docs/api/templates/openapi-draft-review-checklist.md +1 -1
- package/template/docs/architecture/templates/engineering-baseline-review-template.md +3 -3
- package/template/docs/architecture/templates/system-overview-design-template.md +1 -1
- package/template/docs/engineering/backend-platforms.json +662 -9
- package/template/docs/engineering/backend-platforms.md +33 -7
- package/template/docs/process/schemas/backend-architecture-identity.schema.json +102 -0
- package/template/docs/process/schemas/project-scaffold-contract.schema.json +16 -4
- package/template/docs/process/schemas/scaffold-architecture-decisions.schema.json +7 -0
- package/template/docs/process/schemas/slice-implementation-contract-v3.schema.json +143 -0
- package/template/docs/process/strategic-handoff-package.md +1 -1
- package/template/docs/templates/implementation-routing-template.md +1 -1
- package/template/docs/user-guide//346/212/200/346/234/257/350/256/276/350/256/241/347/224/250/346/210/267/346/214/207/345/215/227.md +2 -2
- package/template/scripts/backend-platforms +77 -8
- package/template/scripts/lib/backend-platform.mjs +232 -5
- package/template/scripts/lib/existing-backend-architecture.mjs +3 -2
- package/template/scripts/lib/implementation-contract-compiler.mjs +93 -9
- package/template/scripts/lib/skill-registry.mjs +170 -13
- package/template/scripts/lib/skill-supply-chain.mjs +1 -1
- package/template/scripts/lib/slice-contract-preparation.mjs +6 -5
- package/template/scripts/verify-backend-platform-matrix +1 -1
- package/template/skills-lock.json +38 -165
- package/template/yss-public-skills.json +1 -5
- package/template.snapshot.json +4 -4
- package/template/.agents/skills/component-selection-imports/SKILL.md +0 -64
- package/template/.agents/skills/page-form-module/SKILL.md +0 -168
- package/template/.agents/skills/page-list-module/SKILL.md +0 -137
- package/template/.agents/skills/page-skeleton/SKILL.md +0 -76
- package/template/.agents/skills/page-skeleton/examples/AdvancedFormPage/constant.ts +0 -34
- package/template/.agents/skills/page-skeleton/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -75
- package/template/.agents/skills/page-skeleton/examples/AdvancedFormPage/index.vue +0 -107
- package/template/.agents/skills/page-skeleton/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.agents/skills/page-skeleton/examples/AdvancedFormPage/style.less +0 -30
- package/template/.agents/skills/page-skeleton/examples/StandardListPage/constant.ts +0 -28
- package/template/.agents/skills/page-skeleton/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -58
- package/template/.agents/skills/page-skeleton/examples/StandardListPage/hooks/useRuleActions.ts +0 -65
- package/template/.agents/skills/page-skeleton/examples/StandardListPage/index.vue +0 -91
- package/template/.agents/skills/page-skeleton/examples/StandardListPage/style.less +0 -49
- package/template/.agents/skills/vue3-best-practices/SKILL.md +0 -68
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +0 -22
- package/template/.agents/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +0 -77
- package/template/.agents/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +0 -9
- package/template/.agents/skills/yss-mvc-design/SKILL.md +0 -16
- package/template/.agents/skills/yss-mvc-design/agents/openai.yaml +0 -4
- package/template/.agents/skills/yss-use-table-height/SKILL.md +0 -130
- package/template/.agents/skills/yss-use-table-height/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-use-table-height/references/frontend-docs.md +0 -9
- package/template/.agents/skills/yss-use-tree-height/SKILL.md +0 -98
- package/template/.agents/skills/yss-use-tree-height/agents/openai.yaml +0 -5
- package/template/.agents/skills/yss-use-tree-height/references/frontend-docs.md +0 -9
- package/template/.codex/skills/component-selection-imports/SKILL.md +0 -64
- package/template/.codex/skills/page-form-module/SKILL.md +0 -168
- package/template/.codex/skills/page-list-module/SKILL.md +0 -137
- package/template/.codex/skills/page-skeleton/SKILL.md +0 -76
- package/template/.codex/skills/page-skeleton/examples/AdvancedFormPage/constant.ts +0 -34
- package/template/.codex/skills/page-skeleton/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -75
- package/template/.codex/skills/page-skeleton/examples/AdvancedFormPage/index.vue +0 -107
- package/template/.codex/skills/page-skeleton/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.codex/skills/page-skeleton/examples/AdvancedFormPage/style.less +0 -30
- package/template/.codex/skills/page-skeleton/examples/StandardListPage/constant.ts +0 -28
- package/template/.codex/skills/page-skeleton/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -58
- package/template/.codex/skills/page-skeleton/examples/StandardListPage/hooks/useRuleActions.ts +0 -65
- package/template/.codex/skills/page-skeleton/examples/StandardListPage/index.vue +0 -91
- package/template/.codex/skills/page-skeleton/examples/StandardListPage/style.less +0 -49
- package/template/.codex/skills/vue3-best-practices/SKILL.md +0 -68
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +0 -22
- package/template/.codex/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +0 -77
- package/template/.codex/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +0 -9
- package/template/.codex/skills/yss-mvc-design/SKILL.md +0 -16
- package/template/.codex/skills/yss-mvc-design/agents/openai.yaml +0 -4
- package/template/.codex/skills/yss-use-table-height/SKILL.md +0 -130
- package/template/.codex/skills/yss-use-table-height/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-use-table-height/references/frontend-docs.md +0 -9
- package/template/.codex/skills/yss-use-tree-height/SKILL.md +0 -98
- package/template/.codex/skills/yss-use-tree-height/agents/openai.yaml +0 -5
- package/template/.codex/skills/yss-use-tree-height/references/frontend-docs.md +0 -9
- package/template/.cursor/skills/component-selection-imports/SKILL.md +0 -64
- package/template/.cursor/skills/page-form-module/SKILL.md +0 -168
- package/template/.cursor/skills/page-list-module/SKILL.md +0 -137
- package/template/.cursor/skills/page-skeleton/SKILL.md +0 -76
- package/template/.cursor/skills/page-skeleton/examples/AdvancedFormPage/constant.ts +0 -34
- package/template/.cursor/skills/page-skeleton/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -75
- package/template/.cursor/skills/page-skeleton/examples/AdvancedFormPage/index.vue +0 -107
- package/template/.cursor/skills/page-skeleton/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.cursor/skills/page-skeleton/examples/AdvancedFormPage/style.less +0 -30
- package/template/.cursor/skills/page-skeleton/examples/StandardListPage/constant.ts +0 -28
- package/template/.cursor/skills/page-skeleton/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -58
- package/template/.cursor/skills/page-skeleton/examples/StandardListPage/hooks/useRuleActions.ts +0 -65
- package/template/.cursor/skills/page-skeleton/examples/StandardListPage/index.vue +0 -91
- package/template/.cursor/skills/page-skeleton/examples/StandardListPage/style.less +0 -49
- package/template/.cursor/skills/vue3-best-practices/SKILL.md +0 -68
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/agents/openai.yaml +0 -5
- package/template/.cursor/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +0 -22
- package/template/.cursor/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +0 -77
- package/template/.cursor/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +0 -9
- package/template/.cursor/skills/yss-mvc-design/SKILL.md +0 -16
- package/template/.cursor/skills/yss-mvc-design/agents/openai.yaml +0 -4
- package/template/.cursor/skills/yss-use-table-height/SKILL.md +0 -130
- package/template/.cursor/skills/yss-use-table-height/agents/openai.yaml +0 -5
- package/template/.cursor/skills/yss-use-table-height/references/frontend-docs.md +0 -9
- package/template/.cursor/skills/yss-use-tree-height/SKILL.md +0 -98
- package/template/.cursor/skills/yss-use-tree-height/agents/openai.yaml +0 -5
- package/template/.cursor/skills/yss-use-tree-height/references/frontend-docs.md +0 -9
- package/template/.pi/skills/component-selection-imports/SKILL.md +0 -64
- package/template/.pi/skills/page-form-module/SKILL.md +0 -168
- package/template/.pi/skills/page-list-module/SKILL.md +0 -137
- package/template/.pi/skills/page-skeleton/SKILL.md +0 -76
- package/template/.pi/skills/page-skeleton/examples/AdvancedFormPage/constant.ts +0 -34
- package/template/.pi/skills/page-skeleton/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -75
- package/template/.pi/skills/page-skeleton/examples/AdvancedFormPage/index.vue +0 -107
- package/template/.pi/skills/page-skeleton/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.pi/skills/page-skeleton/examples/AdvancedFormPage/style.less +0 -30
- package/template/.pi/skills/page-skeleton/examples/StandardListPage/constant.ts +0 -28
- package/template/.pi/skills/page-skeleton/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -58
- package/template/.pi/skills/page-skeleton/examples/StandardListPage/hooks/useRuleActions.ts +0 -65
- package/template/.pi/skills/page-skeleton/examples/StandardListPage/index.vue +0 -91
- package/template/.pi/skills/page-skeleton/examples/StandardListPage/style.less +0 -49
- package/template/.pi/skills/vue3-best-practices/SKILL.md +0 -68
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-mvc-data-analysis-project-initializer/SKILL.md +0 -22
- package/template/.pi/skills/yss-mvc-data-analysis-project-initializer/scripts/generate_project.mjs +0 -77
- package/template/.pi/skills/yss-mvc-data-analysis-project-initializer/scripts/run_scaffold_verification.mjs +0 -9
- package/template/.pi/skills/yss-mvc-design/SKILL.md +0 -16
- package/template/.pi/skills/yss-mvc-design/agents/openai.yaml +0 -4
- package/template/.pi/skills/yss-use-table-height/SKILL.md +0 -130
- package/template/.pi/skills/yss-use-table-height/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-use-table-height/references/frontend-docs.md +0 -9
- package/template/.pi/skills/yss-use-tree-height/SKILL.md +0 -98
- package/template/.pi/skills/yss-use-tree-height/agents/openai.yaml +0 -5
- package/template/.pi/skills/yss-use-tree-height/references/frontend-docs.md +0 -9
- /package/template/.agents/skills/{yss-mvc-design → yss-technical-design}/references/mvc-design.schema.json +0 -0
- /package/template/.codex/skills/{yss-mvc-design → yss-technical-design}/references/mvc-design.schema.json +0 -0
- /package/template/.cursor/skills/{yss-mvc-design → yss-technical-design}/references/mvc-design.schema.json +0 -0
- /package/template/.pi/skills/{yss-mvc-design → yss-technical-design}/references/mvc-design.schema.json +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# 后端脚手架平台合同
|
|
2
2
|
|
|
3
|
-
DDD 和 Layered MVC 共同消费 `backend-platforms.json`。平台定义是候选配方,`compatibility`
|
|
3
|
+
DDD 和 Layered MVC 共同消费 `backend-platforms.json`。平台定义是候选配方,`compatibility` 是 YSS 父 POM、BOM、组件能力与证据的同一组合清单。`blocked` 条目只表达已经定位的坐标和缺口,不表示组合已获认证;没有 `verified` 条目表示尚无可开放组合,不表示官方框架不支持这些版本。
|
|
4
4
|
|
|
5
5
|
## 用户选择
|
|
6
6
|
|
|
7
|
-
运行 `scripts/backend-platforms` 展示 Boot 精确补丁、Java、YSS 父 POM/BOM
|
|
7
|
+
运行 `scripts/backend-platforms` 展示 Boot 精确补丁、Java、YSS 父 POM/BOM、逐组件状态、构件证据和阻塞原因。`scripts/backend-platforms --require-profile <profile-id>` 只校验指定 Profile 的平台基础组合;缺条目或组合阻断时输出 JSON 诊断并返回非 0。组件状态独立展示,是否可用由编译器针对实际请求的 capability 调用组件解析器判定,单个组件阻断不会降级一个已经验证的平台基础组合。新建后端在进入 DDD / MVC 分支设计前必须通过 `gate.backend-architecture-platform-approved`;生命周期编排器将平台与架构放在同一次用户决定中。缺少选择时询问;已有批准且当前的选择只展示摘要并复用。既有工程核验并复用登记的 `architecture_identity` 与固定工程基线/POM 中的实际 Spring Boot 版本,该门禁记录为 `not-applicable`,不重复询问;平台升级另行立项。独立子项目可继承或覆盖,也可一次确认明确列出的多个项目。同一 Maven Reactor 不混用平台。
|
|
8
8
|
|
|
9
9
|
候选为 2.7.18 / Java 8、3.5.16 / Java 17 或 21、4.1.1 / Java 17 或 21。3.5 和 4.1 推荐 Java 17。新增补丁必须先通过组合验证,生成合同不接受 `x`、版本范围或 `latest`。
|
|
10
10
|
|
|
@@ -18,17 +18,43 @@ Project Scaffold Contract v4 新增 `platform_configuration` v2,两个脚手
|
|
|
18
18
|
| `profile_id` | 如 `spring-boot-3.5-jdk17` |
|
|
19
19
|
| `spring_boot_version` | 精确补丁,如 `3.5.16` |
|
|
20
20
|
| `java_version` | 经选择的 `8`、`17` 或 `21` |
|
|
21
|
+
| `component_platform_line` | 组件源码与 Skill 索引平台线;只允许 `boot2-java8` 或 `boot3-java17` |
|
|
21
22
|
| `parent` / `bom` | `group_id`、`artifact_id`、`version` |
|
|
22
23
|
| `compatibility_id` | 清单组合 ID |
|
|
23
24
|
| `compatibility_digest` | `platformRecipeDigest(profile, entry)`,排除证据列表、支持状态和展示提示 |
|
|
24
25
|
|
|
25
|
-
配置可由 `platformBinding(profile, entry)`
|
|
26
|
+
配置可由 `platformBinding(profile, entry)` 机械构造;该函数把 Profile 中规范化的 `component_platform_line` 持久化到 v2 binding,并由 schema、解析器、架构身份摘要和 Slice 组件绑定摘要共同校验。组件平台线表示可消费的双平台源码索引,不承载 `maintenance`、`candidate` 或 `blocked` 生命周期;生命周期继续由 compatibility 与 capability 状态表达。当前 Boot 2 与 Boot 3 分别固定为 `boot2-java8`、`boot3-java17`。Boot 4 没有现有组件平台线,不生成可批准的 v2 `platform_configuration`,继续在选择阶段阻断。该函数不批准用户选择或开放支持。修改平台、YSS 坐标或依赖配方会使绑定失效;仅更新同配方证据不改变用户选择摘要。历史 Manifest 继续只读验证,不自动补字段或重写批准。仅继承架构不等于继承平台批准。
|
|
27
|
+
|
|
28
|
+
`resolveBackendPlatform(binding, { root })` 在未显式传入 catalog 时读取该 `root` 下的 `docs/engineering/backend-platforms.json`;未传 `root` 时读取模板仓目录。这样 Slice freshness 与隔离 fixture 使用各自的目录事实,不会意外回退到模板工作区。
|
|
29
|
+
|
|
30
|
+
## 组件能力绑定
|
|
31
|
+
|
|
32
|
+
组件能力不在 catalog 顶层建立第二套目录。它只存在于绑定组合内,以注册表 capability ID 为键:`compatibility[].component_capabilities.<capability-id>`。当前登记 11 项:`contract.dto-wire`、`contract.request-validation`、`contract.error-mapping`、`framework.mybatis`、`component.cache`、`component.current-user-context`、`component.audit-log`、`component.excel-import-export`、`component.distributed-id`、`component.security-algorithm`、`component.gateway-resilience`。Maven `artifact_id` 只出现在 `artifacts`。
|
|
33
|
+
|
|
34
|
+
每项记录 `status`、`verified_architectures`、`artifacts`、`evidence`、`blockers` 和 `component_digest`。每个构件固定字段为 `group_id`、`artifact_id`、`declared_version`、`resolved_version`、`pom_sha256`、`jar_sha256`、`source_tree`。SNAPSHOT 的声明版本与仓库实际解析版本必须分离;已验证条目的 POM/JAR 摘要使用 `sha256:<64 位小写十六进制>`,`source_tree` 使用 40 位小写 Git tree SHA。阻断条目可将尚未取得的解析版本、摘要和 tree 设为 `null`,但必须给出稳定 blocker。
|
|
35
|
+
|
|
36
|
+
Boot 3.5 / JDK 17 Profile 固定 `Spring Cloud 2025.0.3`、`Spring Cloud Alibaba 2025.0.0.0`、Jakarta Validation、Jackson 2,并要求 `META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports`。同一 compatibility entry 通过 `platform_artifact_bindings.parent/bom` 保存父 POM 与组件 BOM 候选,通过 `external_snapshot_bindings` 和 `external_artifact_bindings` 区分外部 SNAPSHOT 与正式发布构件。候选未发布或未完成本地解析时,`resolved_version`、`published_at`、POM/JAR SHA、`source_tree` 保持 `null`,`evidence` 保持空数组并写明 blocker;这些字段参与平台 recipe digest,不能在批准后静默变化。
|
|
37
|
+
|
|
38
|
+
`resolveComponentCapabilities(binding, capabilityIds, architectureFamily, options?)` 先按 binding 精确找到同一 compatibility entry,再解析其中的 capability map。成功结果是可序列化 binding 数组;未登记、非 `verified`、架构不符、构件字段缺失、同坐标解析不一致、组件摘要或证据字节漂移均 fail-closed。错误前缀及稳定码为:
|
|
39
|
+
|
|
40
|
+
- `component-capability: component-unavailable-for-platform`
|
|
41
|
+
- `component-capability: component-artifact-coordinate-conflict`
|
|
42
|
+
- `component-capability: component-evidence-missing`
|
|
43
|
+
- `component-capability: component-binding-drift`
|
|
44
|
+
|
|
45
|
+
编译器在需要组件而缺少平台 binding 时使用 `component-capability: component-platform-binding-required`。平台解析和组件解析保持两个独立步骤;组件 evidence 不伪装成平台空脚手架的 Maven、启动或集成测试证据。
|
|
46
|
+
|
|
47
|
+
当前 `spring-boot-2.7-jdk8` 组合登记为 `blocked`。阿里云 Maven 私服已解析出 12 个 timestamped SNAPSHOT 及 POM/JAR SHA-256;其中 11 个构件的发布 POM 与 sources JAR 可逐字节绑定到固定 Git tree,Cache 3.x 没有发布 sources JAR,仍缺源码绑定。Exception、UserInfo、Security 和 Resilience4j 的已解析构件对应固定提交,不包含当前隔离工作树中的加固候选。所有能力仍缺 DDD 与 Layered MVC 消费应用认证,因此未写入 `verified_architectures` 或组件 evidence。
|
|
48
|
+
|
|
49
|
+
Boot 2 私服中的 Cache `3.0.0-SNAPSHOT` 使用 JDK 8 构建且 BOM 2.x 管理的是 `2.0.0-SNAPSHOT`;Distributed ID 3.x 同样是 JDK 8 / `javax` 代际。这两个坐标不能作为 Boot 3 主线证据。UserInfo 源模块继承 `com.yss.cloud`,BOM 仍登记 `com.yss.datamiddle`,坐标冲突继续阻断。Boot 3.5 候选单独绑定 Cache 与 Distributed ID `3.1.0-SNAPSHOT`,Validation 使用平台管理的 `org.springframework.boot:spring-boot-starter-validation:3.5.16`;Excel 只保留 `yss-component-excel-mvc`,已移除的 `yss-component-excel-starter` 不再登记。Fesod `2.1.0-SNAPSHOT` 在当前私服不可解析,因此 `external_snapshot_bindings` 为空;Excel 外部依赖改用 Apache 正式发布的 `org.apache.fesod:fesod-sheet:2.0.2-incubating`,并以实际 POM、二进制 JAR 与 sources JAR SHA-256 保存为不可变 `resolved` release binding。Fesod 字节绑定不替代消费认证;YSS parent/BOM、timestamped SNAPSHOT、源码绑定、`AutoConfiguration.imports` 与 DDD/Layered MVC 消费证据仍未闭合,所以 Boot 3.5 compatibility 继续 `blocked`。Boot 4.1 没有 compatibility entry;当前目录不对任何 Profile 宣称可选择。
|
|
50
|
+
|
|
51
|
+
`compatibility[].artifact_resolution_evidence` 绑定私服解析报告的相对路径和原始字节摘要。加载 catalog 时会同时核对 report ID、仓库 ID、timestamped version、POM/JAR SHA-256 与可证明的 Git tree;报告字节或任一构件绑定变化都返回 `component-binding-drift`。报告不保存 Maven 用户名、密码或令牌。用户级 `settings.xml` 只提供下载配置;其中 profile 下的 `distributionManagement` 会被 Maven 忽略,发布目标必须由发布 POM 持有。
|
|
26
52
|
|
|
27
53
|
## 依赖与验证
|
|
28
54
|
|
|
29
|
-
Boot BOM 管理 Spring Framework/MVC、嵌入式容器、Servlet、Validation、Jackson 等依赖,Boot Plugin 与 Boot 精确版本相同。YSS 父 POM/BOM 仍由用户确认,解析结果冲突则阻断,不能依靠属性覆盖宣称兼容。清单记录构建工具、Lombok、MapStruct、Swagger、ArchUnit 的候选版本;YSS 组件源码不在脚手架步骤中改造。
|
|
55
|
+
Boot BOM 管理 Spring Framework/MVC、嵌入式容器、Servlet、Validation、Jackson 等依赖,Boot Plugin 与 Boot 精确版本相同。Boot 3.5 Validation 作为 `platform-managed` capability 解析,不再要求 YSS Validation starter。YSS 父 POM/BOM 仍由用户确认,解析结果冲突则阻断,不能依靠属性覆盖宣称兼容。清单记录构建工具、Lombok、MapStruct、Swagger、ArchUnit 的候选版本;YSS 组件源码不在脚手架步骤中改造。
|
|
30
56
|
|
|
31
|
-
Boot 4 使用对应 MVC / MVC 测试 starter、Jackson 3 默认栈与新的模块结构;MyBatis-Plus 必须使用相应 Boot 分支。Web/Validation 的 Jakarta 迁移不替换 `javax.sql` 等 Java SE API。Feign 等可选能力须在兼容条目的 `capabilities` 内有验证记录。清单记录
|
|
57
|
+
Boot 4 使用对应 MVC / MVC 测试 starter、Jackson 3 默认栈与新的模块结构;MyBatis-Plus 必须使用相应 Boot 分支。Web/Validation 的 Jakarta 迁移不替换 `javax.sql` 等 Java SE API。Feign 等可选能力须在兼容条目的 `capabilities` 内有验证记录。清单记录 Boot 3.5 的 Spring Cloud `2025.0.3`、Spring Cloud Alibaba `2025.0.0.0`,以及其他候选线;实际内部 BOM 必须解析到对应组合。测试覆盖 Validation、JSON、MyBatis 查询映射和适用的 Feign JSON Decoder。
|
|
32
58
|
|
|
33
59
|
真实验证保存 Maven 实际 JDK、effective POM、每个模块的依赖树、固定三条 Wrapper 命令结果,以及显式 `scaffold-local` 打包启动结果。启动检查只绑定回环地址,通过启动日志与 HTTP 响应验证机械 Web 服务;测试内 Controller 通过随机端口覆盖 JSON POST 往返及非法参数 400,不编译进生产 Jar,并终止验证进程。H2 仅用于测试和显式本地 Profile,不绑定生产数据库。生成器不添加用户业务示例。
|
|
34
60
|
|
|
@@ -40,7 +66,7 @@ Boot 4 使用对应 MVC / MVC 测试 starter、Jackson 3 默认栈与新的模
|
|
|
40
66
|
- `java_homes`:以 `8`、`17`、`21` 为键的实际 JDK 根目录。
|
|
41
67
|
- `combinations`:每项有 `profile_id`、`spring_boot_version`、`architecture_family`、`contract_ref`,合同须真实批准、当前且指向不存在的输出目录。
|
|
42
68
|
|
|
43
|
-
兼容条目包含 `id`、`profile_id`、`spring_boot_version`、`parent`、`bom`、`status`、`capabilities` 和 `evidence`。未验证时使用 `candidate`。每条证据绑定架构、可读取报告的 `ref` 与原始字节 `digest`。报告须匹配 Boot、Java、父 POM/BOM,三条 Maven 命令真实成功,并通过依赖、Surefire 实际用例和启动检查;跳过测试不通过。报告的 `verified_capabilities` 逐架构覆盖所选能力。`evidence_artifacts` 绑定日志、effective POM、依赖树和 `platform-tests.xml` 的相对路径与字节摘要,缺失或漂移即阻断。
|
|
69
|
+
兼容条目包含 `id`、`profile_id`、`spring_boot_version`、`parent`、`bom`、`status`、`capabilities`、`component_capabilities` 和 `evidence`。未验证时使用 `candidate` 或 `blocked`。每条证据绑定架构、可读取报告的 `ref` 与原始字节 `digest`。报告须匹配 Boot、Java、父 POM/BOM,三条 Maven 命令真实成功,并通过依赖、Surefire 实际用例和启动检查;跳过测试不通过。报告的 `verified_capabilities` 逐架构覆盖所选能力。`evidence_artifacts` 绑定日志、effective POM、依赖树和 `platform-tests.xml` 的相对路径与字节摘要,缺失或漂移即阻断。
|
|
44
70
|
|
|
45
71
|
候选工程始终标记 `platform_verification=candidate`,不能进入普通验证完成升级、业务生成或首切片验证。维护者将真实证据及相关日志保存为可分发的相对路径包,审阅全部适用能力后才可把对应组合登记为 `verified`。候选晋级或替换同配方证据不改变配置摘要;真正的依赖配方变化才重新确认。矩阵命令不自动修改兼容清单、不批准合同、不发布版本。
|
|
46
72
|
|
|
@@ -72,6 +98,6 @@ Boot 4 使用对应 MVC / MVC 测试 starter、Jackson 3 默认栈与新的模
|
|
|
72
98
|
|
|
73
99
|
空脚手架验证的证据目录必须位于生成工程外部,避免证据文件被误认为新增源码。首切片验证在批准的切片合同通过既有门禁后复用构建检查,但记录 `verification_scope=first-slice`;其证据不能用于开放平台组合,也不要求业务代码保持空脚手架摘要。
|
|
74
100
|
|
|
75
|
-
|
|
101
|
+
通用运行时依赖仍由真实依赖树和 Boot BOM 核验。YSS 组件能力的精确构件绑定只读取同一兼容条目内的 `component_capabilities`,不得再从 catalog 顶层列表或平行 `components` 目录推断。
|
|
76
102
|
|
|
77
103
|
Jar 核验拒绝未登记或版本不符的额外库;仅允许 Boot 对应版本的 jarmode 工具以及已选配方中的 provided Lombok 随包出现。原因是 [Boot repackage 默认包含 provided 依赖](https://docs.spring.io/spring-boot/maven-plugin/packaging.html);这些打包例外不能补足必须存在于 compile/runtime 树的 Web、Servlet、JSON 等能力。
|
|
@@ -68,6 +68,7 @@
|
|
|
68
68
|
"profile_id",
|
|
69
69
|
"spring_boot_version",
|
|
70
70
|
"java_version",
|
|
71
|
+
"component_platform_line",
|
|
71
72
|
"parent",
|
|
72
73
|
"bom",
|
|
73
74
|
"compatibility_id",
|
|
@@ -95,6 +96,12 @@
|
|
|
95
96
|
21
|
|
96
97
|
]
|
|
97
98
|
},
|
|
99
|
+
"component_platform_line": {
|
|
100
|
+
"enum": [
|
|
101
|
+
"boot2-java8",
|
|
102
|
+
"boot3-java17"
|
|
103
|
+
]
|
|
104
|
+
},
|
|
98
105
|
"compatibility_id": {
|
|
99
106
|
"type": "string",
|
|
100
107
|
"minLength": 1
|
|
@@ -200,6 +207,101 @@
|
|
|
200
207
|
"build_units_digest": {
|
|
201
208
|
"type": "string",
|
|
202
209
|
"pattern": "^sha256:[a-f0-9]{64}$"
|
|
210
|
+
},
|
|
211
|
+
"platform_configuration": {
|
|
212
|
+
"type": "object",
|
|
213
|
+
"additionalProperties": false,
|
|
214
|
+
"required": [
|
|
215
|
+
"schema_version",
|
|
216
|
+
"profile_id",
|
|
217
|
+
"spring_boot_version",
|
|
218
|
+
"java_version",
|
|
219
|
+
"component_platform_line",
|
|
220
|
+
"parent",
|
|
221
|
+
"bom",
|
|
222
|
+
"compatibility_id",
|
|
223
|
+
"compatibility_digest"
|
|
224
|
+
],
|
|
225
|
+
"properties": {
|
|
226
|
+
"schema_version": {
|
|
227
|
+
"const": 2
|
|
228
|
+
},
|
|
229
|
+
"profile_id": {
|
|
230
|
+
"type": "string",
|
|
231
|
+
"minLength": 1
|
|
232
|
+
},
|
|
233
|
+
"spring_boot_version": {
|
|
234
|
+
"type": "string",
|
|
235
|
+
"pattern": "^\\d+\\.\\d+\\.\\d+$"
|
|
236
|
+
},
|
|
237
|
+
"java_version": {
|
|
238
|
+
"enum": [
|
|
239
|
+
8,
|
|
240
|
+
17,
|
|
241
|
+
21
|
|
242
|
+
]
|
|
243
|
+
},
|
|
244
|
+
"component_platform_line": {
|
|
245
|
+
"enum": [
|
|
246
|
+
"boot2-java8",
|
|
247
|
+
"boot3-java17"
|
|
248
|
+
]
|
|
249
|
+
},
|
|
250
|
+
"compatibility_id": {
|
|
251
|
+
"type": "string",
|
|
252
|
+
"minLength": 1
|
|
253
|
+
},
|
|
254
|
+
"compatibility_digest": {
|
|
255
|
+
"type": "string",
|
|
256
|
+
"pattern": "^sha256:[a-f0-9]{64}$"
|
|
257
|
+
},
|
|
258
|
+
"parent": {
|
|
259
|
+
"type": "object",
|
|
260
|
+
"additionalProperties": false,
|
|
261
|
+
"required": [
|
|
262
|
+
"group_id",
|
|
263
|
+
"artifact_id",
|
|
264
|
+
"version"
|
|
265
|
+
],
|
|
266
|
+
"properties": {
|
|
267
|
+
"group_id": {
|
|
268
|
+
"type": "string",
|
|
269
|
+
"pattern": "^[A-Za-z0-9_.-]+$"
|
|
270
|
+
},
|
|
271
|
+
"artifact_id": {
|
|
272
|
+
"type": "string",
|
|
273
|
+
"pattern": "^[A-Za-z0-9_.-]+$"
|
|
274
|
+
},
|
|
275
|
+
"version": {
|
|
276
|
+
"type": "string",
|
|
277
|
+
"pattern": "^[A-Za-z0-9_.-]+$"
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
},
|
|
281
|
+
"bom": {
|
|
282
|
+
"type": "object",
|
|
283
|
+
"additionalProperties": false,
|
|
284
|
+
"required": [
|
|
285
|
+
"group_id",
|
|
286
|
+
"artifact_id",
|
|
287
|
+
"version"
|
|
288
|
+
],
|
|
289
|
+
"properties": {
|
|
290
|
+
"group_id": {
|
|
291
|
+
"type": "string",
|
|
292
|
+
"pattern": "^[A-Za-z0-9_.-]+$"
|
|
293
|
+
},
|
|
294
|
+
"artifact_id": {
|
|
295
|
+
"type": "string",
|
|
296
|
+
"pattern": "^[A-Za-z0-9_.-]+$"
|
|
297
|
+
},
|
|
298
|
+
"version": {
|
|
299
|
+
"type": "string",
|
|
300
|
+
"pattern": "^[A-Za-z0-9_.-]+$"
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
}
|
|
203
305
|
}
|
|
204
306
|
}
|
|
205
307
|
}
|
|
@@ -88,7 +88,6 @@
|
|
|
88
88
|
"enum": [
|
|
89
89
|
"yss-ddd-scaffold-generator",
|
|
90
90
|
"yss-layered-mvc-scaffold-generator",
|
|
91
|
-
"yss-mvc-data-analysis-project-initializer",
|
|
92
91
|
"yss-frontend-scaffold-generator"
|
|
93
92
|
]
|
|
94
93
|
},
|
|
@@ -468,6 +467,7 @@
|
|
|
468
467
|
"profile_id",
|
|
469
468
|
"spring_boot_version",
|
|
470
469
|
"java_version",
|
|
470
|
+
"component_platform_line",
|
|
471
471
|
"parent",
|
|
472
472
|
"bom",
|
|
473
473
|
"compatibility_id",
|
|
@@ -495,6 +495,12 @@
|
|
|
495
495
|
21
|
|
496
496
|
]
|
|
497
497
|
},
|
|
498
|
+
"component_platform_line": {
|
|
499
|
+
"enum": [
|
|
500
|
+
"boot2-java8",
|
|
501
|
+
"boot3-java17"
|
|
502
|
+
]
|
|
503
|
+
},
|
|
498
504
|
"compatibility_id": {
|
|
499
505
|
"type": "string",
|
|
500
506
|
"minLength": 1
|
|
@@ -607,12 +613,12 @@
|
|
|
607
613
|
{
|
|
608
614
|
"if": {
|
|
609
615
|
"properties": {
|
|
610
|
-
"
|
|
611
|
-
"const": "
|
|
616
|
+
"architecture_profile": {
|
|
617
|
+
"const": "mvc-data-analysis-v1"
|
|
612
618
|
}
|
|
613
619
|
},
|
|
614
620
|
"required": [
|
|
615
|
-
"
|
|
621
|
+
"architecture_profile"
|
|
616
622
|
]
|
|
617
623
|
},
|
|
618
624
|
"then": {
|
|
@@ -626,6 +632,12 @@
|
|
|
626
632
|
},
|
|
627
633
|
"architecture_family": {
|
|
628
634
|
"const": "layered-mvc"
|
|
635
|
+
},
|
|
636
|
+
"generator_skill": {
|
|
637
|
+
"const": "yss-layered-mvc-scaffold-generator"
|
|
638
|
+
},
|
|
639
|
+
"init_git": {
|
|
640
|
+
"const": true
|
|
629
641
|
}
|
|
630
642
|
}
|
|
631
643
|
}
|
|
@@ -263,6 +263,7 @@
|
|
|
263
263
|
"profile_id",
|
|
264
264
|
"spring_boot_version",
|
|
265
265
|
"java_version",
|
|
266
|
+
"component_platform_line",
|
|
266
267
|
"parent",
|
|
267
268
|
"bom",
|
|
268
269
|
"compatibility_id",
|
|
@@ -290,6 +291,12 @@
|
|
|
290
291
|
21
|
|
291
292
|
]
|
|
292
293
|
},
|
|
294
|
+
"component_platform_line": {
|
|
295
|
+
"enum": [
|
|
296
|
+
"boot2-java8",
|
|
297
|
+
"boot3-java17"
|
|
298
|
+
]
|
|
299
|
+
},
|
|
293
300
|
"compatibility_id": {
|
|
294
301
|
"type": "string",
|
|
295
302
|
"minLength": 1
|
|
@@ -331,6 +331,149 @@
|
|
|
331
331
|
},
|
|
332
332
|
"architecture_identity": {
|
|
333
333
|
"type": "object"
|
|
334
|
+
},
|
|
335
|
+
"component_bindings": {
|
|
336
|
+
"type": "array",
|
|
337
|
+
"minItems": 1,
|
|
338
|
+
"items": {
|
|
339
|
+
"type": "object",
|
|
340
|
+
"additionalProperties": false,
|
|
341
|
+
"properties": {
|
|
342
|
+
"capability_id": {
|
|
343
|
+
"type": "string",
|
|
344
|
+
"minLength": 1
|
|
345
|
+
},
|
|
346
|
+
"status": {
|
|
347
|
+
"const": "verified"
|
|
348
|
+
},
|
|
349
|
+
"verified_architectures": {
|
|
350
|
+
"type": "array",
|
|
351
|
+
"minItems": 1,
|
|
352
|
+
"uniqueItems": true,
|
|
353
|
+
"items": {
|
|
354
|
+
"enum": [
|
|
355
|
+
"domain-driven",
|
|
356
|
+
"layered-mvc"
|
|
357
|
+
]
|
|
358
|
+
}
|
|
359
|
+
},
|
|
360
|
+
"artifacts": {
|
|
361
|
+
"type": "array",
|
|
362
|
+
"minItems": 1,
|
|
363
|
+
"items": {
|
|
364
|
+
"type": "object",
|
|
365
|
+
"additionalProperties": false,
|
|
366
|
+
"properties": {
|
|
367
|
+
"group_id": {
|
|
368
|
+
"type": "string",
|
|
369
|
+
"minLength": 1
|
|
370
|
+
},
|
|
371
|
+
"artifact_id": {
|
|
372
|
+
"type": "string",
|
|
373
|
+
"minLength": 1
|
|
374
|
+
},
|
|
375
|
+
"declared_version": {
|
|
376
|
+
"type": "string",
|
|
377
|
+
"minLength": 1
|
|
378
|
+
},
|
|
379
|
+
"resolved_version": {
|
|
380
|
+
"type": "string",
|
|
381
|
+
"minLength": 1
|
|
382
|
+
},
|
|
383
|
+
"pom_sha256": {
|
|
384
|
+
"type": "string",
|
|
385
|
+
"pattern": "^sha256:[a-f0-9]{64}$"
|
|
386
|
+
},
|
|
387
|
+
"jar_sha256": {
|
|
388
|
+
"type": "string",
|
|
389
|
+
"pattern": "^sha256:[a-f0-9]{64}$"
|
|
390
|
+
},
|
|
391
|
+
"source_tree": {
|
|
392
|
+
"type": "string",
|
|
393
|
+
"pattern": "^[a-f0-9]{40}$"
|
|
394
|
+
}
|
|
395
|
+
},
|
|
396
|
+
"required": [
|
|
397
|
+
"group_id",
|
|
398
|
+
"artifact_id",
|
|
399
|
+
"declared_version",
|
|
400
|
+
"resolved_version",
|
|
401
|
+
"pom_sha256",
|
|
402
|
+
"jar_sha256",
|
|
403
|
+
"source_tree"
|
|
404
|
+
]
|
|
405
|
+
}
|
|
406
|
+
},
|
|
407
|
+
"evidence": {
|
|
408
|
+
"type": "array",
|
|
409
|
+
"minItems": 1,
|
|
410
|
+
"items": {
|
|
411
|
+
"type": "object",
|
|
412
|
+
"additionalProperties": false,
|
|
413
|
+
"properties": {
|
|
414
|
+
"architecture_family": {
|
|
415
|
+
"enum": [
|
|
416
|
+
"domain-driven",
|
|
417
|
+
"layered-mvc"
|
|
418
|
+
]
|
|
419
|
+
},
|
|
420
|
+
"ref": {
|
|
421
|
+
"type": "string",
|
|
422
|
+
"minLength": 1
|
|
423
|
+
},
|
|
424
|
+
"digest": {
|
|
425
|
+
"type": "string",
|
|
426
|
+
"pattern": "^sha256:[a-f0-9]{64}$"
|
|
427
|
+
}
|
|
428
|
+
},
|
|
429
|
+
"required": [
|
|
430
|
+
"architecture_family",
|
|
431
|
+
"ref",
|
|
432
|
+
"digest"
|
|
433
|
+
]
|
|
434
|
+
}
|
|
435
|
+
},
|
|
436
|
+
"component_digest": {
|
|
437
|
+
"type": "string",
|
|
438
|
+
"pattern": "^sha256:[a-f0-9]{64}$"
|
|
439
|
+
},
|
|
440
|
+
"architecture_family": {
|
|
441
|
+
"enum": [
|
|
442
|
+
"domain-driven",
|
|
443
|
+
"layered-mvc"
|
|
444
|
+
]
|
|
445
|
+
},
|
|
446
|
+
"platform_configuration": {
|
|
447
|
+
"type": "object",
|
|
448
|
+
"minProperties": 1,
|
|
449
|
+
"required": [
|
|
450
|
+
"component_platform_line"
|
|
451
|
+
],
|
|
452
|
+
"properties": {
|
|
453
|
+
"component_platform_line": {
|
|
454
|
+
"enum": [
|
|
455
|
+
"boot2-java8",
|
|
456
|
+
"boot3-java17"
|
|
457
|
+
]
|
|
458
|
+
}
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
},
|
|
462
|
+
"required": [
|
|
463
|
+
"capability_id",
|
|
464
|
+
"status",
|
|
465
|
+
"verified_architectures",
|
|
466
|
+
"artifacts",
|
|
467
|
+
"evidence",
|
|
468
|
+
"component_digest",
|
|
469
|
+
"architecture_family",
|
|
470
|
+
"platform_configuration"
|
|
471
|
+
]
|
|
472
|
+
}
|
|
473
|
+
},
|
|
474
|
+
"component_bindings_digest": {
|
|
475
|
+
"type": "string",
|
|
476
|
+
"pattern": "^[a-f0-9]{64}$"
|
|
334
477
|
}
|
|
335
478
|
},
|
|
336
479
|
"required": [
|
|
@@ -78,7 +78,7 @@ scripts/verify-strategic-handoff-consumption --root <研发项目根> --slice <
|
|
|
78
78
|
node .agents/skills/yss-technical-design/scripts/validate-technical-design.mjs <技术设计合同> --root <研发项目根>
|
|
79
79
|
```
|
|
80
80
|
|
|
81
|
-
Handoff v4/v5 后端消费必须绑定 `backend-technical-design` 的 `route_id`,先对账,再由 `yss-technical-design`
|
|
81
|
+
Handoff v4/v5 后端消费必须绑定 `backend-technical-design` 的 `route_id`,先对账,再由 `yss-technical-design` 依据已批准架构进入自身 `layered-mvc` 分支或调用 `yss-tactical-design`。Handoff v3/v4 仅作历史只读兼容,不修改已冻结包。`tactical_refs` 在 v2 Technical Design 可指向 MVC 或 DDD 分支对象;无战略交接包的 MVC 项目直接消费批准需求,不补造战略 DDD。
|
|
82
82
|
|
|
83
83
|
前端先验证与交接版本匹配的 Strategic Preflight:Handoff v4 使用 v1,Handoff v5 使用 v2 的 `ui_baseline_kind/ui_baseline_ref`,只允许起草前端工程设计与实现计划,固定返回 `ready_for_agent: false`。最终 Frontend Delivery Acceptance v2(Handoff v4)或 v3(Handoff v5)在 Backend/API/Data 有影响时必须绑定真实 Backend Delivery 收据与版本探测;UI-only 时使用与战略路由一致的 `backend-not-applicable`,此时 `operation_ids` 必须为空。无论哪条路径,当前且已批准的 Slice Contract 仍是实现入口。
|
|
84
84
|
|
|
@@ -253,7 +253,7 @@ owner: ai
|
|
|
253
253
|
| 生成选项 | 关闭 `--with-example`;生成器严格 initialize-only,非空目录、`--force`、旧项目迁移和当前模板升级均为 `unsupported` |
|
|
254
254
|
| Profile | DDD:`target-domain-model`;MVC:`layered-mvc-service`;Spring Boot / Java 使用用户确认且兼容清单验证通过的精确组合,不使用版本范围或 `latest` |
|
|
255
255
|
| 验证 | 使用一键生成验证入口,实际执行项目根目录 `./mvnw validate`、`./mvnw test`、`./mvnw package`;通过后仅为 `empty-scaffold-verified`,golden first slice 通过后才是 `first-slice-verified` |
|
|
256
|
-
| 后置 |
|
|
256
|
+
| 后置 | 生成器内部工程基线校验、`yss-implementation-contract-compiler` 业务合同重编译、YSS Skill Execution Result |
|
|
257
257
|
|
|
258
258
|
所有后续生成代码必须绑定当前批准且版本一致的 Slice Implementation Contract、主 YSS skill、依赖闭包、允许写路径、预期证据和 Execution Result。业务行为必须使用 `behavior-tdd`;缺任一条件即阻断,不得以脚手架成功或时间压力豁免。
|
|
259
259
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# 技术设计用户指南
|
|
2
2
|
|
|
3
|
-
本指南说明批准战略或 Spec 如何进入后端技术设计。统一入口是 `yss-technical-design`;工程采用 `domain-driven` 时调用 `yss-tactical-design`,采用 `layered-mvc`
|
|
3
|
+
本指南说明批准战略或 Spec 如何进入后端技术设计。统一入口是 `yss-technical-design`;工程采用 `domain-driven` 时调用 `yss-tactical-design`,采用 `layered-mvc` 时使用统一入口内的 MVC 分支。架构类型来自当前工程登记或经用户确认的脚手架决定,不能按目录或个人偏好猜测。
|
|
4
4
|
|
|
5
5
|
## 开始前检查
|
|
6
6
|
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
```text
|
|
10
10
|
请读取当前批准战略或 Spec、根 CONTEXT.md 和工程登记。
|
|
11
11
|
核对架构身份与既有工程证据,再用 yss-technical-design 起草当前技术设计。
|
|
12
|
-
domain-driven 使用 yss-tactical-design;layered-mvc 使用 yss-
|
|
12
|
+
domain-driven 使用 yss-tactical-design;layered-mvc 使用 yss-technical-design 的 MVC 分支。
|
|
13
13
|
说明状态、事务、并发、幂等、持久化和公开测试 seam,并逐项映射源规则与关键场景。
|
|
14
14
|
列出冲突、延期、依赖和需要的批准;不要提前实现代码。
|
|
15
15
|
```
|
|
@@ -1,14 +1,83 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { loadBackendPlatforms, platformBinding, resolveBackendPlatform } from "./lib/backend-platform.mjs";
|
|
3
|
+
|
|
4
|
+
function parseArgs(argv) {
|
|
5
|
+
const result = { requireVerified: false, requireProfile: null };
|
|
6
|
+
for (let index = 0; index < argv.length; index += 1) {
|
|
7
|
+
const arg = argv[index];
|
|
8
|
+
if (arg === "--require-verified") result.requireVerified = true;
|
|
9
|
+
else if (arg === "--require-profile") {
|
|
10
|
+
const value = argv[++index];
|
|
11
|
+
if (!value || value.startsWith("--")) throw new TypeError("--require-profile requires a profile id");
|
|
12
|
+
result.requireProfile = value;
|
|
13
|
+
} else if (arg.startsWith("--require-profile=")) {
|
|
14
|
+
result.requireProfile = arg.slice("--require-profile=".length);
|
|
15
|
+
if (!result.requireProfile) throw new TypeError("--require-profile requires a profile id");
|
|
16
|
+
} else throw new TypeError(`unknown argument: ${arg}`);
|
|
17
|
+
}
|
|
18
|
+
return result;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function componentView(entry) {
|
|
22
|
+
return Object.fromEntries(Object.entries(entry.component_capabilities ?? {}).map(([capabilityId, item]) => [capabilityId, {
|
|
23
|
+
status: item.status,
|
|
24
|
+
provider_kind: item.provider_kind ?? "yss-component",
|
|
25
|
+
lifecycle: item.lifecycle ?? "active",
|
|
26
|
+
adoption_policy: item.adoption_policy ?? "allowed",
|
|
27
|
+
platform_line: item.platform_line ?? null,
|
|
28
|
+
replacement_gav: item.replacement_gav ?? null,
|
|
29
|
+
verified_architectures: item.verified_architectures,
|
|
30
|
+
artifacts: item.artifacts,
|
|
31
|
+
evidence: item.evidence,
|
|
32
|
+
blockers: item.blockers,
|
|
33
|
+
component_digest: item.component_digest
|
|
34
|
+
}]));
|
|
35
|
+
}
|
|
36
|
+
|
|
3
37
|
try {
|
|
38
|
+
const args = parseArgs(process.argv.slice(2));
|
|
4
39
|
const catalog = loadBackendPlatforms();
|
|
5
40
|
const rows = catalog.profiles.map(profile => {
|
|
6
|
-
const combinations = catalog.compatibility
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
41
|
+
const combinations = catalog.compatibility
|
|
42
|
+
.filter(entry => entry.profile_id === profile.id && entry.spring_boot_version === profile.spring_boot_version)
|
|
43
|
+
.map(entry => {
|
|
44
|
+
let platformReason = null;
|
|
45
|
+
try { resolveBackendPlatform(platformBinding(profile, entry)); }
|
|
46
|
+
catch (error) { platformReason = error.message; }
|
|
47
|
+
const componentCapabilities = componentView(entry);
|
|
48
|
+
const componentValues = Object.values(componentCapabilities);
|
|
49
|
+
return {
|
|
50
|
+
id: entry.id,
|
|
51
|
+
status: platformReason ? "blocked" : "verified",
|
|
52
|
+
parent: entry.parent,
|
|
53
|
+
bom: entry.bom,
|
|
54
|
+
architectures: [...new Set(componentValues.flatMap(item => item.verified_architectures))],
|
|
55
|
+
capabilities: entry.capabilities ?? [],
|
|
56
|
+
platform_artifact_bindings: entry.platform_artifact_bindings ?? {},
|
|
57
|
+
external_snapshot_bindings: entry.external_snapshot_bindings ?? [],
|
|
58
|
+
external_artifact_bindings: entry.external_artifact_bindings ?? [],
|
|
59
|
+
component_capabilities: componentCapabilities,
|
|
60
|
+
component_status: {
|
|
61
|
+
verified: componentValues.filter(item => item.status === "verified").length,
|
|
62
|
+
blocked: componentValues.filter(item => item.status !== "verified").length
|
|
63
|
+
},
|
|
64
|
+
blockers: platformReason ? [platformReason] : []
|
|
65
|
+
};
|
|
66
|
+
});
|
|
67
|
+
const selectable = combinations.some(entry => entry.status === "verified");
|
|
68
|
+
const blockers = selectable ? [] : [...new Set([...profile.candidate_blockers, ...combinations.flatMap(item => item.blockers)])];
|
|
69
|
+
return { profile_id: profile.id, spring_boot_version: profile.spring_boot_version, java_version: profile.java_version, component_platform_line: profile.component_platform_line ?? null, recommended_java: profile.java_version === 8 || profile.java_version === 17, selectable, combinations, blockers };
|
|
11
70
|
});
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
71
|
+
const matches = args.requireProfile ? rows.filter(row => row.profile_id === args.requireProfile) : [];
|
|
72
|
+
const requiredProfile = !args.requireProfile ? null : matches.length === 1 ? matches[0] : {
|
|
73
|
+
profile_id: args.requireProfile,
|
|
74
|
+
selectable: false,
|
|
75
|
+
combinations: [],
|
|
76
|
+
blockers: [matches.length ? "backend-platform: multiple patches require an exact catalog selection" : `backend-platform: unsupported platform_profile: ${args.requireProfile}`]
|
|
77
|
+
};
|
|
78
|
+
process.stdout.write(`${JSON.stringify({ schema_version: 2, requested_profile: args.requireProfile, required_profile: requiredProfile, profiles: rows }, null, 2)}\n`);
|
|
79
|
+
if ((args.requireVerified && rows.some(row => !row.selectable)) || (requiredProfile && !requiredProfile.selectable)) process.exitCode = 1;
|
|
80
|
+
} catch (error) {
|
|
81
|
+
process.stderr.write(`${error.message}\n`);
|
|
82
|
+
process.exitCode = 1;
|
|
83
|
+
}
|