create-yss-spec 3.5.5 → 3.5.8
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 +2 -0
- package/bin/create-yss-spec.js +3 -1
- package/cli-core.lock.json +11 -7
- package/package.json +4 -1
- package/src/api/_sync-service.js +3 -1
- package/src/command-runner.mjs +44 -9
- package/src/content-identity.js +111 -0
- package/src/runtime-store.mjs +650 -0
- package/src/template/asset-runtime.js +7 -2
- package/src/template/instance-runtime.js +27 -9
- package/src/validation/metadata.js +8 -0
- package/template/.agents/skills/.strategic-design-skills-manifest.json +1 -1
- package/template/.agents/skills/alibaba-java-code-style/SKILL.md +30 -36
- package/template/.agents/skills/archify/SKILL.md +2 -2
- package/template/.agents/skills/archify/scripts/yss-safe-deliver.mjs +10 -6
- package/template/.agents/skills/archify/test/yss-safe-deliver.test.mjs +9 -2
- package/template/.agents/skills/code-review/SKILL.md +19 -11
- package/template/.agents/skills/code-review/references/candidate-capture.md +1 -1
- package/template/.agents/skills/code-review/references/legacy-convergence.md +3 -1
- package/template/.agents/skills/code-review/references/review-axis-checklists.md +2 -0
- package/template/.agents/skills/code-review/references/yss-review-standards.md +4 -2
- package/template/.agents/skills/competitive-intelligence/SKILL.md +32 -74
- package/template/.agents/skills/file-export-download/SKILL.md +4 -73
- package/template/.agents/skills/file-export-download/references/binary-contract-example.md +26 -0
- package/template/.agents/skills/file-export-download/references/download-call-example.md +45 -0
- package/template/.agents/skills/formily-foundation/SKILL.md +6 -105
- package/template/.agents/skills/formily-foundation/references/async-save-example.md +57 -0
- package/template/.agents/skills/formily-foundation/references/query-layout.md +50 -0
- package/template/.agents/skills/formily-linkage-effects/SKILL.md +3 -116
- package/template/.agents/skills/formily-linkage-effects/references/linkage-example.md +116 -0
- package/template/.agents/skills/formily-mode-slot-detail/SKILL.md +3 -81
- package/template/.agents/skills/formily-mode-slot-detail/references/mode-slot-example.md +81 -0
- package/template/.agents/skills/formily-step-flow/SKILL.md +3 -143
- package/template/.agents/skills/formily-step-flow/references/step-flow-example.md +143 -0
- package/template/.agents/skills/handoff/SKILL.md +3 -1
- package/template/.agents/skills/i-have-adhd/SKILL.md +2 -2
- package/template/.agents/skills/i-have-adhd/references/yss-adaptation.md +2 -2
- package/template/.agents/skills/i-have-adhd/tests/verify-integration.mjs +7 -2
- package/template/.agents/skills/implement/SKILL.md +2 -2
- package/template/.agents/skills/llm-wiki/references/transactions.md +2 -2
- package/template/.agents/skills/llm-wiki/scripts/core.mjs +40 -2
- package/template/.agents/skills/llm-wiki/scripts/transaction.mjs +30 -27
- package/template/.agents/skills/llm-wiki/scripts/v2.test.mjs +38 -2
- package/template/.agents/skills/lombok/SKILL.md +2 -0
- package/template/.agents/skills/mapstruct/SKILL.md +2 -0
- package/template/.agents/skills/tdd/SKILL.md +2 -2
- package/template/.agents/skills/theme-token-usage/SKILL.md +6 -5
- package/template/.agents/skills/wayfinder/references/chart-map.md +2 -2
- package/template/.agents/skills/wayfinder/references/ticket-types.md +1 -1
- package/template/.agents/skills/yss-api-integration/SKILL.md +13 -50
- package/template/.agents/skills/yss-api-integration/references/orval-list-example.md +38 -0
- package/template/.agents/skills/yss-application/SKILL.md +11 -5
- package/template/.agents/skills/yss-audit-log/SKILL.md +8 -6
- package/template/.agents/skills/yss-audit-log/references/README.md +5 -5
- package/template/.agents/skills/yss-cache/SKILL.md +4 -4
- package/template/.agents/skills/yss-ddd-scaffold-generator/SKILL.md +7 -8
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -6
- package/template/.agents/skills/yss-ddd-scaffold-generator/references/command-examples.md +2 -0
- package/template/.agents/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +28 -1
- package/template/.agents/skills/yss-design-system/SKILL.md +2 -2
- package/template/.agents/skills/yss-distributed-id/SKILL.md +4 -4
- package/template/.agents/skills/yss-dto/SKILL.md +9 -9
- package/template/.agents/skills/yss-dto/references/README.md +4 -4
- package/template/.agents/skills/yss-dto/references/wire-validation-checklist.md +4 -4
- package/template/.agents/skills/yss-excel-mvc/SKILL.md +4 -4
- package/template/.agents/skills/yss-exception/SKILL.md +42 -48
- package/template/.agents/skills/yss-formily-schema-generator/SKILL.md +26 -170
- package/template/.agents/skills/yss-formily-schema-generator/references/workflow.md +49 -193
- package/template/.agents/skills/yss-frontend-scaffold-generator/SKILL.md +14 -10
- package/template/.agents/skills/yss-implementation-contract-compiler/SKILL.md +2 -6
- package/template/.agents/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +15 -1
- package/template/.agents/skills/yss-layered-mvc-scaffold-generator/SKILL.md +1 -1
- package/template/.agents/skills/yss-mybatis/SKILL.md +4 -4
- package/template/.agents/skills/yss-openapi-draft-review/SKILL.md +6 -4
- package/template/.agents/skills/yss-openapi-draft-review/references/review-output.md +2 -0
- package/template/.agents/skills/yss-openapi-draft-review/references/semantic-review.md +3 -3
- package/template/.agents/skills/yss-openapi-governance/SKILL.md +5 -7
- package/template/.agents/skills/yss-openapi-governance/references/governance-output.md +2 -0
- package/template/.agents/skills/yss-openapi-governance/references/governance-workflow.md +3 -3
- package/template/.agents/skills/yss-product-lifecycle/SKILL.md +23 -21
- package/template/.agents/skills/yss-product-lifecycle/references/artifact-dependencies.md +1 -1
- package/template/.agents/skills/yss-product-lifecycle/references/matt-yss-adapter.md +25 -5
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration-contract.yaml +100 -4
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +35 -12
- package/template/.agents/skills/yss-product-lifecycle/references/state-model.md +3 -1
- package/template/.agents/skills/yss-product-lifecycle/references/user-decisions.md +3 -3
- package/template/.agents/skills/yss-prototype-stage/SKILL.md +1 -5
- package/template/.agents/skills/yss-repository/SKILL.md +2 -2
- package/template/.agents/skills/yss-research/SKILL.md +39 -48
- package/template/.agents/skills/yss-research/assets/competitive-evidence-template.yaml +146 -0
- package/template/.agents/skills/yss-research/references/competitive-analysis.md +76 -0
- package/template/.agents/skills/yss-research/references/competitive-analysis.schema.json +324 -0
- package/template/.agents/skills/yss-research/references/evidence-contract.md +8 -0
- package/template/.agents/skills/yss-research/scripts/lib/competitive-analysis.mjs +185 -0
- package/template/.agents/skills/yss-research/scripts/render-competitive-outputs.mjs +16 -0
- package/template/.agents/skills/yss-research/scripts/validate-research-package.mjs +6 -2
- package/template/.agents/skills/yss-research/tests/competitive-scenarios.test.mjs +270 -0
- package/template/.agents/skills/yss-resilience4j/SKILL.md +25 -31
- package/template/.agents/skills/yss-security-algorithm/SKILL.md +37 -43
- package/template/.agents/skills/yss-skill-source-index-refresh/SKILL.md +29 -36
- package/template/.agents/skills/yss-skill-source-index-refresh/references/backend-component-platform-compatibility.md +1 -1
- package/template/.agents/skills/yss-stage-decision/SKILL.md +2 -5
- package/template/.agents/skills/yss-tactical-design/SKILL.md +1 -1
- package/template/.agents/skills/yss-tactical-design/references/output-template.md +3 -3
- package/template/.agents/skills/yss-tactical-design/references/tactical-design-contract.md +1 -1
- package/template/.agents/skills/yss-technical-design/SKILL.md +6 -5
- package/template/.agents/skills/yss-ui/SKILL.md +7 -1
- package/template/.agents/skills/yss-ui/assets/docs/guide/gitlab-ci-integration.md +2 -2
- package/template/.agents/skills/yss-ui/references/checklist.md +38 -96
- package/template/.agents/skills/yss-ui/references/component-routing.md +3 -1
- package/template/.agents/skills/yss-ui/references/quick-recipes.md +17 -272
- package/template/.agents/skills/yss-ui/references/specialized-components.md +3 -3
- package/template/.agents/skills/yss-ui-business-page-generation/SKILL.md +1 -1
- package/template/.agents/skills/yss-up-springboot3/SKILL.md +19 -21
- package/template/.agents/skills/yss-userinfo/SKILL.md +27 -33
- package/template/.agents/skills/yss-validation/SKILL.md +26 -32
- package/template/.agents/skills/yss-web-controller/SKILL.md +11 -44
- package/template/.agents/skills/yss-web-controller/references/crud-generation.md +38 -0
- package/template/.agents/skills/ytable-usage/SKILL.md +2 -2
- package/template/.agents/skills/ytree-usage/SKILL.md +2 -80
- package/template/.agents/skills/ytree-usage/references/tree-and-confirmation-example.md +81 -0
- package/template/.codex/skills/alibaba-java-code-style/SKILL.md +30 -36
- package/template/.codex/skills/archify/SKILL.md +2 -2
- package/template/.codex/skills/archify/scripts/yss-safe-deliver.mjs +10 -6
- package/template/.codex/skills/archify/test/yss-safe-deliver.test.mjs +9 -2
- package/template/.codex/skills/code-review/SKILL.md +19 -11
- package/template/.codex/skills/code-review/references/candidate-capture.md +1 -1
- package/template/.codex/skills/code-review/references/legacy-convergence.md +3 -1
- package/template/.codex/skills/code-review/references/review-axis-checklists.md +2 -0
- package/template/.codex/skills/code-review/references/yss-review-standards.md +4 -2
- package/template/.codex/skills/competitive-intelligence/SKILL.md +32 -74
- package/template/.codex/skills/file-export-download/SKILL.md +4 -73
- package/template/.codex/skills/file-export-download/references/binary-contract-example.md +26 -0
- package/template/.codex/skills/file-export-download/references/download-call-example.md +45 -0
- package/template/.codex/skills/formily-foundation/SKILL.md +6 -105
- package/template/.codex/skills/formily-foundation/references/async-save-example.md +57 -0
- package/template/.codex/skills/formily-foundation/references/query-layout.md +50 -0
- package/template/.codex/skills/formily-linkage-effects/SKILL.md +3 -116
- package/template/.codex/skills/formily-linkage-effects/references/linkage-example.md +116 -0
- package/template/.codex/skills/formily-mode-slot-detail/SKILL.md +3 -81
- package/template/.codex/skills/formily-mode-slot-detail/references/mode-slot-example.md +81 -0
- package/template/.codex/skills/formily-step-flow/SKILL.md +3 -143
- package/template/.codex/skills/formily-step-flow/references/step-flow-example.md +143 -0
- package/template/.codex/skills/handoff/SKILL.md +3 -1
- package/template/.codex/skills/i-have-adhd/SKILL.md +2 -2
- package/template/.codex/skills/i-have-adhd/references/yss-adaptation.md +2 -2
- package/template/.codex/skills/i-have-adhd/tests/verify-integration.mjs +7 -2
- package/template/.codex/skills/implement/SKILL.md +2 -2
- package/template/.codex/skills/llm-wiki/references/transactions.md +2 -2
- package/template/.codex/skills/llm-wiki/scripts/core.mjs +40 -2
- package/template/.codex/skills/llm-wiki/scripts/transaction.mjs +30 -27
- package/template/.codex/skills/llm-wiki/scripts/v2.test.mjs +38 -2
- package/template/.codex/skills/lombok/SKILL.md +2 -0
- package/template/.codex/skills/mapstruct/SKILL.md +2 -0
- package/template/.codex/skills/product-design/references/communication-protocol.md +3 -3
- package/template/.codex/skills/product-design/references/critical-overrides.md +4 -5
- package/template/.codex/skills/product-design/skills/audit/SKILL.md +2 -4
- package/template/.codex/skills/product-design/skills/get-context/SKILL.md +6 -8
- package/template/.codex/skills/product-design/skills/ideate/SKILL.md +3 -3
- package/template/.codex/skills/product-design/skills/image-to-code/SKILL.md +3 -5
- package/template/.codex/skills/product-design/skills/index/SKILL.md +1 -1
- package/template/.codex/skills/product-design/skills/prototype/SKILL.md +2 -4
- package/template/.codex/skills/product-design/skills/research/SKILL.md +4 -6
- package/template/.codex/skills/product-design/skills/research/assets/research-brief-template.md +3 -3
- package/template/.codex/skills/product-design/skills/share/SKILL.md +2 -4
- package/template/.codex/skills/product-design/skills/url-to-code/SKILL.md +2 -4
- package/template/.codex/skills/product-design/skills/user-context/SKILL.md +1 -1
- package/template/.codex/skills/tdd/SKILL.md +2 -2
- package/template/.codex/skills/theme-token-usage/SKILL.md +6 -5
- package/template/.codex/skills/wayfinder/references/chart-map.md +2 -2
- package/template/.codex/skills/wayfinder/references/ticket-types.md +1 -1
- package/template/.codex/skills/yss-api-integration/SKILL.md +13 -50
- package/template/.codex/skills/yss-api-integration/references/orval-list-example.md +38 -0
- package/template/.codex/skills/yss-application/SKILL.md +11 -5
- package/template/.codex/skills/yss-audit-log/SKILL.md +8 -6
- package/template/.codex/skills/yss-audit-log/references/README.md +5 -5
- package/template/.codex/skills/yss-cache/SKILL.md +4 -4
- package/template/.codex/skills/yss-ddd-scaffold-generator/SKILL.md +7 -8
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -6
- package/template/.codex/skills/yss-ddd-scaffold-generator/references/command-examples.md +2 -0
- package/template/.codex/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +28 -1
- package/template/.codex/skills/yss-design-system/SKILL.md +2 -2
- package/template/.codex/skills/yss-distributed-id/SKILL.md +4 -4
- package/template/.codex/skills/yss-dto/SKILL.md +9 -9
- package/template/.codex/skills/yss-dto/references/README.md +4 -4
- package/template/.codex/skills/yss-dto/references/wire-validation-checklist.md +4 -4
- package/template/.codex/skills/yss-excel-mvc/SKILL.md +4 -4
- package/template/.codex/skills/yss-exception/SKILL.md +42 -48
- package/template/.codex/skills/yss-formily-schema-generator/SKILL.md +26 -170
- package/template/.codex/skills/yss-formily-schema-generator/references/workflow.md +49 -193
- package/template/.codex/skills/yss-frontend-scaffold-generator/SKILL.md +14 -10
- package/template/.codex/skills/yss-implementation-contract-compiler/SKILL.md +2 -6
- package/template/.codex/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +15 -1
- package/template/.codex/skills/yss-layered-mvc-scaffold-generator/SKILL.md +1 -1
- package/template/.codex/skills/yss-mybatis/SKILL.md +4 -4
- package/template/.codex/skills/yss-openapi-draft-review/SKILL.md +6 -4
- package/template/.codex/skills/yss-openapi-draft-review/references/review-output.md +2 -0
- package/template/.codex/skills/yss-openapi-draft-review/references/semantic-review.md +3 -3
- package/template/.codex/skills/yss-openapi-governance/SKILL.md +5 -7
- package/template/.codex/skills/yss-openapi-governance/references/governance-output.md +2 -0
- package/template/.codex/skills/yss-openapi-governance/references/governance-workflow.md +3 -3
- package/template/.codex/skills/yss-product-lifecycle/SKILL.md +23 -21
- package/template/.codex/skills/yss-product-lifecycle/references/artifact-dependencies.md +1 -1
- package/template/.codex/skills/yss-product-lifecycle/references/matt-yss-adapter.md +25 -5
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration-contract.yaml +100 -4
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +35 -12
- package/template/.codex/skills/yss-product-lifecycle/references/state-model.md +3 -1
- package/template/.codex/skills/yss-product-lifecycle/references/user-decisions.md +3 -3
- package/template/.codex/skills/yss-prototype-stage/SKILL.md +1 -5
- package/template/.codex/skills/yss-repository/SKILL.md +2 -2
- package/template/.codex/skills/yss-research/SKILL.md +39 -48
- package/template/.codex/skills/yss-research/assets/competitive-evidence-template.yaml +146 -0
- package/template/.codex/skills/yss-research/references/competitive-analysis.md +76 -0
- package/template/.codex/skills/yss-research/references/competitive-analysis.schema.json +324 -0
- package/template/.codex/skills/yss-research/references/evidence-contract.md +8 -0
- package/template/.codex/skills/yss-research/scripts/lib/competitive-analysis.mjs +185 -0
- package/template/.codex/skills/yss-research/scripts/render-competitive-outputs.mjs +16 -0
- package/template/.codex/skills/yss-research/scripts/validate-research-package.mjs +6 -2
- package/template/.codex/skills/yss-research/tests/competitive-scenarios.test.mjs +270 -0
- package/template/.codex/skills/yss-resilience4j/SKILL.md +25 -31
- package/template/.codex/skills/yss-security-algorithm/SKILL.md +37 -43
- package/template/.codex/skills/yss-skill-source-index-refresh/SKILL.md +29 -36
- package/template/.codex/skills/yss-skill-source-index-refresh/references/backend-component-platform-compatibility.md +1 -1
- package/template/.codex/skills/yss-stage-decision/SKILL.md +2 -5
- package/template/.codex/skills/yss-tactical-design/SKILL.md +1 -1
- package/template/.codex/skills/yss-tactical-design/references/output-template.md +3 -3
- package/template/.codex/skills/yss-tactical-design/references/tactical-design-contract.md +1 -1
- package/template/.codex/skills/yss-technical-design/SKILL.md +6 -5
- package/template/.codex/skills/yss-ui/SKILL.md +7 -1
- package/template/.codex/skills/yss-ui/assets/docs/guide/gitlab-ci-integration.md +2 -2
- package/template/.codex/skills/yss-ui/references/checklist.md +38 -96
- package/template/.codex/skills/yss-ui/references/component-routing.md +3 -1
- package/template/.codex/skills/yss-ui/references/quick-recipes.md +17 -272
- package/template/.codex/skills/yss-ui/references/specialized-components.md +3 -3
- package/template/.codex/skills/yss-ui-business-page-generation/SKILL.md +1 -1
- package/template/.codex/skills/yss-up-springboot3/SKILL.md +19 -21
- package/template/.codex/skills/yss-userinfo/SKILL.md +27 -33
- package/template/.codex/skills/yss-validation/SKILL.md +26 -32
- package/template/.codex/skills/yss-web-controller/SKILL.md +11 -44
- package/template/.codex/skills/yss-web-controller/references/crud-generation.md +38 -0
- package/template/.codex/skills/ytable-usage/SKILL.md +2 -2
- package/template/.codex/skills/ytree-usage/SKILL.md +2 -80
- package/template/.codex/skills/ytree-usage/references/tree-and-confirmation-example.md +81 -0
- package/template/.cursor/skills/alibaba-java-code-style/SKILL.md +30 -36
- package/template/.cursor/skills/archify/SKILL.md +2 -2
- package/template/.cursor/skills/archify/scripts/yss-safe-deliver.mjs +10 -6
- package/template/.cursor/skills/archify/test/yss-safe-deliver.test.mjs +9 -2
- package/template/.cursor/skills/code-review/SKILL.md +19 -11
- package/template/.cursor/skills/code-review/references/candidate-capture.md +1 -1
- package/template/.cursor/skills/code-review/references/legacy-convergence.md +3 -1
- package/template/.cursor/skills/code-review/references/review-axis-checklists.md +2 -0
- package/template/.cursor/skills/code-review/references/yss-review-standards.md +4 -2
- package/template/.cursor/skills/competitive-intelligence/SKILL.md +32 -74
- package/template/.cursor/skills/file-export-download/SKILL.md +4 -73
- package/template/.cursor/skills/file-export-download/references/binary-contract-example.md +26 -0
- package/template/.cursor/skills/file-export-download/references/download-call-example.md +45 -0
- package/template/.cursor/skills/formily-foundation/SKILL.md +6 -105
- package/template/.cursor/skills/formily-foundation/references/async-save-example.md +57 -0
- package/template/.cursor/skills/formily-foundation/references/query-layout.md +50 -0
- package/template/.cursor/skills/formily-linkage-effects/SKILL.md +3 -116
- package/template/.cursor/skills/formily-linkage-effects/references/linkage-example.md +116 -0
- package/template/.cursor/skills/formily-mode-slot-detail/SKILL.md +3 -81
- package/template/.cursor/skills/formily-mode-slot-detail/references/mode-slot-example.md +81 -0
- package/template/.cursor/skills/formily-step-flow/SKILL.md +3 -143
- package/template/.cursor/skills/formily-step-flow/references/step-flow-example.md +143 -0
- package/template/.cursor/skills/handoff/SKILL.md +3 -1
- package/template/.cursor/skills/i-have-adhd/SKILL.md +2 -2
- package/template/.cursor/skills/i-have-adhd/references/yss-adaptation.md +2 -2
- package/template/.cursor/skills/i-have-adhd/tests/verify-integration.mjs +7 -2
- package/template/.cursor/skills/implement/SKILL.md +2 -2
- package/template/.cursor/skills/llm-wiki/references/transactions.md +2 -2
- package/template/.cursor/skills/llm-wiki/scripts/core.mjs +40 -2
- package/template/.cursor/skills/llm-wiki/scripts/transaction.mjs +30 -27
- package/template/.cursor/skills/llm-wiki/scripts/v2.test.mjs +38 -2
- package/template/.cursor/skills/lombok/SKILL.md +2 -0
- package/template/.cursor/skills/mapstruct/SKILL.md +2 -0
- package/template/.cursor/skills/tdd/SKILL.md +2 -2
- package/template/.cursor/skills/theme-token-usage/SKILL.md +6 -5
- package/template/.cursor/skills/wayfinder/references/chart-map.md +2 -2
- package/template/.cursor/skills/wayfinder/references/ticket-types.md +1 -1
- package/template/.cursor/skills/yss-api-integration/SKILL.md +13 -50
- package/template/.cursor/skills/yss-api-integration/references/orval-list-example.md +38 -0
- package/template/.cursor/skills/yss-application/SKILL.md +11 -5
- package/template/.cursor/skills/yss-audit-log/SKILL.md +8 -6
- package/template/.cursor/skills/yss-audit-log/references/README.md +5 -5
- package/template/.cursor/skills/yss-cache/SKILL.md +4 -4
- package/template/.cursor/skills/yss-ddd-scaffold-generator/SKILL.md +7 -8
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -6
- package/template/.cursor/skills/yss-ddd-scaffold-generator/references/command-examples.md +2 -0
- package/template/.cursor/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +28 -1
- package/template/.cursor/skills/yss-design-system/SKILL.md +2 -2
- package/template/.cursor/skills/yss-distributed-id/SKILL.md +4 -4
- package/template/.cursor/skills/yss-dto/SKILL.md +9 -9
- package/template/.cursor/skills/yss-dto/references/README.md +4 -4
- package/template/.cursor/skills/yss-dto/references/wire-validation-checklist.md +4 -4
- package/template/.cursor/skills/yss-excel-mvc/SKILL.md +4 -4
- package/template/.cursor/skills/yss-exception/SKILL.md +42 -48
- package/template/.cursor/skills/yss-formily-schema-generator/SKILL.md +26 -170
- package/template/.cursor/skills/yss-formily-schema-generator/references/workflow.md +49 -193
- package/template/.cursor/skills/yss-frontend-scaffold-generator/SKILL.md +14 -10
- package/template/.cursor/skills/yss-implementation-contract-compiler/SKILL.md +2 -6
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +15 -1
- package/template/.cursor/skills/yss-layered-mvc-scaffold-generator/SKILL.md +1 -1
- package/template/.cursor/skills/yss-mybatis/SKILL.md +4 -4
- package/template/.cursor/skills/yss-openapi-draft-review/SKILL.md +6 -4
- package/template/.cursor/skills/yss-openapi-draft-review/references/review-output.md +2 -0
- package/template/.cursor/skills/yss-openapi-draft-review/references/semantic-review.md +3 -3
- package/template/.cursor/skills/yss-openapi-governance/SKILL.md +5 -7
- package/template/.cursor/skills/yss-openapi-governance/references/governance-output.md +2 -0
- package/template/.cursor/skills/yss-openapi-governance/references/governance-workflow.md +3 -3
- package/template/.cursor/skills/yss-product-lifecycle/SKILL.md +23 -21
- package/template/.cursor/skills/yss-product-lifecycle/references/artifact-dependencies.md +1 -1
- package/template/.cursor/skills/yss-product-lifecycle/references/matt-yss-adapter.md +25 -5
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration-contract.yaml +100 -4
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration.md +35 -12
- package/template/.cursor/skills/yss-product-lifecycle/references/state-model.md +3 -1
- package/template/.cursor/skills/yss-product-lifecycle/references/user-decisions.md +3 -3
- package/template/.cursor/skills/yss-prototype-stage/SKILL.md +1 -5
- package/template/.cursor/skills/yss-repository/SKILL.md +2 -2
- package/template/.cursor/skills/yss-research/SKILL.md +39 -48
- package/template/.cursor/skills/yss-research/assets/competitive-evidence-template.yaml +146 -0
- package/template/.cursor/skills/yss-research/references/competitive-analysis.md +76 -0
- package/template/.cursor/skills/yss-research/references/competitive-analysis.schema.json +324 -0
- package/template/.cursor/skills/yss-research/references/evidence-contract.md +8 -0
- package/template/.cursor/skills/yss-research/scripts/lib/competitive-analysis.mjs +185 -0
- package/template/.cursor/skills/yss-research/scripts/render-competitive-outputs.mjs +16 -0
- package/template/.cursor/skills/yss-research/scripts/validate-research-package.mjs +6 -2
- package/template/.cursor/skills/yss-research/tests/competitive-scenarios.test.mjs +270 -0
- package/template/.cursor/skills/yss-resilience4j/SKILL.md +25 -31
- package/template/.cursor/skills/yss-security-algorithm/SKILL.md +37 -43
- package/template/.cursor/skills/yss-skill-source-index-refresh/SKILL.md +29 -36
- package/template/.cursor/skills/yss-skill-source-index-refresh/references/backend-component-platform-compatibility.md +1 -1
- package/template/.cursor/skills/yss-stage-decision/SKILL.md +2 -5
- package/template/.cursor/skills/yss-tactical-design/SKILL.md +1 -1
- package/template/.cursor/skills/yss-tactical-design/references/output-template.md +3 -3
- package/template/.cursor/skills/yss-tactical-design/references/tactical-design-contract.md +1 -1
- package/template/.cursor/skills/yss-technical-design/SKILL.md +6 -5
- package/template/.cursor/skills/yss-ui/SKILL.md +7 -1
- package/template/.cursor/skills/yss-ui/assets/docs/guide/gitlab-ci-integration.md +2 -2
- package/template/.cursor/skills/yss-ui/references/checklist.md +38 -96
- package/template/.cursor/skills/yss-ui/references/component-routing.md +3 -1
- package/template/.cursor/skills/yss-ui/references/quick-recipes.md +17 -272
- package/template/.cursor/skills/yss-ui/references/specialized-components.md +3 -3
- package/template/.cursor/skills/yss-ui-business-page-generation/SKILL.md +1 -1
- package/template/.cursor/skills/yss-up-springboot3/SKILL.md +19 -21
- package/template/.cursor/skills/yss-userinfo/SKILL.md +27 -33
- package/template/.cursor/skills/yss-validation/SKILL.md +26 -32
- package/template/.cursor/skills/yss-web-controller/SKILL.md +11 -44
- package/template/.cursor/skills/yss-web-controller/references/crud-generation.md +38 -0
- package/template/.cursor/skills/ytable-usage/SKILL.md +2 -2
- package/template/.cursor/skills/ytree-usage/SKILL.md +2 -80
- package/template/.cursor/skills/ytree-usage/references/tree-and-confirmation-example.md +81 -0
- package/template/.pi/skills/alibaba-java-code-style/SKILL.md +30 -36
- package/template/.pi/skills/archify/SKILL.md +2 -2
- package/template/.pi/skills/archify/scripts/yss-safe-deliver.mjs +10 -6
- package/template/.pi/skills/archify/test/yss-safe-deliver.test.mjs +9 -2
- package/template/.pi/skills/code-review/SKILL.md +19 -11
- package/template/.pi/skills/code-review/references/candidate-capture.md +1 -1
- package/template/.pi/skills/code-review/references/legacy-convergence.md +3 -1
- package/template/.pi/skills/code-review/references/review-axis-checklists.md +2 -0
- package/template/.pi/skills/code-review/references/yss-review-standards.md +4 -2
- package/template/.pi/skills/competitive-intelligence/SKILL.md +32 -74
- package/template/.pi/skills/file-export-download/SKILL.md +4 -73
- package/template/.pi/skills/file-export-download/references/binary-contract-example.md +26 -0
- package/template/.pi/skills/file-export-download/references/download-call-example.md +45 -0
- package/template/.pi/skills/formily-foundation/SKILL.md +6 -105
- package/template/.pi/skills/formily-foundation/references/async-save-example.md +57 -0
- package/template/.pi/skills/formily-foundation/references/query-layout.md +50 -0
- package/template/.pi/skills/formily-linkage-effects/SKILL.md +3 -116
- package/template/.pi/skills/formily-linkage-effects/references/linkage-example.md +116 -0
- package/template/.pi/skills/formily-mode-slot-detail/SKILL.md +3 -81
- package/template/.pi/skills/formily-mode-slot-detail/references/mode-slot-example.md +81 -0
- package/template/.pi/skills/formily-step-flow/SKILL.md +3 -143
- package/template/.pi/skills/formily-step-flow/references/step-flow-example.md +143 -0
- package/template/.pi/skills/handoff/SKILL.md +3 -1
- package/template/.pi/skills/i-have-adhd/SKILL.md +2 -2
- package/template/.pi/skills/i-have-adhd/references/yss-adaptation.md +2 -2
- package/template/.pi/skills/i-have-adhd/tests/verify-integration.mjs +7 -2
- package/template/.pi/skills/implement/SKILL.md +2 -2
- package/template/.pi/skills/llm-wiki/references/transactions.md +2 -2
- package/template/.pi/skills/llm-wiki/scripts/core.mjs +40 -2
- package/template/.pi/skills/llm-wiki/scripts/transaction.mjs +30 -27
- package/template/.pi/skills/llm-wiki/scripts/v2.test.mjs +38 -2
- package/template/.pi/skills/lombok/SKILL.md +2 -0
- package/template/.pi/skills/mapstruct/SKILL.md +2 -0
- package/template/.pi/skills/tdd/SKILL.md +2 -2
- package/template/.pi/skills/theme-token-usage/SKILL.md +6 -5
- package/template/.pi/skills/wayfinder/references/chart-map.md +2 -2
- package/template/.pi/skills/wayfinder/references/ticket-types.md +1 -1
- package/template/.pi/skills/yss-api-integration/SKILL.md +13 -50
- package/template/.pi/skills/yss-api-integration/references/orval-list-example.md +38 -0
- package/template/.pi/skills/yss-application/SKILL.md +11 -5
- package/template/.pi/skills/yss-audit-log/SKILL.md +8 -6
- package/template/.pi/skills/yss-audit-log/references/README.md +5 -5
- package/template/.pi/skills/yss-cache/SKILL.md +4 -4
- package/template/.pi/skills/yss-ddd-scaffold-generator/SKILL.md +7 -8
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/USAGE_EXAMPLES.md +13 -6
- package/template/.pi/skills/yss-ddd-scaffold-generator/references/command-examples.md +2 -0
- package/template/.pi/skills/yss-ddd-scaffold-generator/scripts/scaffold-generator.test.mjs +28 -1
- package/template/.pi/skills/yss-design-system/SKILL.md +2 -2
- package/template/.pi/skills/yss-distributed-id/SKILL.md +4 -4
- package/template/.pi/skills/yss-dto/SKILL.md +9 -9
- package/template/.pi/skills/yss-dto/references/README.md +4 -4
- package/template/.pi/skills/yss-dto/references/wire-validation-checklist.md +4 -4
- package/template/.pi/skills/yss-excel-mvc/SKILL.md +4 -4
- package/template/.pi/skills/yss-exception/SKILL.md +42 -48
- package/template/.pi/skills/yss-formily-schema-generator/SKILL.md +26 -170
- package/template/.pi/skills/yss-formily-schema-generator/references/workflow.md +49 -193
- package/template/.pi/skills/yss-frontend-scaffold-generator/SKILL.md +14 -10
- package/template/.pi/skills/yss-implementation-contract-compiler/SKILL.md +2 -6
- package/template/.pi/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +15 -1
- package/template/.pi/skills/yss-layered-mvc-scaffold-generator/SKILL.md +1 -1
- package/template/.pi/skills/yss-mybatis/SKILL.md +4 -4
- package/template/.pi/skills/yss-openapi-draft-review/SKILL.md +6 -4
- package/template/.pi/skills/yss-openapi-draft-review/references/review-output.md +2 -0
- package/template/.pi/skills/yss-openapi-draft-review/references/semantic-review.md +3 -3
- package/template/.pi/skills/yss-openapi-governance/SKILL.md +5 -7
- package/template/.pi/skills/yss-openapi-governance/references/governance-output.md +2 -0
- package/template/.pi/skills/yss-openapi-governance/references/governance-workflow.md +3 -3
- package/template/.pi/skills/yss-product-lifecycle/SKILL.md +23 -21
- package/template/.pi/skills/yss-product-lifecycle/references/artifact-dependencies.md +1 -1
- package/template/.pi/skills/yss-product-lifecycle/references/matt-yss-adapter.md +25 -5
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration-contract.yaml +100 -4
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +35 -12
- package/template/.pi/skills/yss-product-lifecycle/references/state-model.md +3 -1
- package/template/.pi/skills/yss-product-lifecycle/references/user-decisions.md +3 -3
- package/template/.pi/skills/yss-prototype-stage/SKILL.md +1 -5
- package/template/.pi/skills/yss-repository/SKILL.md +2 -2
- package/template/.pi/skills/yss-research/SKILL.md +39 -48
- package/template/.pi/skills/yss-research/assets/competitive-evidence-template.yaml +146 -0
- package/template/.pi/skills/yss-research/references/competitive-analysis.md +76 -0
- package/template/.pi/skills/yss-research/references/competitive-analysis.schema.json +324 -0
- package/template/.pi/skills/yss-research/references/evidence-contract.md +8 -0
- package/template/.pi/skills/yss-research/scripts/lib/competitive-analysis.mjs +185 -0
- package/template/.pi/skills/yss-research/scripts/render-competitive-outputs.mjs +16 -0
- package/template/.pi/skills/yss-research/scripts/validate-research-package.mjs +6 -2
- package/template/.pi/skills/yss-research/tests/competitive-scenarios.test.mjs +270 -0
- package/template/.pi/skills/yss-resilience4j/SKILL.md +25 -31
- package/template/.pi/skills/yss-security-algorithm/SKILL.md +37 -43
- package/template/.pi/skills/yss-skill-source-index-refresh/SKILL.md +29 -36
- package/template/.pi/skills/yss-skill-source-index-refresh/references/backend-component-platform-compatibility.md +1 -1
- package/template/.pi/skills/yss-stage-decision/SKILL.md +2 -5
- package/template/.pi/skills/yss-tactical-design/SKILL.md +1 -1
- package/template/.pi/skills/yss-tactical-design/references/output-template.md +3 -3
- package/template/.pi/skills/yss-tactical-design/references/tactical-design-contract.md +1 -1
- package/template/.pi/skills/yss-technical-design/SKILL.md +6 -5
- package/template/.pi/skills/yss-ui/SKILL.md +7 -1
- package/template/.pi/skills/yss-ui/assets/docs/guide/gitlab-ci-integration.md +2 -2
- package/template/.pi/skills/yss-ui/references/checklist.md +38 -96
- package/template/.pi/skills/yss-ui/references/component-routing.md +3 -1
- package/template/.pi/skills/yss-ui/references/quick-recipes.md +17 -272
- package/template/.pi/skills/yss-ui/references/specialized-components.md +3 -3
- package/template/.pi/skills/yss-ui-business-page-generation/SKILL.md +1 -1
- package/template/.pi/skills/yss-up-springboot3/SKILL.md +19 -21
- package/template/.pi/skills/yss-userinfo/SKILL.md +27 -33
- package/template/.pi/skills/yss-validation/SKILL.md +26 -32
- package/template/.pi/skills/yss-web-controller/SKILL.md +11 -44
- package/template/.pi/skills/yss-web-controller/references/crud-generation.md +38 -0
- package/template/.pi/skills/ytable-usage/SKILL.md +2 -2
- package/template/.pi/skills/ytree-usage/SKILL.md +2 -80
- package/template/.pi/skills/ytree-usage/references/tree-and-confirmation-example.md +81 -0
- package/template/.template-spec/agents/backend-architecture-profiles.md +1 -1
- package/template/.template-spec/agents/digital-human-roles.md +5 -1
- package/template/.template-spec/agents/digital-human-roles.yaml +49 -1
- package/template/.template-spec/engineering/backend-platforms.json +1 -1
- package/template/.template-spec/plan/templates/competitive-analysis-template.md +38 -36
- package/template/.template-spec/plan/templates/competitive-matrix-template.md +37 -17
- package/template/.template-spec/process/document-writing.md +22 -3
- package/template/.template-spec/process/harness-process-tailoring.md +5 -1
- package/template/.template-spec/process/implementation-repo-integration.md +26 -8
- package/template/.template-spec/process/research-completion.md +2 -0
- package/template/.template-spec/process/runtime-storage.md +78 -0
- package/template/.template-spec/process/schemas/approval-context.schema.json +67 -0
- package/template/.template-spec/process/schemas/approval-record.schema.json +179 -16
- package/template/.template-spec/process/schemas/backend-delivery.schema.json +16 -0
- package/template/.template-spec/process/schemas/delivery-preflight-input.schema.json +4 -0
- package/template/.template-spec/process/schemas/digital-human-task-package.schema.json +236 -1
- package/template/.template-spec/process/schemas/implementation-repository-preparation-result.schema.json +335 -52
- package/template/.template-spec/process/schemas/lifecycle-checkpoint.schema.json +11 -0
- package/template/.template-spec/process/schemas/project-scaffold-contract.schema.json +3 -0
- package/template/.template-spec/process/schemas/review-bundle.schema.json +347 -35
- package/template/.template-spec/process/schemas/strategic-design-handoff-v3.schema.json +504 -0
- package/template/.template-spec/process/schemas/strategic-design-handoff-v4.schema.json +544 -8
- package/template/.template-spec/process/schemas/strategic-design-handoff-v5.schema.json +616 -0
- package/template/.template-spec/process/schemas/strategic-design-handoff.schema.json +616 -0
- package/template/.template-spec/process/schemas/strategic-handoff-domain-strategy-v3.schema.json +712 -109
- package/template/.template-spec/process/schemas/strategic-handoff-domain-strategy.schema.json +595 -90
- package/template/.template-spec/process/schemas/strategic-handoff-export-v2.schema.json +448 -0
- package/template/.template-spec/process/schemas/strategic-handoff-export.schema.json +392 -0
- package/template/.template-spec/process/schemas/strategic-handoff-stage-decision-package-v3.schema.json +556 -83
- package/template/.template-spec/process/schemas/strategic-handoff-stage-decision-package.schema.json +418 -57
- package/template/.template-spec/process/subagent-collaboration.md +7 -1
- package/template/.template-spec/templates/approval-record-template.json +7 -3
- package/template/.template-spec/templates/approval-record-template.yaml +8 -2
- package/template/.template-spec/templates/examples/lifecycle-writing-examples.md +92 -2
- package/template/.template-spec/templates/retro-report-template.md +10 -3
- package/template/.template-spec/templates/review-bundle-template.yaml +19 -10
- package/template/AGENTS.md +4 -3
- package/template/CONTEXT.md +2 -2
- package/template/README.md +2 -2
- package/template/scripts/advance-maintenance-iteration +51 -0
- package/template/scripts/lib/approval-checkpoint-discovery.mjs +26 -0
- package/template/scripts/lib/approval-consumption.mjs +35 -0
- package/template/scripts/lib/approval-current.mjs +111 -0
- package/template/scripts/lib/approval-record-io.mjs +56 -0
- package/template/scripts/lib/approval-record.mjs +79 -184
- package/template/scripts/lib/approved-execution-context.mjs +8 -6
- package/template/scripts/lib/asset-transactions.mjs +5 -1
- package/template/scripts/lib/backend-delivery.mjs +1 -1
- package/template/scripts/lib/backend-review.mjs +2 -1
- package/template/scripts/lib/backend-scaffold-prerequisites.mjs +3 -2
- package/template/scripts/lib/business-ticket-lifecycle.mjs +2 -1
- package/template/scripts/lib/checkpoint-commit.mjs +50 -0
- package/template/scripts/lib/command-runner.mjs +44 -9
- package/template/scripts/lib/content-identity.mjs +273 -0
- package/template/scripts/lib/delivery-preflight.mjs +2 -1
- package/template/scripts/lib/digital-human-roles.mjs +12 -5
- package/template/scripts/lib/drift-report.mjs +110 -0
- package/template/scripts/lib/existing-backend-architecture.mjs +4 -1
- package/template/scripts/lib/lifecycle-context-query.mjs +172 -11
- package/template/scripts/lib/lifecycle-controls.mjs +9 -19
- package/template/scripts/lib/lifecycle-presentation.mjs +5 -0
- package/template/scripts/lib/lifecycle-status.mjs +63 -12
- package/template/scripts/lib/lifecycle-transition.mjs +2 -1
- package/template/scripts/lib/maintenance-candidate.mjs +24 -30
- package/template/scripts/lib/maintenance-research.mjs +52 -8
- package/template/scripts/lib/maintenance-storage.mjs +81 -0
- package/template/scripts/lib/plan-spec-entry.mjs +2 -1
- package/template/scripts/lib/project-governance.mjs +2 -1
- package/template/scripts/lib/read-only-intake.mjs +44 -9
- package/template/scripts/lib/review-capabilities.mjs +234 -0
- package/template/scripts/lib/review-package.mjs +100 -0
- package/template/scripts/lib/runtime-store.mjs +650 -0
- package/template/scripts/lib/skill-registry.mjs +4 -4
- package/template/scripts/lib/strategic-handoff.mjs +22 -9
- package/template/scripts/lib/task-package.mjs +47 -16
- package/template/scripts/lifecycle-status +26 -1
- package/template/scripts/maintenance-path +11 -0
- package/template/scripts/prepare-review-package +8 -0
- package/template/scripts/project-ci +13 -3
- package/template/scripts/query-lifecycle-context +8 -1
- package/template/scripts/run-read-only-intake +2 -2
- package/template/scripts/runtime-store +40 -0
- package/template/scripts/verify-approval-record +21 -13
- package/template/scripts/verify-lifecycle-checkpoint +7 -3
- package/template/scripts/verify-project-instance +21 -1
- package/template/skills-lock.json +62 -61
- package/template.snapshot.json +4 -4
- package/vendor/cli-core/cli.mjs +2 -0
- package/vendor/cli-core/command-runner.mjs +44 -9
- package/vendor/cli-core/package.json +1 -1
- package/vendor/cli-core/runtime-store.mjs +650 -0
- package/vendor/cli-core/scaffold.mjs +4 -2
- package/vendor/cli-core/tests/package-contract.mjs +14 -0
|
@@ -3,187 +3,43 @@ name: yss-formily-schema-generator
|
|
|
3
3
|
description: "从需求或设计图生成 YFormily JSON Schema 与表单代码;仅用于生产表单实现。"
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# YFormily Schema
|
|
6
|
+
# YFormily Schema 生成
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
将文字需求、产品 / UX 说明、截图、本地图片或 Figma 设计输入转成生产表单的 `JSON Schema` / `ISchema`、推荐 model,以及按需的 scope、effects、插槽和 Vue 渲染示例。本技能设计 schema;精确组件行为由 [YFormily 路由](../yss-formily/SKILL.md)及实际命中的基础、联动、模式和分步专项决定。
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
## 触发与必要输入
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
- product or UX requirements
|
|
14
|
-
- screenshots and local images
|
|
15
|
-
- Figma links or node-based design references
|
|
12
|
+
用户要求根据需求、原型图、截图、Figma 或业务字段生成 YFormily schema / 渲染代码时使用。这里将已提供的设计转为生产表单,不生成产品原型。
|
|
16
13
|
|
|
17
|
-
|
|
14
|
+
确认表单用途、目标模式(查询 / 新增 / 编辑 / 查看 / 混合)、允许输出范围和可读上游输入。正式生产实现继续消费当前批准的 Slice Implementation Contract;本技能输出不授予实现或批准资格。字段语义、校验和接口模型以已确认需求与冻结合同为准,目标组件事实以工程版本、类型和真实导出为准。
|
|
18
15
|
|
|
19
|
-
|
|
20
|
-
- a recommended `v-model` data shape
|
|
21
|
-
- optional `scope`, `effects`, and slot plan
|
|
22
|
-
- optional Vue render snippet showing how to mount `YFormily`
|
|
16
|
+
转换字段、布局、校验、联动或插槽时,读取 [转换工作流](references/workflow.md)相应部分;不要求为了单一字段调整读取全部样例。
|
|
23
17
|
|
|
24
|
-
|
|
25
|
-
For implementation rules and exact YFormily behavior, also read:
|
|
18
|
+
## 按输入选择方法
|
|
26
19
|
|
|
27
|
-
|
|
20
|
+
| 输入 | 提取内容 | 不能从输入补造的内容 |
|
|
21
|
+
|---|---|---|
|
|
22
|
+
| 文字需求 | 用途、模式、分组、字段、必填规则、字典、联动和动作区 | 缺失的后端字典、阈值、权限和业务承诺 |
|
|
23
|
+
| 截图 / 图片 | 区域、标签、控件、按钮、必填标记与可见依赖;先区分 placeholder 和标签 | 隐藏校验、异步规则、唯一性或服务端行为。只有视觉线索时输出 schema 骨架并标明不确定项 |
|
|
24
|
+
| Figma 链接 / 节点 | 先发现可用设计读取能力,再提取语义标签、控件、分组、helper、必填提示、只读模式和底部动作 | 不猜工具名称或声称读取成功;能力缺失时使用已有导出 / 截图,仍不足以确认必要细节时报告访问缺口 |
|
|
28
25
|
|
|
29
|
-
|
|
26
|
+
按“业务意图 → 字段语义 → 已确认的校验与依赖 → 布局分组 → schema”转换,不机械照搬像素或设计图层名。合理默认只用于明确标注的控件与布局建议;业务规则缺口保持未确认。
|
|
30
27
|
|
|
31
|
-
|
|
28
|
+
## Schema 与默认选择
|
|
32
29
|
|
|
33
|
-
|
|
30
|
+
- 新代码使用 `YFormily`;历史 `YssFormily` 只在当前已安装兼容导出得到确认时使用。
|
|
31
|
+
- 布局为 `FormLayout -> FormGrid -> 字段`,普通字段使用 `FormItem`;新建 / 编辑 / 查看可共用 schema 时优先复用。
|
|
32
|
+
- 查看态按 `mode=2` 与必要的 `detail-*` 插槽处理;富输入使用 `Slot`。不依赖 React Formily UI 包,底层行为按安装的 Ant Design Vue。
|
|
33
|
+
- 字段 key 稳定且有业务含义,分组反映领域语义;清楚区分已确认的必填 / 可选、联动 / 只读与待确认项,不臆造字典或隐藏异步校验。
|
|
34
|
+
- 不因视觉有分组就将所有字段压平。无法推断的业务规则留在假设 / 未决项中,不转换成已确认校验。
|
|
34
35
|
|
|
35
|
-
|
|
36
|
+
未提供其他选择时,可建议:文本 `Input`,长说明 `Input.TextArea`,布尔 `Switch`,单选 `Select` / `Radio.Group`,日期 `DatePicker`,分组 `GroupHeader`。纯 Formily 提交的底部动作可用 `AutoButtonGroup`;业务列表查询区按 `formily-foundation` 使用外部 YButton 查询 / 重置。默认建议以保守、可解释为准,不能覆盖已有代码或用户输入。
|
|
36
37
|
|
|
37
|
-
|
|
38
|
-
- “根据原型图生成 YFormily”
|
|
39
|
-
- “根据图片/截图还原表单”
|
|
40
|
-
- “根据 Figma 生成表单 JSON Schema”
|
|
41
|
-
- “把业务字段整理成 YFormily schema”
|
|
42
|
-
- “输出 schema 和渲染代码”
|
|
38
|
+
## 执行与输出
|
|
43
39
|
|
|
44
|
-
|
|
40
|
+
1. 确认输入来源、业务用途与模式,规范化字段列表。
|
|
41
|
+
2. 选择字段类型、控件、分组和跨度,提取已确认的校验、enum 与联动;对不确定推断保留来源和假设。
|
|
42
|
+
3. 生成 schema 与 model,按实际命中的 Formily 专项校验;请求代码时再生成必要的 scope、effects、插槽计划和 Vue 挂载示例。
|
|
43
|
+
4. 核对稳定字段、业务分组、必填 / 可选、只读 / 联动与上游输入一致。冲突或必要细节不可读时保留缺口,回交原所有者,不能写成已确认结果。
|
|
45
44
|
|
|
46
|
-
|
|
47
|
-
Translate the input into a stable form model:
|
|
48
|
-
|
|
49
|
-
1. business intent
|
|
50
|
-
2. field semantics
|
|
51
|
-
3. validation and dependency rules
|
|
52
|
-
4. layout grouping
|
|
53
|
-
5. YFormily schema
|
|
54
|
-
|
|
55
|
-
The schema must reflect business meaning, not just pixel arrangement.
|
|
56
|
-
|
|
57
|
-
## Input-specific workflow
|
|
58
|
-
|
|
59
|
-
### Text requirement
|
|
60
|
-
|
|
61
|
-
Extract, in order:
|
|
62
|
-
|
|
63
|
-
1. form purpose
|
|
64
|
-
2. mode: query, create, edit, detail, mixed
|
|
65
|
-
3. sections or groups
|
|
66
|
-
4. fields
|
|
67
|
-
5. required rules
|
|
68
|
-
6. options or dictionaries
|
|
69
|
-
7. linkage rules
|
|
70
|
-
8. submit and action area
|
|
71
|
-
|
|
72
|
-
If some details are missing, make reasonable defaults and state the assumptions.
|
|
73
|
-
|
|
74
|
-
### Screenshot or image
|
|
75
|
-
|
|
76
|
-
Treat image understanding as approximate.
|
|
77
|
-
First identify:
|
|
78
|
-
|
|
79
|
-
- section boundaries
|
|
80
|
-
- labels
|
|
81
|
-
- control types
|
|
82
|
-
- action buttons
|
|
83
|
-
- required markers
|
|
84
|
-
- visible dependency hints
|
|
85
|
-
|
|
86
|
-
Infer likely field types from UI controls, but do not overclaim hidden business rules from appearance alone.
|
|
87
|
-
If the image contains only visual cues and no validation semantics, generate a schema skeleton and explicitly mark uncertain fields.
|
|
88
|
-
|
|
89
|
-
### Figma input
|
|
90
|
-
|
|
91
|
-
When a Figma link or node is provided, discover an available design-inspection capability first. If unavailable, use supplied design exports or screenshots; report the missing access when those cannot establish a required detail. Do not invent a tool name or claim inspection succeeded.
|
|
92
|
-
Extract:
|
|
93
|
-
|
|
94
|
-
- field labels
|
|
95
|
-
- control kinds
|
|
96
|
-
- layout groups
|
|
97
|
-
- helper text
|
|
98
|
-
- required indicators
|
|
99
|
-
- readonly versus editable patterns
|
|
100
|
-
- footer actions
|
|
101
|
-
|
|
102
|
-
Then convert that structure to YFormily, following local YSS conventions instead of raw design-tool naming.
|
|
103
|
-
|
|
104
|
-
## Required outputs
|
|
105
|
-
|
|
106
|
-
Unless the user asks for less, produce these artifacts:
|
|
107
|
-
|
|
108
|
-
1. schema
|
|
109
|
-
2. model shape
|
|
110
|
-
3. assumptions
|
|
111
|
-
4. open questions only if they block correctness
|
|
112
|
-
|
|
113
|
-
If the user asks for code generation, also produce:
|
|
114
|
-
|
|
115
|
-
5. `scope` plan
|
|
116
|
-
6. `effects` plan if needed
|
|
117
|
-
7. Vue usage snippet
|
|
118
|
-
|
|
119
|
-
## Schema design rules
|
|
120
|
-
|
|
121
|
-
Always align with `yss-formily`:
|
|
122
|
-
|
|
123
|
-
- wrapper component for new code is `YFormily`; the historical `YssFormily` alias is accepted only when an existing installed export is verified
|
|
124
|
-
- schema is `FormLayout -> FormGrid -> fields`
|
|
125
|
-
- use `FormItem` for ordinary fields
|
|
126
|
-
- prefer one shared schema for create/edit/detail when feasible
|
|
127
|
-
- for detail rendering, plan `mode=2` and `detail-*` slots where needed
|
|
128
|
-
- rich custom input uses `Slot`
|
|
129
|
-
|
|
130
|
-
Do not emit schema that depends on React Formily UI packages.
|
|
131
|
-
Treat Ant Design Vue semantics as the underlying component behavior.
|
|
132
|
-
|
|
133
|
-
## Output quality bar
|
|
134
|
-
|
|
135
|
-
A good generated schema should:
|
|
136
|
-
|
|
137
|
-
- have stable field keys
|
|
138
|
-
- use domain-oriented group names
|
|
139
|
-
- distinguish required from optional fields
|
|
140
|
-
- choose plausible component types
|
|
141
|
-
- reflect obvious linkage and readonly behavior
|
|
142
|
-
- leave non-inferable business rules as assumptions instead of hallucinating them
|
|
143
|
-
|
|
144
|
-
## Generation sequence
|
|
145
|
-
|
|
146
|
-
Follow this sequence every time:
|
|
147
|
-
|
|
148
|
-
1. Classify the input source.
|
|
149
|
-
2. Extract business structure.
|
|
150
|
-
3. Normalize field list.
|
|
151
|
-
4. Decide field types and components.
|
|
152
|
-
5. Decide sections and layout spans.
|
|
153
|
-
6. Identify validation, enum, and linkage requirements.
|
|
154
|
-
7. Produce YFormily schema.
|
|
155
|
-
8. Produce render snippet if requested.
|
|
156
|
-
9. Call out assumptions and uncertain inferences.
|
|
157
|
-
|
|
158
|
-
## When the input is incomplete
|
|
159
|
-
|
|
160
|
-
Use these defaults unless the existing code or user input says otherwise:
|
|
161
|
-
|
|
162
|
-
- text fields -> `Input`
|
|
163
|
-
- long description -> `Input.TextArea`
|
|
164
|
-
- boolean toggle -> `Switch`
|
|
165
|
-
- single choice -> `Select` or `Radio.Group`
|
|
166
|
-
- date -> `DatePicker`
|
|
167
|
-
- grouped sections -> `GroupHeader`
|
|
168
|
-
- footer buttons -> `AutoButtonGroup`
|
|
169
|
-
|
|
170
|
-
Prefer conservative defaults over speculative complexity.
|
|
171
|
-
|
|
172
|
-
## Do not do these things
|
|
173
|
-
|
|
174
|
-
- Do not invent backend dictionaries that were never described.
|
|
175
|
-
- Do not infer hidden async validation from visuals alone.
|
|
176
|
-
- Do not flatten all fields into one group if the input clearly has sections.
|
|
177
|
-
- Do not produce only a screenshot-level description when the user asked for schema.
|
|
178
|
-
- Do not skip assumptions when confidence is low.
|
|
179
|
-
|
|
180
|
-
## Recommended final structure
|
|
181
|
-
|
|
182
|
-
When delivering a full conversion, prefer this output order:
|
|
183
|
-
|
|
184
|
-
1. brief understanding
|
|
185
|
-
2. assumptions
|
|
186
|
-
3. field model
|
|
187
|
-
4. schema
|
|
188
|
-
5. optional render snippet
|
|
189
|
-
6. optional next-step questions
|
|
45
|
+
除非用户要求更少,返回简短理解、假设、字段 model、schema,以及真正阻断正确性的未决问题。请求代码时追加 scope 计划、必要的 effects 计划和 Vue 示例;不只描述截图,也不在低置信度时省略假设。
|
|
@@ -1,160 +1,41 @@
|
|
|
1
|
-
#
|
|
1
|
+
# YFormily Schema 转换工作流
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
从文字、图片或 Figma 转换表单时,按当前输入读取相关部分。先由 [YFormily 场景路由](../../yss-formily/SKILL.md)选择必要专项;精确 API、三层布局、提交和错误处理仍由已安装的 `formily-foundation` 决定,联动、详情与分步由实际命中的原专项决定。
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
公开技能包提供本工作流和所链接的公共路由、组件资料,不附带 `formily-foundation`、`formily-linkage-effects`、`formily-mode-slot-detail` 或 `formily-step-flow`。本地已安装时,原专项仍是对应规则的唯一所有者;公共路由和部分 Demo 不替代专项规范。必要专项缺失或不可读时,停止受影响的生产 schema / 渲染实现,报告缺失 Skill 与来源;从消费工程已登记的技能来源恢复,核验版本与项目基线一致并重新读取后再继续。
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
## 确认用途与字段模型
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
| --- | --- |
|
|
11
|
-
| 查询表单 | 筛选、搜索、重置、查询、导出 |
|
|
12
|
-
| 新增表单 | 新建、创建、录入、保存 |
|
|
13
|
-
| 编辑表单 | 编辑、更新、修改 |
|
|
14
|
-
| 详情表单 | 查看、详情、只读、描述列表 |
|
|
15
|
-
| 复合表单 | 同页同时支持新增/编辑/查看 |
|
|
9
|
+
先确认目标是查询、新增、编辑、详情还是复合表单,以及输出是 schema、schema + 渲染示例,还是 schema + model + scope/effects 计划。
|
|
16
10
|
|
|
17
|
-
|
|
11
|
+
| 字段信息 | 要确认的含义 |
|
|
12
|
+
|---|---|
|
|
13
|
+
| key / title / type | 稳定业务字段名、显示标签与业务数据类型 |
|
|
14
|
+
| component / required | 控件和已确认的必填规则 |
|
|
15
|
+
| group / span | 分组位置与布局宽度 |
|
|
16
|
+
| enum source / linkage | 静态或远程来源、依赖及影响的字段 |
|
|
17
|
+
| custom render | 编辑 Slot 或 detail slot 的需要 |
|
|
18
18
|
|
|
19
|
-
|
|
20
|
-
- schema + render snippet
|
|
21
|
-
- schema + data model + scope/effects plan
|
|
19
|
+
没有显式 key 时建议稳定业务名称,不使用 `input1`、`selectA`、`fieldLeft`。建议不替代冻结 DTO 和统一业务词汇。
|
|
22
20
|
|
|
23
|
-
##
|
|
21
|
+
## 控件、分组与跨度
|
|
24
22
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
|
28
|
-
|
|
|
29
|
-
| key | stable field name |
|
|
30
|
-
| title | display label |
|
|
31
|
-
| type | business data type |
|
|
32
|
-
| component | YssFormily component |
|
|
33
|
-
| required | whether mandatory |
|
|
34
|
-
| group | section placement |
|
|
35
|
-
| span | layout width |
|
|
36
|
-
| enum source | static or remote |
|
|
37
|
-
| linkage | depends on or affects other fields |
|
|
38
|
-
| custom render | slot/detail slot needed or not |
|
|
39
|
-
|
|
40
|
-
If a field key is not explicit, generate a stable domain name.
|
|
41
|
-
Avoid UI-only names such as `input1`, `selectA`, `fieldLeft`.
|
|
42
|
-
|
|
43
|
-
## 3. Component mapping heuristics
|
|
44
|
-
|
|
45
|
-
Use these defaults:
|
|
46
|
-
|
|
47
|
-
| Input clue | Preferred YssFormily component |
|
|
48
|
-
| --- | --- |
|
|
49
|
-
| 单行文本 | `Input` |
|
|
50
|
-
| 多行说明 | `Input.TextArea` |
|
|
51
|
-
| 单选下拉 | `Select` |
|
|
52
|
-
| 单选按钮 | `Radio.Group` |
|
|
23
|
+
| 输入线索 | 默认建议 |
|
|
24
|
+
|---|---|
|
|
25
|
+
| 单行 / 多行文本 | `Input` / `Input.TextArea` |
|
|
26
|
+
| 单选下拉 / 单选按钮 | `Select` / `Radio.Group` |
|
|
53
27
|
| 开关 | `Switch` |
|
|
54
|
-
| 日期 | `DatePicker` |
|
|
55
|
-
| 日期区间 | `DatePicker.RangePicker` |
|
|
28
|
+
| 日期 / 日期区间 | `DatePicker` / `DatePicker.RangePicker` |
|
|
56
29
|
| 数值 | `InputNumber` |
|
|
57
|
-
| 多选标签 | `Select`
|
|
58
|
-
|
|
|
30
|
+
| 多选标签 | `Select` 多选模式 |
|
|
31
|
+
| 上传 | `Upload` |
|
|
59
32
|
| 可重复行 | `ArrayItems` |
|
|
60
33
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
- use `Slot` for edit mode
|
|
64
|
-
- use `detail-*` slot for detail mode
|
|
65
|
-
|
|
66
|
-
Typical custom cases:
|
|
67
|
-
|
|
68
|
-
- SQL editor
|
|
69
|
-
- code editor
|
|
70
|
-
- rich text
|
|
71
|
-
- complex helper panel
|
|
72
|
-
- embedded table or tree selector
|
|
73
|
-
|
|
74
|
-
## 4. Layout mapping heuristics
|
|
75
|
-
|
|
76
|
-
Convert visual grouping to YssFormily structure:
|
|
77
|
-
|
|
78
|
-
- page-level layout -> `FormLayout`
|
|
79
|
-
- grid rows and columns -> `FormGrid`
|
|
80
|
-
- section title -> `GroupHeader`
|
|
81
|
-
- footer actions -> `AutoButtonGroup`
|
|
82
|
-
|
|
83
|
-
Use `gridSpan` when:
|
|
84
|
-
|
|
85
|
-
- field is visually full width
|
|
86
|
-
- long text area spans across columns
|
|
87
|
-
- custom editor needs horizontal space
|
|
88
|
-
|
|
89
|
-
Conservative defaults:
|
|
90
|
-
|
|
91
|
-
- ordinary field: `gridSpan: 1`
|
|
92
|
-
- medium-wide field: `gridSpan: 2`
|
|
93
|
-
- editor-like block: `gridSpan: 3` if page is wide enough
|
|
94
|
-
|
|
95
|
-
## 5. Validation extraction
|
|
96
|
-
|
|
97
|
-
Confidence levels:
|
|
98
|
-
|
|
99
|
-
- high confidence:
|
|
100
|
-
required star, obvious numeric/date constraints, explicit helper text
|
|
101
|
-
- medium confidence:
|
|
102
|
-
common business conventions such as name required, code length hint
|
|
103
|
-
- low confidence:
|
|
104
|
-
hidden uniqueness checks, server-side validation, cross-form constraints
|
|
105
|
-
|
|
106
|
-
Only encode low-confidence validation if the user explicitly described it.
|
|
107
|
-
|
|
108
|
-
## 6. Linkage extraction
|
|
109
|
-
|
|
110
|
-
Map visible interactions into one of these:
|
|
111
|
-
|
|
112
|
-
| Situation | Mechanism |
|
|
113
|
-
| --- | --- |
|
|
114
|
-
| 简单显隐 | `x-visible` |
|
|
115
|
-
| 简单禁用 | `x-disabled` |
|
|
116
|
-
| 单字段依赖更新 | `x-reactions` |
|
|
117
|
-
| 调接口更新选项 | `scope` handler |
|
|
118
|
-
| 多字段协同或提交兜底 | `effects` |
|
|
119
|
-
|
|
120
|
-
Examples:
|
|
34
|
+
SQL、代码、富文本、复杂辅助区或嵌入表格 / 树选择器等自定义输入,编辑态用 `Slot`,查看态用 `detail-*` 插槽。实际是否可用仍核验目标版本与当前 schema 注册组件。
|
|
121
35
|
|
|
122
|
-
|
|
123
|
-
- “切换开关后禁用描述字段” -> `x-disabled`
|
|
124
|
-
- “选择省份后重置城市并更新选项” -> `x-reactions`
|
|
125
|
-
- “输入编码后查重” -> `scope` or async validator
|
|
126
|
-
- “提交失败统一 toast” -> `effects`
|
|
36
|
+
页面布局映射为 `FormLayout`、栅格为 `FormGrid`、分组标题为 `GroupHeader`。纯表单底部动作可用 `AutoButtonGroup`;业务列表查询区按下一节单独处理。横向表单显式设置 `labelWidth` 与 `labelAlign: 'right'`,栅格保持响应式。
|
|
127
37
|
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
Preferred answer skeleton:
|
|
131
|
-
|
|
132
|
-
```md
|
|
133
|
-
理解
|
|
134
|
-
|
|
135
|
-
假设
|
|
136
|
-
|
|
137
|
-
字段模型
|
|
138
|
-
|
|
139
|
-
```ts
|
|
140
|
-
// schema
|
|
141
|
-
...
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
```ts
|
|
145
|
-
// initial model shape
|
|
146
|
-
...
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
```vue
|
|
150
|
-
<!-- optional render snippet -->
|
|
151
|
-
...
|
|
152
|
-
```
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
## 8. Schema skeleton
|
|
156
|
-
|
|
157
|
-
Use this as the default starting point:
|
|
38
|
+
普通字段可建议 `gridSpan: 1`,较宽字段为 `2`,宽屏编辑器可为 `3`;长文本、满宽字段和自定义编辑器的跨度必须与实际栅格列数及窄屏行为匹配,不能只复制示例数字。
|
|
158
39
|
|
|
159
40
|
```ts
|
|
160
41
|
const schema: ISchema = {
|
|
@@ -163,14 +44,12 @@ const schema: ISchema = {
|
|
|
163
44
|
layout: {
|
|
164
45
|
type: 'void',
|
|
165
46
|
'x-component': 'FormLayout',
|
|
166
|
-
'x-component-props': {
|
|
167
|
-
layout: 'horizontal',
|
|
168
|
-
labelWidth: 120,
|
|
169
|
-
},
|
|
47
|
+
'x-component-props': { layout: 'horizontal', labelWidth: 120, labelAlign: 'right' },
|
|
170
48
|
properties: {
|
|
171
49
|
grid: {
|
|
172
50
|
type: 'void',
|
|
173
51
|
'x-component': 'FormGrid',
|
|
52
|
+
'x-component-props': { maxColumns: 2, minColumns: 1, minWidth: 320 },
|
|
174
53
|
properties: {},
|
|
175
54
|
},
|
|
176
55
|
},
|
|
@@ -179,62 +58,39 @@ const schema: ISchema = {
|
|
|
179
58
|
};
|
|
180
59
|
```
|
|
181
60
|
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
When the form is clearly a search form:
|
|
185
|
-
|
|
186
|
-
- keep fields compact
|
|
187
|
-
- avoid excessive required rules
|
|
188
|
-
- place actions in `AutoButtonGroup`
|
|
189
|
-
- include `Submit` and `Reset`
|
|
190
|
-
- prefer light linkage over complex `effects`
|
|
61
|
+
示例数字仅为起点,不决定目标页面的字段、列数或业务规则。
|
|
191
62
|
|
|
192
|
-
|
|
63
|
+
## 查询与详情的分支
|
|
193
64
|
|
|
194
|
-
- schema
|
|
195
|
-
- initial filter model
|
|
196
|
-
- submit/reset handlers through `scope`
|
|
65
|
+
业务查询表单保持紧凑,保留已确认的必填规则,不因常见习惯新增必填。YFormily 渲染字段,外部 YButton 查询 / 重置由 Hook 的 `handleSearch/handleReset` 维护同一参数源、回第一页并执行请求。动作区按 [业务页面查询区规则](../../yss-ui-business-page-generation/SKILL.md)核对,基础表单约束仍由已加载的 `formily-foundation` 决定;不将 schema 内 `AutoButtonGroup + Submit/Reset` 当作 CRUD 查询区默认方案。
|
|
197
66
|
|
|
198
|
-
|
|
67
|
+
查询输出包含 schema、初始筛选 model 和查询 / 重置处理计划。单纯 Formily 表单提交仍可按基础规范使用 schema 内按钮组。
|
|
199
68
|
|
|
200
|
-
|
|
69
|
+
详情或新增 / 编辑 / 查看复合表单确认 mode,不只生成可编辑控件。默认描述列表足够时不另造渲染;富格式、数组标签、代码或富文本查看器需要自定义 detail slot 时,按 [模式与插槽路由](../../yss-formily/SKILL.md)加载已安装的 `formily-mode-slot-detail`,由原专项确定规范。
|
|
201
70
|
|
|
202
|
-
|
|
203
|
-
- check whether detail mode needs custom slots
|
|
204
|
-
- do not generate editable controls only
|
|
205
|
-
- leverage default descriptions rendering when enough
|
|
71
|
+
## 校验与联动的依据
|
|
206
72
|
|
|
207
|
-
|
|
73
|
+
| 线索 | 如何处理 |
|
|
74
|
+
|---|---|
|
|
75
|
+
| 明确必填标记、数值 / 日期约束或 helper 文本 | 对照需求确认含义后编码 |
|
|
76
|
+
| 常见业务习惯、名称必填或长度暗示 | 保留建议与待确认项,不仅凭习惯把规则写入 schema |
|
|
77
|
+
| 隐藏唯一性、服务端或跨表校验 | 只有用户 / 权威需求已明确描述时编码 |
|
|
208
78
|
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
When converting from Figma:
|
|
216
|
-
|
|
217
|
-
- extract semantic labels, not layer IDs
|
|
218
|
-
- ignore purely decorative layers
|
|
219
|
-
- map helper text and required marks into schema rules
|
|
220
|
-
- convert footer buttons into action area, not ordinary fields
|
|
221
|
-
- infer full-width editors from large framed regions
|
|
222
|
-
|
|
223
|
-
Do not preserve design-only names such as:
|
|
79
|
+
| 当前任务 | 首选机制 |
|
|
80
|
+
|---|---|
|
|
81
|
+
| 简单显隐 / 禁用 | `x-visible` / `x-disabled` 表达式 |
|
|
82
|
+
| 单字段依赖更新 | `x-reactions` |
|
|
83
|
+
| 调接口更新选项或跨字段事件 | `scope` |
|
|
84
|
+
| 表单级多字段协同 | `effects` |
|
|
224
85
|
|
|
225
|
-
|
|
226
|
-
- `Input / Default`
|
|
227
|
-
- `Group 14`
|
|
86
|
+
例如数据源类型控制 JDBC 配置显示、开关控制字段禁用、省份控制城市选项与失效旧值,都需要确认字段路径和实际依赖。编码查重仅在已确认需求存在时实现。客户端提交校验失败反馈使用 `onFormSubmitValidateFailed`;API reject 仍由 mutator 统一提示,不能把“提交失败统一 toast”机械映射到通用 effects 失败回调。复杂或异步联动按 [联动场景路由](../../yss-formily/SKILL.md)加载已安装的 `formily-linkage-effects`,由原专项处理初始化、合法回填、竞态和卸载。
|
|
228
87
|
|
|
229
|
-
|
|
88
|
+
## Figma 与图片检查
|
|
230
89
|
|
|
231
|
-
|
|
90
|
+
Figma 读取语义标签,不沿用 `Frame 123`、`Input / Default`、`Group 14` 等设计图层名;忽略纯装饰层,把 helper 与必填提示作为需核对的规则线索。底部按钮转成动作区,宽框编辑器结合实际空间安排满宽。
|
|
232
91
|
|
|
233
|
-
|
|
92
|
+
截图先区分 placeholder 与标签,识别 Tab / 分段控制是否意味着条件区,确认大框是自定义编辑器还是 textarea。图像理解是近似的,低置信度时输出可审阅骨架并记录不确定项,不制造精确业务规则。
|
|
234
93
|
|
|
235
|
-
|
|
236
|
-
- watch for tabs or segmented controls that imply conditional sections
|
|
237
|
-
- identify whether a box is a custom editor or just a textarea
|
|
238
|
-
- keep uncertain parts in assumptions
|
|
94
|
+
## 输出与自检
|
|
239
95
|
|
|
240
|
-
|
|
96
|
+
按“简短理解 → 假设 → 字段模型 → schema → 按需 model / 渲染示例”组织。JSON / TS 标识保持原样,假设与已确认规则分开。检查字段稳定、分组有业务含义、必填 / 可选和只读 / 联动与输入一致,所需 API 与插槽来自当前版本。只剩真正阻断正确性的未决问题时交回所有者;文档输出不改变原合同状态或批准。
|
|
@@ -7,7 +7,7 @@ description: Use when creating a new YSS frontend micro-application from the sta
|
|
|
7
7
|
|
|
8
8
|
用于从标准 YSS 前端模板创建 0-1 前端微应用工程。它只在阶段 5 的 `work-unit.implementation-repository-preparation` 中消费生命周期批准、持久化且当前的 Project Scaffold Contract schema v4,执行 `controlled-generation`;不生成业务页面。
|
|
9
9
|
|
|
10
|
-
##
|
|
10
|
+
## 模板来源
|
|
11
11
|
|
|
12
12
|
默认使用随 Skill 分发的 `assets/data-quality-v1/`,从 Data Quality 抽取工作区、主题与微应用模式,重建为通用空骨架。来源、差异、支持范围见 `references/data-quality-baseline.md`;`references/data-quality-v1.manifest.json` 是文件白名单与 SHA-256 依据。
|
|
13
13
|
|
|
@@ -17,22 +17,26 @@ description: Use when creating a new YSS frontend micro-application from the sta
|
|
|
17
17
|
|
|
18
18
|
兼容已有 `{ repository, commit }` 合同:只有明确选择外部 Git 模板时传 `--template-checkout` 并核验 origin 与精确 40 位 commit;不再默认从私网浮动分支获取模板。
|
|
19
19
|
|
|
20
|
-
##
|
|
20
|
+
## 必要输入
|
|
21
21
|
|
|
22
22
|
- `app_name`:应用名。
|
|
23
23
|
- `microapp_name`:微应用注册名。
|
|
24
24
|
- `base_route`:基础路由。
|
|
25
25
|
- Project Scaffold Contract schema v4:包含用户确认的仓库 scope、目标路径、`init_git`、模板 manifest 摘要或 Git commit、应用参数、允许写路径和验证命令。
|
|
26
26
|
- OpenAPI Freeze 记录:有 API 影响时提供已批准的冻结 YAML 版本和引用;无 API 影响时提供带原因的 `not-applicable`。
|
|
27
|
-
- OpenAPI JSON 派生记录:`docs/.scratch/<feature>/api/<feature>-json-export.md`,包含 YAML / JSON SHA-256、Redocly CLI 版本和 lockfile 引用。
|
|
28
|
-
-
|
|
27
|
+
- 有 API 影响时提供 OpenAPI JSON 派生记录:`docs/.scratch/<feature>/api/<feature>-json-export.md`,包含 YAML / JSON SHA-256、Redocly CLI 版本和 lockfile 引用。
|
|
28
|
+
- 有 API 影响时提供冻结 JSON 产物:`docs/.scratch/<feature>/api/<feature>.json`;这是唯一允许交给既有前端代码生成流程的上游产物。无 API 影响时沿用带原因的 `not-applicable`,不生成占位 JSON 或 API client。
|
|
29
29
|
- `target_git_url` 或 `output_dir`:目标实现仓库或本地输出目录。
|
|
30
30
|
- `package_manager`:默认 pnpm。
|
|
31
31
|
- `init_git`:是否初始化 Git;默认必须用户明确确认。
|
|
32
32
|
|
|
33
|
-
##
|
|
33
|
+
## 执行与停止条件
|
|
34
34
|
|
|
35
|
-
采用专职前端 profile 或显式 `frontend_delivery`
|
|
35
|
+
采用专职前端 profile 或显式 `frontend_delivery` 绑定时:
|
|
36
|
+
|
|
37
|
+
- 按 `.template-spec/process/frontend-backend-delivery.md` 核验战略与后端联合交付;缺任一输入只能诊断和回交。
|
|
38
|
+
- 输入通过后准备计划 / 合同;正式实现、生成和恢复仍须当前批准的 Slice Contract 冻结接收摘要。
|
|
39
|
+
- 接口或部署版本漂移时重新接收,不复用旧成功输出。
|
|
36
40
|
|
|
37
41
|
1. 确认当前任务已经通过 Harness 入口分诊、逐项目脚手架决定已由真实用户确认,且 schema v4 合同已由生命周期批准、持久化并保持当前。
|
|
38
42
|
2. 确认目标是外部实现仓库;只有用户明确选择时才输出到 Harness 仓库的 `apps/frontend/<project>/`。`apps/frontend/` 只能作为项目容器,`app/frontend/`、`app/backend/` 及其子路径禁止作为输出位置。`git-submodule` 只能在已初始化且附加分支的子仓工作树生成;空 gitlink、detached HEAD、`--force` 覆盖挂载点不得当成普通目录。
|
|
@@ -44,7 +48,7 @@ description: Use when creating a new YSS frontend micro-application from the sta
|
|
|
44
48
|
8. 企业 registry / 认证由目标环境用户级 npm 配置提供,禁止复制来源 `.npmrc` 或 token。实际执行并记录 `pnpm install --frozen-lockfile`、`pnpm lint:check`、`pnpm type-check`、`pnpm build`、`pnpm build:standalone` 的退出码和日志;缺失脚本只能由批准的工程基线提供替代命令。任何必需命令失败都阻断。
|
|
45
49
|
9. 按 `.template-spec/templates/implementation-repo-registry-template.md` 回写前端实现仓库登记。
|
|
46
50
|
|
|
47
|
-
##
|
|
51
|
+
## 生成目录形态
|
|
48
52
|
|
|
49
53
|
```text
|
|
50
54
|
DESIGN.md
|
|
@@ -60,7 +64,7 @@ package.json
|
|
|
60
64
|
packages/package.json
|
|
61
65
|
```
|
|
62
66
|
|
|
63
|
-
##
|
|
67
|
+
## 授权与技术边界
|
|
64
68
|
|
|
65
69
|
- 不直接创建远端 Git 项目,除非用户明确要求。
|
|
66
70
|
- 不保留模板 `.git` 或模板 remote;不在未获确认时执行 `git init`。
|
|
@@ -73,13 +77,13 @@ packages/package.json
|
|
|
73
77
|
- 不把模板示例页面当作业务功能交付。
|
|
74
78
|
- 生成后仍需使用 `yss-ui`、`yss-ui-business-page-generation`、`yss-api-integration` 以及实际命中的表格、树、Formily 等专项 skill 实现业务页面。
|
|
75
79
|
|
|
76
|
-
##
|
|
80
|
+
## 输出与证据
|
|
77
81
|
|
|
78
82
|
- 前端工程生成位置或目标仓库信息。
|
|
79
83
|
- 模板 baseline / manifest 摘要,或 Git repository / commit 证据。
|
|
80
84
|
- 替换参数清单。
|
|
81
85
|
- install / lint / type-check / build 命令,以及目标前端项目既有的手动客户端生成命令(如有)。
|
|
82
|
-
- OpenAPI Freeze 记录、OpenAPI JSON 派生记录、JSON SHA-256 和 `openapi/openapi.json`
|
|
86
|
+
- 有 API 影响时提供 OpenAPI Freeze 记录、OpenAPI JSON 派生记录、JSON SHA-256 和 `openapi/openapi.json` 物化证据;无 API 影响时提供带原因的 `not-applicable`。
|
|
83
87
|
- Harness 实现仓库登记草案。
|
|
84
88
|
- `.yss/scaffold-generation.json` Manifest v4 与 `scaffold-verification.json`。
|
|
85
89
|
- 未覆盖项和 `TODO-HUMAN-REVIEW`。
|
|
@@ -11,11 +11,7 @@ Slice v3 的当前执行结果须按 `references/yss-skill-execution-result.md`
|
|
|
11
11
|
|
|
12
12
|
阶段 7 的实现合同编译器。它把已批准的生命周期资产、垂直切片、capability 和窄 Recipe 编译为 `Slice Implementation Contract` v3 草案;不批准合同、不写业务代码、不设置 `ready-for-agent`。
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
## 文档写作
|
|
17
|
-
|
|
18
|
-
撰写实现合同的解释正文和切片交接说明前,读取 `.template-spec/process/document-writing.md` 的共用写法及工程契约 / Ticket 指引;不改变结构化合同、批准状态或就绪条件。
|
|
14
|
+
撰写实现合同解释正文或切片交接说明时,按 `lifecycle-document-output` 条件调用 `i-have-adhd`,读取 `.template-spec/process/document-writing.md` 的共用写法及工程契约 / Ticket 指引。作用域仅限当前产物;派发时传递条件及引用,不改变结构化合同、批准状态或就绪条件。
|
|
19
15
|
|
|
20
16
|
## 输入
|
|
21
17
|
|
|
@@ -41,7 +37,7 @@ Slice v3 的当前执行结果须按 `references/yss-skill-execution-result.md`
|
|
|
41
37
|
采用专职前端 profile 或显式 `frontend_delivery` 绑定时,先按 `.template-spec/process/frontend-backend-delivery.md` 实际核验战略与后端联合交付。缺任一输入只能诊断和回交;输入通过后准备计划/合同,正式实现、生成和恢复仍须当前批准的 Slice Contract 冻结接收摘要。接口或部署版本漂移时重新接收,不复用旧成功输出。
|
|
42
38
|
|
|
43
39
|
- 编译器不得输出 `approved`、`ready-for-agent` 或 `completed`。
|
|
44
|
-
- Registry
|
|
40
|
+
- Registry 使用其权威 schema v3,编译规则保持 schema v2;新 Slice 使用 v3,旧 Slice v2 按原规则读取和显式迁移。已停止支持的 schema 一律拒绝,不自动升级,不提供未登记的旧技能名兼容。
|
|
45
41
|
- `required_capabilities` 与 `required_skills` 必须同时冻结;Registry 或编译器摘要变化后合同立即 `stale`,重新编译后仍须交生命周期重新批准。
|
|
46
42
|
- UI 影响按来源分支核验:新设计保持正式原型确认与 Visual Baseline;无 UI 改动才允许 `existing-ui-baseline` v1,并须当前真实基线确认及 `case_id`。任一来源缺少当前批准或摘要绑定时,不得路由页面实现。模型必须先读 manifest 与语义引用,再查看对应 PNG;禁止目录 glob 和图片独立猜义。
|
|
47
43
|
- Repository/数据模型影响缺少数据架构时,不得路由持久化实现。
|
|
@@ -4,9 +4,13 @@
|
|
|
4
4
|
|
|
5
5
|
后端结果顶层带与当前 resolution 完全一致的 `architecture_identity`;每条验证记录还须有整数 `exit_code`。身份缺失、Profile 未 supported、验证非零或没有执行时间均不得 accepted。
|
|
6
6
|
|
|
7
|
+
以下为当前 Slice v3 的填写结构。后端身份复制当前 resolution;`project_root`、`dependency_roots` 仅按跨仓及来源解析合同填写。历史 Slice v2 使用末节所述兼容路径,不能把此示例当作自动迁移指令。
|
|
8
|
+
|
|
7
9
|
```yaml
|
|
8
10
|
execution_result:
|
|
9
11
|
schema_version: 2
|
|
12
|
+
evidence_binding_version: 1
|
|
13
|
+
architecture_identity: # 后端必须与当前 resolution 完全一致;其他工作单元按原合同
|
|
10
14
|
skill:
|
|
11
15
|
slice_id:
|
|
12
16
|
work_unit_id:
|
|
@@ -15,6 +19,7 @@ execution_result:
|
|
|
15
19
|
contract_ref:
|
|
16
20
|
contract_id:
|
|
17
21
|
contract_version:
|
|
22
|
+
contract_digest: # 已批准 Slice 文件原始字节 SHA-256
|
|
18
23
|
registry_digest:
|
|
19
24
|
compiler_contract_digest:
|
|
20
25
|
component_bindings_digest: # 合同含 component_bindings 时必填
|
|
@@ -25,10 +30,19 @@ execution_result:
|
|
|
25
30
|
contract_area: common | frontend | backend | contract | cross_repo
|
|
26
31
|
evidence_files:
|
|
27
32
|
- path:
|
|
33
|
+
digest: # 证据文件原始字节 SHA-256
|
|
28
34
|
evidence_type: code | test | generated | review | verification
|
|
29
35
|
behavior_ref:
|
|
36
|
+
source_bindings:
|
|
37
|
+
- path:
|
|
38
|
+
digest: # 实际消费的来源原始字节 SHA-256;删除使用 deleted: true, digest: null
|
|
30
39
|
verification_results:
|
|
31
|
-
-
|
|
40
|
+
- verification_id:
|
|
41
|
+
acceptance_refs: [] # 对应验证项的完整稳定验收 ID
|
|
42
|
+
evidence_refs: [] # 覆盖全部关联验收及预期文件
|
|
43
|
+
command:
|
|
44
|
+
cwd:
|
|
45
|
+
exit_code: # 实际整数退出码
|
|
32
46
|
result:
|
|
33
47
|
executed_at:
|
|
34
48
|
constraint_results:
|