create-yss-spec 3.0.0 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/package.json +1 -1
- package/src/cli.js +0 -1
- package/template/.agents/skills/.strategic-design-skills-manifest.json +35 -0
- package/template/.agents/skills/.yss-skills-manifest.json +0 -2
- package/template/.agents/skills/code-review/SKILL.md +1 -1
- package/template/.agents/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.agents/skills/lombok/SKILL.md +1 -1
- package/template/.agents/skills/mapstruct/SKILL.md +1 -1
- package/template/.agents/skills/prototype-review/SKILL.md +7 -6
- package/template/.agents/skills/yss-antd-design/SKILL.md +8 -7
- package/template/.agents/skills/yss-antd-design/references/evidence.md +11 -6
- package/template/.agents/skills/yss-api-integration/SKILL.md +2 -2
- package/template/.agents/skills/yss-application/SKILL.md +2 -2
- package/template/.agents/skills/yss-audit-log/SKILL.md +2 -2
- package/template/.agents/skills/yss-audit-log/references/source-index.md +1 -1
- package/template/.agents/skills/yss-cache/SKILL.md +2 -2
- package/template/.agents/skills/yss-cache/references/source-index.md +1 -1
- package/template/.agents/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/SKILL.md +6 -6
- package/template/.agents/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +3 -3
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +3 -3
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +3 -3
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +8 -8
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +1 -1
- 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 +8 -8
- package/template/.agents/skills/yss-design-system/SKILL.md +6 -6
- package/template/.agents/skills/yss-distributed-id/SKILL.md +2 -2
- package/template/.agents/skills/yss-distributed-id/references/source-index.md +1 -1
- package/template/.agents/skills/yss-domain/SKILL.md +1 -1
- package/template/.agents/skills/yss-dto/SKILL.md +2 -2
- package/template/.agents/skills/yss-dto/references/source-index.md +1 -1
- package/template/.agents/skills/yss-excel-mvc/SKILL.md +2 -2
- package/template/.agents/skills/yss-excel-mvc/references/source-index.md +1 -1
- package/template/.agents/skills/yss-exception/SKILL.md +1 -1
- package/template/.agents/skills/yss-exception/references/source-index.md +1 -1
- package/template/.agents/skills/{yss-router → yss-implementation-contract-compiler}/SKILL.md +22 -18
- package/template/.agents/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
- package/template/.agents/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
- package/template/{.codex/skills/yss-router/references/router-contract.yaml → .agents/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml} +59 -94
- package/template/{.codex/skills/yss-router → .agents/skills/yss-implementation-contract-compiler}/references/slice-implementation-contract.md +20 -8
- package/template/.agents/skills/{yss-router → yss-implementation-contract-compiler}/references/yss-skill-execution-result.md +5 -3
- package/template/.agents/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
- package/template/.agents/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
- package/template/.agents/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.agents/skills/yss-mybatis/references/source-index.md +1 -1
- package/template/.agents/skills/yss-page-module-development/SKILL.md +1 -1
- package/template/.agents/skills/yss-product-lifecycle/SKILL.md +6 -6
- package/template/.agents/skills/yss-product-lifecycle/references/matt-yss-adapter.md +5 -5
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +25 -17
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +5 -5
- package/template/.agents/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.agents/skills/yss-prototype-stage/SKILL.md +34 -24
- package/template/.agents/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
- package/template/.agents/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
- package/template/.agents/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
- package/template/.agents/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
- package/template/.agents/skills/yss-repository/SKILL.md +2 -2
- package/template/.agents/skills/yss-resilience4j/SKILL.md +1 -1
- package/template/.agents/skills/yss-resilience4j/references/source-index.md +1 -1
- package/template/.agents/skills/yss-security-algorithm/SKILL.md +1 -1
- package/template/.agents/skills/yss-security-algorithm/references/source-index.md +1 -1
- package/template/.agents/skills/{yss-source-index → yss-skill-source-index-refresh}/SKILL.md +4 -4
- package/template/.agents/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
- package/template/{.claude/skills/yss-source-index → .agents/skills/yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.agents/skills/yss-ui/SKILL.md +2 -1
- package/template/.agents/skills/yss-ui/assets/docs/guide/llms.md +0 -61
- package/template/.agents/skills/yss-up-springboot3/SKILL.md +1 -1
- package/template/.agents/skills/yss-userinfo/SKILL.md +1 -1
- package/template/.agents/skills/yss-userinfo/references/source-index.md +1 -1
- package/template/.agents/skills/yss-validation/SKILL.md +1 -1
- package/template/.agents/skills/yss-validation/references/source-index.md +1 -1
- package/template/.agents/skills/yss-web-controller/SKILL.md +2 -2
- package/template/.claude/skills/code-review/SKILL.md +1 -1
- package/template/.claude/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.claude/skills/lombok/SKILL.md +1 -1
- package/template/.claude/skills/mapstruct/SKILL.md +1 -1
- package/template/.claude/skills/prototype-review/SKILL.md +7 -6
- package/template/.claude/skills/yss-antd-design/SKILL.md +8 -7
- package/template/.claude/skills/yss-antd-design/references/evidence.md +11 -6
- package/template/.claude/skills/yss-api-integration/SKILL.md +2 -2
- package/template/.claude/skills/yss-application/SKILL.md +2 -2
- package/template/.claude/skills/yss-audit-log/SKILL.md +2 -2
- package/template/.claude/skills/yss-audit-log/references/source-index.md +1 -1
- package/template/.claude/skills/yss-cache/SKILL.md +2 -2
- package/template/.claude/skills/yss-cache/references/source-index.md +1 -1
- package/template/.claude/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/SKILL.md +6 -6
- package/template/.claude/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +3 -3
- package/template/.claude/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +3 -3
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +3 -3
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +8 -8
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
- package/template/.claude/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +8 -8
- package/template/.claude/skills/yss-design-system/SKILL.md +6 -6
- package/template/.claude/skills/yss-distributed-id/SKILL.md +2 -2
- package/template/.claude/skills/yss-distributed-id/references/source-index.md +1 -1
- package/template/.claude/skills/yss-domain/SKILL.md +1 -1
- package/template/.claude/skills/yss-dto/SKILL.md +2 -2
- package/template/.claude/skills/yss-dto/references/source-index.md +1 -1
- package/template/.claude/skills/yss-excel-mvc/SKILL.md +2 -2
- package/template/.claude/skills/yss-excel-mvc/references/source-index.md +1 -1
- package/template/.claude/skills/yss-exception/SKILL.md +1 -1
- package/template/.claude/skills/yss-exception/references/source-index.md +1 -1
- package/template/{.codex/skills/yss-router → .claude/skills/yss-implementation-contract-compiler}/SKILL.md +22 -18
- package/template/.claude/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
- package/template/.claude/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
- package/template/.claude/skills/{yss-router/references/router-contract.yaml → yss-implementation-contract-compiler/references/compiler-contract.yaml} +59 -94
- package/template/{.agents/skills/yss-router → .claude/skills/yss-implementation-contract-compiler}/references/slice-implementation-contract.md +20 -8
- package/template/{.codex/skills/yss-router → .claude/skills/yss-implementation-contract-compiler}/references/yss-skill-execution-result.md +5 -3
- package/template/.claude/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
- package/template/.claude/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
- package/template/.claude/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.claude/skills/yss-mybatis/references/source-index.md +1 -1
- package/template/.claude/skills/yss-page-module-development/SKILL.md +1 -1
- package/template/.claude/skills/yss-product-lifecycle/SKILL.md +6 -6
- package/template/.claude/skills/yss-product-lifecycle/references/matt-yss-adapter.md +5 -5
- package/template/.claude/skills/yss-product-lifecycle/references/orchestration-contract.yaml +25 -17
- package/template/.claude/skills/yss-product-lifecycle/references/orchestration.md +5 -5
- package/template/.claude/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.claude/skills/yss-prototype-stage/SKILL.md +34 -24
- package/template/.claude/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
- package/template/.claude/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
- package/template/.claude/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
- package/template/.claude/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
- package/template/.claude/skills/yss-repository/SKILL.md +2 -2
- package/template/.claude/skills/yss-resilience4j/SKILL.md +1 -1
- package/template/.claude/skills/yss-resilience4j/references/source-index.md +1 -1
- package/template/.claude/skills/yss-security-algorithm/SKILL.md +1 -1
- package/template/.claude/skills/yss-security-algorithm/references/source-index.md +1 -1
- package/template/.claude/skills/{yss-source-index → yss-skill-source-index-refresh}/SKILL.md +4 -4
- package/template/.claude/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
- package/template/{.codex/skills/yss-source-index → .claude/skills/yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.claude/skills/yss-ui/SKILL.md +2 -1
- package/template/.claude/skills/yss-ui/assets/docs/guide/llms.md +0 -61
- package/template/.claude/skills/yss-up-springboot3/SKILL.md +1 -1
- package/template/.claude/skills/yss-userinfo/SKILL.md +1 -1
- package/template/.claude/skills/yss-userinfo/references/source-index.md +1 -1
- package/template/.claude/skills/yss-validation/SKILL.md +1 -1
- package/template/.claude/skills/yss-validation/references/source-index.md +1 -1
- package/template/.claude/skills/yss-web-controller/SKILL.md +2 -2
- package/template/.codex/skills/code-review/SKILL.md +1 -1
- package/template/.codex/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.codex/skills/lombok/SKILL.md +1 -1
- package/template/.codex/skills/mapstruct/SKILL.md +1 -1
- package/template/.codex/skills/prototype-review/SKILL.md +7 -6
- package/template/.codex/skills/yss-antd-design/SKILL.md +8 -7
- package/template/.codex/skills/yss-antd-design/references/evidence.md +11 -6
- package/template/.codex/skills/yss-api-integration/SKILL.md +2 -2
- package/template/.codex/skills/yss-application/SKILL.md +2 -2
- package/template/.codex/skills/yss-audit-log/SKILL.md +2 -2
- package/template/.codex/skills/yss-audit-log/references/source-index.md +1 -1
- package/template/.codex/skills/yss-cache/SKILL.md +2 -2
- package/template/.codex/skills/yss-cache/references/source-index.md +1 -1
- package/template/.codex/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +6 -6
- package/template/.codex/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +3 -3
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +3 -3
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +3 -3
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +8 -8
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +1 -1
- 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 +8 -8
- package/template/.codex/skills/yss-design-system/SKILL.md +6 -6
- package/template/.codex/skills/yss-distributed-id/SKILL.md +2 -2
- package/template/.codex/skills/yss-distributed-id/references/source-index.md +1 -1
- package/template/.codex/skills/yss-domain/SKILL.md +1 -1
- package/template/.codex/skills/yss-dto/SKILL.md +2 -2
- package/template/.codex/skills/yss-dto/references/source-index.md +1 -1
- package/template/.codex/skills/yss-excel-mvc/SKILL.md +2 -2
- package/template/.codex/skills/yss-excel-mvc/references/source-index.md +1 -1
- package/template/.codex/skills/yss-exception/SKILL.md +1 -1
- package/template/.codex/skills/yss-exception/references/source-index.md +1 -1
- package/template/{.cursor/skills/yss-router → .codex/skills/yss-implementation-contract-compiler}/SKILL.md +22 -18
- package/template/.codex/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
- package/template/.codex/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
- package/template/{.cursor/skills/yss-router/references/router-contract.yaml → .codex/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml} +59 -94
- package/template/{.cursor/skills/yss-router → .codex/skills/yss-implementation-contract-compiler}/references/slice-implementation-contract.md +20 -8
- package/template/{.claude/skills/yss-router → .codex/skills/yss-implementation-contract-compiler}/references/yss-skill-execution-result.md +5 -3
- package/template/.codex/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
- package/template/.codex/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
- package/template/.codex/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.codex/skills/yss-mybatis/references/source-index.md +1 -1
- package/template/.codex/skills/yss-page-module-development/SKILL.md +1 -1
- package/template/.codex/skills/yss-product-lifecycle/SKILL.md +6 -6
- package/template/.codex/skills/yss-product-lifecycle/references/matt-yss-adapter.md +5 -5
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +25 -17
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +5 -5
- package/template/.codex/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.codex/skills/yss-prototype-stage/SKILL.md +34 -24
- package/template/.codex/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
- package/template/.codex/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
- package/template/.codex/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
- package/template/.codex/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
- package/template/.codex/skills/yss-repository/SKILL.md +2 -2
- package/template/.codex/skills/yss-resilience4j/SKILL.md +1 -1
- package/template/.codex/skills/yss-resilience4j/references/source-index.md +1 -1
- package/template/.codex/skills/yss-security-algorithm/SKILL.md +1 -1
- package/template/.codex/skills/yss-security-algorithm/references/source-index.md +1 -1
- package/template/.codex/skills/{yss-source-index → yss-skill-source-index-refresh}/SKILL.md +4 -4
- package/template/.codex/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
- package/template/{.agents/skills/yss-source-index → .codex/skills/yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.codex/skills/yss-ui/SKILL.md +2 -1
- package/template/.codex/skills/yss-ui/assets/docs/guide/llms.md +0 -61
- package/template/.codex/skills/yss-up-springboot3/SKILL.md +1 -1
- package/template/.codex/skills/yss-userinfo/SKILL.md +1 -1
- package/template/.codex/skills/yss-userinfo/references/source-index.md +1 -1
- package/template/.codex/skills/yss-validation/SKILL.md +1 -1
- package/template/.codex/skills/yss-validation/references/source-index.md +1 -1
- package/template/.codex/skills/yss-web-controller/SKILL.md +2 -2
- package/template/.cursor/skills/code-review/SKILL.md +1 -1
- package/template/.cursor/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.cursor/skills/lombok/SKILL.md +1 -1
- package/template/.cursor/skills/mapstruct/SKILL.md +1 -1
- package/template/.cursor/skills/prototype-review/SKILL.md +7 -6
- package/template/.cursor/skills/yss-antd-design/SKILL.md +8 -7
- package/template/.cursor/skills/yss-antd-design/references/evidence.md +11 -6
- package/template/.cursor/skills/yss-api-integration/SKILL.md +2 -2
- package/template/.cursor/skills/yss-application/SKILL.md +2 -2
- package/template/.cursor/skills/yss-audit-log/SKILL.md +2 -2
- package/template/.cursor/skills/yss-audit-log/references/source-index.md +1 -1
- package/template/.cursor/skills/yss-cache/SKILL.md +2 -2
- package/template/.cursor/skills/yss-cache/references/source-index.md +1 -1
- package/template/.cursor/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/SKILL.md +6 -6
- package/template/.cursor/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +3 -3
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +3 -3
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +3 -3
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +8 -8
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +1 -1
- 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 +8 -8
- package/template/.cursor/skills/yss-design-system/SKILL.md +6 -6
- package/template/.cursor/skills/yss-distributed-id/SKILL.md +2 -2
- package/template/.cursor/skills/yss-distributed-id/references/source-index.md +1 -1
- package/template/.cursor/skills/yss-domain/SKILL.md +1 -1
- package/template/.cursor/skills/yss-dto/SKILL.md +2 -2
- package/template/.cursor/skills/yss-dto/references/source-index.md +1 -1
- package/template/.cursor/skills/yss-excel-mvc/SKILL.md +2 -2
- package/template/.cursor/skills/yss-excel-mvc/references/source-index.md +1 -1
- package/template/.cursor/skills/yss-exception/SKILL.md +1 -1
- package/template/.cursor/skills/yss-exception/references/source-index.md +1 -1
- package/template/{.claude/skills/yss-router → .cursor/skills/yss-implementation-contract-compiler}/SKILL.md +22 -18
- package/template/.cursor/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
- package/template/{.agents/skills/yss-router/references/router-contract.yaml → .cursor/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml} +59 -94
- package/template/{.claude/skills/yss-router → .cursor/skills/yss-implementation-contract-compiler}/references/slice-implementation-contract.md +20 -8
- package/template/.cursor/skills/{yss-router → yss-implementation-contract-compiler}/references/yss-skill-execution-result.md +5 -3
- package/template/.cursor/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
- package/template/.cursor/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
- package/template/.cursor/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.cursor/skills/yss-mybatis/references/source-index.md +1 -1
- package/template/.cursor/skills/yss-page-module-development/SKILL.md +1 -1
- package/template/.cursor/skills/yss-product-lifecycle/SKILL.md +6 -6
- package/template/.cursor/skills/yss-product-lifecycle/references/matt-yss-adapter.md +5 -5
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +25 -17
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration.md +5 -5
- package/template/.cursor/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.cursor/skills/yss-prototype-stage/SKILL.md +34 -24
- package/template/.cursor/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
- package/template/.cursor/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
- package/template/.cursor/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
- package/template/.cursor/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
- package/template/.cursor/skills/yss-repository/SKILL.md +2 -2
- package/template/.cursor/skills/yss-resilience4j/SKILL.md +1 -1
- package/template/.cursor/skills/yss-resilience4j/references/source-index.md +1 -1
- package/template/.cursor/skills/yss-security-algorithm/SKILL.md +1 -1
- package/template/.cursor/skills/yss-security-algorithm/references/source-index.md +1 -1
- package/template/.cursor/skills/{yss-source-index → yss-skill-source-index-refresh}/SKILL.md +4 -4
- package/template/.cursor/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
- package/template/.cursor/skills/{yss-source-index → yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.mjs +1 -1
- package/template/.cursor/skills/yss-ui/SKILL.md +2 -1
- package/template/.cursor/skills/yss-ui/assets/docs/guide/llms.md +0 -61
- package/template/.cursor/skills/yss-up-springboot3/SKILL.md +1 -1
- package/template/.cursor/skills/yss-userinfo/SKILL.md +1 -1
- package/template/.cursor/skills/yss-userinfo/references/source-index.md +1 -1
- package/template/.cursor/skills/yss-validation/SKILL.md +1 -1
- package/template/.cursor/skills/yss-validation/references/source-index.md +1 -1
- package/template/.cursor/skills/yss-web-controller/SKILL.md +2 -2
- package/template/.pi/skills/code-review/SKILL.md +1 -1
- package/template/.pi/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.pi/skills/lombok/SKILL.md +1 -1
- package/template/.pi/skills/mapstruct/SKILL.md +1 -1
- package/template/.pi/skills/prototype-review/SKILL.md +7 -6
- package/template/.pi/skills/yss-antd-design/SKILL.md +8 -7
- package/template/.pi/skills/yss-antd-design/references/evidence.md +11 -6
- package/template/.pi/skills/yss-api-integration/SKILL.md +2 -2
- package/template/.pi/skills/yss-application/SKILL.md +2 -2
- package/template/.pi/skills/yss-audit-log/SKILL.md +2 -2
- package/template/.pi/skills/yss-audit-log/references/source-index.md +1 -1
- package/template/.pi/skills/yss-cache/SKILL.md +2 -2
- package/template/.pi/skills/yss-cache/references/source-index.md +1 -1
- package/template/.pi/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/SKILL.md +6 -6
- package/template/.pi/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +3 -3
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +3 -3
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +3 -3
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +8 -8
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +1 -1
- 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 +8 -8
- package/template/.pi/skills/yss-design-system/SKILL.md +6 -6
- package/template/.pi/skills/yss-distributed-id/SKILL.md +2 -2
- package/template/.pi/skills/yss-distributed-id/references/source-index.md +1 -1
- package/template/.pi/skills/yss-domain/SKILL.md +1 -1
- package/template/.pi/skills/yss-dto/SKILL.md +2 -2
- package/template/.pi/skills/yss-dto/references/source-index.md +1 -1
- package/template/.pi/skills/yss-excel-mvc/SKILL.md +2 -2
- package/template/.pi/skills/yss-excel-mvc/references/source-index.md +1 -1
- package/template/.pi/skills/yss-exception/SKILL.md +1 -1
- package/template/.pi/skills/yss-exception/references/source-index.md +1 -1
- package/template/.pi/skills/yss-implementation-contract-compiler/SKILL.md +55 -0
- package/template/.pi/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
- package/template/.pi/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
- package/template/.pi/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +314 -0
- package/template/.pi/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +197 -0
- package/template/.pi/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +69 -0
- package/template/.pi/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
- package/template/.pi/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
- package/template/.pi/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.pi/skills/yss-mybatis/references/source-index.md +1 -1
- package/template/.pi/skills/yss-page-module-development/SKILL.md +1 -1
- package/template/.pi/skills/yss-product-lifecycle/SKILL.md +6 -6
- package/template/.pi/skills/yss-product-lifecycle/references/matt-yss-adapter.md +5 -5
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +25 -17
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +5 -5
- package/template/.pi/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.pi/skills/yss-prototype-stage/SKILL.md +34 -24
- package/template/.pi/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
- package/template/.pi/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
- package/template/.pi/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
- package/template/.pi/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
- package/template/.pi/skills/yss-repository/SKILL.md +2 -2
- package/template/.pi/skills/yss-resilience4j/SKILL.md +1 -1
- package/template/.pi/skills/yss-resilience4j/references/source-index.md +1 -1
- package/template/.pi/skills/yss-security-algorithm/SKILL.md +1 -1
- package/template/.pi/skills/yss-security-algorithm/references/source-index.md +1 -1
- package/template/.pi/skills/yss-skill-source-index-refresh/SKILL.md +63 -0
- package/template/.pi/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
- package/template/.pi/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +24 -0
- package/template/.pi/skills/yss-ui/SKILL.md +2 -1
- package/template/.pi/skills/yss-ui/assets/docs/guide/llms.md +0 -61
- package/template/.pi/skills/yss-up-springboot3/SKILL.md +1 -1
- package/template/.pi/skills/yss-userinfo/SKILL.md +1 -1
- package/template/.pi/skills/yss-userinfo/references/source-index.md +1 -1
- package/template/.pi/skills/yss-validation/SKILL.md +1 -1
- package/template/.pi/skills/yss-validation/references/source-index.md +1 -1
- package/template/.pi/skills/yss-web-controller/SKILL.md +2 -2
- package/template/.qoder/skills/code-review/SKILL.md +1 -1
- package/template/.qoder/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.qoder/skills/lombok/SKILL.md +1 -1
- package/template/.qoder/skills/mapstruct/SKILL.md +1 -1
- package/template/.qoder/skills/prototype-review/SKILL.md +7 -6
- package/template/.qoder/skills/yss-antd-design/SKILL.md +8 -7
- package/template/.qoder/skills/yss-antd-design/references/evidence.md +11 -6
- package/template/.qoder/skills/yss-api-integration/SKILL.md +2 -2
- package/template/.qoder/skills/yss-application/SKILL.md +2 -2
- package/template/.qoder/skills/yss-audit-log/SKILL.md +2 -2
- package/template/.qoder/skills/yss-audit-log/references/source-index.md +1 -1
- package/template/.qoder/skills/yss-cache/SKILL.md +2 -2
- package/template/.qoder/skills/yss-cache/references/source-index.md +1 -1
- package/template/.qoder/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/SKILL.md +6 -6
- package/template/.qoder/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +3 -3
- package/template/.qoder/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +3 -3
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +3 -3
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +8 -8
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
- package/template/.qoder/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +8 -8
- package/template/.qoder/skills/yss-design-system/SKILL.md +6 -6
- package/template/.qoder/skills/yss-distributed-id/SKILL.md +2 -2
- package/template/.qoder/skills/yss-distributed-id/references/source-index.md +1 -1
- package/template/.qoder/skills/yss-domain/SKILL.md +1 -1
- package/template/.qoder/skills/yss-dto/SKILL.md +2 -2
- package/template/.qoder/skills/yss-dto/references/source-index.md +1 -1
- package/template/.qoder/skills/yss-excel-mvc/SKILL.md +2 -2
- package/template/.qoder/skills/yss-excel-mvc/references/source-index.md +1 -1
- package/template/.qoder/skills/yss-exception/SKILL.md +1 -1
- package/template/.qoder/skills/yss-exception/references/source-index.md +1 -1
- package/template/.qoder/skills/yss-implementation-contract-compiler/SKILL.md +55 -0
- package/template/.qoder/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
- package/template/.qoder/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
- package/template/.qoder/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +314 -0
- package/template/.qoder/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +197 -0
- package/template/.qoder/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +69 -0
- package/template/.qoder/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
- package/template/.qoder/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
- package/template/.qoder/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.qoder/skills/yss-mybatis/references/source-index.md +1 -1
- package/template/.qoder/skills/yss-page-module-development/SKILL.md +1 -1
- package/template/.qoder/skills/yss-product-lifecycle/SKILL.md +6 -6
- package/template/.qoder/skills/yss-product-lifecycle/references/matt-yss-adapter.md +5 -5
- package/template/.qoder/skills/yss-product-lifecycle/references/orchestration-contract.yaml +25 -17
- package/template/.qoder/skills/yss-product-lifecycle/references/orchestration.md +5 -5
- package/template/.qoder/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.qoder/skills/yss-prototype-stage/SKILL.md +34 -24
- package/template/.qoder/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
- package/template/.qoder/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
- package/template/.qoder/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
- package/template/.qoder/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
- package/template/.qoder/skills/yss-repository/SKILL.md +2 -2
- package/template/.qoder/skills/yss-resilience4j/SKILL.md +1 -1
- package/template/.qoder/skills/yss-resilience4j/references/source-index.md +1 -1
- package/template/.qoder/skills/yss-security-algorithm/SKILL.md +1 -1
- package/template/.qoder/skills/yss-security-algorithm/references/source-index.md +1 -1
- package/template/.qoder/skills/yss-skill-source-index-refresh/SKILL.md +63 -0
- package/template/.qoder/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
- package/template/.qoder/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +24 -0
- package/template/.qoder/skills/yss-ui/SKILL.md +2 -1
- package/template/.qoder/skills/yss-ui/assets/docs/guide/llms.md +0 -61
- package/template/.qoder/skills/yss-up-springboot3/SKILL.md +1 -1
- package/template/.qoder/skills/yss-userinfo/SKILL.md +1 -1
- package/template/.qoder/skills/yss-userinfo/references/source-index.md +1 -1
- package/template/.qoder/skills/yss-validation/SKILL.md +1 -1
- package/template/.qoder/skills/yss-validation/references/source-index.md +1 -1
- package/template/.qoder/skills/yss-web-controller/SKILL.md +2 -2
- package/template/.trae/skills/code-review/SKILL.md +1 -1
- package/template/.trae/skills/code-review/references/yss-review-standards.md +1 -1
- package/template/.trae/skills/lombok/SKILL.md +1 -1
- package/template/.trae/skills/mapstruct/SKILL.md +1 -1
- package/template/.trae/skills/prototype-review/SKILL.md +7 -6
- package/template/.trae/skills/yss-antd-design/SKILL.md +8 -7
- package/template/.trae/skills/yss-antd-design/references/evidence.md +11 -6
- package/template/.trae/skills/yss-api-integration/SKILL.md +2 -2
- package/template/.trae/skills/yss-application/SKILL.md +2 -2
- package/template/.trae/skills/yss-audit-log/SKILL.md +2 -2
- package/template/.trae/skills/yss-audit-log/references/source-index.md +1 -1
- package/template/.trae/skills/yss-cache/SKILL.md +2 -2
- package/template/.trae/skills/yss-cache/references/source-index.md +1 -1
- package/template/.trae/skills/yss-cache/scripts/check-skill-freshness.sh +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/SKILL.md +6 -6
- package/template/.trae/skills/yss-ddd-scaffold-generator/agents/openai.yaml +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +3 -3
- package/template/.trae/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +3 -3
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +3 -3
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +8 -8
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +1 -1
- package/template/.trae/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +8 -8
- package/template/.trae/skills/yss-design-system/SKILL.md +6 -6
- package/template/.trae/skills/yss-distributed-id/SKILL.md +2 -2
- package/template/.trae/skills/yss-distributed-id/references/source-index.md +1 -1
- package/template/.trae/skills/yss-domain/SKILL.md +1 -1
- package/template/.trae/skills/yss-dto/SKILL.md +2 -2
- package/template/.trae/skills/yss-dto/references/source-index.md +1 -1
- package/template/.trae/skills/yss-excel-mvc/SKILL.md +2 -2
- package/template/.trae/skills/yss-excel-mvc/references/source-index.md +1 -1
- package/template/.trae/skills/yss-exception/SKILL.md +1 -1
- package/template/.trae/skills/yss-exception/references/source-index.md +1 -1
- package/template/.trae/skills/yss-implementation-contract-compiler/SKILL.md +55 -0
- package/template/.trae/skills/yss-implementation-contract-compiler/agents/openai.yaml +4 -0
- package/template/.trae/skills/yss-implementation-contract-compiler/references/boundaries.md +134 -0
- package/template/.trae/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml +314 -0
- package/template/.trae/skills/yss-implementation-contract-compiler/references/slice-implementation-contract.md +197 -0
- package/template/.trae/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +69 -0
- package/template/.trae/skills/yss-implementation-contract-compiler/tests/compiler-scenarios.test.mjs +89 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/SKILL.md +87 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/agents/openai.yaml +4 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/assets/logback-spring.xml.template +50 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/assets/smart-doc.json.template +42 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/references/architecture.md +28 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/generate_project.mjs +136 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/generate_project.test.mjs +337 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/lib/envelope.mjs +66 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/lib/runtime.mjs +115 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/lib/storage.mjs +90 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/lib/templates.mjs +54 -0
- package/template/.trae/skills/yss-mvc-scaffold-generator/scripts/verify_project.mjs +103 -0
- package/template/.trae/skills/yss-mybatis/SKILL.md +2 -2
- package/template/.trae/skills/yss-mybatis/references/source-index.md +1 -1
- package/template/.trae/skills/yss-page-module-development/SKILL.md +1 -1
- package/template/.trae/skills/yss-product-lifecycle/SKILL.md +6 -6
- package/template/.trae/skills/yss-product-lifecycle/references/matt-yss-adapter.md +5 -5
- package/template/.trae/skills/yss-product-lifecycle/references/orchestration-contract.yaml +25 -17
- package/template/.trae/skills/yss-product-lifecycle/references/orchestration.md +5 -5
- package/template/.trae/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.trae/skills/yss-prototype-stage/SKILL.md +34 -24
- package/template/.trae/skills/yss-prototype-stage/references/product-design-adapter.md +43 -38
- package/template/.trae/skills/yss-prototype-stage/references/prototype-profile-routing.md +67 -0
- package/template/.trae/skills/yss-prototype-stage/scripts/prototype-contract.mjs +192 -103
- package/template/.trae/skills/yss-prototype-stage/tests/run-scenarios.mjs +87 -134
- package/template/.trae/skills/yss-repository/SKILL.md +2 -2
- package/template/.trae/skills/yss-resilience4j/SKILL.md +1 -1
- package/template/.trae/skills/yss-resilience4j/references/source-index.md +1 -1
- package/template/.trae/skills/yss-security-algorithm/SKILL.md +1 -1
- package/template/.trae/skills/yss-security-algorithm/references/source-index.md +1 -1
- package/template/.trae/skills/yss-skill-source-index-refresh/SKILL.md +63 -0
- package/template/.trae/skills/yss-skill-source-index-refresh/agents/openai.yaml +4 -0
- package/template/.trae/skills/yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs +24 -0
- package/template/.trae/skills/yss-ui/SKILL.md +2 -1
- package/template/.trae/skills/yss-ui/assets/docs/guide/llms.md +0 -61
- package/template/.trae/skills/yss-up-springboot3/SKILL.md +1 -1
- package/template/.trae/skills/yss-userinfo/SKILL.md +1 -1
- package/template/.trae/skills/yss-userinfo/references/source-index.md +1 -1
- package/template/.trae/skills/yss-validation/SKILL.md +1 -1
- package/template/.trae/skills/yss-validation/references/source-index.md +1 -1
- package/template/.trae/skills/yss-web-controller/SKILL.md +2 -2
- package/template/AGENTS.md +11 -11
- package/template/CONTEXT.md +8 -7
- package/template/README.md +0 -1
- package/template/docs/agents/digital-human-roles.md +3 -3
- package/template/docs/agents/digital-human-roles.yaml +3 -3
- package/template/docs/agents/skill-migrations.md +18 -5
- package/template/docs/agents/skills-maintenance.md +3 -3
- package/template/docs/agents/strategic-design-skills-integration.md +41 -0
- package/template/docs/agents/yss-skill-registry.yaml +134 -28
- package/template/docs/api/templates/openapi-draft-review-checklist.md +3 -3
- package/template/docs/architecture/templates/engineering-baseline-review-template.md +3 -3
- package/template/docs/design/README.md +7 -7
- package/template/docs/design/design.md +25 -17
- package/template/docs/design/templates/interaction-spec-template.md +4 -4
- package/template/docs/design/templates/prototype-confirmation-template.md +13 -15
- package/template/docs/design/templates/prototype-evidence-template.yaml +99 -75
- package/template/docs/design/templates/prototype-review-checklist.md +5 -4
- package/template/docs/design/templates/state-matrix-template.md +11 -0
- package/template/docs/discovery/reports/agent-governance-options.md +8 -8
- package/template/docs/process/MATT-POCOCK-ENGINEERING-SKILLS.md +1 -1
- package/template/docs/process/implementation-repo-integration.md +1 -1
- package/template/docs/process/lifecycle-artifact-map.md +4 -2
- package/template/docs/process/lifecycle-registry-baseline.json +4 -1
- package/template/docs/process/lifecycle-registry.yaml +15 -9
- package/template/docs/process/template-engineering-overview.md +2 -2
- package/template/docs/process/template-verification-profiles.yaml +27 -6
- package/template/docs/templates/build-architecture-checklist-template.md +6 -6
- package/template/docs/templates/implementation-routing-template.md +8 -8
- package/template/docs/templates/requirement-freeze-template.md +2 -2
- package/template/docs/templates/review-report-template.md +4 -4
- package/template/docs/templates/spec-template.md +1 -1
- package/template/docs/templates/vertical-slice-ticket-template.md +4 -4
- package/template/docs/user-guide/yss-ui-mcp.md +0 -2
- package/template/docs/user-guide//346/210/230/346/234/257/350/256/276/350/256/241/345/255/220/351/241/271/347/233/256/347/224/250/346/210/267/346/211/213/345/206/214.md +2 -2
- package/template/docs/user-guide//347/224/250/346/210/267/346/211/213/345/206/214.md +4 -4
- package/template/docs/user-guide//347/224/250/346/210/267/346/211/213/345/206/214/347/264/242/345/274/225.md +4 -4
- package/template/scripts/audit-yss-backend-skills +56 -0
- package/template/scripts/generate-yss-skill-boundaries +67 -0
- package/template/scripts/lib/export-skills.mjs +4 -4
- package/template/scripts/lib/implementation-contract-compiler.mjs +194 -0
- package/template/scripts/lib/scenario-checks.mjs +9 -6
- package/template/scripts/lib/skill-governance.mjs +27 -5
- package/template/scripts/lib/skill-registry.mjs +107 -63
- package/template/scripts/lib/skill-supply-chain.mjs +45 -5
- package/template/scripts/verify-repository-scope-scenarios +2 -2
- package/template/scripts/verify-retired-skill-ids +37 -0
- package/template/scripts/verify-scaffold-generator-scenarios +18 -18
- package/template/scripts/verify-template-verification-scenarios +4 -1
- package/template/scripts/verify-yss-implementation-contract-compiler-scenarios +14 -0
- package/template/skills-lock.json +87 -157
- package/template/yss-public-skills.json +4 -4
- package/template.manifest.json +0 -3
- package/template.snapshot.json +5 -5
- package/template/.agents/skills/yss-router/agents/openai.yaml +0 -4
- package/template/.agents/skills/yss-router/references/boundaries.md +0 -50
- package/template/.agents/skills/yss-source-index/agents/openai.yaml +0 -4
- package/template/.claude/skills/yss-router/agents/openai.yaml +0 -4
- package/template/.claude/skills/yss-router/references/boundaries.md +0 -50
- package/template/.claude/skills/yss-source-index/agents/openai.yaml +0 -4
- package/template/.codex/skills/yss-router/agents/openai.yaml +0 -4
- package/template/.codex/skills/yss-router/references/boundaries.md +0 -50
- package/template/.codex/skills/yss-source-index/agents/openai.yaml +0 -4
- package/template/.cursor/skills/yss-router/agents/openai.yaml +0 -4
- package/template/.cursor/skills/yss-router/references/boundaries.md +0 -50
- package/template/.cursor/skills/yss-source-index/agents/openai.yaml +0 -4
- package/template/.gemini/settings.json +0 -8
- package/template/.hermes/skills/alibaba-java-code-style/SKILL.md +0 -51
- package/template/.hermes/skills/alibaba-java-code-style/agents/openai.yaml +0 -4
- package/template/.hermes/skills/alibaba-java-code-style/references/database-engineering-design.md +0 -147
- package/template/.hermes/skills/alibaba-java-code-style/references/java-programming.md +0 -178
- package/template/.hermes/skills/alibaba-java-code-style/references/reliability-test-security.md +0 -89
- package/template/.hermes/skills/archify/LICENSE +0 -22
- package/template/.hermes/skills/archify/SKILL.md +0 -156
- package/template/.hermes/skills/archify/assets/template.html +0 -14787
- package/template/.hermes/skills/archify/bin/archify.mjs +0 -1990
- package/template/.hermes/skills/archify/bin/open-artifact.mjs +0 -86
- package/template/.hermes/skills/archify/bin/preview.mjs +0 -648
- package/template/.hermes/skills/archify/bin/visual-check.mjs +0 -829
- package/template/.hermes/skills/archify/brand-marks/README.md +0 -31
- package/template/.hermes/skills/archify/brand-marks/catalog.json +0 -131
- package/template/.hermes/skills/archify/delta/architecture-delta.mjs +0 -1214
- package/template/.hermes/skills/archify/examples/agent-run.lifecycle.json +0 -71
- package/template/.hermes/skills/archify/examples/agent-tool-call.workflow.json +0 -94
- package/template/.hermes/skills/archify/examples/async-job-roundtrip.sequence.json +0 -61
- package/template/.hermes/skills/archify/examples/brand-aware-delivery.architecture.json +0 -47
- package/template/.hermes/skills/archify/examples/cache-miss-request.sequence.json +0 -81
- package/template/.hermes/skills/archify/examples/checkout-platform.base.architecture.json +0 -31
- package/template/.hermes/skills/archify/examples/checkout-platform.head.architecture.json +0 -31
- package/template/.hermes/skills/archify/examples/dataflow-product-analytics.html +0 -14898
- package/template/.hermes/skills/archify/examples/deployment-release.lifecycle.json +0 -49
- package/template/.hermes/skills/archify/examples/event-stream.dataflow.json +0 -57
- package/template/.hermes/skills/archify/examples/incident-response.workflow.json +0 -64
- package/template/.hermes/skills/archify/examples/lifecycle-agent-run.html +0 -14847
- package/template/.hermes/skills/archify/examples/product-analytics.dataflow.json +0 -76
- package/template/.hermes/skills/archify/examples/production-deployment.architecture.json +0 -71
- package/template/.hermes/skills/archify/examples/release-delivery.workflow.json +0 -62
- package/template/.hermes/skills/archify/examples/sequence-cache-miss-request.html +0 -14913
- package/template/.hermes/skills/archify/examples/web-app-rendered.html +0 -14862
- package/template/.hermes/skills/archify/examples/web-app.architecture.json +0 -46
- package/template/.hermes/skills/archify/examples/workflow-agent-tool-call-rendered.html +0 -14904
- package/template/.hermes/skills/archify/migrations/workflow-v2.mjs +0 -279
- package/template/.hermes/skills/archify/package-lock.json +0 -149
- package/template/.hermes/skills/archify/package.json +0 -37
- package/template/.hermes/skills/archify/recipes/scenarios.mjs +0 -391
- package/template/.hermes/skills/archify/references/authoring-contract.md +0 -191
- package/template/.hermes/skills/archify/references/brand-marks.md +0 -65
- package/template/.hermes/skills/archify/references/delivery-contract.md +0 -112
- package/template/.hermes/skills/archify/references/viewer-runtime.md +0 -45
- package/template/.hermes/skills/archify/renderers/architecture/grid.mjs +0 -62
- package/template/.hermes/skills/archify/renderers/architecture/render-architecture.mjs +0 -1078
- package/template/.hermes/skills/archify/renderers/dataflow/README.md +0 -104
- package/template/.hermes/skills/archify/renderers/dataflow/render-dataflow.mjs +0 -483
- package/template/.hermes/skills/archify/renderers/lifecycle/README.md +0 -115
- package/template/.hermes/skills/archify/renderers/lifecycle/render-lifecycle.mjs +0 -561
- package/template/.hermes/skills/archify/renderers/sequence/README.md +0 -114
- package/template/.hermes/skills/archify/renderers/sequence/render-sequence.mjs +0 -453
- package/template/.hermes/skills/archify/renderers/shared/brand-marks.mjs +0 -563
- package/template/.hermes/skills/archify/renderers/shared/cli.mjs +0 -218
- package/template/.hermes/skills/archify/renderers/shared/desktop-readability.mjs +0 -26
- package/template/.hermes/skills/archify/renderers/shared/diagnostics.mjs +0 -127
- package/template/.hermes/skills/archify/renderers/shared/engineering-profiles.mjs +0 -157
- package/template/.hermes/skills/archify/renderers/shared/generated-brand-marks.mjs +0 -2003
- package/template/.hermes/skills/archify/renderers/shared/generated-validators.mjs +0 -13
- package/template/.hermes/skills/archify/renderers/shared/geometry.mjs +0 -1423
- package/template/.hermes/skills/archify/renderers/shared/i18n.mjs +0 -594
- package/template/.hermes/skills/archify/renderers/shared/layout-report.mjs +0 -40
- package/template/.hermes/skills/archify/renderers/shared/legend.mjs +0 -217
- package/template/.hermes/skills/archify/renderers/shared/output-path.mjs +0 -321
- package/template/.hermes/skills/archify/renderers/shared/repository-evidence.mjs +0 -235
- package/template/.hermes/skills/archify/renderers/shared/text-fit.mjs +0 -49
- package/template/.hermes/skills/archify/renderers/shared/utils.mjs +0 -232
- package/template/.hermes/skills/archify/renderers/shared/validator.mjs +0 -86
- package/template/.hermes/skills/archify/renderers/workflow/README.md +0 -223
- package/template/.hermes/skills/archify/renderers/workflow/render-workflow.mjs +0 -35
- package/template/.hermes/skills/archify/renderers/workflow/workflow-compiler.mjs +0 -4400
- package/template/.hermes/skills/archify/renderers/workflow/workflow-migration-geometry.mjs +0 -144
- package/template/.hermes/skills/archify/schemas/README.md +0 -211
- package/template/.hermes/skills/archify/schemas/architecture.schema.json +0 -176
- package/template/.hermes/skills/archify/schemas/common.schema.json +0 -115
- package/template/.hermes/skills/archify/schemas/dataflow.schema.json +0 -243
- package/template/.hermes/skills/archify/schemas/lifecycle.schema.json +0 -266
- package/template/.hermes/skills/archify/schemas/sequence.schema.json +0 -223
- package/template/.hermes/skills/archify/schemas/workflow.schema.json +0 -428
- package/template/.hermes/skills/archify/scripts/check-render-output.mjs +0 -835
- package/template/.hermes/skills/archify/scripts/check-update.mjs +0 -1667
- package/template/.hermes/skills/archify/scripts/generate-brand-marks.mjs +0 -141
- package/template/.hermes/skills/archify/scripts/generate-validators.mjs +0 -66
- package/template/.hermes/skills/archify/scripts/render-examples.mjs +0 -26
- package/template/.hermes/skills/archify/scripts/update-contract.mjs +0 -182
- package/template/.hermes/skills/archify/scripts/yss-safe-deliver.mjs +0 -214
- package/template/.hermes/skills/archify/skill-release.json +0 -10
- package/template/.hermes/skills/archify/test/adaptive-reader-layout.test.mjs +0 -86
- package/template/.hermes/skills/archify/test/animation.test.mjs +0 -179
- package/template/.hermes/skills/archify/test/architecture-delta.test.mjs +0 -518
- package/template/.hermes/skills/archify/test/authored-reachability.test.mjs +0 -95
- package/template/.hermes/skills/archify/test/authoring-safety-contract.test.mjs +0 -54
- package/template/.hermes/skills/archify/test/automatic-port-spread.test.mjs +0 -376
- package/template/.hermes/skills/archify/test/base-input-compatibility.test.mjs +0 -42
- package/template/.hermes/skills/archify/test/brand-marks.test.mjs +0 -654
- package/template/.hermes/skills/archify/test/chapter-delta-preview.test.mjs +0 -157
- package/template/.hermes/skills/archify/test/chapter-handoff.test.mjs +0 -97
- package/template/.hermes/skills/archify/test/chapter-rail.test.mjs +0 -86
- package/template/.hermes/skills/archify/test/checkout-line-endings.test.mjs +0 -72
- package/template/.hermes/skills/archify/test/clean-skill-staging.test.mjs +0 -244
- package/template/.hermes/skills/archify/test/cli.test.mjs +0 -809
- package/template/.hermes/skills/archify/test/community-proof-intake.test.mjs +0 -104
- package/template/.hermes/skills/archify/test/cursor-onboarding.test.mjs +0 -74
- package/template/.hermes/skills/archify/test/degraded.test.mjs +0 -161
- package/template/.hermes/skills/archify/test/delivery-contract.test.mjs +0 -52
- package/template/.hermes/skills/archify/test/desktop-reader-browser.test.mjs +0 -58
- package/template/.hermes/skills/archify/test/diagram-guide.test.mjs +0 -92
- package/template/.hermes/skills/archify/test/engineering-profile.test.mjs +0 -209
- package/template/.hermes/skills/archify/test/finder.test.mjs +0 -104
- package/template/.hermes/skills/archify/test/fixtures/automatic-routing-node-border-clearance.workflow.json +0 -40
- package/template/.hermes/skills/archify/test/fixtures/fail-migration-cleanup.mjs +0 -17
- package/template/.hermes/skills/archify/test/fixtures/issue-126/custom-widths.workflow.json +0 -18
- package/template/.hermes/skills/archify/test/fixtures/issue-126/explicit-route.workflow.json +0 -28
- package/template/.hermes/skills/archify/test/fixtures/issue-126/explicit-viewbox.workflow.json +0 -19
- package/template/.hermes/skills/archify/test/fixtures/issue-126/labels.workflow.json +0 -18
- package/template/.hermes/skills/archify/test/fixtures/v1-baseline/agent-run.lifecycle.json +0 -64
- package/template/.hermes/skills/archify/test/fixtures/v1-baseline/agent-tool-call.workflow.json +0 -88
- package/template/.hermes/skills/archify/test/fixtures/v1-baseline/cache-miss-request.sequence.json +0 -75
- package/template/.hermes/skills/archify/test/fixtures/v1-baseline/event-stream.dataflow.json +0 -57
- package/template/.hermes/skills/archify/test/fixtures/v1-baseline/product-analytics.dataflow.json +0 -70
- package/template/.hermes/skills/archify/test/fixtures/v1-baseline/production-deployment.architecture.json +0 -71
- package/template/.hermes/skills/archify/test/fixtures/v1-baseline/web-app.architecture.json +0 -41
- package/template/.hermes/skills/archify/test/fixtures/v1-workflow-700x400.workflow.json +0 -22
- package/template/.hermes/skills/archify/test/fixtures/v1-workflow-explicit-coordinates.workflow.json +0 -47
- package/template/.hermes/skills/archify/test/gallery.test.mjs +0 -130
- package/template/.hermes/skills/archify/test/generate-validators.test.mjs +0 -59
- package/template/.hermes/skills/archify/test/generated-artifact-xml.test.mjs +0 -88
- package/template/.hermes/skills/archify/test/geometry.test.mjs +0 -739
- package/template/.hermes/skills/archify/test/golden.mjs +0 -207
- package/template/.hermes/skills/archify/test/grid.test.mjs +0 -47
- package/template/.hermes/skills/archify/test/guide-page.test.mjs +0 -59
- package/template/.hermes/skills/archify/test/guide.test.mjs +0 -81
- package/template/.hermes/skills/archify/test/guided-views.test.mjs +0 -144
- package/template/.hermes/skills/archify/test/helpers/xml.mjs +0 -37
- package/template/.hermes/skills/archify/test/i18n.test.mjs +0 -422
- package/template/.hermes/skills/archify/test/intent-trace.test.mjs +0 -111
- package/template/.hermes/skills/archify/test/landing.test.mjs +0 -97
- package/template/.hermes/skills/archify/test/layout-rules.test.mjs +0 -1449
- package/template/.hermes/skills/archify/test/legend-contract.test.mjs +0 -404
- package/template/.hermes/skills/archify/test/motion-governor.test.mjs +0 -111
- package/template/.hermes/skills/archify/test/open-artifact.test.mjs +0 -118
- package/template/.hermes/skills/archify/test/ordinary-model-floor.test.mjs +0 -1024
- package/template/.hermes/skills/archify/test/output-path.test.mjs +0 -587
- package/template/.hermes/skills/archify/test/presentation.test.mjs +0 -71
- package/template/.hermes/skills/archify/test/preset-tryon.test.mjs +0 -113
- package/template/.hermes/skills/archify/test/preview-contract.test.mjs +0 -40
- package/template/.hermes/skills/archify/test/preview.test.mjs +0 -499
- package/template/.hermes/skills/archify/test/proof-aperture.test.mjs +0 -78
- package/template/.hermes/skills/archify/test/reach-share-card.test.mjs +0 -149
- package/template/.hermes/skills/archify/test/readme-showcase.test.mjs +0 -318
- package/template/.hermes/skills/archify/test/real-repository-proof.test.mjs +0 -209
- package/template/.hermes/skills/archify/test/relationship-direct-explorer.test.mjs +0 -115
- package/template/.hermes/skills/archify/test/relationship-lens.test.mjs +0 -128
- package/template/.hermes/skills/archify/test/relationship-permalink.test.mjs +0 -130
- package/template/.hermes/skills/archify/test/relationship-pulse.test.mjs +0 -122
- package/template/.hermes/skills/archify/test/release-identity.test.mjs +0 -504
- package/template/.hermes/skills/archify/test/release-package-gates.test.mjs +0 -508
- package/template/.hermes/skills/archify/test/render-output-checks.test.mjs +0 -435
- package/template/.hermes/skills/archify/test/repair-receipt.test.mjs +0 -181
- package/template/.hermes/skills/archify/test/repository-evidence.test.mjs +0 -217
- package/template/.hermes/skills/archify/test/repository-language-metadata.test.mjs +0 -52
- package/template/.hermes/skills/archify/test/route-journey.test.mjs +0 -123
- package/template/.hermes/skills/archify/test/route-probe.test.mjs +0 -114
- package/template/.hermes/skills/archify/test/route-share-card.test.mjs +0 -163
- package/template/.hermes/skills/archify/test/semantic-camera.test.mjs +0 -88
- package/template/.hermes/skills/archify/test/semantic-flow.test.mjs +0 -90
- package/template/.hermes/skills/archify/test/semantic-legend-gateway.test.mjs +0 -156
- package/template/.hermes/skills/archify/test/semantic-lens.test.mjs +0 -103
- package/template/.hermes/skills/archify/test/semantic-passport.test.mjs +0 -99
- package/template/.hermes/skills/archify/test/semantic-radar.test.mjs +0 -575
- package/template/.hermes/skills/archify/test/semantic-zoom.test.mjs +0 -86
- package/template/.hermes/skills/archify/test/sequence-column-fit.test.mjs +0 -137
- package/template/.hermes/skills/archify/test/settled-flow.test.mjs +0 -97
- package/template/.hermes/skills/archify/test/share-card-export.test.mjs +0 -132
- package/template/.hermes/skills/archify/test/site-language-continuity.test.mjs +0 -562
- package/template/.hermes/skills/archify/test/site-language-integration.mjs +0 -9
- package/template/.hermes/skills/archify/test/skill-metadata.test.mjs +0 -84
- package/template/.hermes/skills/archify/test/stable-update-manifest.test.mjs +0 -167
- package/template/.hermes/skills/archify/test/start-page.test.mjs +0 -312
- package/template/.hermes/skills/archify/test/story-beat-navigator.test.mjs +0 -103
- package/template/.hermes/skills/archify/test/story-carrier.test.mjs +0 -90
- package/template/.hermes/skills/archify/test/story-director-strip.test.mjs +0 -91
- package/template/.hermes/skills/archify/test/story-follow-camera.test.mjs +0 -103
- package/template/.hermes/skills/archify/test/story-horizon.test.mjs +0 -89
- package/template/.hermes/skills/archify/test/story-moment-link.test.mjs +0 -93
- package/template/.hermes/skills/archify/test/story-shelf.test.mjs +0 -84
- package/template/.hermes/skills/archify/test/story-trail.test.mjs +0 -81
- package/template/.hermes/skills/archify/test/toolbar-polish.test.mjs +0 -57
- package/template/.hermes/skills/archify/test/update-contract.test.mjs +0 -133
- package/template/.hermes/skills/archify/test/update-notifier.test.mjs +0 -3317
- package/template/.hermes/skills/archify/test/v1-compatibility.test.mjs +0 -329
- package/template/.hermes/skills/archify/test/vertical-edge.test.mjs +0 -68
- package/template/.hermes/skills/archify/test/viewer-chrome-layout.test.mjs +0 -872
- package/template/.hermes/skills/archify/test/visual-check.test.mjs +0 -400
- package/template/.hermes/skills/archify/test/webm-artifact.smoke.mjs +0 -1840
- package/template/.hermes/skills/archify/test/workflow-compiler-hard-contract.test.mjs +0 -2135
- package/template/.hermes/skills/archify/test/workflow-compiler.test.mjs +0 -1163
- package/template/.hermes/skills/archify/test/workflow-migration.test.mjs +0 -620
- package/template/.hermes/skills/archify/test/workflow-semantic-contract.test.mjs +0 -131
- package/template/.hermes/skills/archify/test/yss-safe-deliver.test.mjs +0 -153
- package/template/.hermes/skills/ask-matt/PHASE-BOUNDARIES.md +0 -55
- package/template/.hermes/skills/ask-matt/SKILL.md +0 -95
- package/template/.hermes/skills/ask-matt/agents/openai.yaml +0 -5
- package/template/.hermes/skills/code-review/SKILL.md +0 -122
- package/template/.hermes/skills/code-review/agents/openai.yaml +0 -3
- package/template/.hermes/skills/code-review/references/yss-review-standards.md +0 -54
- package/template/.hermes/skills/codebase-design/DEEPENING.md +0 -37
- package/template/.hermes/skills/codebase-design/DESIGN-IT-TWICE.md +0 -44
- package/template/.hermes/skills/codebase-design/SKILL.md +0 -118
- package/template/.hermes/skills/codebase-design/agents/openai.yaml +0 -3
- package/template/.hermes/skills/competitive-intelligence/SKILL.md +0 -94
- package/template/.hermes/skills/component-selection-imports/SKILL.md +0 -64
- package/template/.hermes/skills/cross-repo-implementation-routing/SKILL.md +0 -51
- package/template/.hermes/skills/diagnosing-bugs/SKILL.md +0 -138
- package/template/.hermes/skills/diagnosing-bugs/agents/openai.yaml +0 -3
- package/template/.hermes/skills/diagnosing-bugs/scripts/hitl-loop.template.sh +0 -44
- package/template/.hermes/skills/dispatching-parallel-agents/SKILL.md +0 -185
- package/template/.hermes/skills/domain-modeling/ADR-FORMAT.md +0 -47
- package/template/.hermes/skills/domain-modeling/CONTEXT-FORMAT.md +0 -60
- package/template/.hermes/skills/domain-modeling/SKILL.md +0 -74
- package/template/.hermes/skills/domain-modeling/agents/openai.yaml +0 -3
- package/template/.hermes/skills/file-export-download/SKILL.md +0 -160
- package/template/.hermes/skills/file-export-download/agents/openai.yaml +0 -4
- package/template/.hermes/skills/formily-foundation/SKILL.md +0 -176
- package/template/.hermes/skills/formily-foundation/references/examples.md +0 -486
- package/template/.hermes/skills/formily-linkage-effects/SKILL.md +0 -167
- package/template/.hermes/skills/formily-mode-slot-detail/SKILL.md +0 -137
- package/template/.hermes/skills/formily-step-flow/SKILL.md +0 -194
- package/template/.hermes/skills/frontend-commit/SKILL.md +0 -118
- package/template/.hermes/skills/frontend-commit/agents/openai.yaml +0 -7
- package/template/.hermes/skills/frontend-commit/references/scope-and-examples.md +0 -111
- package/template/.hermes/skills/grill-me/SKILL.md +0 -7
- package/template/.hermes/skills/grill-me/agents/openai.yaml +0 -5
- package/template/.hermes/skills/grill-with-docs/SKILL.md +0 -19
- package/template/.hermes/skills/grill-with-docs/agents/openai.yaml +0 -5
- package/template/.hermes/skills/grilling/SKILL.md +0 -28
- package/template/.hermes/skills/grilling/agents/openai.yaml +0 -3
- package/template/.hermes/skills/handoff/SKILL.md +0 -16
- package/template/.hermes/skills/handoff/agents/openai.yaml +0 -5
- package/template/.hermes/skills/implement/SKILL.md +0 -15
- package/template/.hermes/skills/implement/agents/openai.yaml +0 -5
- package/template/.hermes/skills/implementation-repo-onboarding/SKILL.md +0 -50
- package/template/.hermes/skills/improve-codebase-architecture/HTML-REPORT.md +0 -123
- package/template/.hermes/skills/improve-codebase-architecture/SKILL.md +0 -71
- package/template/.hermes/skills/improve-codebase-architecture/agents/openai.yaml +0 -5
- package/template/.hermes/skills/java-backend-commit/SKILL.md +0 -121
- package/template/.hermes/skills/java-backend-commit/agents/openai.yaml +0 -7
- package/template/.hermes/skills/java-backend-commit/references/scope-and-examples.md +0 -118
- package/template/.hermes/skills/llm-wiki/SKILL.md +0 -60
- package/template/.hermes/skills/llm-wiki/assets/CLAUDE.md.template +0 -26
- package/template/.hermes/skills/llm-wiki/assets/fixtures/broken-wiki/wiki/CLAUDE.md +0 -3
- package/template/.hermes/skills/llm-wiki/assets/fixtures/broken-wiki/wiki/index.md +0 -5
- package/template/.hermes/skills/llm-wiki/assets/fixtures/broken-wiki/wiki/log.md +0 -1
- package/template/.hermes/skills/llm-wiki/assets/fixtures/broken-wiki/wiki//345/255/230/345/234/250/347/232/204/351/241/265.md +0 -7
- package/template/.hermes/skills/llm-wiki/references/compile.md +0 -126
- package/template/.hermes/skills/llm-wiki/references/discover.md +0 -42
- package/template/.hermes/skills/llm-wiki/references/ingest.md +0 -36
- package/template/.hermes/skills/llm-wiki/references/lint.md +0 -54
- package/template/.hermes/skills/llm-wiki/references/query.md +0 -21
- package/template/.hermes/skills/llm-wiki/references/schema.md +0 -45
- package/template/.hermes/skills/llm-wiki/references/writing.md +0 -35
- package/template/.hermes/skills/llm-wiki/scripts/advise.mjs +0 -196
- package/template/.hermes/skills/llm-wiki/scripts/advise.test.mjs +0 -91
- package/template/.hermes/skills/llm-wiki/scripts/extract.mjs +0 -55
- package/template/.hermes/skills/llm-wiki/scripts/extract.test.mjs +0 -34
- package/template/.hermes/skills/llm-wiki/scripts/inventory.mjs +0 -174
- package/template/.hermes/skills/llm-wiki/scripts/inventory.test.mjs +0 -98
- package/template/.hermes/skills/llm-wiki/scripts/lint-wikilinks.mjs +0 -177
- package/template/.hermes/skills/llm-wiki/scripts/lint-wikilinks.test.mjs +0 -212
- package/template/.hermes/skills/lombok/SKILL.md +0 -351
- package/template/.hermes/skills/loop-me/SKILL.md +0 -32
- package/template/.hermes/skills/loop-me/agents/openai.yaml +0 -5
- package/template/.hermes/skills/maintaining-skills/SKILL.md +0 -27
- package/template/.hermes/skills/mapstruct/SKILL.md +0 -334
- package/template/.hermes/skills/migrate-to-shoehorn/SKILL.md +0 -118
- package/template/.hermes/skills/migrate-to-shoehorn/agents/openai.yaml +0 -3
- package/template/.hermes/skills/page-form-module/SKILL.md +0 -168
- package/template/.hermes/skills/page-list-module/SKILL.md +0 -137
- package/template/.hermes/skills/page-skeleton/SKILL.md +0 -76
- package/template/.hermes/skills/page-skeleton/examples/AdvancedFormPage/constant.ts +0 -34
- package/template/.hermes/skills/page-skeleton/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -75
- package/template/.hermes/skills/page-skeleton/examples/AdvancedFormPage/index.vue +0 -107
- package/template/.hermes/skills/page-skeleton/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.hermes/skills/page-skeleton/examples/AdvancedFormPage/style.less +0 -30
- package/template/.hermes/skills/page-skeleton/examples/StandardListPage/constant.ts +0 -28
- package/template/.hermes/skills/page-skeleton/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -58
- package/template/.hermes/skills/page-skeleton/examples/StandardListPage/hooks/useRuleActions.ts +0 -65
- package/template/.hermes/skills/page-skeleton/examples/StandardListPage/index.vue +0 -91
- package/template/.hermes/skills/page-skeleton/examples/StandardListPage/style.less +0 -49
- package/template/.hermes/skills/prototype/LOGIC.md +0 -67
- package/template/.hermes/skills/prototype/SKILL.md +0 -26
- package/template/.hermes/skills/prototype/UI.md +0 -112
- package/template/.hermes/skills/prototype/agents/openai.yaml +0 -3
- package/template/.hermes/skills/prototype-page-acceptance/SKILL.md +0 -62
- package/template/.hermes/skills/prototype-review/SKILL.md +0 -74
- package/template/.hermes/skills/prototype-review/agents/openai.yaml +0 -4
- package/template/.hermes/skills/resolving-merge-conflicts/SKILL.md +0 -14
- package/template/.hermes/skills/resolving-merge-conflicts/agents/openai.yaml +0 -3
- package/template/.hermes/skills/scaffold-exercises/SKILL.md +0 -106
- package/template/.hermes/skills/scaffold-exercises/agents/openai.yaml +0 -3
- package/template/.hermes/skills/setup-matt-pocock-skills/SKILL.md +0 -125
- package/template/.hermes/skills/setup-matt-pocock-skills/agents/openai.yaml +0 -5
- package/template/.hermes/skills/setup-matt-pocock-skills/domain.md +0 -51
- package/template/.hermes/skills/setup-matt-pocock-skills/issue-tracker-github.md +0 -45
- package/template/.hermes/skills/setup-matt-pocock-skills/issue-tracker-gitlab.md +0 -46
- package/template/.hermes/skills/setup-matt-pocock-skills/issue-tracker-local.md +0 -66
- package/template/.hermes/skills/setup-matt-pocock-skills/triage-labels.md +0 -15
- package/template/.hermes/skills/setup-pre-commit/SKILL.md +0 -91
- package/template/.hermes/skills/setup-pre-commit/agents/openai.yaml +0 -3
- package/template/.hermes/skills/setup-ts-deep-modules/SKILL.md +0 -102
- package/template/.hermes/skills/setup-ts-deep-modules/agents/openai.yaml +0 -5
- package/template/.hermes/skills/setup-ts-deep-modules/dependency-cruiser.config.cjs +0 -95
- package/template/.hermes/skills/tdd/SKILL.md +0 -38
- package/template/.hermes/skills/tdd/agents/openai.yaml +0 -3
- package/template/.hermes/skills/tdd/mocking.md +0 -59
- package/template/.hermes/skills/tdd/tests.md +0 -77
- package/template/.hermes/skills/teach/GLOSSARY-FORMAT.md +0 -35
- package/template/.hermes/skills/teach/LEARNING-RECORD-FORMAT.md +0 -46
- package/template/.hermes/skills/teach/MISSION-FORMAT.md +0 -31
- package/template/.hermes/skills/teach/RESOURCES-FORMAT.md +0 -32
- package/template/.hermes/skills/teach/SKILL.md +0 -140
- package/template/.hermes/skills/teach/agents/openai.yaml +0 -5
- package/template/.hermes/skills/theme-token-usage/SKILL.md +0 -123
- package/template/.hermes/skills/theme-token-usage/agents/openai.yaml +0 -4
- package/template/.hermes/skills/to-questionnaire/SKILL.md +0 -53
- package/template/.hermes/skills/to-questionnaire/agents/openai.yaml +0 -5
- package/template/.hermes/skills/to-spec/SKILL.md +0 -75
- package/template/.hermes/skills/to-spec/agents/openai.yaml +0 -5
- package/template/.hermes/skills/to-tickets/SKILL.md +0 -105
- package/template/.hermes/skills/to-tickets/agents/openai.yaml +0 -5
- package/template/.hermes/skills/triage/AGENT-BRIEF.md +0 -207
- package/template/.hermes/skills/triage/OUT-OF-SCOPE.md +0 -105
- package/template/.hermes/skills/triage/SKILL.md +0 -112
- package/template/.hermes/skills/triage/agents/openai.yaml +0 -5
- package/template/.hermes/skills/using-git-worktrees/SKILL.md +0 -202
- package/template/.hermes/skills/vue3-best-practices/SKILL.md +0 -68
- package/template/.hermes/skills/wait-what/SKILL.md +0 -7
- package/template/.hermes/skills/wait-what/agents/openai.yaml +0 -5
- package/template/.hermes/skills/wayfinder/SKILL.md +0 -128
- package/template/.hermes/skills/wayfinder/agents/openai.yaml +0 -5
- package/template/.hermes/skills/writing-beats/SKILL.md +0 -67
- package/template/.hermes/skills/writing-beats/agents/openai.yaml +0 -5
- package/template/.hermes/skills/writing-for-agents/SKILL-MECHANICS.md +0 -22
- package/template/.hermes/skills/writing-for-agents/SKILL.md +0 -81
- package/template/.hermes/skills/writing-for-agents/agents/openai.yaml +0 -3
- package/template/.hermes/skills/writing-fragments/SKILL.md +0 -79
- package/template/.hermes/skills/writing-fragments/agents/openai.yaml +0 -5
- package/template/.hermes/skills/writing-shape/SKILL.md +0 -79
- package/template/.hermes/skills/writing-shape/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yedit-table-usage/SKILL.md +0 -227
- package/template/.hermes/skills/yss-antd-design/SKILL.md +0 -34
- package/template/.hermes/skills/yss-antd-design/references/boundaries.md +0 -30
- package/template/.hermes/skills/yss-antd-design/references/cli-matrix.md +0 -38
- package/template/.hermes/skills/yss-antd-design/references/evidence.md +0 -30
- package/template/.hermes/skills/yss-antd-design/scripts/validate-frontmatter.mjs +0 -46
- package/template/.hermes/skills/yss-antd-design/scripts/validate-frontmatter.test.mjs +0 -27
- package/template/.hermes/skills/yss-api-integration/SKILL.md +0 -185
- package/template/.hermes/skills/yss-api-integration/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-application/SKILL.md +0 -54
- package/template/.hermes/skills/yss-application/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-application/references/application-layer-guide.md +0 -87
- package/template/.hermes/skills/yss-audit-log/SKILL.md +0 -67
- package/template/.hermes/skills/yss-audit-log/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-audit-log/assets/AuditLogAspect.java +0 -262
- package/template/.hermes/skills/yss-audit-log/assets/YssAuditLogPrintSubscriberImpl.java +0 -37
- package/template/.hermes/skills/yss-audit-log/assets/YssAuditLogSysManagerSubscriberImpl.java +0 -18
- package/template/.hermes/skills/yss-audit-log/assets/YssAuditPublishService.java +0 -69
- package/template/.hermes/skills/yss-audit-log/references/README.md +0 -69
- package/template/.hermes/skills/yss-audit-log/references/source-index.md +0 -43
- package/template/.hermes/skills/yss-cache/SKILL.md +0 -44
- package/template/.hermes/skills/yss-cache/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-cache/references/annotations.md +0 -39
- package/template/.hermes/skills/yss-cache/references/architecture.md +0 -25
- package/template/.hermes/skills/yss-cache/references/configuration.md +0 -34
- package/template/.hermes/skills/yss-cache/references/redis-fallback.md +0 -23
- package/template/.hermes/skills/yss-cache/references/redis-topology.md +0 -62
- package/template/.hermes/skills/yss-cache/references/serialization.md +0 -17
- package/template/.hermes/skills/yss-cache/references/source-index.md +0 -67
- package/template/.hermes/skills/yss-cache/references/troubleshooting.md +0 -33
- package/template/.hermes/skills/yss-cache/references/verification.md +0 -34
- package/template/.hermes/skills/yss-cache/scripts/check-skill-freshness.sh +0 -84
- package/template/.hermes/skills/yss-cache/scripts/inspect-cache-usage.sh +0 -96
- package/template/.hermes/skills/yss-cache/scripts/verify-cache-component.sh +0 -101
- package/template/.hermes/skills/yss-components/SKILL.md +0 -386
- package/template/.hermes/skills/yss-components/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-components/references/frontend-docs.md +0 -9
- package/template/.hermes/skills/yss-ddd-scaffold-generator/SKILL.md +0 -121
- package/template/.hermes/skills/yss-ddd-scaffold-generator/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/config/application-local.yml.template +0 -8
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/config/application.yml.template +0 -36
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/config/logback-spring.xml.template +0 -15
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/java/architecture-rules-test.java.template +0 -36
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/java/bootstrap-application.java.template +0 -15
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/adapter-pom.xml.template +0 -19
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/application-pom.xml.template +0 -52
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/bootstrap-pom.xml.template +0 -70
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/domain-pom.xml.template +0 -22
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/infrastructure-pom.xml.template +0 -54
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/parent-pom.xml.template +0 -155
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/templates/pom/web-pom.xml.template +0 -58
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/jvm.config +0 -1
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/maven.config +0 -2
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/settings.xml +0 -41
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/MavenWrapperDownloader.java +0 -117
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.jar +0 -0
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/.mvn/wrapper/maven-wrapper.properties +0 -20
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/mvnw +0 -316
- package/template/.hermes/skills/yss-ddd-scaffold-generator/assets/wrapper/mvnw.cmd +0 -188
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/ARCHITECTURE.md +0 -116
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +0 -125
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/SKILL.md +0 -31
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-adapter/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/SKILL.md +0 -8
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-application/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/SKILL.md +0 -8
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-domain/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/SKILL.md +0 -8
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-infrastructure/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md +0 -58
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/SKILL.md +0 -8
- package/template/.hermes/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-web/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs +0 -225
- package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs +0 -164
- package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaffold.mjs +0 -126
- package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/generate_scaffold.mjs +0 -363
- package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs +0 -172
- package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs +0 -112
- package/template/.hermes/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +0 -401
- package/template/.hermes/skills/yss-design-system/SKILL.md +0 -105
- package/template/.hermes/skills/yss-design-system/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-design-system/references/design-qa-theme.md +0 -64
- package/template/.hermes/skills/yss-design-system/references/design-system.md +0 -245
- package/template/.hermes/skills/yss-design-system/scripts/validate-frontmatter.mjs +0 -36
- package/template/.hermes/skills/yss-design-system/scripts/validate-frontmatter.test.mjs +0 -12
- package/template/.hermes/skills/yss-distributed-id/SKILL.md +0 -69
- package/template/.hermes/skills/yss-distributed-id/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-distributed-id/assets/AutoIdInterceptor.java +0 -246
- package/template/.hermes/skills/yss-distributed-id/assets/EnableDistributedId.java +0 -25
- package/template/.hermes/skills/yss-distributed-id/assets/LeafConf.java +0 -36
- package/template/.hermes/skills/yss-distributed-id/references/README.md +0 -51
- package/template/.hermes/skills/yss-distributed-id/references/source-index.md +0 -86
- package/template/.hermes/skills/yss-domain/SKILL.md +0 -70
- package/template/.hermes/skills/yss-domain/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-domain/references/domain-layer-guide.md +0 -101
- package/template/.hermes/skills/yss-dto/SKILL.md +0 -92
- package/template/.hermes/skills/yss-dto/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-dto/assets/CommandDTO.java +0 -8
- package/template/.hermes/skills/yss-dto/assets/PageQuery.java +0 -133
- package/template/.hermes/skills/yss-dto/assets/QueryDTO.java +0 -6
- package/template/.hermes/skills/yss-dto/assets/Result.java +0 -105
- package/template/.hermes/skills/yss-dto/references/README.md +0 -67
- package/template/.hermes/skills/yss-dto/references/openapi-wire-profile.yaml +0 -187
- package/template/.hermes/skills/yss-dto/references/source-index.md +0 -55
- package/template/.hermes/skills/yss-excel-mvc/SKILL.md +0 -66
- package/template/.hermes/skills/yss-excel-mvc/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-excel-mvc/assets/ExcelDynamicData.java +0 -66
- package/template/.hermes/skills/yss-excel-mvc/assets/RequestExcel.java +0 -33
- package/template/.hermes/skills/yss-excel-mvc/assets/RequestFastExcelArgumentResolver.java +0 -272
- package/template/.hermes/skills/yss-excel-mvc/assets/ResponseExcel.java +0 -46
- package/template/.hermes/skills/yss-excel-mvc/assets/ResponseFastExcelReturnValueHandler.java +0 -154
- package/template/.hermes/skills/yss-excel-mvc/references/README.md +0 -5
- package/template/.hermes/skills/yss-excel-mvc/references/source-index.md +0 -74
- package/template/.hermes/skills/yss-exception/SKILL.md +0 -57
- package/template/.hermes/skills/yss-exception/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-exception/references/source-index.md +0 -35
- package/template/.hermes/skills/yss-formily/SKILL.md +0 -272
- package/template/.hermes/skills/yss-formily-schema-generator/SKILL.md +0 -189
- package/template/.hermes/skills/yss-formily-schema-generator/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-formily-schema-generator/assets/java-sdk/ExampleUsage.java +0 -111
- package/template/.hermes/skills/yss-formily-schema-generator/assets/java-sdk/YssFormilyDsl.java +0 -1219
- package/template/.hermes/skills/yss-formily-schema-generator/references/workflow.md +0 -240
- package/template/.hermes/skills/yss-frontend-scaffold-generator/SKILL.md +0 -76
- package/template/.hermes/skills/yss-hook/SKILL.md +0 -200
- package/template/.hermes/skills/yss-hook/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-hook/references/frontend-docs.md +0 -10
- package/template/.hermes/skills/yss-microapp-commit/SKILL.md +0 -201
- package/template/.hermes/skills/yss-microapp-commit/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-microapp-commit/references/scope-mapping.md +0 -204
- package/template/.hermes/skills/yss-mybatis/SKILL.md +0 -77
- package/template/.hermes/skills/yss-mybatis/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-mybatis/assets/BaseRepository.java +0 -112
- package/template/.hermes/skills/yss-mybatis/assets/EntityQueryAspect.java +0 -37
- package/template/.hermes/skills/yss-mybatis/assets/MybatisBaseConfiguration.java +0 -18
- package/template/.hermes/skills/yss-mybatis/assets/PageQueryEntityConfigration.java +0 -18
- package/template/.hermes/skills/yss-mybatis/references/README.md +0 -57
- package/template/.hermes/skills/yss-mybatis/references/source-index.md +0 -93
- package/template/.hermes/skills/yss-openapi-draft-review/SKILL.md +0 -82
- package/template/.hermes/skills/yss-openapi-governance/SKILL.md +0 -130
- package/template/.hermes/skills/yss-openapi-governance/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-page-module-development/SKILL.md +0 -165
- package/template/.hermes/skills/yss-page-module-development/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-page-module-development/examples/AdvancedFormPage/constant.ts +0 -32
- package/template/.hermes/skills/yss-page-module-development/examples/AdvancedFormPage/hooks/useRuleConfig.ts +0 -158
- package/template/.hermes/skills/yss-page-module-development/examples/AdvancedFormPage/index.vue +0 -188
- package/template/.hermes/skills/yss-page-module-development/examples/AdvancedFormPage/schemas/ruleConfigSchema.ts +0 -256
- package/template/.hermes/skills/yss-page-module-development/examples/AdvancedFormPage/style.less +0 -76
- package/template/.hermes/skills/yss-page-module-development/examples/StandardListPage/constant.ts +0 -128
- package/template/.hermes/skills/yss-page-module-development/examples/StandardListPage/hooks/useQualityRuleList.ts +0 -144
- package/template/.hermes/skills/yss-page-module-development/examples/StandardListPage/hooks/useRuleActions.ts +0 -141
- package/template/.hermes/skills/yss-page-module-development/examples/StandardListPage/index.vue +0 -175
- package/template/.hermes/skills/yss-page-module-development/examples/StandardListPage/style.less +0 -83
- package/template/.hermes/skills/yss-page-module-development/references/component-map.md +0 -34
- package/template/.hermes/skills/yss-page-module-development/references/frontend-docs.md +0 -11
- package/template/.hermes/skills/yss-page-module-development/references/hooks-map.md +0 -11
- package/template/.hermes/skills/yss-page-module-development/references/utils-map.md +0 -14
- package/template/.hermes/skills/yss-product-lifecycle/SKILL.md +0 -52
- package/template/.hermes/skills/yss-product-lifecycle/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-product-lifecycle/references/artifact-dependencies.md +0 -36
- package/template/.hermes/skills/yss-product-lifecycle/references/matt-yss-adapter.md +0 -122
- package/template/.hermes/skills/yss-product-lifecycle/references/orchestration-contract.yaml +0 -865
- package/template/.hermes/skills/yss-product-lifecycle/references/orchestration.md +0 -116
- package/template/.hermes/skills/yss-product-lifecycle/references/state-model.md +0 -112
- package/template/.hermes/skills/yss-prototype-stage/SKILL.md +0 -47
- package/template/.hermes/skills/yss-prototype-stage/references/product-design-adapter.md +0 -54
- package/template/.hermes/skills/yss-prototype-stage/scripts/prototype-contract.mjs +0 -207
- package/template/.hermes/skills/yss-prototype-stage/tests/run-scenarios.mjs +0 -154
- package/template/.hermes/skills/yss-repository/SKILL.md +0 -80
- package/template/.hermes/skills/yss-repository/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-repository/references/infrastructure-layer-guide.md +0 -107
- package/template/.hermes/skills/yss-research/SKILL.md +0 -73
- package/template/.hermes/skills/yss-research/agents/openai.yaml +0 -3
- package/template/.hermes/skills/yss-research/assets/evidence-template.yaml +0 -68
- package/template/.hermes/skills/yss-research/assets/research-brief-template.md +0 -36
- package/template/.hermes/skills/yss-research/references/evidence-contract.md +0 -42
- package/template/.hermes/skills/yss-research/scripts/validate-research-package.mjs +0 -128
- package/template/.hermes/skills/yss-research/tests/run-scenarios.mjs +0 -81
- package/template/.hermes/skills/yss-resilience4j/SKILL.md +0 -46
- package/template/.hermes/skills/yss-resilience4j/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-resilience4j/references/source-index.md +0 -33
- package/template/.hermes/skills/yss-router/SKILL.md +0 -51
- package/template/.hermes/skills/yss-router/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-router/references/boundaries.md +0 -50
- package/template/.hermes/skills/yss-router/references/router-contract.yaml +0 -349
- package/template/.hermes/skills/yss-router/references/slice-implementation-contract.md +0 -185
- package/template/.hermes/skills/yss-router/references/yss-skill-execution-result.md +0 -67
- package/template/.hermes/skills/yss-security-algorithm/SKILL.md +0 -52
- package/template/.hermes/skills/yss-security-algorithm/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-security-algorithm/references/source-index.md +0 -35
- package/template/.hermes/skills/yss-source-index/SKILL.md +0 -63
- package/template/.hermes/skills/yss-source-index/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +0 -24
- package/template/.hermes/skills/yss-stage-decision/SKILL.md +0 -51
- package/template/.hermes/skills/yss-stage-decision/references/domain-strategy-contract.md +0 -26
- package/template/.hermes/skills/yss-stage-decision/references/domain-strategy.schema.json +0 -128
- package/template/.hermes/skills/yss-stage-decision/references/stage-decision-package-contract.md +0 -19
- package/template/.hermes/skills/yss-stage-decision/references/stage-decision-package.schema.json +0 -86
- package/template/.hermes/skills/yss-stage-decision/references/validation-rules.md +0 -18
- package/template/.hermes/skills/yss-stage-decision/scripts/validate-domain-strategy.mjs +0 -169
- package/template/.hermes/skills/yss-stage-decision/scripts/validate-stage-decision-package.mjs +0 -100
- package/template/.hermes/skills/yss-stage-decision/tests/fixtures/domain-strategy-approval.yaml +0 -15
- package/template/.hermes/skills/yss-stage-decision/tests/fixtures/invalid-direction.yaml +0 -58
- package/template/.hermes/skills/yss-stage-decision/tests/fixtures/invalid-stage-decision-blocker.yaml +0 -44
- package/template/.hermes/skills/yss-stage-decision/tests/fixtures/stage-decision-approval.yaml +0 -15
- package/template/.hermes/skills/yss-stage-decision/tests/fixtures/valid-stage-decision-package.yaml +0 -49
- package/template/.hermes/skills/yss-stage-decision/tests/fixtures/valid-supplier-domain.yaml +0 -108
- package/template/.hermes/skills/yss-stage-decision/tests/run-scenarios.mjs +0 -68
- package/template/.hermes/skills/yss-tactical-design/SKILL.md +0 -35
- package/template/.hermes/skills/yss-tactical-design/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-tactical-design/references/output-template.md +0 -28
- package/template/.hermes/skills/yss-tactical-design/references/tactical-design-contract.md +0 -41
- package/template/.hermes/skills/yss-tactical-design/references/tactical-design.schema.json +0 -31
- package/template/.hermes/skills/yss-tactical-design/references/validation-rules.md +0 -13
- package/template/.hermes/skills/yss-tactical-design/scripts/validate-tactical-design.mjs +0 -213
- package/template/.hermes/skills/yss-tactical-design/tests/fixtures/invalid-api-leaks-aggregate.yaml +0 -21
- package/template/.hermes/skills/yss-tactical-design/tests/fixtures/invalid-missing-consistency-policy.yaml +0 -21
- package/template/.hermes/skills/yss-tactical-design/tests/fixtures/invalid-missing-invariant.yaml +0 -21
- package/template/.hermes/skills/yss-tactical-design/tests/fixtures/invalid-stale-upstream-ref.yaml +0 -21
- package/template/.hermes/skills/yss-tactical-design/tests/fixtures/invalid-strategic-as-tactical.yaml +0 -21
- package/template/.hermes/skills/yss-tactical-design/tests/fixtures/valid-tactical-design.yaml +0 -80
- package/template/.hermes/skills/yss-tactical-design/tests/run-scenarios.mjs +0 -47
- package/template/.hermes/skills/yss-ui/SKILL.md +0 -170
- package/template/.hermes/skills/yss-ui/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-ui/assets/demos/button/auth-basic.vue +0 -24
- package/template/.hermes/skills/yss-ui/assets/demos/button/auth-dropdown.vue +0 -29
- package/template/.hermes/skills/yss-ui/assets/demos/button/permission.vue +0 -10
- package/template/.hermes/skills/yss-ui/assets/demos/button/size.vue +0 -12
- package/template/.hermes/skills/yss-ui/assets/demos/button/states.vue +0 -12
- package/template/.hermes/skills/yss-ui/assets/demos/card/basic/index.vue +0 -54
- package/template/.hermes/skills/yss-ui/assets/demos/card/basic/style.less +0 -41
- package/template/.hermes/skills/yss-ui/assets/demos/card/cover/index.vue +0 -25
- package/template/.hermes/skills/yss-ui/assets/demos/card/flexible-layout/index.vue +0 -122
- package/template/.hermes/skills/yss-ui/assets/demos/card/flexible-layout/style.less +0 -191
- package/template/.hermes/skills/yss-ui/assets/demos/card/header-extra/index.vue +0 -260
- package/template/.hermes/skills/yss-ui/assets/demos/card/header-extra/style.less +0 -124
- package/template/.hermes/skills/yss-ui/assets/demos/card/layout-metrics/constants.ts +0 -61
- package/template/.hermes/skills/yss-ui/assets/demos/card/layout-metrics/index.vue +0 -72
- package/template/.hermes/skills/yss-ui/assets/demos/card/layout-metrics/metrics-cards.vue +0 -70
- package/template/.hermes/skills/yss-ui/assets/demos/card/layout-metrics/style.less +0 -232
- package/template/.hermes/skills/yss-ui/assets/demos/card/loading/index.vue +0 -19
- package/template/.hermes/skills/yss-ui/assets/demos/card/meta/index.vue +0 -19
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/basic/constants.ts +0 -44
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/basic/hooks/useConditionBasic.ts +0 -18
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/basic/index.vue +0 -100
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/linked/constants.ts +0 -51
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/linked/hooks/useConditionLinked.ts +0 -29
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/linked/index.vue +0 -23
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/nesting-between/constants.ts +0 -35
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/nesting-between/hooks/useConditionNesting.ts +0 -25
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/nesting-between/index.vue +0 -24
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/remote/constants.ts +0 -7
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/remote/hooks/useConditionRemote.ts +0 -75
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/remote/index.vue +0 -23
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/validation/constants.ts +0 -42
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/validation/hooks/useConditionBasic.ts +0 -22
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/validation/index.vue +0 -138
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/validation-custom/constants.ts +0 -42
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/validation-custom/hooks/useConditionBasic.ts +0 -22
- package/template/.hermes/skills/yss-ui/assets/demos/condition-builder/validation-custom/index.vue +0 -134
- package/template/.hermes/skills/yss-ui/assets/demos/cron/basic/index.vue +0 -54
- package/template/.hermes/skills/yss-ui/assets/demos/cron/select/index.vue +0 -145
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/basic.vue +0 -30
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/calendar-heatmap.vue +0 -49
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/candlestick.vue +0 -30
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/dark.vue +0 -40
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/expose-methods.vue +0 -97
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/funnel.vue +0 -42
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/gauge.vue +0 -25
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/line.vue +0 -24
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/mix.vue +0 -33
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/pie.vue +0 -34
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/radar.vue +0 -38
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/ring-segment.vue +0 -77
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/scatter.vue +0 -23
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/stacked-area.vue +0 -55
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/stacked-bar.vue +0 -52
- package/template/.hermes/skills/yss-ui/assets/demos/echarts/treemap.vue +0 -30
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/all-types/hooks/useAllTypes.ts +0 -259
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/all-types/index.vue +0 -33
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/async-remote/hooks/useAsyncRemote.ts +0 -201
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/async-remote/index.vue +0 -45
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/basic/index.vue +0 -104
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/big-data/index.vue +0 -82
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/custom-rule/index.vue +0 -114
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/direct-editable/index.vue +0 -94
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/drag/index.vue +0 -125
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/filter/index.vue +0 -107
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/linkage/index.vue +0 -181
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/pagination-action/index.vue +0 -131
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/required/index.vue +0 -95
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/row-edit/index.vue +0 -220
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/row-options/index.vue +0 -165
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/slot-linkage/index.vue +0 -184
- package/template/.hermes/skills/yss-ui/assets/demos/edit-table/submit-view/index.vue +0 -107
- package/template/.hermes/skills/yss-ui/assets/demos/file-import/basic.vue +0 -54
- package/template/.hermes/skills/yss-ui/assets/demos/file-import/formily.vue +0 -42
- package/template/.hermes/skills/yss-ui/assets/demos/file-import/multiple.vue +0 -33
- package/template/.hermes/skills/yss-ui/assets/demos/file-import/result-slot.vue +0 -30
- package/template/.hermes/skills/yss-ui/assets/demos/formily/actions.vue +0 -61
- package/template/.hermes/skills/yss-ui/assets/demos/formily/align.vue +0 -56
- package/template/.hermes/skills/yss-ui/assets/demos/formily/async-validate.vue +0 -69
- package/template/.hermes/skills/yss-ui/assets/demos/formily/basic.vue +0 -317
- package/template/.hermes/skills/yss-ui/assets/demos/formily/collapse.vue +0 -104
- package/template/.hermes/skills/yss-ui/assets/demos/formily/custom-component.vue +0 -75
- package/template/.hermes/skills/yss-ui/assets/demos/formily/disabled.vue +0 -71
- package/template/.hermes/skills/yss-ui/assets/demos/formily/dynamic-array.vue +0 -74
- package/template/.hermes/skills/yss-ui/assets/demos/formily/dynamic.vue +0 -59
- package/template/.hermes/skills/yss-ui/assets/demos/formily/effects.vue +0 -117
- package/template/.hermes/skills/yss-ui/assets/demos/formily/events-inline.vue +0 -82
- package/template/.hermes/skills/yss-ui/assets/demos/formily/events-scope.vue +0 -101
- package/template/.hermes/skills/yss-ui/assets/demos/formily/grid.vue +0 -71
- package/template/.hermes/skills/yss-ui/assets/demos/formily/group.vue +0 -102
- package/template/.hermes/skills/yss-ui/assets/demos/formily/helper-slot.vue +0 -50
- package/template/.hermes/skills/yss-ui/assets/demos/formily/label-tip.vue +0 -42
- package/template/.hermes/skills/yss-ui/assets/demos/formily/linkage-multi.vue +0 -127
- package/template/.hermes/skills/yss-ui/assets/demos/formily/linkage.vue +0 -78
- package/template/.hermes/skills/yss-ui/assets/demos/formily/modes.vue +0 -72
- package/template/.hermes/skills/yss-ui/assets/demos/formily/remote-enum.vue +0 -88
- package/template/.hermes/skills/yss-ui/assets/demos/formily/slot.vue +0 -54
- package/template/.hermes/skills/yss-ui/assets/demos/formily/steps.vue +0 -135
- package/template/.hermes/skills/yss-ui/assets/demos/formily/submit-failed.vue +0 -72
- package/template/.hermes/skills/yss-ui/assets/demos/monaco/basic.vue +0 -40
- package/template/.hermes/skills/yss-ui/assets/demos/monaco/diff-basic.vue +0 -143
- package/template/.hermes/skills/yss-ui/assets/demos/monaco/fullscreen.vue +0 -84
- package/template/.hermes/skills/yss-ui/assets/demos/monaco/history-log-viewer.vue +0 -586
- package/template/.hermes/skills/yss-ui/assets/demos/monaco/log-viewer.vue +0 -260
- package/template/.hermes/skills/yss-ui/assets/demos/monaco/mock/mockLogApi.ts +0 -199
- package/template/.hermes/skills/yss-ui/assets/demos/monaco/monaco.vue +0 -66
- package/template/.hermes/skills/yss-ui/assets/demos/monaco/readonly.vue +0 -20
- package/template/.hermes/skills/yss-ui/assets/demos/monaco/resizable.vue +0 -22
- package/template/.hermes/skills/yss-ui/assets/demos/monaco/sql-schema.vue +0 -20
- package/template/.hermes/skills/yss-ui/assets/demos/monaco/switch-lang-theme.vue +0 -48
- package/template/.hermes/skills/yss-ui/assets/demos/split-pane/tree-table/constant.ts +0 -18
- package/template/.hermes/skills/yss-ui/assets/demos/split-pane/tree-table/index.vue +0 -60
- package/template/.hermes/skills/yss-ui/assets/demos/split-pane/tree-table/style.less +0 -39
- package/template/.hermes/skills/yss-ui/assets/demos/split-pane/tree-table-layout/hooks/useTreeTable.ts +0 -158
- package/template/.hermes/skills/yss-ui/assets/demos/split-pane/tree-table-layout/index.vue +0 -88
- package/template/.hermes/skills/yss-ui/assets/demos/split-pane/tree-table-layout/style.less +0 -73
- package/template/.hermes/skills/yss-ui/assets/demos/table/action/index.vue +0 -83
- package/template/.hermes/skills/yss-ui/assets/demos/table/action/style.less +0 -3
- package/template/.hermes/skills/yss-ui/assets/demos/table/action-auth/index.vue +0 -41
- package/template/.hermes/skills/yss-ui/assets/demos/table/action-slot/index.vue +0 -62
- package/template/.hermes/skills/yss-ui/assets/demos/table/action-slot/style.less +0 -36
- package/template/.hermes/skills/yss-ui/assets/demos/table/basic/hooks/useBasicTable.ts +0 -205
- package/template/.hermes/skills/yss-ui/assets/demos/table/basic/index.vue +0 -89
- package/template/.hermes/skills/yss-ui/assets/demos/table/basic/style.less +0 -28
- package/template/.hermes/skills/yss-ui/assets/demos/table/column-custom-search/hooks/useColumnCustomSearch.ts +0 -236
- package/template/.hermes/skills/yss-ui/assets/demos/table/column-custom-search/index.vue +0 -141
- package/template/.hermes/skills/yss-ui/assets/demos/table/column-custom-search/style.less +0 -48
- package/template/.hermes/skills/yss-ui/assets/demos/table/drag/index.vue +0 -42
- package/template/.hermes/skills/yss-ui/assets/demos/table/expand/action-expand.vue +0 -142
- package/template/.hermes/skills/yss-ui/assets/demos/table/expand/index.vue +0 -35
- package/template/.hermes/skills/yss-ui/assets/demos/table/filter-async/index.vue +0 -93
- package/template/.hermes/skills/yss-ui/assets/demos/table/filter-auto/index.vue +0 -99
- package/template/.hermes/skills/yss-ui/assets/demos/table/filter-custom/index.vue +0 -72
- package/template/.hermes/skills/yss-ui/assets/demos/table/filter-local/index.vue +0 -112
- package/template/.hermes/skills/yss-ui/assets/demos/table/filter-mixed/index.vue +0 -142
- package/template/.hermes/skills/yss-ui/assets/demos/table/filter-remote/constant.ts +0 -129
- package/template/.hermes/skills/yss-ui/assets/demos/table/filter-remote/hooks/useTableData.ts +0 -186
- package/template/.hermes/skills/yss-ui/assets/demos/table/filter-remote/index.vue +0 -73
- package/template/.hermes/skills/yss-ui/assets/demos/table/group-header/index.vue +0 -86
- package/template/.hermes/skills/yss-ui/assets/demos/table/group-header/style.less +0 -3
- package/template/.hermes/skills/yss-ui/assets/demos/table/header-height/index.vue +0 -29
- package/template/.hermes/skills/yss-ui/assets/demos/table/header-height/style.less +0 -9
- package/template/.hermes/skills/yss-ui/assets/demos/table/merge-cells/hooks/useMergeCells.ts +0 -183
- package/template/.hermes/skills/yss-ui/assets/demos/table/merge-cells/index.vue +0 -17
- package/template/.hermes/skills/yss-ui/assets/demos/table/merge-cells/style.less +0 -3
- package/template/.hermes/skills/yss-ui/assets/demos/table/pagination-remote/hooks/usePaginationRemote.ts +0 -106
- package/template/.hermes/skills/yss-ui/assets/demos/table/pagination-remote/index.vue +0 -24
- package/template/.hermes/skills/yss-ui/assets/demos/table/renderers/index.vue +0 -64
- package/template/.hermes/skills/yss-ui/assets/demos/table/selection-checkbox/index.vue +0 -88
- package/template/.hermes/skills/yss-ui/assets/demos/table/selection-checkbox/style.less +0 -9
- package/template/.hermes/skills/yss-ui/assets/demos/table/selection-radio/index.vue +0 -57
- package/template/.hermes/skills/yss-ui/assets/demos/table/selection-radio/style.less +0 -9
- package/template/.hermes/skills/yss-ui/assets/demos/table/transform/index.vue +0 -32
- package/template/.hermes/skills/yss-ui/assets/demos/tree/basic-left/index.vue +0 -124
- package/template/.hermes/skills/yss-ui/assets/demos/tree/datasource-group/index.vue +0 -31
- package/template/.hermes/skills/yss-ui/assets/demos/tree/multi-checkable/index.vue +0 -86
- package/template/.hermes/skills/yss-ui/assets/demos/tree/multiple-select/index.vue +0 -76
- package/template/.hermes/skills/yss-ui/assets/demos/tree/resource-list/index.vue +0 -41
- package/template/.hermes/skills/yss-ui/assets/demos/tree/search-toolbar/index.vue +0 -156
- package/template/.hermes/skills/yss-ui/assets/demos/tree/slot-icon/index.vue +0 -36
- package/template/.hermes/skills/yss-ui/assets/demos/tree/slot-switcher-icon/index.vue +0 -34
- package/template/.hermes/skills/yss-ui/assets/docs/components/button.md +0 -79
- package/template/.hermes/skills/yss-ui/assets/docs/components/card.md +0 -162
- package/template/.hermes/skills/yss-ui/assets/docs/components/conditionBuilder.md +0 -114
- package/template/.hermes/skills/yss-ui/assets/docs/components/cron.md +0 -77
- package/template/.hermes/skills/yss-ui/assets/docs/components/echarts.md +0 -110
- package/template/.hermes/skills/yss-ui/assets/docs/components/editTable.md +0 -212
- package/template/.hermes/skills/yss-ui/assets/docs/components/fileImport.md +0 -85
- package/template/.hermes/skills/yss-ui/assets/docs/components/formily.md +0 -370
- package/template/.hermes/skills/yss-ui/assets/docs/components/monaco.md +0 -369
- package/template/.hermes/skills/yss-ui/assets/docs/components/sheet.md +0 -169
- package/template/.hermes/skills/yss-ui/assets/docs/components/split-pane.md +0 -45
- package/template/.hermes/skills/yss-ui/assets/docs/components/table.md +0 -398
- package/template/.hermes/skills/yss-ui/assets/docs/components/tree.md +0 -102
- package/template/.hermes/skills/yss-ui/assets/docs/guide/gitlab-ci-integration.md +0 -166
- package/template/.hermes/skills/yss-ui/assets/docs/guide/index.md +0 -132
- package/template/.hermes/skills/yss-ui/assets/docs/guide/installation.md +0 -97
- package/template/.hermes/skills/yss-ui/assets/docs/guide/jsp.md +0 -227
- package/template/.hermes/skills/yss-ui/assets/docs/guide/llms.md +0 -295
- package/template/.hermes/skills/yss-ui/assets/docs/guide/monorepo-versioning.md +0 -149
- package/template/.hermes/skills/yss-ui/assets/docs/guide/release-workflow.md +0 -251
- package/template/.hermes/skills/yss-ui/assets/docs/hooks/use-table-height.md +0 -101
- package/template/.hermes/skills/yss-ui/assets/docs/hooks/use-tree-height.md +0 -115
- package/template/.hermes/skills/yss-ui/assets/docs/hooks/useFullscreen.md +0 -130
- package/template/.hermes/skills/yss-ui/assets/docs/hooks/useLoading.md +0 -97
- package/template/.hermes/skills/yss-ui/assets/docs/root/resources.md +0 -18
- package/template/.hermes/skills/yss-ui/assets/keyword-index.json +0 -53
- package/template/.hermes/skills/yss-ui/assets/keyword-index.md +0 -47
- package/template/.hermes/skills/yss-ui/assets/reference-index.json +0 -55
- package/template/.hermes/skills/yss-ui/assets/reference-index.md +0 -74
- package/template/.hermes/skills/yss-ui/assets/scenario-index.json +0 -50
- package/template/.hermes/skills/yss-ui/assets/scenario-index.md +0 -41
- package/template/.hermes/skills/yss-ui/references/accessibility.md +0 -23
- package/template/.hermes/skills/yss-ui/references/antdv-compatibility.md +0 -39
- package/template/.hermes/skills/yss-ui/references/checklist.md +0 -110
- package/template/.hermes/skills/yss-ui/references/component-routing.md +0 -31
- package/template/.hermes/skills/yss-ui/references/frontend-docs.md +0 -11
- package/template/.hermes/skills/yss-ui/references/migration-antdv-to-yss.md +0 -20
- package/template/.hermes/skills/yss-ui/references/quick-recipes.md +0 -280
- package/template/.hermes/skills/yss-ui/references/theme-locale-overlay.md +0 -25
- package/template/.hermes/skills/yss-ui/references/verification.md +0 -20
- package/template/.hermes/skills/yss-ui-business-page-generation/SKILL.md +0 -159
- package/template/.hermes/skills/yss-ui-business-page-generation/references/component-map.md +0 -39
- package/template/.hermes/skills/yss-ui-business-page-generation/references/hooks-map.md +0 -70
- package/template/.hermes/skills/yss-ui-business-page-generation/references/utils-map.md +0 -51
- package/template/.hermes/skills/yss-up-springboot3/SKILL.md +0 -40
- package/template/.hermes/skills/yss-up-springboot3/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-use-table-height/SKILL.md +0 -130
- package/template/.hermes/skills/yss-use-table-height/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-use-table-height/references/frontend-docs.md +0 -9
- package/template/.hermes/skills/yss-use-tree-height/SKILL.md +0 -98
- package/template/.hermes/skills/yss-use-tree-height/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-use-tree-height/references/frontend-docs.md +0 -9
- package/template/.hermes/skills/yss-userinfo/SKILL.md +0 -49
- package/template/.hermes/skills/yss-userinfo/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-userinfo/references/source-index.md +0 -34
- package/template/.hermes/skills/yss-validation/SKILL.md +0 -56
- package/template/.hermes/skills/yss-validation/agents/openai.yaml +0 -4
- package/template/.hermes/skills/yss-validation/references/source-index.md +0 -33
- package/template/.hermes/skills/yss-web-controller/SKILL.md +0 -85
- package/template/.hermes/skills/yss-web-controller/agents/openai.yaml +0 -5
- package/template/.hermes/skills/yss-web-controller/assets/templates/Controller.java.template +0 -72
- package/template/.hermes/skills/yss-web-controller/assets/templates/WebConvertor.java.template +0 -30
- package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/CreateRequest.java.template +0 -19
- package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/PageRequest.java.template +0 -21
- package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/Response.java.template +0 -18
- package/template/.hermes/skills/yss-web-controller/assets/templates/web/dto/UpdateRequest.java.template +0 -19
- package/template/.hermes/skills/yss-web-controller/references/web-adapter-layer-guide.md +0 -86
- package/template/.hermes/skills/yss-web-controller/references/web-generation-contract.schema.json +0 -97
- package/template/.hermes/skills/yss-web-controller/scripts/generate_controller.mjs +0 -226
- package/template/.hermes/skills/yss-web-controller/scripts/generate_controller.test.mjs +0 -156
- package/template/.hermes/skills/ytable-usage/SKILL.md +0 -251
- package/template/.hermes/skills/ytree-usage/SKILL.md +0 -132
- package/template/.kiro/settings/mcp.json +0 -8
- package/template/.pi/skills/yss-router/SKILL.md +0 -51
- package/template/.pi/skills/yss-router/agents/openai.yaml +0 -4
- package/template/.pi/skills/yss-router/references/boundaries.md +0 -50
- package/template/.pi/skills/yss-router/references/router-contract.yaml +0 -349
- package/template/.pi/skills/yss-router/references/slice-implementation-contract.md +0 -185
- package/template/.pi/skills/yss-router/references/yss-skill-execution-result.md +0 -67
- package/template/.pi/skills/yss-source-index/SKILL.md +0 -63
- package/template/.pi/skills/yss-source-index/agents/openai.yaml +0 -4
- package/template/.pi/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +0 -24
- package/template/.qoder/skills/yss-router/SKILL.md +0 -51
- package/template/.qoder/skills/yss-router/agents/openai.yaml +0 -4
- package/template/.qoder/skills/yss-router/references/boundaries.md +0 -50
- package/template/.qoder/skills/yss-router/references/router-contract.yaml +0 -349
- package/template/.qoder/skills/yss-router/references/slice-implementation-contract.md +0 -185
- package/template/.qoder/skills/yss-router/references/yss-skill-execution-result.md +0 -67
- package/template/.qoder/skills/yss-source-index/SKILL.md +0 -63
- package/template/.qoder/skills/yss-source-index/agents/openai.yaml +0 -4
- package/template/.qoder/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +0 -24
- package/template/.trae/skills/yss-router/SKILL.md +0 -51
- package/template/.trae/skills/yss-router/agents/openai.yaml +0 -4
- package/template/.trae/skills/yss-router/references/boundaries.md +0 -50
- package/template/.trae/skills/yss-router/references/router-contract.yaml +0 -349
- package/template/.trae/skills/yss-router/references/slice-implementation-contract.md +0 -185
- package/template/.trae/skills/yss-router/references/yss-skill-execution-result.md +0 -67
- package/template/.trae/skills/yss-source-index/SKILL.md +0 -63
- package/template/.trae/skills/yss-source-index/agents/openai.yaml +0 -4
- package/template/.trae/skills/yss-source-index/references/source-location.md +0 -18
- package/template/.trae/skills/yss-source-index/references/source-map-config.md +0 -30
- package/template/.trae/skills/yss-source-index/scripts/refresh-yss-skill-index.mjs +0 -24
- package/template/.trae/skills/yss-source-index/scripts/refresh-yss-skill-index.test.mjs +0 -15
- package/template/scripts/verify-yss-router-scenarios +0 -3
- /package/template/.agents/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-location.md +0 -0
- /package/template/.agents/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
- /package/template/.agents/skills/{yss-source-index → yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
- /package/template/.claude/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-location.md +0 -0
- /package/template/.claude/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
- /package/template/.claude/skills/{yss-source-index → yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
- /package/template/.codex/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-location.md +0 -0
- /package/template/.codex/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
- /package/template/.codex/skills/{yss-source-index → yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
- /package/template/.cursor/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-location.md +0 -0
- /package/template/.cursor/skills/{yss-source-index → yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
- /package/template/.cursor/skills/{yss-source-index → yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
- /package/template/{.hermes/skills/yss-source-index → .pi/skills/yss-skill-source-index-refresh}/references/source-location.md +0 -0
- /package/template/{.hermes/skills/yss-source-index → .pi/skills/yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
- /package/template/{.hermes/skills/yss-source-index → .pi/skills/yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
- /package/template/{.pi/skills/yss-source-index → .qoder/skills/yss-skill-source-index-refresh}/references/source-location.md +0 -0
- /package/template/{.pi/skills/yss-source-index → .qoder/skills/yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
- /package/template/{.pi/skills/yss-source-index → .qoder/skills/yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
- /package/template/{.qoder/skills/yss-source-index → .trae/skills/yss-skill-source-index-refresh}/references/source-location.md +0 -0
- /package/template/{.qoder/skills/yss-source-index → .trae/skills/yss-skill-source-index-refresh}/references/source-map-config.md +0 -0
- /package/template/{.qoder/skills/yss-source-index → .trae/skills/yss-skill-source-index-refresh}/scripts/refresh-yss-skill-index.test.mjs +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: prototype-review
|
|
3
|
-
description: Use when reviewing low-fidelity UI
|
|
3
|
+
description: Use when independently reviewing low-fidelity UI, interaction specs, or state matrices before choosing an H1/H2 prototype profile, calibrating Spec/OpenAPI, slicing, or implementation.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Prototype Review
|
|
@@ -17,7 +17,7 @@ Run this independent gate only when UI changes affect a primary user flow, navig
|
|
|
17
17
|
- `docs/.scratch/<feature>/design/<feature>-interaction-spec.md` or prototype link.
|
|
18
18
|
- State matrix, preferably based on `docs/design/templates/state-matrix-template.md`.
|
|
19
19
|
- Existing OpenAPI Draft only if the review is checking alignment; do not require OpenAPI before product design.
|
|
20
|
-
- `docs/.scratch/<feature>/verification/prototype-evidence.yaml` may be created as a pending
|
|
20
|
+
- `docs/.scratch/<feature>/verification/prototype-evidence.yaml` may be created as a pending schema v3 record, but档位构建与浏览器验证属于后续 `gate.prototype-verified`。
|
|
21
21
|
|
|
22
22
|
## Review Gates
|
|
23
23
|
|
|
@@ -26,6 +26,7 @@ Run this independent gate only when UI changes affect a primary user flow, navig
|
|
|
26
26
|
| Page coverage | All primary pages, entry points, and navigation exits are named |
|
|
27
27
|
| Flow coverage | Main path, cancel/back, failure, retry, and completion paths are explicit |
|
|
28
28
|
| State coverage | loading, empty, error, readonly, disabled, no-permission, conflict, and dirty-form states are addressed or explicitly not applicable |
|
|
29
|
+
| State transition coverage | 每个状态列出进入事件、允许转换、guard、动作和退出路径;不存在只能进入不能退出的状态 |
|
|
29
30
|
| Permission coverage | Hidden vs disabled vs rejected actions are clear |
|
|
30
31
|
| Data coverage | Visible fields, filters, sort, pagination, forms, tables, drawers, modals, and audit/version data are listed |
|
|
31
32
|
| API implication | Request/response fields, error structure, pagination/filtering, permissions, and concurrency implications can be drafted |
|
|
@@ -36,12 +37,12 @@ Run this independent gate only when UI changes affect a primary user flow, navig
|
|
|
36
37
|
|
|
37
38
|
## Decision Rules
|
|
38
39
|
|
|
39
|
-
- If a feature has UI impact and lacks page map, user flow, prototype/wireframe, or state matrix, block
|
|
40
|
+
- If a feature has UI impact and lacks page map, user flow, prototype/wireframe, or state matrix, block prototype profile selection, Spec calibration, and OpenAPI Draft.
|
|
40
41
|
- If the prototype hides business rules behind generic text such as "校验失败", require field-level errors and recovery behavior.
|
|
41
|
-
- If a page shows a user action but the OpenAPI implication list lacks endpoint/non-goal mapping, block
|
|
42
|
+
- If a page shows a user action but the OpenAPI implication list lacks endpoint/non-goal mapping, block prototype profile selection, Spec calibration, or OpenAPI Draft.
|
|
42
43
|
- If Spec P0 scope says a user can manage or configure an object but the design only shows read-only data, block until the write path or scope downgrade is explicit.
|
|
43
44
|
- If a state is intentionally out of scope, record why and who owns the decision.
|
|
44
|
-
- If implementation dependencies are unclear, route to `yss-
|
|
45
|
+
- If implementation dependencies are unclear, route to `yss-implementation-contract-compiler` only after the prototype passes this review.
|
|
45
46
|
|
|
46
47
|
## Output Contract
|
|
47
48
|
|
|
@@ -62,7 +63,7 @@ Run this independent gate only when UI changes affect a primary user flow, navig
|
|
|
62
63
|
- <requirements gaps, acceptance criteria updates, non-goals, pending decisions>
|
|
63
64
|
|
|
64
65
|
### Frontend Prototype Readiness
|
|
65
|
-
- <component states, data dependencies, frontend acceptance notes>
|
|
66
|
+
- <component states, data dependencies, profile triggers, frontend acceptance notes>
|
|
66
67
|
|
|
67
68
|
### Lifecycle Evidence
|
|
68
69
|
- <persistent review path; blockers; `gate.prototype-reviewed` candidate result>
|
|
@@ -1,27 +1,27 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: yss-antd-design
|
|
3
|
-
description: Use when
|
|
3
|
+
description: Use when an H2 React/AntD prototype needs versioned Ant Design v6 facts or an incremental fact-pack refresh. Not for H1, frontend implementation, lifecycle approval, or replacing yss-prototype-stage.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# YSS Ant Design 事实
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
只服务 H2 `flow-review` 中实际采用 React AntD 的原型,把官方 `@ant-design/cli` 与 `design.md` 收成可追溯的条件事实源。阶段合同仍是 `yss-prototype-stage`。H1 不适用;前端代码落地一律改用 `yss-ui`。
|
|
9
9
|
|
|
10
10
|
## 何时使用
|
|
11
11
|
|
|
12
|
-
- 已进入 `yss-prototype-stage`
|
|
13
|
-
-
|
|
12
|
+
- 已进入 `yss-prototype-stage` 且档位为 H2、实际采用 React AntD,需要组件 / token / demo / semantic 事实。
|
|
13
|
+
- 现有 fact pack 不满足精确版本、组件覆盖、项目 Token digest 与无新 API 疑问四项 freshness 条件,需要增量补齐。
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
不要用本技能:H1、H2 非 AntD 原型、前端实现、Vue / Ant Design Vue 生产代码、批准门禁、生成页面流、安装官方 `antd` skill,或运行 `antd setup`。
|
|
16
16
|
|
|
17
17
|
## 步骤
|
|
18
18
|
|
|
19
|
-
1.
|
|
19
|
+
1. 先检查 `docs/design/facts/antd/<exact-version>/manifest.json`。fresh 时直接引用;不 fresh 才检测 CLI,优先已安装的 `antd`,否则用 `npx -y @ant-design/cli`。记录实际 CLI 版本,不执行全局安装。
|
|
20
20
|
2. 读项目 `docs/design/design.md` 与 `docs/design/tokens/*`。
|
|
21
21
|
3. 选定 `<target_antd_version>`(项目已选的 v6;未选则先查再记录,不得依赖空仓库自动检测)。此后每次知识查询都传同一版本。
|
|
22
22
|
4. 设置 `ANTD_NO_AUTO_REPORT=1`。一律 `--format json`,对外说明用 `--lang zh`。
|
|
23
23
|
5. 查询官方 `design.md`,再按选用组件跑 `info` / `demo` / `token` / `semantic`。命令矩阵见 `references/cli-matrix.md`。
|
|
24
|
-
6. 把 JSON 路径写入证据清单。字段与 lint 适用范围见 `references/evidence.md`。
|
|
24
|
+
6. 把 fact-pack manifest 或增量 JSON 路径写入证据清单。字段与 lint 适用范围见 `references/evidence.md`。
|
|
25
25
|
7. 上游默认与项目 token 冲突时,以项目覆盖为准,并标记 `project_override_reviewed`。
|
|
26
26
|
|
|
27
27
|
## 硬规则
|
|
@@ -31,4 +31,5 @@ description: Use when 原型设计或高保真构建需要查询 Ant Design v6
|
|
|
31
31
|
- 禁止把官方 `design.md` 的默认色、圆角、间距写回项目实现或覆盖项目 token。
|
|
32
32
|
- 禁止在前端代码落地、垂直切片实现或 `yss-ui` 任务中调用本技能。
|
|
33
33
|
- 禁止把 React props / demo / hook 当作 `yss-ui` 或 Ant Design Vue API。
|
|
34
|
+
- 禁止为 H1 伪造 AntD 字段,或用 React CLI 证据宣称生产 YSS/AntDV 组件已经验证。
|
|
34
35
|
- MCP 与 `llms-full.txt` 不是门禁证据。边界见 `references/boundaries.md`。
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
# AntD 事实证据
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
目标文件:schema v3 `docs/.scratch/<feature>/verification/prototype-evidence.yaml`。本文件只说明 H2 实际使用 React AntD 时如何填 `profile_evidence.flow_review.prototype_library_facts`;H1 不得出现 AntD CLI 段,任何原型证据都不得冒充生产 YSS/AntDV 组件验证。
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## fact pack 优先
|
|
6
|
+
|
|
7
|
+
优先引用 `docs/design/facts/antd/<exact-version>/manifest.json`。只有 exact version、组件集合和项目 Token baseline digest 相同,且不存在新 API 疑问时,`source: fact-pack` 才有效;否则用 `source: cli-run` 补充增量查询。不要为模板创建空目录或 placeholder manifest。
|
|
8
|
+
|
|
9
|
+
## CLI 增量查询必填
|
|
6
10
|
|
|
7
11
|
- `antd.cli_command`:实际调用的可执行文件,`antd` 或 `npx -y @ant-design/cli`。
|
|
8
12
|
- `antd.cli_version`:本轮 `antd -V` 或等价输出,禁止写死模板默认值。
|
|
@@ -11,8 +15,9 @@
|
|
|
11
15
|
- `antd.queries.components[]`:每个选用组件的 `info_ref` / `demo_ref` / `token_ref` / `semantic_ref`。
|
|
12
16
|
- `design_baseline.project_design_ref`:`docs/design/design.md`。
|
|
13
17
|
- `design_baseline.project_override_reviewed`:上游默认与项目 token 已对照。
|
|
14
|
-
- `
|
|
15
|
-
- `
|
|
18
|
+
- `actual_antd_version`:原型 lockfile 中的实际 React `antd@6.x`,必须与查询版本一致。
|
|
19
|
+
- `manifest_ref` / `manifest_digest`:可复验的事实包或本轮查询清单。
|
|
20
|
+
- `components_covered` 与 `project_token_baseline_digest`:支持 freshness 判断。
|
|
16
21
|
|
|
17
22
|
JSON 输出存为相邻文件,证据清单只引用路径。不要把整份 `llms-full.txt` 或 MCP 对话贴进清单。
|
|
18
23
|
|
|
@@ -20,11 +25,11 @@ JSON 输出存为相邻文件,证据清单只引用路径。不要把整份 `l
|
|
|
20
25
|
|
|
21
26
|
`antd lint` 只对可解析的 React/TSX 源码有规则命中。HTML 原型会出现空 issues(假绿)或 `skippedFiles` / `parse-error` / `partial: true`。
|
|
22
27
|
|
|
23
|
-
CLI JSON 只能证明查询事实,不能单独证明原型消费了目标版本或完成了 Vue/YSS 映射。`gate.prototype-verified` 还必须通过
|
|
28
|
+
CLI JSON 只能证明查询事实,不能单独证明原型消费了目标版本或完成了 Vue/YSS 映射。`gate.prototype-verified` 还必须通过 schema v3 档位证据、Design QA、浏览器和无障碍验证。
|
|
24
29
|
|
|
25
30
|
| 产物 | `lint_applicable` | 做法 |
|
|
26
31
|
|---|---|---|
|
|
27
|
-
|
|
|
32
|
+
| 静态 HTML / H1 | `not-applicable` | 不创建 AntD 段;由 H1 合同验证 HTML |
|
|
28
33
|
| React/TSX 原型源 | `true` | 对变更文件跑 `antd lint --format json`,保存输出;无 issue 才把 `lint_passed` 设为 `true` |
|
|
29
34
|
|
|
30
35
|
浏览器验证仍由 `yss-prototype-stage` 采集,不在本技能宣布 `gate.prototype-verified` 通过。
|
|
@@ -5,9 +5,9 @@ description: 指导在 Vue3 业务列表、表单、详情和操作 Hook 中集
|
|
|
5
5
|
|
|
6
6
|
# API 集成 Skill
|
|
7
7
|
|
|
8
|
-
本目录是 API 集成的 canonical 技能;历史名称 `api-integration` 仅通过注册表和
|
|
8
|
+
本目录是 API 集成的 canonical 技能;历史名称 `api-integration` 仅通过注册表和 实现合同编译器 alias 解析,不再维护第二份内容。
|
|
9
9
|
|
|
10
|
-
目录、frontmatter、注册表 ID 和
|
|
10
|
+
目录、frontmatter、注册表 ID 和 实现合同编译器 canonical 闭包键均为 `yss-api-integration`;历史名称 `api-integration` 只在注册表和 实现合同编译器 alias 表中解析为本技能。
|
|
11
11
|
|
|
12
12
|
## 📋 目标
|
|
13
13
|
|
|
@@ -11,7 +11,7 @@ Application 层用例编排 skill。负责协调 Domain 与 Gateway,定义事
|
|
|
11
11
|
|
|
12
12
|
- 用户要实现 Application Service、用例编排或 `@Transactional` 边界。
|
|
13
13
|
- 用户要补 App 层 MapStruct Convertor 或跨聚合协调逻辑。
|
|
14
|
-
-
|
|
14
|
+
- 脚手架生成完成后进入业务实现,实现合同编译器 按 `backend_impact` 加载本 skill。
|
|
15
15
|
|
|
16
16
|
## 不适用
|
|
17
17
|
|
|
@@ -46,7 +46,7 @@ Application 层用例编排 skill。负责协调 Domain 与 Gateway,定义事
|
|
|
46
46
|
|
|
47
47
|
- 只消费批准后的 `Slice Implementation Contract` 和当前 `work_unit`。
|
|
48
48
|
- AppService 骨架可 `controlled-generation`;用例编排、事务、幂等、权限和失败行为必须 `behavior-tdd`。
|
|
49
|
-
- 按 `yss-
|
|
49
|
+
- 按 `yss-implementation-contract-compiler/references/yss-skill-execution-result.md` 返回统一 `YSS Skill Execution Result`。
|
|
50
50
|
- 发现新 API、权限、状态机或跨上下文影响时填入 `new_impacts` 并暂停。
|
|
51
51
|
|
|
52
52
|
## 按需读取
|
|
@@ -23,11 +23,11 @@ description: Use when YSS `AuditLog`, `EnableAuditLog`, audit SpEL summaries, as
|
|
|
23
23
|
|
|
24
24
|
## 源码索引
|
|
25
25
|
|
|
26
|
-
- 源码位置不要假设固定目录;先按 `yss-source-index/references/source-location.md` 定位。
|
|
26
|
+
- 源码位置不要假设固定目录;先按 `yss-skill-source-index-refresh/references/source-location.md` 定位。
|
|
27
27
|
- 当前技能索引:`references/source-index.md`
|
|
28
28
|
- 重点源码入口通常包括审计注解、启用注解、切面、发布服务、事件模型、默认订阅器。
|
|
29
29
|
|
|
30
|
-
当组件源码变化后,用 `yss-source-index` 刷新索引;刷新或读取前先按源码定位策略确认真实位置。
|
|
30
|
+
当组件源码变化后,用 `yss-skill-source-index-refresh` 刷新索引;刷新或读取前先按源码定位策略确认真实位置。
|
|
31
31
|
|
|
32
32
|
## 接入检查清单
|
|
33
33
|
|
|
@@ -5,7 +5,7 @@ Source commit: `38b556a5081e6c66c0c538cbc1ef839b19996ed3`
|
|
|
5
5
|
Source worktree: `dirty`
|
|
6
6
|
Indexed source root: resolved at refresh time; set `YSS_SOURCE_ROOT` to reproduce or refresh.
|
|
7
7
|
|
|
8
|
-
This file is generated by `yss-source-index/scripts/refresh-yss-skill-index.mjs`. Do not hand-edit generated sections.
|
|
8
|
+
This file is generated by `yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs`. Do not hand-edit generated sections.
|
|
9
9
|
|
|
10
10
|
Paths below are source path hints captured at refresh time. If they do not exist in the current workspace, locate sources using `YSS_SOURCE_ROOT`, CodeGraph, package/class names, Maven artifact names, or repository search before assuming the source is unavailable.
|
|
11
11
|
|
|
@@ -9,7 +9,7 @@ description: 用于 YSS 缓存框架的接入、配置、代码修改和故障
|
|
|
9
9
|
|
|
10
10
|
## 工作流
|
|
11
11
|
|
|
12
|
-
1. 按 `yss-source-index/references/source-location.md` 定位真实源码。当前工作区有 `.codegraph/` 时先用 CodeGraph;否则读取 [source-index.md](references/source-index.md) 后用符号或 Maven 模块搜索。
|
|
12
|
+
1. 按 `yss-skill-source-index-refresh/references/source-location.md` 定位真实源码。当前工作区有 `.codegraph/` 时先用 CodeGraph;否则读取 [source-index.md](references/source-index.md) 后用符号或 Maven 模块搜索。
|
|
13
13
|
2. 识别使用模型:Spring Cache 单后端路由、Redis 故障降级,或 JetCache local + remote。不要混用三者的行为假设。
|
|
14
14
|
3. 明确缓存名、key、TTL、更新/删除路径、跨节点一致性和序列化兼容要求。
|
|
15
15
|
4. 先检查现有依赖、启动注解、配置和注解用法,再决定修改业务代码、配置还是组件。
|
|
@@ -41,4 +41,4 @@ description: 用于 YSS 缓存框架的接入、配置、代码修改和故障
|
|
|
41
41
|
- `scripts/verify-cache-component.sh [--source-root PATH] [--consumer-root PATH --consumer-module MODULE]`:验证组件、真实 Redis、Java 8 字节码及可选消费模块。
|
|
42
42
|
- `scripts/check-skill-freshness.sh [source-root]`:比较技能契约与当前组件源码;发现漂移返回 1。
|
|
43
43
|
|
|
44
|
-
当组件源码变化后,用 `yss-source-index` 刷新 [source-index.md](references/source-index.md),再运行 freshness 检查。不要手工修改生成索引。
|
|
44
|
+
当组件源码变化后,用 `yss-skill-source-index-refresh` 刷新 [source-index.md](references/source-index.md),再运行 freshness 检查。不要手工修改生成索引。
|
|
@@ -5,7 +5,7 @@ Source commit: `38b556a5081e6c66c0c538cbc1ef839b19996ed3`
|
|
|
5
5
|
Source worktree: `dirty`
|
|
6
6
|
Indexed source root: resolved at refresh time; set `YSS_SOURCE_ROOT` to reproduce or refresh.
|
|
7
7
|
|
|
8
|
-
This file is generated by `yss-source-index/scripts/refresh-yss-skill-index.mjs`. Do not hand-edit generated sections.
|
|
8
|
+
This file is generated by `yss-skill-source-index-refresh/scripts/refresh-yss-skill-index.mjs`. Do not hand-edit generated sections.
|
|
9
9
|
|
|
10
10
|
Paths below are source path hints captured at refresh time. If they do not exist in the current workspace, locate sources using `YSS_SOURCE_ROOT`, CodeGraph, package/class names, Maven artifact names, or repository search before assuming the source is unavailable.
|
|
11
11
|
|
|
@@ -76,7 +76,7 @@ if [ "$annotation" -nt "$index" ] || [ "$properties" -nt "$index" ] || [ "$conne
|
|
|
76
76
|
fi
|
|
77
77
|
|
|
78
78
|
if [ "$fail" -ne 0 ]; then
|
|
79
|
-
echo "RESULT: skill/source contract drift detected; refresh with yss-source-index and review semantic references"
|
|
79
|
+
echo "RESULT: skill/source contract drift detected; refresh with yss-skill-source-index-refresh and review semantic references"
|
|
80
80
|
exit 1
|
|
81
81
|
fi
|
|
82
82
|
|
|
@@ -49,7 +49,7 @@ node scripts/generate_and_verify_scaffold.mjs \
|
|
|
49
49
|
--contract-id <approved-scaffold-contract-id> \
|
|
50
50
|
--contract-version <current-version> \
|
|
51
51
|
--approval-ref <lifecycle-approval-ref> \
|
|
52
|
-
--
|
|
52
|
+
--compiler-draft-ref <compiler-draft-ref> \
|
|
53
53
|
--persisted-ref <persisted-contract-ref> \
|
|
54
54
|
--contract-file /path/to/persisted-scaffold-contract.json \
|
|
55
55
|
--evidence-dir /path/to/evidence/scaffold
|
|
@@ -84,19 +84,19 @@ node scripts/run_first_slice_verification.mjs \
|
|
|
84
84
|
- Harness 内多项目布局必须使用 `apps/backend/<project>/`;`apps/backend/` 只能是生成器的父容器,`app/backend/`、`app/frontend/` 及其子路径一律拒绝。`git-submodule` gitlink、空挂载点、detached HEAD 工作树不得覆盖生成,即使传入 `--force` 也不得当成普通目录,且不得走「请显式传入 `--force`」普通目录覆盖 / rename 路径。`--output-dir` 指向 detached HEAD 子仓时不得 mkdir、staging 或生成工程。先 `git submodule update --init` 并在子仓附加分支工作树内生成。生成器必须先调用 `gitSubmoduleScaffoldViolation`,再在 exists / `--force` / rename 之前调用 `refuseGitlinkAsRegularDirectory`。
|
|
85
85
|
- 不要在 skill 里硬编码用户业务字段或真实连接信息。
|
|
86
86
|
- 生成后要检查依赖关系是否仍符合分层约束。
|
|
87
|
-
- 生成时的静态依赖由技能注册表与
|
|
87
|
+
- 生成时的静态依赖由技能注册表与 实现合同编译器 共同约束为 `yss-backend-scaffold-parent`、`alibaba-java-code-style`。生成后必须回到 实现合同编译器,并按批准切片加载 `yss-domain`、`yss-application`、`yss-repository`、`yss-mybatis`、`yss-web-controller`、`yss-dto`、`yss-exception`、`yss-validation`、`mapstruct`、`lombok`、`alibaba-java-code-style` 等实际命中的行为 skill。
|
|
88
88
|
- 当前脚手架第一阶段仅支持经过验证的 `mysql`;未提供完整模板和验证的数据库类型不得伪装成已支持。
|
|
89
89
|
- 生成后的后端工程必须使用项目根目录 `./mvnw ...` 执行构建、测试、运行和 CI 验证;不得在 README、实施记录、Ticket、Review 或 Release 中默认写裸 `mvn ...`。既有仓库确实无法使用 wrapper 时,必须记录受控例外。
|
|
90
90
|
- 原型确认后,`scaffold_status=required` 才能进入本 skill;本 skill 的生成边界是工程结构、POM、配置、Wrapper 和机械模板,不是业务实现。
|
|
91
|
-
- 脚手架合同必须携带 `contract_id`、`contract_version
|
|
91
|
+
- 脚手架合同必须携带 `contract_id`、`contract_version`、实现合同编译器 draft 引用、生命周期批准引用、持久化引用、当前版本、允许写路径、预期证据文件和验证命令;字段缺失或版本过期时阻断。
|
|
92
92
|
- 新脚手架合同只接受 schema v2,必须分别携带 `project_name`、`base_package` 和 `maven_coordinates`;后者包含项目 `group_id` / `project_version`、父 POM GAV 与 `yss_components_version`,并由 CLI 原样传入。schema v1 为 `unsupported`,直接拒绝且不自动升级。
|
|
93
93
|
- 合同 `profiles` 只支持 `target-domain-model`、`mybatis-plus`、`mysql`、`spring-boot-2.7-jdk8`、`javax`、`web`、`yss-internal`。普通 MyBatis、Boot 3、独立 client module、client-in-domain 和其他旧架构均为 `unsupported`,不提供回退分支。
|
|
94
94
|
- 运行生成器必须传入 `--contract-file`;生成器会校验合同 `status=approved`、`current_version`、`primary_skill`、`controlled-generation`、实际输出路径和固定三条验证命令,不接受仅凭任意字符串引用的放行。
|
|
95
|
-
- 生成项目必须写入 Manifest v2 `.yss/scaffold-generation.json`,记录合同 digest、Target Profile、模板 digest、下游完整 skill tree digest、脚手架父合同与
|
|
95
|
+
- 生成项目必须写入 Manifest v2 `.yss/scaffold-generation.json`,记录合同 digest、Target Profile、模板 digest、下游完整 skill tree digest、脚手架父合同与 实现合同编译器 合同 digest、generator-owned 文件 hash、严格 `generation_policy` 和完成等级;清单缺失或不一致时不得交给后续 实现合同编译器。
|
|
96
96
|
- `first-slice-verified` 只能由 `run_first_slice_verification.mjs` 写入。手工改 Manifest、只生成 Controller、只通过局部模块测试或仅有结构扫描都不能升级完成等级。
|
|
97
97
|
- 严禁把领域规则、状态机、权限、事务、复杂查询、错误映射、业务字段或用户可见行为塞进脚手架生成步骤。`./mvnw validate`、输出目录存在或“生成成功”都不等于生命周期批准、架构放行或 `ready-for-agent`。
|
|
98
98
|
- 生命周期脚手架生成必须关闭 `--with-example`,不得把 User CRUD 或业务字段当作样板。生成器严格 `initialize-only`:非空目标、`--force`、旧项目迁移和当前模板升级一律 `unsupported`。未来若支持同一 Target Profile 内的模板升级,必须另行设计和批准,当前不预留可执行承诺。
|
|
99
|
-
- 脚手架完成后,所有后续生成的后端代码必须回到 `yss-
|
|
99
|
+
- 脚手架完成后,所有后续生成的后端代码必须回到 `yss-implementation-contract-compiler`,消费批准且版本当前的 Slice Implementation Contract 和对应 YSS skill;业务行为使用 `behavior-tdd`,机械生成才使用 `controlled-generation`。
|
|
100
100
|
- `.mvn/settings.xml` 只能通过 `${env.MAVEN_REPO_USERNAME}` 和 `${env.MAVEN_REPO_PASSWORD}` 读取 Maven 仓库凭据;内部仓库构建前由 CI 或本地安全环境注入变量,禁止把 Maven 仓库用户名、明文密码或 Maven 加密密码写入 skill、模板或生成工程。
|
|
101
101
|
- `.mvn/maven.config` 必须显式加载项目级 `.mvn/settings.xml` 并激活 `yss-internal`;仓库 URL 来自 `YSS_MAVEN_REPOSITORY_URL`,凭据来自 `MAVEN_REPO_USERNAME` / `MAVEN_REPO_PASSWORD`。预检缺失时先于 Maven 执行阻断,日志必须脱敏。
|
|
102
102
|
- Domain POM 不得依赖 YSS DTO/Exception、Web Validation、Swagger 或 Jackson;DTO/Exception/OpenAPI 注解属于 Web。MapStruct 统一 `componentModel="spring"`,父 POM 负责 processor 与 `lombok-mapstruct-binding`。
|
|
@@ -118,4 +118,4 @@ node scripts/run_first_slice_verification.mjs \
|
|
|
118
118
|
- 工程骨架属于 `controlled-generation`,必须记录生成器输入、预期文件和 `./mvnw ...` 编译/测试结果;不得将业务状态机、权限、事务或查询逻辑混入生成步骤。
|
|
119
119
|
- 生成结果必须包含 `.yss/scaffold-generation.json`,并由验证器回勾该清单;清单与批准合同不一致时阻断。
|
|
120
120
|
- `./mvnw validate`、`./mvnw test`、`./mvnw package` 必须由受控工作单元真实执行,并记录每条命令的 `exit_code`、耗时、stdout/stderr 引用和执行时间;只列命令计划、生成器成功或打印输出均视为缺失证据并阻断。
|
|
121
|
-
- 生成后按统一 `YSS Skill Execution Result` 返回 changed/evidence files、实际验证结果和新增影响,再由
|
|
121
|
+
- 生成后按统一 `YSS Skill Execution Result` 返回 changed/evidence files、实际验证结果和新增影响,再由 实现合同编译器 为业务工作单元重新路由。
|
|
@@ -2,4 +2,4 @@ version: 1
|
|
|
2
2
|
interface:
|
|
3
3
|
display_name: "YSS DDD Scaffold"
|
|
4
4
|
short_description: "生成多模块 YSS DDD 后端脚手架与工程骨架规范"
|
|
5
|
-
default_prompt: "Use $yss-ddd-scaffold-generator only with a lifecycle-approved scaffold contract JSON to create a pure YSS DDD backend skeleton with domain, application, infrastructure, adapter, and bootstrap module boundaries; route all business code back through yss-
|
|
5
|
+
default_prompt: "Use $yss-ddd-scaffold-generator only with a lifecycle-approved scaffold contract JSON to create a pure YSS DDD backend skeleton with domain, application, infrastructure, adapter, and bootstrap module boundaries; route all business code back through yss-implementation-contract-compiler and the applicable YSS skills."
|
|
@@ -104,7 +104,7 @@ Domain Error -> Application propagation/translation -> Web Exception Translator
|
|
|
104
104
|
|
|
105
105
|
- Scaffold 只生成机械模块、POM、Wrapper、配置、架构规则和 Manifest,不生成生产业务 CRUD。
|
|
106
106
|
- 初始生成器为 `initialize-only`,非空目标失败。
|
|
107
|
-
- Manifest v2
|
|
107
|
+
- Manifest v2 记录模板、脚手架父合同、实现合同编译器 合同、downstream 完整 skill tree digest 与 generator-owned 文件 hash。
|
|
108
108
|
- 当前不支持模板升级,不得重跑初始生成器覆盖业务工程。未来如需支持同一 Target Profile 内的模板版本升级,必须另行设计、批准并验证。
|
|
109
109
|
|
|
110
110
|
## 5. 完成等级
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
}
|
|
40
40
|
```
|
|
41
41
|
|
|
42
|
-
以上只是关键片段;实际合同还必须满足 `yss-
|
|
42
|
+
以上只是关键片段;实际合同还必须满足 `yss-implementation-contract-compiler/references/compiler-contract.yaml` 中的完整 `scaffold_contract_schema`,由生命周期批准并持久化为当前版本。schema v1 合同为 `unsupported`,直接拒绝且不自动升级。
|
|
43
43
|
|
|
44
44
|
## 2. 一键生成并验证
|
|
45
45
|
|
|
@@ -58,7 +58,7 @@ node .agents/skills/yss-ddd-scaffold-generator/scripts/generate_and_verify_scaff
|
|
|
58
58
|
--contract-id <approved-scaffold-contract-id> \
|
|
59
59
|
--contract-version <current-version> \
|
|
60
60
|
--approval-ref <lifecycle-approval-ref> \
|
|
61
|
-
--
|
|
61
|
+
--compiler-draft-ref <compiler-draft-ref> \
|
|
62
62
|
--persisted-ref <persisted-contract-ref> \
|
|
63
63
|
--contract-file /path/to/persisted-scaffold-contract.json \
|
|
64
64
|
--evidence-dir /path/to/evidence/scaffold
|
|
@@ -102,7 +102,7 @@ metadata-service/
|
|
|
102
102
|
|
|
103
103
|
## 4. 后续路由
|
|
104
104
|
|
|
105
|
-
`empty-scaffold-verified` 不等于业务切片可实现。后续必须回到 `yss-
|
|
105
|
+
`empty-scaffold-verified` 不等于业务切片可实现。后续必须回到 `yss-implementation-contract-compiler`,消费批准且版本当前的 Slice Implementation Contract,再按影响面加载 `yss-domain`、`yss-application`、`yss-repository`、`yss-mybatis`、`yss-web-controller`、`yss-dto`、`yss-exception`、`yss-validation`、`mapstruct`、`lombok`、`alibaba-java-code-style` 等 skill,并使用 `behavior-tdd` 实现业务行为。
|
|
106
106
|
|
|
107
107
|
完成 golden first slice 后,必须运行:
|
|
108
108
|
|
|
@@ -55,4 +55,4 @@ infrastructure-+
|
|
|
55
55
|
- Web:`yss-web-controller` + `yss-dto` + `yss-exception`
|
|
56
56
|
- 横切实现约束:`yss-validation` + `mapstruct` + `lombok` + `alibaba-java-code-style`
|
|
57
57
|
|
|
58
|
-
业务代码必须回到 `yss-
|
|
58
|
+
业务代码必须回到 `yss-implementation-contract-compiler`,消费批准且版本当前的 Slice Implementation Contract,并采用 `behavior-tdd`;脚手架只生成机械工程资产。
|
package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-compatibility.test.mjs
CHANGED
|
@@ -22,7 +22,7 @@ function scaffoldContract(output) {
|
|
|
22
22
|
contract_version: 1,
|
|
23
23
|
scaffold_request_id: "golden-request-1",
|
|
24
24
|
status: "approved",
|
|
25
|
-
|
|
25
|
+
compiler_draft_ref: "compiler-golden-1",
|
|
26
26
|
lifecycle_approval_ref: "approval-golden-1",
|
|
27
27
|
persisted_ref: "persisted-golden-1",
|
|
28
28
|
current_version: 1,
|
|
@@ -38,7 +38,7 @@ function scaffoldContract(output) {
|
|
|
38
38
|
expected_evidence_files: [".yss/scaffold-generation.json"],
|
|
39
39
|
verification_commands: ["./mvnw validate", "./mvnw test", "./mvnw package"],
|
|
40
40
|
approval: { approval_ref: "approval-golden-1", approver: "maintainer", persisted_ref: "persisted-golden-1", current_version: 1 },
|
|
41
|
-
work_unit: { id: "golden-unit-1", behavior: "scaffold", primary_skill: "yss-ddd-scaffold-generator", supporting_skills: ["yss-
|
|
41
|
+
work_unit: { id: "golden-unit-1", behavior: "scaffold", primary_skill: "yss-ddd-scaffold-generator", supporting_skills: ["yss-implementation-contract-compiler"], tdd_mode: "controlled-generation", allowed_write_paths: ["."], expected_evidence: ["manifest"], verification_commands: ["./mvnw validate", "./mvnw test", "./mvnw package"], controlled_generation: true },
|
|
42
42
|
generation_policy: { mode: "initialize-only", existing_target: "unsupported", old_project_migration: "unsupported", template_upgrade: "unsupported" }
|
|
43
43
|
};
|
|
44
44
|
}
|
|
@@ -56,7 +56,7 @@ async function prepareGoldenProject(t) {
|
|
|
56
56
|
await mkdir(output);
|
|
57
57
|
const contractFile = path.join(root, "scaffold-contract.json");
|
|
58
58
|
await writeFile(contractFile, `${JSON.stringify(scaffoldContract(output), null, 2)}\n`);
|
|
59
|
-
const args = ["--project-name", "golden-service", "--base-package", "com.yss.golden", "--output-dir", output, "--database", "mysql", "--contract-id", "golden-scaffold-1", "--contract-version", "1", "--approval-ref", "approval-golden-1", "--
|
|
59
|
+
const args = ["--project-name", "golden-service", "--base-package", "com.yss.golden", "--output-dir", output, "--database", "mysql", "--contract-id", "golden-scaffold-1", "--contract-version", "1", "--approval-ref", "approval-golden-1", "--compiler-draft-ref", "compiler-golden-1", "--persisted-ref", "persisted-golden-1", "--contract-file", contractFile, "--group-id", "com.yss.datamiddle", "--project-version", "1.0.0-SNAPSHOT", "--parent-group-id", "com.yss.datamiddle", "--parent-artifact-id", "yss-datamiddle-parent", "--parent-version", "2.0.0-SNAPSHOT", "--yss-components-version", "2.0.0-SNAPSHOT"];
|
|
60
60
|
const generated = await execute(process.execPath, [generator, ...args]);
|
|
61
61
|
assert.equal(generated.code, 0, generated.stderr);
|
|
62
62
|
const project = path.join(output, "golden-service");
|
package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/first-slice-verification.test.mjs
CHANGED
|
@@ -35,7 +35,7 @@ async function readiness() {
|
|
|
35
35
|
downstream_skills: downstreamSkills,
|
|
36
36
|
contracts: {
|
|
37
37
|
scaffold_parent: await digest(".agents/skills/yss-ddd-scaffold-generator/references/yss-backend-scaffold-parent/SKILL.md"),
|
|
38
|
-
|
|
38
|
+
compiler_contract: await digest(".agents/skills/yss-implementation-contract-compiler/references/compiler-contract.yaml")
|
|
39
39
|
},
|
|
40
40
|
architecture_ruleset: "b".repeat(64)
|
|
41
41
|
};
|
|
@@ -68,7 +68,7 @@ async function fixture({ omitGatewayImpl = false, omitReadiness = false } = {})
|
|
|
68
68
|
approval_ref: "approval-1",
|
|
69
69
|
approver: "maintainer",
|
|
70
70
|
lifecycle_approval_ref: "approval-1",
|
|
71
|
-
|
|
71
|
+
compiler_draft_ref: "router-1",
|
|
72
72
|
persisted_ref: "persisted-1",
|
|
73
73
|
contract_file_ref: contractPath,
|
|
74
74
|
current_version: 1,
|
|
@@ -135,7 +135,7 @@ test("refuses first-slice promotion when downstream skill or contract digests ar
|
|
|
135
135
|
const report = await runFirstSliceVerification(data.project, data.evidence, data.contractPath, environment);
|
|
136
136
|
assert.equal(report.status, "failed");
|
|
137
137
|
assert.ok(report.downstream_skill_drift.includes("yss-domain:digest-missing"));
|
|
138
|
-
assert.ok(report.downstream_skill_drift.includes("
|
|
138
|
+
assert.ok(report.downstream_skill_drift.includes("compiler_contract:digest-missing"));
|
|
139
139
|
const manifest = JSON.parse(await readFile(data.manifestPath, "utf8"));
|
|
140
140
|
assert.equal(manifest.completion_level, "empty-scaffold-verified");
|
|
141
141
|
});
|
|
@@ -46,7 +46,7 @@ function sha256(content) { return createHash("sha256").update(content).digest("h
|
|
|
46
46
|
function usage(error) {
|
|
47
47
|
const text = `YSS DDD 脚手架生成器\n\n` +
|
|
48
48
|
`用法: node scripts/generate_scaffold.mjs --project-name <kebab-case> --base-package <package> --output-dir <dir> --contract-file <json> [选项]\n\n` +
|
|
49
|
-
`必填合同元数据: --contract-id --contract-version --approval-ref --
|
|
49
|
+
`必填合同元数据: --contract-id --contract-version --approval-ref --compiler-draft-ref --persisted-ref\n` +
|
|
50
50
|
`Maven 坐标: --group-id --project-version --parent-group-id --parent-artifact-id --parent-version --yss-components-version\n` +
|
|
51
51
|
`固定 Profile: target-domain-model / mybatis-plus / spring-boot-2.7-jdk8 / javax / web / yss-internal\n` +
|
|
52
52
|
`本生成器严格 initialize-only;--force 和任何已有项目目标均为 unsupported。\n` +
|
|
@@ -60,7 +60,7 @@ function parseArgs(argv) {
|
|
|
60
60
|
const mapping = new Map([
|
|
61
61
|
["--project-name", "projectName"], ["--base-package", "basePackage"], ["--output-dir", "outputDir"],
|
|
62
62
|
["--database", "database"], ["--contract-id", "contractId"], ["--contract-version", "contractVersion"],
|
|
63
|
-
["--approval-ref", "approvalRef"], ["--
|
|
63
|
+
["--approval-ref", "approvalRef"], ["--compiler-draft-ref", "compilerDraftRef"], ["--persisted-ref", "persistedRef"],
|
|
64
64
|
["--contract-file", "contractFile"],
|
|
65
65
|
["--group-id", "groupId"], ["--project-version", "projectVersion"], ["--parent-group-id", "parentGroupId"],
|
|
66
66
|
["--parent-artifact-id", "parentArtifactId"], ["--parent-version", "parentVersion"],
|
|
@@ -82,7 +82,7 @@ function parseArgs(argv) {
|
|
|
82
82
|
}
|
|
83
83
|
if (options.help) return options;
|
|
84
84
|
for (const [flag, key] of mapping) {
|
|
85
|
-
if (["database", "overwriteScope", "rollbackRef", "contractId", "contractVersion", "approvalRef", "
|
|
85
|
+
if (["database", "overwriteScope", "rollbackRef", "contractId", "contractVersion", "approvalRef", "compilerDraftRef", "persistedRef", "groupId", "projectVersion", "parentGroupId", "parentArtifactId", "parentVersion", "yssComponentsVersion"].includes(key)) continue;
|
|
86
86
|
if (!options[key]) fail(`缺少必填参数: ${flag}`);
|
|
87
87
|
}
|
|
88
88
|
if (options.database !== "mysql") fail("参数 --database 只支持 mysql");
|
|
@@ -200,17 +200,17 @@ class ScaffoldGenerator {
|
|
|
200
200
|
let contract; try { contract = JSON.parse(contractText); } catch { fail(`脚手架合同文件无法读取或不是合法 JSON: ${this.contractFile}`); }
|
|
201
201
|
if (!contract || Array.isArray(contract) || typeof contract !== "object") fail("脚手架合同必须是 JSON 对象");
|
|
202
202
|
if (contract.schema_version !== 2) fail(`unsupported: scaffold contract schema_version=${contract.schema_version};只接受 Target Profile schema v2,不提供自动升级`);
|
|
203
|
-
const requiredMetadata = [["--contract-id", this.options.contractId], ["--contract-version", this.options.contractVersion], ["--approval-ref", this.options.approvalRef], ["--
|
|
203
|
+
const requiredMetadata = [["--contract-id", this.options.contractId], ["--contract-version", this.options.contractVersion], ["--approval-ref", this.options.approvalRef], ["--compiler-draft-ref", this.options.compilerDraftRef], ["--persisted-ref", this.options.persistedRef]];
|
|
204
204
|
const missing = requiredMetadata.filter(([, value]) => !isPresent(value)).map(([flag]) => flag);
|
|
205
205
|
if (missing.length) fail(`生成项目必须提供当前已批准脚手架合同的完整元数据: ${missing.join(", ")}`);
|
|
206
|
-
const required = ["schema_version", "contract_id", "contract_version", "scaffold_request_id", "status", "
|
|
206
|
+
const required = ["schema_version", "contract_id", "contract_version", "scaffold_request_id", "status", "compiler_draft_ref", "lifecycle_approval_ref", "persisted_ref", "current_version", "implementation_repository", "backend_repository", "scaffold_status", "project_name", "target_output_dir", "base_package", "maven_coordinates", "profiles", "allowed_write_paths", "expected_evidence_files", "verification_commands", "approval", "work_unit", "generation_policy"];
|
|
207
207
|
const missingFields = required.filter((field) => !isPresent(contract[field]));
|
|
208
208
|
if (missingFields.length) fail(`脚手架合同缺少结构化字段: ${missingFields.join(", ")}`);
|
|
209
209
|
if (contract.status !== "approved") fail("脚手架合同必须已由生命周期批准");
|
|
210
210
|
if (contract.contract_id !== this.options.contractId) fail("--contract-id 与脚手架合同不一致");
|
|
211
211
|
if (contract.contract_version !== this.options.contractVersion) fail("--contract-version 与脚手架合同不一致");
|
|
212
212
|
if (contract.current_version !== contract.contract_version) fail("脚手架合同版本不是当前版本");
|
|
213
|
-
if (contract.
|
|
213
|
+
if (contract.compiler_draft_ref !== this.options.compilerDraftRef) fail("--compiler-draft-ref 与脚手架合同不一致");
|
|
214
214
|
if (contract.persisted_ref !== this.options.persistedRef) fail("--persisted-ref 与脚手架合同不一致");
|
|
215
215
|
if (contract.lifecycle_approval_ref !== this.options.approvalRef) fail("--approval-ref 与脚手架合同不一致");
|
|
216
216
|
if (contract.scaffold_status !== "required") fail("脚手架生成器只接受 scaffold_status=required");
|
|
@@ -340,8 +340,8 @@ class ScaffoldGenerator {
|
|
|
340
340
|
downstream[skill] = await isFile(path.join(skillRoot, "SKILL.md")) ? await treeDigest(skillRoot) : "unavailable";
|
|
341
341
|
}
|
|
342
342
|
const scaffoldParent = path.join(SKILL_ROOT, "references", "yss-backend-scaffold-parent", "SKILL.md");
|
|
343
|
-
const
|
|
344
|
-
const manifest = { schema_version: 2, contract_id: this.options.contractId, contract_version: this.options.contractVersion, scaffold_request_id: contract.scaffold_request_id, approval_ref: this.options.approvalRef,
|
|
343
|
+
const compilerContract = path.join(REPOSITORY_ROOT, ".agents", "skills", "yss-implementation-contract-compiler", "references", "compiler-contract.yaml");
|
|
344
|
+
const manifest = { schema_version: 2, contract_id: this.options.contractId, contract_version: this.options.contractVersion, scaffold_request_id: contract.scaffold_request_id, approval_ref: this.options.approvalRef, compiler_draft_ref: this.options.compilerDraftRef, persisted_ref: this.options.persistedRef, contract_file_ref: this.contractFile, contract_digest: this.contractDigest, lifecycle_approval_ref: contract.lifecycle_approval_ref, current_version: contract.current_version, approver: contract.approval.approver, allowed_write_paths: contract.allowed_write_paths, expected_evidence_files: contract.expected_evidence_files, project_name: this.projectName, base_package: this.basePackage, bootstrap_main_class: `${this.basePackage}.${this.applicationClassName}`, bootstrap_main_source: this.bootstrapMainSource, maven_coordinates: this.mavenCoordinates, maven_coordinates_source: this.mavenCoordinatesSource, profiles: this.profiles, database: this.options.database, generation_mode: "controlled-generation", completion_level: "generated", generator: { id: "yss-ddd-scaffold-generator", template_digest: await treeDigest(path.join(SKILL_ROOT, "assets")) }, ownership: { generated_files: generatedFiles, user_owned_globs: ["**/src/main/java/**", "**/src/test/java/**", "db/**"] }, readiness: { downstream_skills: downstream, contracts: { scaffold_parent: sha256(await readFile(scaffoldParent)), compiler_contract: sha256(await readFile(compilerContract)) }, architecture_ruleset: sha256(await readFile(path.join(this.javaTemplateDir, "architecture-rules-test.java.template"))) }, generation_policy: { mode: "initialize-only", existing_target: "unsupported", old_project_migration: "unsupported", template_upgrade: "unsupported" }, verification_commands: COMMANDS, generated_at: isoNow() };
|
|
345
345
|
await writeText(path.join(this.projectRoot, ".yss", "scaffold-generation.json"), `${JSON.stringify(manifest, null, 2)}\n`); console.log(" ✓ .yss/scaffold-generation.json");
|
|
346
346
|
}
|
|
347
347
|
async copyWrapperFiles() {
|
package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_first_slice_verification.mjs
CHANGED
|
@@ -96,7 +96,7 @@ async function downstreamDrift(manifest) {
|
|
|
96
96
|
const contracts = manifest.readiness?.contracts ?? {};
|
|
97
97
|
const contractFiles = {
|
|
98
98
|
scaffold_parent: path.join(REPOSITORY_ROOT, ".agents", "skills", "yss-ddd-scaffold-generator", "references", "yss-backend-scaffold-parent", "SKILL.md"),
|
|
99
|
-
|
|
99
|
+
compiler_contract: path.join(REPOSITORY_ROOT, ".agents", "skills", "yss-implementation-contract-compiler", "references", "compiler-contract.yaml")
|
|
100
100
|
};
|
|
101
101
|
for (const [name, target] of Object.entries(contractFiles)) {
|
|
102
102
|
const expected = contracts[name];
|
package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/run_scaffold_verification.mjs
CHANGED
|
@@ -38,7 +38,7 @@ function classifyFailure(phase, outcome) {
|
|
|
38
38
|
function parseArgs(argv) { const result = {}; for (let index = 0; index < argv.length; index += 1) { let token = argv[index]; if (token === "--help" || token === "-h") { result.help = true; continue; } const equals = token.indexOf("="); let value; if (equals !== -1) { value = token.slice(equals + 1); token = token.slice(0, equals); } if (!["--project-root", "--evidence-dir"].includes(token)) throw new Error(`不支持的参数: ${token}`); if (value === undefined) value = argv[++index]; if (!value || value.startsWith("--")) throw new Error(`参数 ${token} 缺少值`); result[token === "--project-root" ? "projectRoot" : "evidenceDir"] = path.resolve(value); } if (result.help) return result; if (!result.projectRoot || !result.evidenceDir) throw new Error("必须提供 --project-root 和 --evidence-dir"); return result; }
|
|
39
39
|
function validateManifest(manifest) {
|
|
40
40
|
if (manifest.schema_version !== 2) throw new Error(`unsupported: scaffold Manifest schema_version=${manifest.schema_version};只验证 Target Profile v2`);
|
|
41
|
-
const required = ["schema_version", "contract_id", "contract_version", "scaffold_request_id", "contract_digest", "profiles", "ownership", "readiness", "generation_policy", "completion_level", "approval_ref", "approver", "lifecycle_approval_ref", "
|
|
41
|
+
const required = ["schema_version", "contract_id", "contract_version", "scaffold_request_id", "contract_digest", "profiles", "ownership", "readiness", "generation_policy", "completion_level", "approval_ref", "approver", "lifecycle_approval_ref", "compiler_draft_ref", "persisted_ref", "contract_file_ref", "current_version", "allowed_write_paths", "expected_evidence_files", "verification_commands", "generation_mode"];
|
|
42
42
|
const missing = required.filter((field) => manifest[field] === undefined || manifest[field] === null || manifest[field] === "");
|
|
43
43
|
if (manifest.generation_mode !== "controlled-generation" || missing.length) throw new Error(`脚手架生成元数据清单不完整或不是 controlled-generation: ${missing.join(", ")}`);
|
|
44
44
|
if (manifest.profiles.architecture !== "target-domain-model" || manifest.generation_policy.mode !== "initialize-only" || manifest.generation_policy.existing_target !== "unsupported" || manifest.generation_policy.old_project_migration !== "unsupported" || manifest.generation_policy.template_upgrade !== "unsupported") throw new Error("Manifest v2 必须声明 Target Profile 与严格 initialize-only;已有目标、旧项目迁移和模板升级均须为 unsupported");
|
|
@@ -35,7 +35,7 @@ function contract(outputDir, overrides = {}) {
|
|
|
35
35
|
contract_version: 1,
|
|
36
36
|
scaffold_request_id: "scaffold-request-1",
|
|
37
37
|
status: "approved",
|
|
38
|
-
|
|
38
|
+
compiler_draft_ref: "compiler-1",
|
|
39
39
|
lifecycle_approval_ref: "approval-1",
|
|
40
40
|
persisted_ref: "persisted-1",
|
|
41
41
|
current_version: 1,
|
|
@@ -64,12 +64,12 @@ function contract(outputDir, overrides = {}) {
|
|
|
64
64
|
expected_evidence_files: [".yss/scaffold-generation.json"],
|
|
65
65
|
verification_commands: ["./mvnw validate", "./mvnw test", "./mvnw package"],
|
|
66
66
|
approval: { approval_ref: "approval-1", approver: "reviewer", persisted_ref: "persisted-1", current_version: 1 },
|
|
67
|
-
work_unit: { id: "unit-1", behavior: "scaffold", primary_skill: "yss-ddd-scaffold-generator", supporting_skills: ["yss-
|
|
67
|
+
work_unit: { id: "unit-1", behavior: "scaffold", primary_skill: "yss-ddd-scaffold-generator", supporting_skills: ["yss-implementation-contract-compiler"], tdd_mode: "controlled-generation", allowed_write_paths: ["."], expected_evidence: ["manifest"], verification_commands: ["./mvnw validate", "./mvnw test", "./mvnw package"], controlled_generation: true },
|
|
68
68
|
generation_policy: { mode: "initialize-only", existing_target: "unsupported", old_project_migration: "unsupported", template_upgrade: "unsupported" },
|
|
69
69
|
...overrides
|
|
70
70
|
};
|
|
71
71
|
}
|
|
72
|
-
async function fixture(contractOverrides = {}) { const root = await mkdtemp(path.join(os.tmpdir(), "yss-scaffold-node-")); const output = path.join(root, "implementation"); await mkdir(output); const contractFile = path.join(root, "contract.json"); await writeFile(contractFile, `${JSON.stringify(contract(output, contractOverrides), null, 2)}\n`); return { root, output, contractFile, args: ["--project-name", "demo-service", "--base-package", "com.yss.demo", "--output-dir", output, "--database", "mysql", "--contract-id", "scaffold-1", "--contract-version", "1", "--approval-ref", "approval-1", "--
|
|
72
|
+
async function fixture(contractOverrides = {}) { const root = await mkdtemp(path.join(os.tmpdir(), "yss-scaffold-node-")); const output = path.join(root, "implementation"); await mkdir(output); const contractFile = path.join(root, "contract.json"); await writeFile(contractFile, `${JSON.stringify(contract(output, contractOverrides), null, 2)}\n`); return { root, output, contractFile, args: ["--project-name", "demo-service", "--base-package", "com.yss.demo", "--output-dir", output, "--database", "mysql", "--contract-id", "scaffold-1", "--contract-version", "1", "--approval-ref", "approval-1", "--compiler-draft-ref", "compiler-1", "--persisted-ref", "persisted-1", "--contract-file", contractFile, "--group-id", "com.yss.datamiddle", "--project-version", "1.0.0-SNAPSHOT", "--parent-group-id", "com.yss.datamiddle", "--parent-artifact-id", "yss-datamiddle-parent", "--parent-version", "2.0.0-SNAPSHOT", "--yss-components-version", "2.0.0-SNAPSHOT"] }; }
|
|
73
73
|
|
|
74
74
|
const controlledEnvironment = {
|
|
75
75
|
...process.env,
|
|
@@ -87,7 +87,7 @@ function targetManifest(overrides = {}) {
|
|
|
87
87
|
approval_ref: "approval",
|
|
88
88
|
approver: "reviewer",
|
|
89
89
|
lifecycle_approval_ref: "approval",
|
|
90
|
-
|
|
90
|
+
compiler_draft_ref: "router",
|
|
91
91
|
persisted_ref: "persisted",
|
|
92
92
|
contract_file_ref: "contract",
|
|
93
93
|
current_version: 1,
|
|
@@ -112,7 +112,7 @@ async function prepareVerifierProject(project, manifest = targetManifest()) {
|
|
|
112
112
|
await writeFile(path.join(project, ".yss", "scaffold-generation.json"), `${JSON.stringify(manifest)}\n`);
|
|
113
113
|
}
|
|
114
114
|
|
|
115
|
-
test("生成批准的服务级 target profile 骨架,并写入可追溯 Manifest v2", async (t) => { const data = await fixture(); t.after(() => rm(data.root, { recursive: true, force: true })); const result = await command(data.args); assert.equal(result.code, 0, result.stderr); const project = path.join(data.output, "demo-service"); const manifest = JSON.parse(await readFile(path.join(project, ".yss/scaffold-generation.json"), "utf8")); assert.equal(manifest.schema_version, 2); assert.equal(manifest.scaffold_request_id, "scaffold-request-1"); assert.equal(manifest.slice_id, undefined); assert.equal(manifest.completion_level, "generated"); assert.equal(manifest.profiles.architecture, "target-domain-model"); assert.deepEqual(manifest.generation_policy, { mode: "initialize-only", existing_target: "unsupported", old_project_migration: "unsupported", template_upgrade: "unsupported" }); assert.match(manifest.generator.template_digest, /^[a-f0-9]{64}$/); assert.match(manifest.contract_digest, /^[a-f0-9]{64}$/); assert.ok(manifest.ownership.generated_files.length > 8); assert.ok(manifest.ownership.generated_files.every((item) => item.owner === "generator" && /^[a-f0-9]{64}$/.test(item.sha256))); assert.equal(manifest.generation_mode, "controlled-generation"); assert.deepEqual(manifest.verification_commands, ["./mvnw validate", "./mvnw test", "./mvnw package"]); assert.equal(manifest.bootstrap_main_class, "com.yss.demo.DemoServiceApplication"); assert.equal(manifest.bootstrap_main_source, "demo-service-bootstrap/src/main/java/com/yss/demo/DemoServiceApplication.java"); assert.match(await readFile(path.join(project, manifest.bootstrap_main_source), "utf8"), /class DemoServiceApplication/); assert.match(await readFile(path.join(project, "pom.xml"), "utf8"), /demo-service/); assert.equal(manifest.readiness.downstream_skills["yss-domain"], await treeDigest(path.resolve(scripts, "../../yss-domain"))); assert.match(manifest.readiness.contracts.scaffold_parent, /^[a-f0-9]{64}$/); assert.match(manifest.readiness.contracts.
|
|
115
|
+
test("生成批准的服务级 target profile 骨架,并写入可追溯 Manifest v2", async (t) => { const data = await fixture(); t.after(() => rm(data.root, { recursive: true, force: true })); const result = await command(data.args); assert.equal(result.code, 0, result.stderr); const project = path.join(data.output, "demo-service"); const manifest = JSON.parse(await readFile(path.join(project, ".yss/scaffold-generation.json"), "utf8")); assert.equal(manifest.schema_version, 2); assert.equal(manifest.scaffold_request_id, "scaffold-request-1"); assert.equal(manifest.slice_id, undefined); assert.equal(manifest.completion_level, "generated"); assert.equal(manifest.profiles.architecture, "target-domain-model"); assert.deepEqual(manifest.generation_policy, { mode: "initialize-only", existing_target: "unsupported", old_project_migration: "unsupported", template_upgrade: "unsupported" }); assert.match(manifest.generator.template_digest, /^[a-f0-9]{64}$/); assert.match(manifest.contract_digest, /^[a-f0-9]{64}$/); assert.ok(manifest.ownership.generated_files.length > 8); assert.ok(manifest.ownership.generated_files.every((item) => item.owner === "generator" && /^[a-f0-9]{64}$/.test(item.sha256))); assert.equal(manifest.generation_mode, "controlled-generation"); assert.deepEqual(manifest.verification_commands, ["./mvnw validate", "./mvnw test", "./mvnw package"]); assert.equal(manifest.bootstrap_main_class, "com.yss.demo.DemoServiceApplication"); assert.equal(manifest.bootstrap_main_source, "demo-service-bootstrap/src/main/java/com/yss/demo/DemoServiceApplication.java"); assert.match(await readFile(path.join(project, manifest.bootstrap_main_source), "utf8"), /class DemoServiceApplication/); assert.match(await readFile(path.join(project, "pom.xml"), "utf8"), /demo-service/); assert.equal(manifest.readiness.downstream_skills["yss-domain"], await treeDigest(path.resolve(scripts, "../../yss-domain"))); assert.match(manifest.readiness.contracts.scaffold_parent, /^[a-f0-9]{64}$/); assert.match(manifest.readiness.contracts.compiler_contract, /^[a-f0-9]{64}$/); });
|
|
116
116
|
|
|
117
117
|
test("schema v1 scaffold contract is unsupported and is never upgraded", async (t) => {
|
|
118
118
|
const data = await fixture({ schema_version: 1 });
|
|
@@ -279,7 +279,7 @@ test("initialize-only 拒绝以 --force 覆盖 .gitmodules 登记的挂载点",
|
|
|
279
279
|
await writeFile(path.join(superproject, ".gitmodules"), "[submodule \"demo-service\"]\n\tpath = apps/backend/demo-service\n\turl = https://example.invalid/demo-service.git\n");
|
|
280
280
|
const contractFile = path.join(data.root, "gitlink-contract.json");
|
|
281
281
|
await writeFile(contractFile, `${JSON.stringify(contract(output), null, 2)}\n`);
|
|
282
|
-
const result = await command(["--project-name", "demo-service", "--base-package", "com.yss.demo", "--output-dir", output, "--database", "mysql", "--contract-id", "scaffold-1", "--contract-version", "1", "--approval-ref", "approval-1", "--
|
|
282
|
+
const result = await command(["--project-name", "demo-service", "--base-package", "com.yss.demo", "--output-dir", output, "--database", "mysql", "--contract-id", "scaffold-1", "--contract-version", "1", "--approval-ref", "approval-1", "--compiler-draft-ref", "compiler-1", "--persisted-ref", "persisted-1", "--contract-file", contractFile, "--force"]);
|
|
283
283
|
assert.equal(result.code, 1, result.stderr);
|
|
284
284
|
assert.match(`${result.stdout}\n${result.stderr}`, /initialize-only|gitlink 不得由脚手架覆盖/);
|
|
285
285
|
});
|
|
@@ -292,7 +292,7 @@ test("拒绝在 detached HEAD 子仓工作树内当成普通目录生成", async
|
|
|
292
292
|
const output = path.join(detached.superproject, detached.mount);
|
|
293
293
|
const contractFile = path.join(data.root, "detached-contract.json");
|
|
294
294
|
await writeFile(contractFile, `${JSON.stringify(contract(output), null, 2)}\n`);
|
|
295
|
-
const result = await command(["--project-name", "nested-service", "--base-package", "com.yss.demo", "--output-dir", output, "--database", "mysql", "--contract-id", "scaffold-1", "--contract-version", "1", "--approval-ref", "approval-1", "--
|
|
295
|
+
const result = await command(["--project-name", "nested-service", "--base-package", "com.yss.demo", "--output-dir", output, "--database", "mysql", "--contract-id", "scaffold-1", "--contract-version", "1", "--approval-ref", "approval-1", "--compiler-draft-ref", "compiler-1", "--persisted-ref", "persisted-1", "--contract-file", contractFile]);
|
|
296
296
|
const text = `${result.stdout}\n${result.stderr}`;
|
|
297
297
|
assert.equal(result.code, 1, text);
|
|
298
298
|
assert.doesNotMatch(text, /请显式传入 --force/);
|
|
@@ -309,7 +309,7 @@ test("--force 覆盖真实 gitlink 不得走普通目录覆盖路径", async (t)
|
|
|
309
309
|
const output = path.join(empty.superproject, "apps/backend");
|
|
310
310
|
const contractFile = path.join(data.root, "empty-gitlink-contract.json");
|
|
311
311
|
await writeFile(contractFile, `${JSON.stringify(contract(output), null, 2)}\n`);
|
|
312
|
-
const result = await command(["--project-name", "billing-service", "--base-package", "com.yss.demo", "--output-dir", output, "--database", "mysql", "--contract-id", "scaffold-1", "--contract-version", "1", "--approval-ref", "approval-1", "--
|
|
312
|
+
const result = await command(["--project-name", "billing-service", "--base-package", "com.yss.demo", "--output-dir", output, "--database", "mysql", "--contract-id", "scaffold-1", "--contract-version", "1", "--approval-ref", "approval-1", "--compiler-draft-ref", "compiler-1", "--persisted-ref", "persisted-1", "--contract-file", contractFile, "--force"]);
|
|
313
313
|
const text = `${result.stdout}\n${result.stderr}`;
|
|
314
314
|
assert.equal(result.code, 1, text);
|
|
315
315
|
assert.doesNotMatch(text, /请显式传入 --force/);
|