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,131 +0,0 @@
|
|
|
1
|
-
import { test } from 'node:test';
|
|
2
|
-
import assert from 'node:assert/strict';
|
|
3
|
-
|
|
4
|
-
import { compileWorkflow } from '../renderers/workflow/workflow-compiler.mjs';
|
|
5
|
-
|
|
6
|
-
function document(semanticChecks) {
|
|
7
|
-
return {
|
|
8
|
-
schema_version: 2,
|
|
9
|
-
diagram_type: 'workflow',
|
|
10
|
-
meta: {
|
|
11
|
-
title: 'Workflow semantic contract fixture',
|
|
12
|
-
legend: { mode: 'hidden' },
|
|
13
|
-
},
|
|
14
|
-
lanes: [
|
|
15
|
-
{ id: 'main', label: 'Main' },
|
|
16
|
-
{ id: 'recovery', label: 'Recovery' },
|
|
17
|
-
],
|
|
18
|
-
nodes: [
|
|
19
|
-
{ id: 'input', lane: 'main', col: 0, type: 'external', label: 'Input' },
|
|
20
|
-
{ id: 'process', lane: 'main', col: 2, type: 'backend', label: 'Process' },
|
|
21
|
-
{ id: 'result', lane: 'main', col: 4, type: 'frontend', label: 'Result' },
|
|
22
|
-
{ id: 'ledger', lane: 'recovery', col: 4, type: 'database', label: 'Ledger' },
|
|
23
|
-
{ id: 'resume', lane: 'recovery', col: 1, type: 'backend', label: 'Resume' },
|
|
24
|
-
],
|
|
25
|
-
edges: [
|
|
26
|
-
{ id: 'start', from: 'input', to: 'process' },
|
|
27
|
-
{ id: 'finish', from: 'process', to: 'result' },
|
|
28
|
-
{ id: 'record', from: 'process', to: 'ledger' },
|
|
29
|
-
],
|
|
30
|
-
...(semanticChecks ? { semanticChecks } : {}),
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
test('semanticChecks rejects an undeclared root instead of accepting an orphan recovery node', () => {
|
|
35
|
-
const workflow = document({
|
|
36
|
-
allowedRoots: ['input'],
|
|
37
|
-
});
|
|
38
|
-
|
|
39
|
-
const result = compileWorkflow({ workflow, qualityProfile: 'standard' });
|
|
40
|
-
|
|
41
|
-
assert.equal(result.ok, false);
|
|
42
|
-
assert.ok(
|
|
43
|
-
result.diagnostics.some((diagnostic) => (
|
|
44
|
-
diagnostic.code === 'workflow/unexpected-root'
|
|
45
|
-
&& diagnostic.subject?.node === 'resume'
|
|
46
|
-
)),
|
|
47
|
-
JSON.stringify(result.diagnostics, null, 2),
|
|
48
|
-
);
|
|
49
|
-
});
|
|
50
|
-
|
|
51
|
-
test('semanticChecks rejects a missing required edge with its exact endpoints', () => {
|
|
52
|
-
const workflow = document({
|
|
53
|
-
requiredEdges: [{ from: 'ledger', to: 'resume' }],
|
|
54
|
-
});
|
|
55
|
-
|
|
56
|
-
const result = compileWorkflow({ workflow, qualityProfile: 'standard' });
|
|
57
|
-
|
|
58
|
-
assert.equal(result.ok, false);
|
|
59
|
-
assert.ok(
|
|
60
|
-
result.diagnostics.some((diagnostic) => (
|
|
61
|
-
diagnostic.code === 'workflow/required-edge'
|
|
62
|
-
&& diagnostic.subject?.from === 'ledger'
|
|
63
|
-
&& diagnostic.subject?.to === 'resume'
|
|
64
|
-
)),
|
|
65
|
-
JSON.stringify(result.diagnostics, null, 2),
|
|
66
|
-
);
|
|
67
|
-
});
|
|
68
|
-
|
|
69
|
-
test('semanticChecks accepts required reachability through intermediate nodes without changing SVG bytes', () => {
|
|
70
|
-
const baseline = document();
|
|
71
|
-
const constrained = document({
|
|
72
|
-
allowedRoots: ['input', 'resume'],
|
|
73
|
-
allowedTerminals: ['result', 'ledger', 'resume'],
|
|
74
|
-
requiredEdges: [{ from: 'process', to: 'ledger' }],
|
|
75
|
-
requiredPaths: [{ from: 'input', to: 'result' }],
|
|
76
|
-
});
|
|
77
|
-
|
|
78
|
-
const baselineResult = compileWorkflow({ workflow: baseline, qualityProfile: 'standard' });
|
|
79
|
-
const constrainedResult = compileWorkflow({ workflow: constrained, qualityProfile: 'standard' });
|
|
80
|
-
|
|
81
|
-
assert.equal(baselineResult.ok, true, JSON.stringify(baselineResult.diagnostics, null, 2));
|
|
82
|
-
assert.equal(constrainedResult.ok, true, JSON.stringify(constrainedResult.diagnostics, null, 2));
|
|
83
|
-
assert.equal(constrainedResult.svg, baselineResult.svg);
|
|
84
|
-
assert.deepEqual(constrainedResult.receipt, baselineResult.receipt);
|
|
85
|
-
});
|
|
86
|
-
|
|
87
|
-
test('semanticChecks rejects a required path that is not reachable in authored direction', () => {
|
|
88
|
-
const workflow = document({
|
|
89
|
-
requiredPaths: [{ from: 'ledger', to: 'resume' }],
|
|
90
|
-
});
|
|
91
|
-
|
|
92
|
-
const result = compileWorkflow({ workflow, qualityProfile: 'standard' });
|
|
93
|
-
|
|
94
|
-
assert.equal(result.ok, false);
|
|
95
|
-
assert.ok(
|
|
96
|
-
result.diagnostics.some((diagnostic) => diagnostic.code === 'workflow/required-path'),
|
|
97
|
-
JSON.stringify(result.diagnostics, null, 2),
|
|
98
|
-
);
|
|
99
|
-
});
|
|
100
|
-
|
|
101
|
-
test('semanticChecks rejects an undeclared terminal', () => {
|
|
102
|
-
const workflow = document({
|
|
103
|
-
allowedTerminals: ['result', 'ledger'],
|
|
104
|
-
});
|
|
105
|
-
|
|
106
|
-
const result = compileWorkflow({ workflow, qualityProfile: 'standard' });
|
|
107
|
-
|
|
108
|
-
assert.equal(result.ok, false);
|
|
109
|
-
assert.ok(
|
|
110
|
-
result.diagnostics.some((diagnostic) => (
|
|
111
|
-
diagnostic.code === 'workflow/unexpected-terminal'
|
|
112
|
-
&& diagnostic.subject?.node === 'resume'
|
|
113
|
-
)),
|
|
114
|
-
JSON.stringify(result.diagnostics, null, 2),
|
|
115
|
-
);
|
|
116
|
-
});
|
|
117
|
-
|
|
118
|
-
test('semanticChecks reports unknown contract node ids before graph analysis', () => {
|
|
119
|
-
const workflow = document({
|
|
120
|
-
requiredEdges: [{ from: 'missing', to: 'resume' }],
|
|
121
|
-
});
|
|
122
|
-
|
|
123
|
-
const result = compileWorkflow({ workflow, qualityProfile: 'standard' });
|
|
124
|
-
|
|
125
|
-
assert.equal(result.ok, false);
|
|
126
|
-
assert.deepEqual(
|
|
127
|
-
result.diagnostics.map(({ code }) => code),
|
|
128
|
-
['workflow/semantic-node-reference'],
|
|
129
|
-
);
|
|
130
|
-
assert.equal(result.diagnostics[0].subject.path, '/semanticChecks/requiredEdges/0/from');
|
|
131
|
-
});
|
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
import assert from 'node:assert/strict';
|
|
2
|
-
import { spawnSync } from 'node:child_process';
|
|
3
|
-
import fs from 'node:fs';
|
|
4
|
-
import os from 'node:os';
|
|
5
|
-
import path from 'node:path';
|
|
6
|
-
import test from 'node:test';
|
|
7
|
-
import { fileURLToPath } from 'node:url';
|
|
8
|
-
|
|
9
|
-
const skillRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..');
|
|
10
|
-
const wrapper = path.join(skillRoot, 'scripts', 'yss-safe-deliver.mjs');
|
|
11
|
-
const example = path.join(skillRoot, 'examples', 'web-app.architecture.json');
|
|
12
|
-
|
|
13
|
-
function repository(mode = 'project-instance') {
|
|
14
|
-
const root = fs.mkdtempSync(path.join(os.tmpdir(), 'yss-archify-safe-'));
|
|
15
|
-
fs.writeFileSync(path.join(root, 'yss-project.yaml'), `schema_version: 1\nrepository_mode: ${mode}\n`);
|
|
16
|
-
return root;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
function run(root, input, output, extra = []) {
|
|
20
|
-
return spawnSync(process.execPath, [wrapper, 'architecture', input, output, ...extra], {
|
|
21
|
-
cwd: root,
|
|
22
|
-
encoding: 'utf8',
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
test('rejects stable output outside the repository-mode allowlist', () => {
|
|
27
|
-
const root = repository();
|
|
28
|
-
const input = path.join(root, 'diagram.archify.json');
|
|
29
|
-
fs.copyFileSync(example, input);
|
|
30
|
-
const result = run(root, input, path.join(root, 'docs', 'architecture', 'diagram.html'));
|
|
31
|
-
assert.notEqual(result.status, 0);
|
|
32
|
-
assert.match(result.stderr, /输出目录必须先随配对的 JSON 源建立|稳定图必须位于/);
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
test('refuses to overwrite an unrelated file inside the allowlist', () => {
|
|
36
|
-
const root = repository();
|
|
37
|
-
const directory = path.join(root, 'docs', 'architecture', 'diagrams', 'runtime-map');
|
|
38
|
-
fs.mkdirSync(directory, { recursive: true });
|
|
39
|
-
const input = path.join(directory, 'runtime-map.archify.json');
|
|
40
|
-
const output = path.join(directory, 'runtime-map.html');
|
|
41
|
-
fs.copyFileSync(example, input);
|
|
42
|
-
fs.writeFileSync(output, 'do-not-overwrite');
|
|
43
|
-
const result = run(root, input, output);
|
|
44
|
-
assert.notEqual(result.status, 0);
|
|
45
|
-
assert.match(result.stderr, /拒绝覆盖非 Archify 产物/);
|
|
46
|
-
assert.equal(fs.readFileSync(output, 'utf8'), 'do-not-overwrite');
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
test('refuses to overwrite an unrelated receipt inside the allowlist', () => {
|
|
50
|
-
const root = repository();
|
|
51
|
-
const directory = path.join(root, 'docs', 'architecture', 'diagrams', 'runtime-map');
|
|
52
|
-
fs.mkdirSync(directory, { recursive: true });
|
|
53
|
-
const input = path.join(directory, 'runtime-map.archify.json');
|
|
54
|
-
const output = path.join(directory, 'runtime-map.html');
|
|
55
|
-
const receipt = path.join(directory, 'runtime-map.receipt.json');
|
|
56
|
-
fs.copyFileSync(example, input);
|
|
57
|
-
fs.writeFileSync(receipt, '{"owner":"human"}\n');
|
|
58
|
-
const result = run(root, input, output);
|
|
59
|
-
assert.notEqual(result.status, 0);
|
|
60
|
-
assert.match(result.stderr, /拒绝覆盖非 YSS Archify receipt/);
|
|
61
|
-
assert.equal(fs.readFileSync(receipt, 'utf8'), '{"owner":"human"}\n');
|
|
62
|
-
});
|
|
63
|
-
|
|
64
|
-
test('rejects an allowlisted path that escapes through a symlink', () => {
|
|
65
|
-
const root = repository();
|
|
66
|
-
const base = path.join(root, 'docs', 'architecture', 'diagrams');
|
|
67
|
-
const outside = fs.mkdtempSync(path.join(os.tmpdir(), 'yss-archify-escape-'));
|
|
68
|
-
fs.mkdirSync(base, { recursive: true });
|
|
69
|
-
fs.symlinkSync(outside, path.join(base, 'runtime-map'));
|
|
70
|
-
const input = path.join(outside, 'runtime-map.archify.json');
|
|
71
|
-
fs.copyFileSync(example, input);
|
|
72
|
-
const output = path.join(base, 'runtime-map', 'runtime-map.html');
|
|
73
|
-
const result = run(root, input, output);
|
|
74
|
-
assert.notEqual(result.status, 0);
|
|
75
|
-
assert.match(result.stderr, /稳定图必须位于|输出目录越过允许根|符号链接/);
|
|
76
|
-
assert.equal(fs.existsSync(path.join(outside, 'runtime-map.html')), false);
|
|
77
|
-
});
|
|
78
|
-
|
|
79
|
-
test('rejects interactive --open delivery in the YSS wrapper', () => {
|
|
80
|
-
const root = repository();
|
|
81
|
-
const directory = path.join(root, 'docs', 'architecture', 'diagrams', 'runtime-map');
|
|
82
|
-
fs.mkdirSync(directory, { recursive: true });
|
|
83
|
-
const input = path.join(directory, 'runtime-map.archify.json');
|
|
84
|
-
const output = path.join(directory, 'runtime-map.html');
|
|
85
|
-
fs.copyFileSync(example, input);
|
|
86
|
-
const result = run(root, input, output, ['--open']);
|
|
87
|
-
assert.notEqual(result.status, 0);
|
|
88
|
-
assert.match(result.stderr, /不允许 --open/);
|
|
89
|
-
});
|
|
90
|
-
|
|
91
|
-
test('delivers a paired project artifact and an auditable receipt', () => {
|
|
92
|
-
const root = repository();
|
|
93
|
-
const directory = path.join(root, 'docs', 'architecture', 'diagrams', 'runtime-map');
|
|
94
|
-
fs.mkdirSync(directory, { recursive: true });
|
|
95
|
-
const input = path.join(directory, 'runtime-map.archify.json');
|
|
96
|
-
const output = path.join(directory, 'runtime-map.html');
|
|
97
|
-
fs.copyFileSync(example, input);
|
|
98
|
-
const result = run(root, input, output);
|
|
99
|
-
assert.equal(result.status, 0, result.stderr);
|
|
100
|
-
assert.match(fs.readFileSync(output, 'utf8').slice(0, 2048), /meta name="generator" content="archify 2\.16\.0"/);
|
|
101
|
-
const receipt = JSON.parse(fs.readFileSync(path.join(directory, 'runtime-map.receipt.json'), 'utf8'));
|
|
102
|
-
assert.equal(receipt.yssArchifyReceipt, true);
|
|
103
|
-
assert.equal(receipt.archify.validation.checkCount, 9);
|
|
104
|
-
assert.equal(receipt.archify.validation.warnings, 0);
|
|
105
|
-
});
|
|
106
|
-
|
|
107
|
-
test('uses the template-source evidence root for stable maintenance diagrams', () => {
|
|
108
|
-
const root = repository('template-source');
|
|
109
|
-
const directory = path.join(root, '.template-source', 'evidence', 'maintenance', 'diagrams', 'workflow-map');
|
|
110
|
-
fs.mkdirSync(directory, { recursive: true });
|
|
111
|
-
const input = path.join(directory, 'workflow-map.archify.json');
|
|
112
|
-
const output = path.join(directory, 'workflow-map.html');
|
|
113
|
-
fs.copyFileSync(example, input);
|
|
114
|
-
const result = run(root, input, output);
|
|
115
|
-
assert.equal(result.status, 0, result.stderr);
|
|
116
|
-
assert.ok(fs.existsSync(path.join(directory, 'workflow-map.receipt.json')));
|
|
117
|
-
});
|
|
118
|
-
|
|
119
|
-
test('uses an exclusive unpredictable staging directory for the receipt', () => {
|
|
120
|
-
const source = fs.readFileSync(wrapper, 'utf8');
|
|
121
|
-
assert.match(source, /fs\.mkdtempSync\(/);
|
|
122
|
-
assert.match(source, /flag: 'wx'/);
|
|
123
|
-
assert.doesNotMatch(source, /receipt}\.tmp-\$\{process\.pid\}/);
|
|
124
|
-
|
|
125
|
-
const root = repository();
|
|
126
|
-
const directory = path.join(root, 'docs', 'architecture', 'diagrams', 'runtime-map');
|
|
127
|
-
fs.mkdirSync(directory, { recursive: true });
|
|
128
|
-
const input = path.join(directory, 'runtime-map.archify.json');
|
|
129
|
-
const output = path.join(directory, 'runtime-map.html');
|
|
130
|
-
const unrelated = path.join(root, 'unrelated.txt');
|
|
131
|
-
const legacySymlink = path.join(directory, 'runtime-map.receipt.json.tmp-12345');
|
|
132
|
-
const legacyFile = path.join(directory, 'runtime-map.receipt.json.tmp-67890');
|
|
133
|
-
fs.copyFileSync(example, input);
|
|
134
|
-
fs.writeFileSync(unrelated, 'preserve-me');
|
|
135
|
-
fs.symlinkSync(unrelated, legacySymlink);
|
|
136
|
-
fs.writeFileSync(legacyFile, 'preserve-this-too');
|
|
137
|
-
|
|
138
|
-
const result = run(root, input, output);
|
|
139
|
-
assert.equal(result.status, 0, result.stderr);
|
|
140
|
-
assert.equal(fs.readFileSync(unrelated, 'utf8'), 'preserve-me');
|
|
141
|
-
assert.equal(fs.readFileSync(legacyFile, 'utf8'), 'preserve-this-too');
|
|
142
|
-
assert.equal(fs.readlinkSync(legacySymlink), unrelated);
|
|
143
|
-
assert.deepEqual(
|
|
144
|
-
fs.readdirSync(directory).filter((entry) => entry.startsWith('.runtime-map.receipt.json.tmp-')),
|
|
145
|
-
[],
|
|
146
|
-
);
|
|
147
|
-
});
|
|
148
|
-
|
|
149
|
-
test('YSS override disables the upstream update checker', () => {
|
|
150
|
-
const skill = fs.readFileSync(path.join(skillRoot, 'SKILL.md'), 'utf8');
|
|
151
|
-
assert.match(skill, /Do not run `scripts\/check-update\.mjs`/);
|
|
152
|
-
assert.match(skill, /yss-safe-deliver\.mjs/);
|
|
153
|
-
});
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
# Phase boundaries
|
|
2
|
-
|
|
3
|
-
A **phase** is a chunk of work inside a session — the grilling, the implementation, the QA. The definition is fuzzy on purpose: a phase ends when you think *"ok, we're done with that"*.
|
|
4
|
-
|
|
5
|
-
The **phase boundary** is the gap between two phases, and it is the only place this decision belongs. Mid-phase there is no decision to make — continue, or split the work that's left into subagents. Compacting mid-phase makes the agent lose the thread.
|
|
6
|
-
|
|
7
|
-
## The five options
|
|
8
|
-
|
|
9
|
-
| Option | What it does |
|
|
10
|
-
| ------------ | --------------------------------------------------------------- |
|
|
11
|
-
| **Continue** | Stay in the session. No context switch at all. |
|
|
12
|
-
| **`/clear`** | Empty the context window and start from nothing. |
|
|
13
|
-
| **`/handoff`** | Write a portable markdown file and seed a session anywhere with it. |
|
|
14
|
-
| **Subagent** | Send the task to its own context window and get a report back. |
|
|
15
|
-
| **`/compact`** | Compress this context and seed a fresh session with the summary. |
|
|
16
|
-
|
|
17
|
-
## The tree
|
|
18
|
-
|
|
19
|
-
Work top to bottom at the boundary. The first **yes** wins.
|
|
20
|
-
|
|
21
|
-
**1. Can you continue in this session?** Two things make the answer yes: the next phase needs this phase as a **primary source**, or you have enough [smart zone](https://www.aihero.dev/ai-coding-dictionary/smart-zone) left (~150k tokens) for the next phase to fit. Grilling → implementation is the standard yes: the implementation wants the reasoning verbatim, not a summary of it. Continue costs nothing and loses nothing, so rule it out before anything else.
|
|
22
|
-
|
|
23
|
-
**2. Is the context irrelevant to what comes next?** Is everything in this session — the exploration, the decisions, the dead ends — disposable? If so, **`/clear`**. It is the cheapest move on the board: it takes no time and hands back the whole window. `/clear` also isn't terminal — the old session stays resumable.
|
|
24
|
-
|
|
25
|
-
The cost of getting this wrong is one-way. Clear a *relevant* context and you lose the **why** behind what you built, and no amount of reading the diff back gets it returned.
|
|
26
|
-
|
|
27
|
-
**3. Do you need to hand off?** `/handoff` is narrow. You need it only when you are:
|
|
28
|
-
|
|
29
|
-
- swapping to a **new harness** (Claude → Codex),
|
|
30
|
-
- moving to a **new directory** or repo,
|
|
31
|
-
- sending the work to a **colleague**,
|
|
32
|
-
- or forking a side task you found **mid-phase** without derailing what you're doing.
|
|
33
|
-
|
|
34
|
-
That list is the whole clause. What `/handoff` buys is **portability** — a file that travels. If nothing is travelling, you don't need it.
|
|
35
|
-
|
|
36
|
-
**4. Can the task be done AFK?** Is it scoped tightly enough to run with you away from the keyboard, no steering? Then send it to a **subagent** and leave this session untouched. Automated review is the standard case: the agent reads the diff and reports, and you aren't needed while it does.
|
|
37
|
-
|
|
38
|
-
**5. Otherwise, `/compact`.** Relevant context, same harness, same directory, and you need to stay in the loop — this is where the tree lands, and it lands here often. Pass it an instruction (`/compact we're going to QA this area`) so the summary keeps what the next phase needs.
|
|
39
|
-
|
|
40
|
-
`/compact` is the **default, not the first reach**. It sits at the bottom because the four questions above it are all cheaper or more precise. The failure mode when people start here is a fresh session that is confidently wrong about a decision the summary flattened.
|
|
41
|
-
|
|
42
|
-
## Primary and secondary sources
|
|
43
|
-
|
|
44
|
-
Every move except **Continue** turns a **primary source** into a **secondary source** — the session as it happened, replaced by a summary of it. The trade is always the same shape:
|
|
45
|
-
|
|
46
|
-
| Source | Information | Noise | Room to move |
|
|
47
|
-
| --------------------------------- | ----------- | ----- | ------------ |
|
|
48
|
-
| Primary (Continue) | Full | Lots | Little |
|
|
49
|
-
| Secondary (`/compact`, `/handoff`) | Lossy | Less | Lots |
|
|
50
|
-
|
|
51
|
-
This is why question 1 comes first. You only pay the lossiness when staying costs more than it saves.
|
|
52
|
-
|
|
53
|
-
## These are judgement calls
|
|
54
|
-
|
|
55
|
-
The questions are not objective — each has taste in it, and the same boundary can go two ways on two days. The value is in asking them **in order**, at the boundary rather than in the middle of the work.
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ask-matt
|
|
3
|
-
description: Ask which skill or flow fits your situation. A router over the skills in this repo.
|
|
4
|
-
disable-model-invocation: true
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Ask Matt
|
|
8
|
-
|
|
9
|
-
You don't remember every skill, so ask.
|
|
10
|
-
|
|
11
|
-
## YSS default (read this first)
|
|
12
|
-
|
|
13
|
-
In this template, **`yss-product-lifecycle` is the default orchestrator**. Native work-units own Spec, tickets, implementation authorization, and gates.
|
|
14
|
-
|
|
15
|
-
This skill is a **Matt compatibility map**. Use `/grill-with-docs`, `/to-spec`, `/to-tickets`, and `/implement` only when the user **explicitly** names them. Do not treat the idea→ship list below as the YSS default. `/implement` does not grant git commit/push. Spec drafts from `/to-spec` stay `ready-for-human` until a human approves the Spec baseline.
|
|
16
|
-
|
|
17
|
-
A **flow** is a path through the skills. Most paths run along one **main flow**, and two **on-ramps** merge onto it. Everything else is standalone, or a vocabulary layer that runs underneath.
|
|
18
|
-
|
|
19
|
-
## Matt compatibility flow: idea → ship
|
|
20
|
-
|
|
21
|
-
The route most work travels. You have an idea and want it built.
|
|
22
|
-
|
|
23
|
-
1. **`/grill-with-docs`** — sharpen the idea by interview. Start here whenever you are **working in a working directory**: it's stateful, retaining what it learns in `CONTEXT.md` and ADRs. (No working directory? Use `/grill-me` — see Standalone. Both run the same `/grilling` primitive; `grill-with-docs` is the one that leaves a paper trail, which makes it the better of the two whenever a repo is there to leave it in.)
|
|
24
|
-
2. **Branch — can you settle every question in conversation?** If a question needs a runnable answer (state, business logic, a UI you have to see), detour through a prototype, bridged by **`/handoff`** in both directions (a prototype lives in its own directory, which is exactly what `/handoff` is for — see Phase boundaries):
|
|
25
|
-
- **`/handoff`** out, then open a fresh session against that file,
|
|
26
|
-
- **`/prototype`** to answer the question with throwaway code,
|
|
27
|
-
- **`/handoff`** back what you learned, and reference it from the original idea thread.
|
|
28
|
-
3. **Branch — is this a multi-session build?**
|
|
29
|
-
- **Yes** → **`/to-spec`** (turn the thread into a spec), then **`/to-tickets`** to split it into tracer-bullet tickets, each declaring its **blocking edges**. On a local tracker that's one file per ticket under `docs/.scratch/<feature>/issues/`, worked blockers-first by hand; on a real tracker the edges become native blocking links, so any ticket whose blockers are done can be grabbed — kick off **`/implement`** per ticket, **`/clear`ing context between each one**. Each ticket is self-contained, so the last one's context is disposable.
|
|
30
|
-
- **No** → **`/implement`** right here, in the same context window.
|
|
31
|
-
|
|
32
|
-
Either way, **`/implement`** builds each issue by driving **`/tdd`** internally — one red-green slice at a time — then closes out by running **`/code-review`** (Standards + Spec, plus UI fidelity when UI is in scope). Do not commit or push from `/implement`. Reach for **`/tdd`** on its own when you just want to build a concrete behaviour test-first without a full spec, and **`/code-review`** on its own whenever you want to review a branch or PR against a fixed point.
|
|
33
|
-
|
|
34
|
-
### Context hygiene
|
|
35
|
-
|
|
36
|
-
Keep steps 1–3 in **one unbroken context window** — don't compact or clear until after `/to-tickets` — so the grilling, spec, and tickets all build on the same thinking. Each `/implement` then starts fresh, working from the ticket.
|
|
37
|
-
|
|
38
|
-
The limit on this is the **[smart zone](https://www.aihero.dev/ai-coding-dictionary/smart-zone)**: the window (~150k tokens on state-of-the-art models) within which the model still reasons sharply. If a session approaches it before `/to-tickets`, don't push on degraded — `/compact` at the nearest phase boundary and carry on (see Phase boundaries).
|
|
39
|
-
|
|
40
|
-
## On-ramps
|
|
41
|
-
|
|
42
|
-
A starting situation that generates work, then merges onto the main flow.
|
|
43
|
-
|
|
44
|
-
- **Bugs and requests piling up** → **`/triage`**. It moves issues through triage roles and produces agent-ready issues, which **`/implement`** later picks up.
|
|
45
|
-
|
|
46
|
-
Triage is only for issues **you didn't create** — bug reports, incoming feature requests, anything that arrives raw. Tickets that `/to-tickets` produced are already agent-ready, so **don't triage them**.
|
|
47
|
-
|
|
48
|
-
- **Something's broken** → **`/diagnosing-bugs`**. For the hard ones: the bug that resists a first glance, the intermittent flake, the regression that crept in between two known-good states. It refuses to theorise until it has a **tight feedback loop** — one command that already goes red on *this* bug — then fixes with a regression test. Its post-mortem hands off to **`/improve-codebase-architecture`** when the real finding is that there's no good seam to lock the bug down.
|
|
49
|
-
|
|
50
|
-
- **A huge, foggy effort — a greenfield project or a huge feature build, too big for one session** → **`/wayfinder`**, the most cognitively demanding flow here. When the way from here to the destination isn't visible yet, it charts a **shared map** of **decision tickets** on the issue tracker and resolves them one at a time — producing **decisions, not deliverables** — until the fog is pushed back and the way is clear. Where **`/grill-with-docs`** sharpens an idea you can hold in one session, wayfinder is for the idea you can't — and it's slower and denser, so save it for exactly that, never a well-scoped feature.
|
|
51
|
-
|
|
52
|
-
When the map clears, **it hands off, it doesn't build**: merge onto the main flow at **`/to-spec`**, which collapses the map's linked decisions into a buildable plan, then `/to-tickets` and `/implement` as usual. Looping the map straight into `/implement` skips that collapse and throws the linked detail away — go straight to `/implement` only when the effort turned out genuinely small.
|
|
53
|
-
|
|
54
|
-
## Codebase health
|
|
55
|
-
|
|
56
|
-
Not feature work — upkeep.
|
|
57
|
-
|
|
58
|
-
- **`/improve-codebase-architecture`** — run whenever you have a spare moment to keep the codebase good for agents to operate in. It surfaces **deepening opportunities**; picking one _generates an idea_ you can take into the main flow at `/grill-with-docs`. It's the survey that finds the candidates; **`/codebase-design`** (below) is the bench you design the chosen one on.
|
|
59
|
-
|
|
60
|
-
## Vocabulary underneath
|
|
61
|
-
|
|
62
|
-
Two model-invoked references that run *beneath* the other skills — each the single source of truth for its vocabulary. Reach for them directly when the **words**, not the process, are the problem; or let the skills above pull them in.
|
|
63
|
-
|
|
64
|
-
- **`/domain-modeling`** — sharpen the project's *domain* language: challenge a fuzzy term, resolve an overloaded word ("account" doing three jobs), record a hard-to-reverse decision as an ADR. It's the active discipline `/grill-with-docs` drives to keep `CONTEXT.md` a clean glossary.
|
|
65
|
-
- **`/codebase-design`** — the deep-module vocabulary (module, interface, depth, seam, adapter, leverage, locality) for designing a module's *shape*: a lot of behaviour behind a small interface at a clean seam. `/tdd` and `/improve-codebase-architecture` both speak it.
|
|
66
|
-
|
|
67
|
-
## Phase boundaries
|
|
68
|
-
|
|
69
|
-
A **phase** is a chunk of work inside a session — the grilling, the implementation, the QA. At the **boundary** between two of them you have five options, and picking between them is the fuzziest decision in this whole map:
|
|
70
|
-
|
|
71
|
-
- **Continue** — stay put. Costs nothing, loses nothing.
|
|
72
|
-
- **`/clear`** — empty the window, when nothing here matters to what's next.
|
|
73
|
-
- **`/handoff`** — write a portable markdown file. Narrow: only for a **new harness**, a **new directory**, a **colleague**, or forking a side task **mid-phase**. What it buys is portability.
|
|
74
|
-
- **Subagent** — send a tightly-scoped task to its own window and get a report back.
|
|
75
|
-
- **`/compact`** — compress this context and seed a fresh session with it. The **default**, at the bottom of the tree rather than the first reach.
|
|
76
|
-
|
|
77
|
-
Read [PHASE-BOUNDARIES.md](PHASE-BOUNDARIES.md) for the ordered tree — the five questions, the reasoning behind each branch, and why the primary-source cost makes **Continue** the one to rule out first. Make the decision **at** a boundary; mid-phase, continue or split the rest into subagents.
|
|
78
|
-
|
|
79
|
-
## Standalone
|
|
80
|
-
|
|
81
|
-
Off the main flow entirely.
|
|
82
|
-
|
|
83
|
-
- **`/grill-me`** — the same relentless interview as `/grill-with-docs`, but **stateless**: it saves nothing locally and builds no `CONTEXT.md`. Reach for it when you are **not working in a working directory** — sharpening a plan, a design, a piece of writing, anything with no repo under it. If you are in a working directory, use `/grill-with-docs` instead: it runs the same interview and leaves a paper trail, so it is strictly the better one.
|
|
84
|
-
- **`/grilling`** — the interview primitive itself: rounds, the frontier, facts are the agent's job and decisions are yours. `/grill-me` and `/grill-with-docs` are the two named ways in, and `/triage`, `/wayfinder` and `/improve-codebase-architecture` all run it internally. Reach for it directly only when you want the interview with no wrapper around it.
|
|
85
|
-
- **`/resolving-merge-conflicts`** — work an in-progress merge or rebase conflict hunk by hunk, resolving by **intent** traced to each side's primary source rather than by picking lines, then finish the operation. It never runs `--abort`. Standalone and off every flow: reach for it when you are already mid-conflict.
|
|
86
|
-
- **`/prototype`** — a small, throwaway program that answers one design question: does this state model feel right, or what should this UI look like. Throwaway is a constraint on how the code is written, not a promise to destroy it: the answer folds into the real code, and the prototype itself is kept as a **primary source** on a `prototype/<name>` branch out of main, pointed at from the implementation issue. It's the detour in step 2 of the main flow, but reach for it any time a design question is hard to settle on paper.
|
|
87
|
-
- **`/yss-research`** — investigate technical or strategy evidence using `technical-evidence` / `strategy-evidence` and `quick` / `evidence-audited` modes. Use a background agent when the runtime supports it and parallel reading is useful; delegation is not a trust guarantee. The old `/research` name is a deprecated alias. Research feeds `/grill-with-docs` and lifecycle decisions; it does not approve them.
|
|
88
|
-
- **`/to-questionnaire`** — when the thing blocking you isn't in your head or the codebase but in **someone else's**, this writes them a questionnaire to fill in. It's the inverse of `/grill-me`: instead of interviewing you about the subject, it interviews you about the **send** — who it's going to, what you need back — and aims the questions at the gap. What comes back is material for `/grill-with-docs` or `/to-spec`.
|
|
89
|
-
- **`/wait-what`** — the corrective for a message that didn't land. Use it mid-conversation, inside any other skill, and the agent re-pitches what it just said with the context you were missing, in plain English, using the `CONTEXT.md` vocabulary. It works after the fact; `/grill-with-docs` is the upfront cure, because a shared language agreed early is what stops the jargon arriving at all.
|
|
90
|
-
- **`/teach`** — learn a concept over multiple sessions, using the current directory as a stateful workspace.
|
|
91
|
-
- **`/writing-for-agents`** — reference for writing documents agents consume: skills, AGENTS.md, pointed-at docs.
|
|
92
|
-
|
|
93
|
-
## Precondition
|
|
94
|
-
|
|
95
|
-
**`/setup-matt-pocock-skills`** — run before your first engineering flow to configure the issue tracker, triage labels, and doc layout the other skills assume. Custom issue trackers also work.
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: code-review
|
|
3
|
-
description: Use when the user wants to review a branch, PR, committed candidate, uncommitted work-in-progress changes, or changes since a fixed point. For YSS implementation, Standards must load Slice contract required_skills plus specialist check inputs such as alibaba-java-code-style and yss-ui; do not add a second generic review skill.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
Review of a pinned candidate against a fixed point on two core axes, plus UI fidelity when UI is in scope:
|
|
7
|
-
|
|
8
|
-
- **Standards** — does the code conform to this repo's documented coding standards **and**, for YSS slices, the specialist check inputs compiled in [yss-review-standards.md](references/yss-review-standards.md)?
|
|
9
|
-
- **Spec** — does the code faithfully implement the originating issue / spec?
|
|
10
|
-
- **UI fidelity** (only when the change has UI impact) — does the candidate match the confirmed prototype and `yss-design-system` / `yss-ui`? Type-check or claiming "already aligned" is not a pass. Invoke those skills' verification notes; do not collapse this axis into Standards or Spec. YSS page-module conventions stay on Standards.
|
|
11
|
-
|
|
12
|
-
Standards and Spec run as **parallel sub-agents** so they don't pollute each other's context, then this skill aggregates their findings. When UI is in scope, add a separate UI fidelity pass after those two reports (do not merge it into either axis).
|
|
13
|
-
|
|
14
|
-
If `docs/agents/issue-tracker.md` is missing, tell the user to run `/setup-matt-pocock-skills`; do not invoke another user-invoked skill yourself.
|
|
15
|
-
|
|
16
|
-
## Process
|
|
17
|
-
|
|
18
|
-
### 1. Pin the fixed point and candidate
|
|
19
|
-
|
|
20
|
-
Whatever the user said is the fixed point — a commit SHA, branch name, tag, `main`, `HEAD~5`, etc. If they didn't specify one, ask for it.
|
|
21
|
-
|
|
22
|
-
Choose one candidate mode from the request or an upstream review contract:
|
|
23
|
-
|
|
24
|
-
- **Committed candidate** — review committed branch/PR state. Capture `git diff <fixed-point>...HEAD` and `git log <fixed-point>..HEAD --oneline`.
|
|
25
|
-
- **Worktree candidate** — review work in progress without requiring a commit. Resolve `<merge-base>` with `git merge-base <fixed-point> HEAD`, then capture:
|
|
26
|
-
- `git diff --no-ext-diff --binary --full-index <merge-base>` for committed, staged and unstaged tracked content as it exists in the working tree;
|
|
27
|
-
- `git ls-files -z --others --exclude-standard` for NUL-delimited raw untracked paths;
|
|
28
|
-
- each untracked file's content, using `git diff --no-index --no-ext-diff --binary --full-index -- /dev/null <path>` when a diff representation is useful. Exit code `1` from this command means a difference was found, not that review failed;
|
|
29
|
-
- `git log <fixed-point>..HEAD --oneline` for the committed portion of the candidate.
|
|
30
|
-
|
|
31
|
-
Record one **candidate manifest** before spawning reviewers:
|
|
32
|
-
|
|
33
|
-
```yaml
|
|
34
|
-
review_mode: committed # or worktree
|
|
35
|
-
review_base_ref: <fixed-point>
|
|
36
|
-
merge_base: <resolved-sha>
|
|
37
|
-
implementation_candidate_ref: HEAD # or working-tree
|
|
38
|
-
candidate_snapshot_ref: <immutable-commit-or-captured-snapshot>
|
|
39
|
-
candidate_digest: <sha256-or-immutable-tree-id>
|
|
40
|
-
tracked_diff_command: <command>
|
|
41
|
-
untracked_inventory_command: <command-or-null>
|
|
42
|
-
untracked_files: []
|
|
43
|
-
commit_list_command: <command>
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
For a Committed candidate, resolve `HEAD` to an immutable commit and tree before review. Its manifest must include `merge_base`, `tracked_diff_command` and `commit_list_command`. For a Worktree candidate, the manifest must additionally include `untracked_inventory_command`, `untracked_diff_command` and the exact `untracked_files` inventory.
|
|
47
|
-
|
|
48
|
-
For a Worktree candidate, capture the tracked binary diff and every untracked file's bytes once into an immutable snapshot, compute `candidate_digest`, and make that **captured candidate** available to both reviewers. The following is normative, not illustrative: use the `yss-worktree-candidate-v1` byte stream. Start with ASCII `YSS-WORKTREE-CANDIDATE-V1` followed by one NUL byte. Append one tracked record: byte `0x54`, unsigned 64-bit big-endian binary-diff byte length, then the exact stdout bytes from `git diff --no-ext-diff --binary --full-index <merge-base>`. Then append one untracked record for each NUL-delimited raw path from `git ls-files -z --others --exclude-standard`, sorted bytewise by the raw path: byte `0x55`, unsigned 64-bit big-endian path length, raw path bytes, unsigned 32-bit big-endian `lstat` mode, entry-kind byte (`0x52` regular or `0x4c` symlink), unsigned 64-bit big-endian content length, then raw regular-file bytes or raw symlink-target bytes. Other entry kinds block capture. This is the sole length-prefixed framing and bytewise path order for the digest. SHA-256 is calculated over exactly this stream. New captures use a previously nonexistent directory under `.template-source/evidence/maintenance/`, land atomically, and store exactly `candidate-manifest.yaml`, `candidate.bin` and `tracked.diff`; `candidate.bin` already contains every untracked byte, so do not duplicate hundreds of `untracked-content/000xxx` files. Explicit exclusions are fail-closed to `.template-source/evidence/maintenance/` evidence and cannot exclude implementation or authority assets. Historical per-file snapshots remain readable. Both reviewers must consume the captured stream and must not independently treat a live worktree as the reviewed candidate.
|
|
49
|
-
|
|
50
|
-
Before going further, confirm the fixed point and merge-base resolve. A committed candidate must have a non-empty committed diff. A Worktree candidate is non-empty when either its tracked diff or untracked inventory is non-empty. A bad ref, missing candidate part or empty candidate should fail here — not inside two parallel sub-agents. Do not silently downgrade Worktree review to `HEAD`-only review.
|
|
51
|
-
|
|
52
|
-
### 2. Identify the spec source
|
|
53
|
-
|
|
54
|
-
Look for the originating spec, in this order:
|
|
55
|
-
|
|
56
|
-
1. A spec/Ticket/contract reference supplied by the user or an upstream lifecycle review input.
|
|
57
|
-
2. Issue references in the commit messages (`#123`, `Closes #45`, GitLab `!67`, etc.) — fetch via the workflow in `docs/agents/issue-tracker.md`.
|
|
58
|
-
3. A spec file under `docs/`, `specs/`, or `docs/.scratch/` matching the branch name or feature.
|
|
59
|
-
4. If nothing is found, ask the user where the spec is. If they say there isn't one, the **Spec** sub-agent will skip and report "no spec available".
|
|
60
|
-
|
|
61
|
-
### 3. Identify the standards sources
|
|
62
|
-
|
|
63
|
-
Compile sources **before** spawning reviewers. For YSS implementation candidates follow [yss-review-standards.md](references/yss-review-standards.md): run machine checks that exist in the implementation repo; then collect repo docs (`CODING_STANDARDS.md` / `CONTRIBUTING.md` if present), every Slice `required_skills` skill file, the impact-conditioned specialist inputs (`alibaba-java-code-style`, `yss-ui`, `yss-domain`, …), and `docs/templates/review-report-template.md`. Missing applicable coverage is `missing_evidence`, not a pass.
|
|
64
|
-
|
|
65
|
-
Anything in the repo that documents how code should be written, such as `CODING_STANDARDS.md` or `CONTRIBUTING.md`, remains a source. It does **not** replace YSS or Alibaba specialist inputs.
|
|
66
|
-
|
|
67
|
-
On top of whatever the repo documents, the Standards axis always carries the **smell baseline** below — a fixed set of Fowler code smells (_Refactoring_, ch.3) that applies even when a repo documents nothing. Two rules bind it:
|
|
68
|
-
|
|
69
|
-
- **The repo overrides.** A documented repo standard always wins; where it endorses something the baseline would flag, suppress the smell.
|
|
70
|
-
- **Always a judgement call.** Each smell is a labelled heuristic ("possible Feature Envy"), never a hard violation — and, like any standard here, skip anything tooling already enforces.
|
|
71
|
-
|
|
72
|
-
Each smell reads *what it is* → *how to fix*; match it against the diff:
|
|
73
|
-
|
|
74
|
-
- **Mysterious Name** — a function, variable, or type whose name doesn't reveal what it does or holds. → rename it; if no honest name comes, the design's murky.
|
|
75
|
-
- **Duplicated Code** — the same logic shape appears in more than one hunk or file in the change. → extract the shared shape, call it from both.
|
|
76
|
-
- **Feature Envy** — a method that reaches into another object's data more than its own. → move the method onto the data it envies.
|
|
77
|
-
- **Data Clumps** — the same few fields or params keep travelling together (a type wanting to be born). → bundle them into one type, pass that.
|
|
78
|
-
- **Primitive Obsession** — a primitive or string standing in for a domain concept that deserves its own type. → give the concept its own small type.
|
|
79
|
-
- **Repeated Switches** — the same `switch`/`if`-cascade on the same type recurs across the change. → replace with polymorphism, or one map both sites share.
|
|
80
|
-
- **Shotgun Surgery** — one logical change forces scattered edits across many files in the diff. → gather what changes together into one module.
|
|
81
|
-
- **Divergent Change** — one file or module is edited for several unrelated reasons. → split so each module changes for one reason.
|
|
82
|
-
- **Speculative Generality** — abstraction, parameters, or hooks added for needs the spec doesn't have. → delete it; inline back until a real need shows.
|
|
83
|
-
- **Message Chains** — long `a.b().c().d()` navigation the caller shouldn't depend on. → hide the walk behind one method on the first object.
|
|
84
|
-
- **Middle Man** — a class or function that mostly just delegates onward. → cut it, call the real target direct.
|
|
85
|
-
- **Refused Bequest** — a subclass or implementer that ignores or overrides most of what it inherits. → drop the inheritance, use composition.
|
|
86
|
-
|
|
87
|
-
### 4. Spawn both sub-agents in parallel
|
|
88
|
-
|
|
89
|
-
**Standards sub-agent prompt** — include:
|
|
90
|
-
|
|
91
|
-
- The full candidate manifest, captured candidate, `candidate_digest`, diff/inventory commands and commit list. For Worktree candidates, explicitly include every untracked file.
|
|
92
|
-
- The list of standards-source files you found in step 3, **plus the smell baseline from step 3** pasted in full. Paste Fowler smells in full. For YSS specialist inputs, pass the exact skill file paths; the reviewer must read them and cite `skill + rule + location`. Do not summarise away mandatory Alibaba or YSS violations to fit a word cap. The 400-word cap applies only to the Fowler smell section.
|
|
93
|
-
- Machine-check commands, exit codes and evidence from step 3. Tooling failure is a hard Standards violation.
|
|
94
|
-
- The brief: "Report — per file/hunk where relevant — (a) every place the diff violates a documented standard or a required YSS / Alibaba specialist rule: cite the skill or file and the rule; (b) any baseline smell you spot: name it and quote the hunk. Distinguish hard violations from judgement calls — documented-standard and mandatory specialist breaches can be hard, but baseline smells are always judgement calls, and a documented repo standard overrides the baseline. Skip anything the machine checks already enforced. Smell section under 400 words; specialist findings have no word cap."
|
|
95
|
-
|
|
96
|
-
**Spec sub-agent prompt** — include:
|
|
97
|
-
|
|
98
|
-
- The same candidate manifest, captured candidate, `candidate_digest`, diff/inventory commands and commit list.
|
|
99
|
-
- The path or fetched contents of the spec.
|
|
100
|
-
- The brief: "Report: (a) requirements the spec asked for that are missing or partial; (b) behaviour in the diff that wasn't asked for (scope creep); (c) requirements that look implemented but where the implementation looks wrong. Quote the spec line for each finding. Under 400 words."
|
|
101
|
-
|
|
102
|
-
If the spec is missing, skip the Spec sub-agent and note this in the final report.
|
|
103
|
-
|
|
104
|
-
### 5. Aggregate
|
|
105
|
-
|
|
106
|
-
For template-maintenance task packages carrying `review_round`, preserve the frozen scope and apply the two-round convergence contract. A hard requirement added during review must cite a rule that already applied when the candidate was frozen; otherwise report it as `judgement-call` for the backlog. Round 1 blocking findings return to the implementer and require a new digest plus all review axes. If Round 2 still has an open `violation`, `drift`, or `new_impacts`, return `needs-human` and stop; do not silently start Round 3. Candidate byte changes invalidate every earlier axis report.
|
|
107
|
-
|
|
108
|
-
Present the reports under `## Standards` and `## Spec` headings, verbatim or lightly cleaned. If UI is in scope, add `## UI fidelity` from the separate pass. Fill `docs/templates/review-report-template.md` specialist tables as part of Standards evidence, not a fourth axis. Do **not** merge or rerank findings — the axes are deliberately separate (see _Why separate axes_). A YSS candidate with blank applicable specialist rows, skipped `required_skills`, or unaddressed mandatory violations is `blocked`, not `completed`. Do not close findings by writing implementation in the review session. `violation` / machine-check failure / blank applicable rows go back to the implementer on the original contract path, then recapture the candidate and rerun every axis. `drift` / `new_impacts` / `required_skills` mismatch mark the contract `stale` and return to Router; do not keep coding on the old contract. `not-applicable` is only for untriggered impacts; mandatory gates have no waiver, only repair or a complete `seam-deferred` record.
|
|
109
|
-
|
|
110
|
-
For Worktree mode, recapture the candidate digest after both reports return. If it differs from `candidate_digest`, mark both reports as reviewing a **stale candidate** and return `blocked`; the caller may start a new review against a new capture, but this invocation must not aggregate findings from different bytes. Recheck the same digest again at the completion/checkpoint boundary.
|
|
111
|
-
|
|
112
|
-
State the reviewed `review_mode`, fixed point, candidate digest and coverage before the two reports. End with a one-line summary: total findings per axis, and the worst issue _within each axis_ (if any). Don't pick a single winner across axes — that's the reranking the separation exists to prevent.
|
|
113
|
-
|
|
114
|
-
## Why separate axes
|
|
115
|
-
|
|
116
|
-
A change can pass one axis and fail the other:
|
|
117
|
-
|
|
118
|
-
- Code that follows every standard but implements the wrong thing → **Standards pass, Spec fail.**
|
|
119
|
-
- Code that does exactly what the issue asked but breaks the project's conventions → **Spec pass, Standards fail.**
|
|
120
|
-
- Code that implements the spec but diverges from the confirmed prototype or design system → **Spec pass, UI fidelity fail.**
|
|
121
|
-
|
|
122
|
-
Reporting them separately stops one axis from masking the other.
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
# YSS 审查标准源与机器检查
|
|
2
|
-
|
|
3
|
-
本文件只服务唯一默认审查技能 `code-review`。Alibaba Java、YSS 前端 / 后端 skill 是 **Standards 轴的专项检查输入**,不是第二个通用审查 skill。
|
|
4
|
-
|
|
5
|
-
权威接线:`yss-product-lifecycle/references/orchestration-contract.yaml` 的 `work-unit.code-review.review_standards_route` 与 `review_input`。报告形状:`docs/templates/review-report-template.md`。
|
|
6
|
-
|
|
7
|
-
## 1. 编译标准源
|
|
8
|
-
|
|
9
|
-
按顺序收集,缺项写 `not-applicable` 及原因,不得省略适用项:
|
|
10
|
-
|
|
11
|
-
1. 仓库文档:`CODING_STANDARDS.md`、`CONTRIBUTING.md` 或实现仓等价文件(若存在)。
|
|
12
|
-
2. Slice Implementation Contract 的 `required_skills`:对每个技能读取 `.agents/skills/<id>/SKILL.md` 及该 skill 指明的 references。
|
|
13
|
-
3. 影响面专项检查输入(与合同并集,不得互相替代):
|
|
14
|
-
- 后端:`alibaba-java-code-style`、`yss-domain`、`yss-application`、`yss-repository`、`yss-web-controller`、`yss-dto`、`mapstruct`、`lombok`
|
|
15
|
-
- UI:`yss-ui`、`yss-design-system`、`yss-ui-business-page-generation`、`yss-page-module-development`
|
|
16
|
-
4. 报告模板中的后端 / 前端门禁表。空着的适用行视为 `missing_evidence`。
|
|
17
|
-
|
|
18
|
-
YSS 页面模块约定(YTable、YFormily、页面骨架等)走 Standards,不并入 UI fidelity。UI fidelity 只核原型与状态矩阵。
|
|
19
|
-
|
|
20
|
-
审查者只读这些 skill,不得用它们写实现路径。`role.test-engineer` 任务包禁止 `implement` 与脚手架生成器。
|
|
21
|
-
|
|
22
|
-
## 2. 机器检查
|
|
23
|
-
|
|
24
|
-
在派发 Standards / Spec 子审查之前,对实现仓**已登记且当前可执行**的命令实际跑一遍:
|
|
25
|
-
|
|
26
|
-
- 后端优先:切片合同里的 `./mvnw` 验证;若工程已配置 Checkstyle / P3C / Spotless / `validate`,一并执行。
|
|
27
|
-
- 前端优先:切片合同里的 `pnpm` 验证;若存在 `pnpm lint` / `pnpm type-check`,一并执行。
|
|
28
|
-
|
|
29
|
-
记录命令、退出码、时间和证据引用。退出码非 0 记为 Standards **hard violation**。
|
|
30
|
-
|
|
31
|
-
仓库没有对应工具时,该工具行写 `not-applicable` 加原因。可被工具检查的 Alibaba / ESLint 规则若工具没跑、LLM 也没按原文引用规则,不得记 `pass`。无法 lint 的分层、页面骨架、Formily 约定由 LLM 按 skill 原文引用。
|
|
32
|
-
|
|
33
|
-
## 3. 完成阻断
|
|
34
|
-
|
|
35
|
-
出现以下任一情况时,`work-unit.code-review` 不得 `completed`:
|
|
36
|
-
|
|
37
|
-
- 未消费合同 `required_skills` 或漏掉命中影响面的专项检查输入
|
|
38
|
-
- 报告模板适用行空白或只写“符合 YSS / 符合阿里规范”
|
|
39
|
-
- mandatory Alibaba 或 YSS 门禁 `violation` 未关闭
|
|
40
|
-
- 机器检查失败,或可检查规则既无工具结果也无原文引用
|
|
41
|
-
- 用第二个通用审查 skill 代替 `code-review`
|
|
42
|
-
|
|
43
|
-
## 4. Finding 分流与豁免
|
|
44
|
-
|
|
45
|
-
产品切片与模板维护使用**同一闭环**;只是强度不同:切片绑定当前 Slice Implementation Contract,模板维护绑定 L1 / L2 / L3。权威字段:`review_standards_route.finding_disposition`。
|
|
46
|
-
|
|
47
|
-
审查者只记录 finding,不得当场改实现代码。
|
|
48
|
-
|
|
49
|
-
| 类型 | 动作 |
|
|
50
|
-
|---|---|
|
|
51
|
-
| `violation`、机器检查失败、适用行空白、`missing_evidence` | 实现者在**原合同允许路径**内修复;任何修复使候选失效,必须重新捕获并重跑 Standards、Spec、UI fidelity(若命中)和 fresh verification |
|
|
52
|
-
| `drift`、`new_impacts`、`required_skills` 与真实影响不一致 | 合同标 `stale`,回 Router 或更早生命周期阶段;禁止在旧合同上继续编码 |
|
|
53
|
-
|
|
54
|
-
`not-applicable` 仅当影响面未命中。命中后的 mandatory 不得豁免;只允许修复,或写完整 `seam-deferred`(风险、责任人、后续 Ticket、验证计划、目标版本或发布日期)。禁止为日常 Alibaba / YSS 新增生物人豁免门禁;安全 / 公共 API 仍走既有 `TODO-HUMAN-REVIEW` 与生物人门禁。
|