create-yss-spec 3.5.2 → 3.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/template/asset-runtime.js +3 -1
- package/template/.agents/skills/.strategic-design-skills-manifest.json +1 -1
- package/template/.agents/skills/codebase-design/SKILL.md +4 -0
- package/template/{.codex/skills/improve-codebase-architecture/SKILL.md → .agents/skills/codebase-design/references/architecture-audit.md} +3 -9
- package/template/.agents/skills/frontend-commit/SKILL.md +4 -93
- package/template/.agents/skills/git-commit-core/SKILL.md +18 -0
- package/template/.agents/skills/java-backend-commit/SKILL.md +4 -96
- package/template/.agents/skills/llm-wiki/SKILL.md +12 -13
- package/template/.agents/skills/llm-wiki/assets/CLAUDE.md.template +7 -1
- package/template/.agents/skills/llm-wiki/references/compile.md +21 -114
- package/template/.agents/skills/llm-wiki/references/ingest.md +8 -33
- package/template/.agents/skills/llm-wiki/references/lint.md +9 -46
- package/template/.agents/skills/llm-wiki/references/query.md +9 -18
- package/template/.agents/skills/llm-wiki/references/schema.md +56 -29
- package/template/.agents/skills/llm-wiki/references/transactions.md +48 -0
- package/template/.agents/skills/llm-wiki/references/writing.md +4 -4
- package/template/.agents/skills/llm-wiki/scripts/advise.mjs +46 -58
- package/template/.agents/skills/llm-wiki/scripts/advise.test.mjs +11 -16
- package/template/.agents/skills/llm-wiki/scripts/core.mjs +262 -0
- package/template/.agents/skills/llm-wiki/scripts/extract.mjs +35 -18
- package/template/.agents/skills/llm-wiki/scripts/extract.test.mjs +5 -8
- package/template/.agents/skills/llm-wiki/scripts/feedback.mjs +51 -0
- package/template/.agents/skills/llm-wiki/scripts/inventory.mjs +43 -171
- package/template/.agents/skills/llm-wiki/scripts/inventory.test.mjs +25 -18
- package/template/.agents/skills/llm-wiki/scripts/lint-wikilinks.mjs +69 -92
- package/template/.agents/skills/llm-wiki/scripts/lint-wikilinks.test.mjs +25 -37
- package/template/.agents/skills/llm-wiki/scripts/migrate.mjs +51 -0
- package/template/.agents/skills/llm-wiki/scripts/query.mjs +149 -0
- package/template/.agents/skills/llm-wiki/scripts/regressions.test.mjs +101 -0
- package/template/.agents/skills/llm-wiki/scripts/sources.mjs +166 -0
- package/template/.agents/skills/llm-wiki/scripts/transaction.mjs +384 -0
- package/template/.agents/skills/llm-wiki/scripts/v2.test.mjs +354 -0
- package/template/.agents/skills/prototype/LOGIC.md +1 -1
- package/template/.agents/skills/prototype/SKILL.md +5 -19
- package/template/.agents/skills/setup-matt-pocock-skills/SKILL.md +3 -3
- package/template/.agents/skills/yss-implementation-contract-compiler/SKILL.md +2 -0
- package/template/.agents/skills/yss-implementation-contract-compiler/references/boundaries.md +2 -3
- package/template/.agents/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +14 -0
- package/template/.agents/skills/yss-product-lifecycle/SKILL.md +8 -8
- package/template/.agents/skills/yss-product-lifecycle/references/external-input-questionnaire.md +19 -0
- 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 +20 -4
- package/template/.agents/skills/yss-product-lifecycle/references/orchestration.md +2 -2
- package/template/.agents/skills/yss-product-lifecycle/references/plan-requirements.md +10 -0
- package/template/.agents/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.agents/skills/yss-research/SKILL.md +4 -0
- package/template/.codex/skills/codebase-design/SKILL.md +4 -0
- package/template/{.pi/skills/improve-codebase-architecture/SKILL.md → .codex/skills/codebase-design/references/architecture-audit.md} +3 -9
- package/template/.codex/skills/frontend-commit/SKILL.md +4 -93
- package/template/.codex/skills/git-commit-core/SKILL.md +18 -0
- package/template/.codex/skills/java-backend-commit/SKILL.md +4 -96
- package/template/.codex/skills/llm-wiki/SKILL.md +12 -13
- package/template/.codex/skills/llm-wiki/assets/CLAUDE.md.template +7 -1
- package/template/.codex/skills/llm-wiki/references/compile.md +21 -114
- package/template/.codex/skills/llm-wiki/references/ingest.md +8 -33
- package/template/.codex/skills/llm-wiki/references/lint.md +9 -46
- package/template/.codex/skills/llm-wiki/references/query.md +9 -18
- package/template/.codex/skills/llm-wiki/references/schema.md +56 -29
- package/template/.codex/skills/llm-wiki/references/transactions.md +48 -0
- package/template/.codex/skills/llm-wiki/references/writing.md +4 -4
- package/template/.codex/skills/llm-wiki/scripts/advise.mjs +46 -58
- package/template/.codex/skills/llm-wiki/scripts/advise.test.mjs +11 -16
- package/template/.codex/skills/llm-wiki/scripts/core.mjs +262 -0
- package/template/.codex/skills/llm-wiki/scripts/extract.mjs +35 -18
- package/template/.codex/skills/llm-wiki/scripts/extract.test.mjs +5 -8
- package/template/.codex/skills/llm-wiki/scripts/feedback.mjs +51 -0
- package/template/.codex/skills/llm-wiki/scripts/inventory.mjs +43 -171
- package/template/.codex/skills/llm-wiki/scripts/inventory.test.mjs +25 -18
- package/template/.codex/skills/llm-wiki/scripts/lint-wikilinks.mjs +69 -92
- package/template/.codex/skills/llm-wiki/scripts/lint-wikilinks.test.mjs +25 -37
- package/template/.codex/skills/llm-wiki/scripts/migrate.mjs +51 -0
- package/template/.codex/skills/llm-wiki/scripts/query.mjs +149 -0
- package/template/.codex/skills/llm-wiki/scripts/regressions.test.mjs +101 -0
- package/template/.codex/skills/llm-wiki/scripts/sources.mjs +166 -0
- package/template/.codex/skills/llm-wiki/scripts/transaction.mjs +384 -0
- package/template/.codex/skills/llm-wiki/scripts/v2.test.mjs +354 -0
- package/template/.codex/skills/prototype/LOGIC.md +1 -1
- package/template/.codex/skills/prototype/SKILL.md +5 -19
- package/template/.codex/skills/setup-matt-pocock-skills/SKILL.md +3 -3
- package/template/.codex/skills/yss-implementation-contract-compiler/SKILL.md +2 -0
- package/template/.codex/skills/yss-implementation-contract-compiler/references/boundaries.md +2 -3
- package/template/.codex/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +14 -0
- package/template/.codex/skills/yss-product-lifecycle/SKILL.md +8 -8
- package/template/.codex/skills/yss-product-lifecycle/references/external-input-questionnaire.md +19 -0
- 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 +20 -4
- package/template/.codex/skills/yss-product-lifecycle/references/orchestration.md +2 -2
- package/template/.codex/skills/yss-product-lifecycle/references/plan-requirements.md +10 -0
- package/template/.codex/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.codex/skills/yss-research/SKILL.md +4 -0
- package/template/.cursor/skills/codebase-design/SKILL.md +4 -0
- package/template/.cursor/skills/{improve-codebase-architecture/SKILL.md → codebase-design/references/architecture-audit.md} +3 -9
- package/template/.cursor/skills/frontend-commit/SKILL.md +4 -93
- package/template/.cursor/skills/git-commit-core/SKILL.md +18 -0
- package/template/.cursor/skills/java-backend-commit/SKILL.md +4 -96
- package/template/.cursor/skills/llm-wiki/SKILL.md +12 -13
- package/template/.cursor/skills/llm-wiki/assets/CLAUDE.md.template +7 -1
- package/template/.cursor/skills/llm-wiki/references/compile.md +21 -114
- package/template/.cursor/skills/llm-wiki/references/ingest.md +8 -33
- package/template/.cursor/skills/llm-wiki/references/lint.md +9 -46
- package/template/.cursor/skills/llm-wiki/references/query.md +9 -18
- package/template/.cursor/skills/llm-wiki/references/schema.md +56 -29
- package/template/.cursor/skills/llm-wiki/references/transactions.md +48 -0
- package/template/.cursor/skills/llm-wiki/references/writing.md +4 -4
- package/template/.cursor/skills/llm-wiki/scripts/advise.mjs +46 -58
- package/template/.cursor/skills/llm-wiki/scripts/advise.test.mjs +11 -16
- package/template/.cursor/skills/llm-wiki/scripts/core.mjs +262 -0
- package/template/.cursor/skills/llm-wiki/scripts/extract.mjs +35 -18
- package/template/.cursor/skills/llm-wiki/scripts/extract.test.mjs +5 -8
- package/template/.cursor/skills/llm-wiki/scripts/feedback.mjs +51 -0
- package/template/.cursor/skills/llm-wiki/scripts/inventory.mjs +43 -171
- package/template/.cursor/skills/llm-wiki/scripts/inventory.test.mjs +25 -18
- package/template/.cursor/skills/llm-wiki/scripts/lint-wikilinks.mjs +69 -92
- package/template/.cursor/skills/llm-wiki/scripts/lint-wikilinks.test.mjs +25 -37
- package/template/.cursor/skills/llm-wiki/scripts/migrate.mjs +51 -0
- package/template/.cursor/skills/llm-wiki/scripts/query.mjs +149 -0
- package/template/.cursor/skills/llm-wiki/scripts/regressions.test.mjs +101 -0
- package/template/.cursor/skills/llm-wiki/scripts/sources.mjs +166 -0
- package/template/.cursor/skills/llm-wiki/scripts/transaction.mjs +384 -0
- package/template/.cursor/skills/llm-wiki/scripts/v2.test.mjs +354 -0
- package/template/.cursor/skills/prototype/LOGIC.md +1 -1
- package/template/.cursor/skills/prototype/SKILL.md +5 -19
- package/template/.cursor/skills/setup-matt-pocock-skills/SKILL.md +3 -3
- package/template/.cursor/skills/yss-implementation-contract-compiler/SKILL.md +2 -0
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/boundaries.md +2 -3
- package/template/.cursor/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +14 -0
- package/template/.cursor/skills/yss-product-lifecycle/SKILL.md +8 -8
- package/template/.cursor/skills/yss-product-lifecycle/references/external-input-questionnaire.md +19 -0
- 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 +20 -4
- package/template/.cursor/skills/yss-product-lifecycle/references/orchestration.md +2 -2
- package/template/.cursor/skills/yss-product-lifecycle/references/plan-requirements.md +10 -0
- package/template/.cursor/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.cursor/skills/yss-research/SKILL.md +4 -0
- package/template/.pi/skills/codebase-design/SKILL.md +4 -0
- package/template/{.agents/skills/improve-codebase-architecture/SKILL.md → .pi/skills/codebase-design/references/architecture-audit.md} +3 -9
- package/template/.pi/skills/frontend-commit/SKILL.md +4 -93
- package/template/.pi/skills/git-commit-core/SKILL.md +18 -0
- package/template/.pi/skills/java-backend-commit/SKILL.md +4 -96
- package/template/.pi/skills/llm-wiki/SKILL.md +12 -13
- package/template/.pi/skills/llm-wiki/assets/CLAUDE.md.template +7 -1
- package/template/.pi/skills/llm-wiki/references/compile.md +21 -114
- package/template/.pi/skills/llm-wiki/references/ingest.md +8 -33
- package/template/.pi/skills/llm-wiki/references/lint.md +9 -46
- package/template/.pi/skills/llm-wiki/references/query.md +9 -18
- package/template/.pi/skills/llm-wiki/references/schema.md +56 -29
- package/template/.pi/skills/llm-wiki/references/transactions.md +48 -0
- package/template/.pi/skills/llm-wiki/references/writing.md +4 -4
- package/template/.pi/skills/llm-wiki/scripts/advise.mjs +46 -58
- package/template/.pi/skills/llm-wiki/scripts/advise.test.mjs +11 -16
- package/template/.pi/skills/llm-wiki/scripts/core.mjs +262 -0
- package/template/.pi/skills/llm-wiki/scripts/extract.mjs +35 -18
- package/template/.pi/skills/llm-wiki/scripts/extract.test.mjs +5 -8
- package/template/.pi/skills/llm-wiki/scripts/feedback.mjs +51 -0
- package/template/.pi/skills/llm-wiki/scripts/inventory.mjs +43 -171
- package/template/.pi/skills/llm-wiki/scripts/inventory.test.mjs +25 -18
- package/template/.pi/skills/llm-wiki/scripts/lint-wikilinks.mjs +69 -92
- package/template/.pi/skills/llm-wiki/scripts/lint-wikilinks.test.mjs +25 -37
- package/template/.pi/skills/llm-wiki/scripts/migrate.mjs +51 -0
- package/template/.pi/skills/llm-wiki/scripts/query.mjs +149 -0
- package/template/.pi/skills/llm-wiki/scripts/regressions.test.mjs +101 -0
- package/template/.pi/skills/llm-wiki/scripts/sources.mjs +166 -0
- package/template/.pi/skills/llm-wiki/scripts/transaction.mjs +384 -0
- package/template/.pi/skills/llm-wiki/scripts/v2.test.mjs +354 -0
- package/template/.pi/skills/prototype/LOGIC.md +1 -1
- package/template/.pi/skills/prototype/SKILL.md +5 -19
- package/template/.pi/skills/setup-matt-pocock-skills/SKILL.md +3 -3
- package/template/.pi/skills/yss-implementation-contract-compiler/SKILL.md +2 -0
- package/template/.pi/skills/yss-implementation-contract-compiler/references/boundaries.md +2 -3
- package/template/.pi/skills/yss-implementation-contract-compiler/references/yss-skill-execution-result.md +14 -0
- package/template/.pi/skills/yss-product-lifecycle/SKILL.md +8 -8
- package/template/.pi/skills/yss-product-lifecycle/references/external-input-questionnaire.md +19 -0
- 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 +20 -4
- package/template/.pi/skills/yss-product-lifecycle/references/orchestration.md +2 -2
- package/template/.pi/skills/yss-product-lifecycle/references/plan-requirements.md +10 -0
- package/template/.pi/skills/yss-product-lifecycle/references/state-model.md +1 -1
- package/template/.pi/skills/yss-research/SKILL.md +4 -0
- package/template/.template-spec/agents/README.md +1 -1
- package/template/.template-spec/agents/digital-human-roles.yaml +1 -1
- package/template/.template-spec/agents/skill-migrations.md +15 -0
- package/template/.template-spec/agents/yss-skill-registry.yaml +10 -29
- package/template/.template-spec/architecture/README.md +3 -34
- package/template/.template-spec/plan/templates/competitive-analysis-template.md +2 -2
- package/template/.template-spec/process/contract-reading.md +24 -0
- package/template/.template-spec/process/lifecycle-registry-baseline.json +3 -1
- package/template/.template-spec/process/lifecycle-registry.yaml +6 -0
- package/template/.template-spec/process/research-completion.md +23 -0
- package/template/.template-spec/process/schemas/digital-human-task-package.schema.json +202 -12
- package/template/.template-spec/process/schemas/frontend-implementation-evidence.schema.json +7 -15
- package/template/.template-spec/process/subagent-collaboration.md +8 -0
- package/template/.template-spec/process/templates/frontend-implementation-verification-template.yaml +15 -1
- package/template/AGENTS.md +1 -1
- package/template/CONTEXT.md +5 -1
- package/template/README.md +12 -24
- package/template/scripts/contract +5 -5
- package/template/scripts/lib/contract-views.mjs +57 -2
- package/template/scripts/lib/execution-evidence.mjs +51 -0
- package/template/scripts/lib/harness-execution-scope.mjs +1 -1
- package/template/scripts/lib/implementation-contract-compiler.mjs +2 -0
- package/template/scripts/lib/lifecycle-context-query.mjs +15 -3
- package/template/scripts/lib/lifecycle-status.mjs +32 -6
- package/template/scripts/lib/lifecycle-transition.mjs +19 -1
- package/template/scripts/lib/maintenance-research.mjs +63 -0
- package/template/scripts/lib/read-only-intake.mjs +132 -0
- package/template/scripts/lib/skill-registry.mjs +2 -1
- package/template/scripts/lib/skill-supply-chain.mjs +4 -0
- package/template/scripts/lib/slice-task-package.mjs +1 -1
- package/template/scripts/lib/task-package.mjs +9 -2
- package/template/scripts/lifecycle-status +2 -2
- package/template/scripts/prepare-read-only-intake +16 -0
- package/template/scripts/run-read-only-intake +14 -0
- package/template/scripts/verify-digital-human-task-package +2 -2
- package/template/scripts/verify-frontend-implementation-evidence +24 -1
- package/template/scripts/verify-maintenance-research +13 -0
- package/template/skills-lock.json +19 -76
- package/template.manifest.json +118 -29
- package/template.snapshot.json +5 -6
- package/template/.agents/skills/grill-with-docs/SKILL.md +0 -20
- package/template/.agents/skills/grill-with-docs/agents/openai.yaml +0 -5
- package/template/.agents/skills/improve-codebase-architecture/agents/openai.yaml +0 -5
- package/template/.agents/skills/prototype/UI.md +0 -112
- package/template/.agents/skills/setup-matt-pocock-skills/domain.md +0 -37
- package/template/.agents/skills/to-questionnaire/SKILL.md +0 -55
- package/template/.agents/skills/to-questionnaire/agents/openai.yaml +0 -5
- package/template/.agents/skills/wait-what/SKILL.md +0 -7
- package/template/.agents/skills/wait-what/agents/openai.yaml +0 -5
- package/template/.codex/skills/data-analytics/.app.json +0 -84
- package/template/.codex/skills/data-analytics/.codex-plugin/plugin.json +0 -66
- package/template/.codex/skills/data-analytics/.mcp.json +0 -30
- package/template/.codex/skills/data-analytics/AGENTS.md +0 -20
- package/template/.codex/skills/data-analytics/DEPENDENCIES.MD +0 -27
- package/template/.codex/skills/data-analytics/README.md +0 -60
- package/template/.codex/skills/data-analytics/__yss_dotfile__.gitignore +0 -2
- package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html +0 -16
- package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html.gz.b64.part001 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html.gz.b64.part002 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html.gz.b64.part003 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html.gz.b64.part004 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html.gz.b64.part005 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-artifact-widget.html.gz.b64.part006 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html +0 -16
- package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part001 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part002 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part003 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part004 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part005 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part006 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-chart-widget.html.gz.b64.part007 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-small.svg +0 -5
- package/template/.codex/skills/data-analytics/assets/datascience-table-widget.html +0 -16
- package/template/.codex/skills/data-analytics/assets/datascience-table-widget.html.gz.b64.part001 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-table-widget.html.gz.b64.part002 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-table-widget.html.gz.b64.part003 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience-table-widget.html.gz.b64.part004 +0 -1
- package/template/.codex/skills/data-analytics/assets/datascience.png +0 -0
- package/template/.codex/skills/data-analytics/assets/datascience.svg +0 -10
- package/template/.codex/skills/data-analytics/mcp/server.cjs +0 -2964
- package/template/.codex/skills/data-analytics/package-lock.json +0 -3048
- package/template/.codex/skills/data-analytics/package.json +0 -43
- package/template/.codex/skills/data-analytics/scripts/normalize-widget-assets.mjs +0 -75
- package/template/.codex/skills/data-analytics/skills/analyze-data-quality/SKILL.md +0 -137
- package/template/.codex/skills/data-analytics/skills/analyze-data-quality/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/analyze-data-quality/references/quality-checks.md +0 -29
- package/template/.codex/skills/data-analytics/skills/build-dashboard/SKILL.md +0 -148
- package/template/.codex/skills/data-analytics/skills/build-dashboard/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/build-dashboard/specifications/bi-platform-dashboard.md +0 -18
- package/template/.codex/skills/data-analytics/skills/build-dashboard/specifications/html-dashboard.md +0 -24
- package/template/.codex/skills/data-analytics/skills/build-dashboard/specifications/mcp-artifact-dashboard.md +0 -71
- package/template/.codex/skills/data-analytics/skills/build-dashboard/specifications/streamlit-dashboard.md +0 -85
- package/template/.codex/skills/data-analytics/skills/build-report/SKILL.md +0 -207
- package/template/.codex/skills/data-analytics/skills/build-report/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/build-report/assets/executive-report-shell.html +0 -70
- package/template/.codex/skills/data-analytics/skills/build-report/assets/technical-report-shell.html +0 -66
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/SKILL.md +0 -108
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/__init__.py +0 -1
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/cli.py +0 -52
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/constants.py +0 -61
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/docx_writer.py +0 -362
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/html_parser.py +0 -829
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/model.py +0 -30
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/plan.py +0 -127
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/quality.py +0 -374
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/rendering.py +0 -613
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/table_utils.py +0 -54
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc/utils.py +0 -16
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/scripts/report_to_google_doc_plan.py +0 -9
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-doc/tests/test_delivery_plan.py +0 -45
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-slides/SKILL.md +0 -77
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-slides/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-google-slides/scripts/report_to_google_slides.py +0 -2379
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-pdf/SKILL.md +0 -88
- package/template/.codex/skills/data-analytics/skills/build-report/report-to-pdf/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/build-report/specifications/executive-report.md +0 -97
- package/template/.codex/skills/data-analytics/skills/build-report/specifications/mcp-app-report.md +0 -59
- package/template/.codex/skills/data-analytics/skills/build-report/specifications/technical-report.md +0 -75
- package/template/.codex/skills/data-analytics/skills/design-kpis/SKILL.md +0 -103
- package/template/.codex/skills/data-analytics/skills/design-kpis/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/gather-business-context/SKILL.md +0 -68
- package/template/.codex/skills/data-analytics/skills/gather-business-context/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/index/SKILL.md +0 -251
- package/template/.codex/skills/data-analytics/skills/index/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/jupyter-notebooks/SKILL.md +0 -131
- package/template/.codex/skills/data-analytics/skills/jupyter-notebooks/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/kpi-reporting/SKILL.md +0 -141
- package/template/.codex/skills/data-analytics/skills/kpi-reporting/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/kpi-reporting/references/report-templates.md +0 -32
- package/template/.codex/skills/data-analytics/skills/market-sizing/SKILL.md +0 -106
- package/template/.codex/skills/data-analytics/skills/market-sizing/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/metric-diagnostics/SKILL.md +0 -130
- package/template/.codex/skills/data-analytics/skills/metric-diagnostics/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/product-business-analysis/SKILL.md +0 -141
- package/template/.codex/skills/data-analytics/skills/product-business-analysis/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/spreadsheets/SKILL.md +0 -178
- package/template/.codex/skills/data-analytics/skills/spreadsheets/agents/openai.yaml +0 -9
- package/template/.codex/skills/data-analytics/skills/spreadsheets/assets/file-spreadsheet.png +0 -0
- package/template/.codex/skills/data-analytics/skills/spreadsheets/charts.md +0 -31
- package/template/.codex/skills/data-analytics/skills/spreadsheets/references/artifact_tool_api.md +0 -466
- package/template/.codex/skills/data-analytics/skills/spreadsheets/style_guidelines.md +0 -99
- package/template/.codex/skills/data-analytics/skills/user-context/SKILL.md +0 -197
- package/template/.codex/skills/data-analytics/skills/user-context/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/user-context/plugin-author-config/automation-config.md +0 -26
- package/template/.codex/skills/data-analytics/skills/user-context/plugin-author-config/source-category-config.json +0 -51
- package/template/.codex/skills/data-analytics/skills/user-context/plugin-author-config/user-context-config.md +0 -66
- package/template/.codex/skills/data-analytics/skills/user-context/references/automation.md +0 -69
- package/template/.codex/skills/data-analytics/skills/user-context/references/onboarding-examples.md +0 -204
- package/template/.codex/skills/data-analytics/skills/user-context/references/onboarding-state-template.json +0 -87
- package/template/.codex/skills/data-analytics/skills/user-context/references/onboarding.md +0 -497
- package/template/.codex/skills/data-analytics/skills/user-context/references/semantic-layer/connector-playbook.md +0 -74
- package/template/.codex/skills/data-analytics/skills/user-context/references/semantic-layer/setup.md +0 -65
- package/template/.codex/skills/data-analytics/skills/user-context/references/semantic-layer/skill-template.md +0 -160
- package/template/.codex/skills/data-analytics/skills/user-context/references/semantic-layer/source-intake.md +0 -75
- package/template/.codex/skills/data-analytics/skills/user-context/references/semantic-layer/weekly-polling-automation.md +0 -96
- package/template/.codex/skills/data-analytics/skills/user-context/references/source-category-runtime.md +0 -263
- package/template/.codex/skills/data-analytics/skills/user-context/scripts/data_analytics_preflight.py +0 -1462
- package/template/.codex/skills/data-analytics/skills/user-context/scripts/init_user_context_state.py +0 -128
- package/template/.codex/skills/data-analytics/skills/user-context/scripts/reset_user_context_state.py +0 -101
- package/template/.codex/skills/data-analytics/skills/user-context/scripts/validate_user_context_preflight.py +0 -499
- package/template/.codex/skills/data-analytics/skills/user-context/tests/test_state_helpers.py +0 -978
- package/template/.codex/skills/data-analytics/skills/validate-data/SKILL.md +0 -126
- package/template/.codex/skills/data-analytics/skills/validate-data/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/validate-data/references/validation-methods.md +0 -70
- package/template/.codex/skills/data-analytics/skills/visualize-data/SKILL.md +0 -157
- package/template/.codex/skills/data-analytics/skills/visualize-data/agents/openai.yaml +0 -6
- package/template/.codex/skills/data-analytics/skills/visualize-data/references/seaborn-templates.md +0 -774
- package/template/.codex/skills/data-analytics/src/DESIGN.md +0 -222
- package/template/.codex/skills/data-analytics/src/analytics-app/App.tsx +0 -3666
- package/template/.codex/skills/data-analytics/src/analytics-app/analytics-layout.test.mjs +0 -136
- package/template/.codex/skills/data-analytics/src/analytics-app/charting/ChartFrame.tsx +0 -54
- package/template/.codex/skills/data-analytics/src/analytics-app/charting/ChartLegend.tsx +0 -96
- package/template/.codex/skills/data-analytics/src/analytics-app/charting/ChartRenderer.tsx +0 -1647
- package/template/.codex/skills/data-analytics/src/analytics-app/charting/ChartTooltip.tsx +0 -245
- package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-app-helpers.tsx +0 -462
- package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-capabilities.ts +0 -107
- package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-compatibility.ts +0 -164
- package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-contract.ts +0 -192
- package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-theme.ts +0 -203
- package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-tokens.css +0 -619
- package/template/.codex/skills/data-analytics/src/analytics-app/charting/chart-transforms.ts +0 -402
- package/template/.codex/skills/data-analytics/src/analytics-app/fonts/SystemSansVariableVF.woff2 +0 -0
- package/template/.codex/skills/data-analytics/src/analytics-app/imageExport.ts +0 -370
- package/template/.codex/skills/data-analytics/src/analytics-app/layout/AnalyticsLayoutCanvas.tsx +0 -536
- package/template/.codex/skills/data-analytics/src/analytics-app/layout/RichMarkdown.tsx +0 -681
- package/template/.codex/skills/data-analytics/src/analytics-app/layout/analyticsLayoutCore.ts +0 -164
- package/template/.codex/skills/data-analytics/src/analytics-app/main.tsx +0 -21
- package/template/.codex/skills/data-analytics/src/analytics-app/scripts/chart_contract.py +0 -472
- package/template/.codex/skills/data-analytics/src/analytics-app/scripts/check_analytics_app_runtime_links.py +0 -75
- package/template/.codex/skills/data-analytics/src/analytics-app/scripts/design_contract.py +0 -142
- package/template/.codex/skills/data-analytics/src/analytics-app/scripts/package_utils.py +0 -142
- package/template/.codex/skills/data-analytics/src/analytics-app/scripts/tests/test_package_utils.py +0 -377
- package/template/.codex/skills/data-analytics/src/analytics-app/styles.css +0 -3468
- package/template/.codex/skills/data-analytics/src/analytics-app/tables/DataTable.d.ts +0 -44
- package/template/.codex/skills/data-analytics/src/analytics-app/tables/DataTable.jsx +0 -639
- package/template/.codex/skills/data-analytics/src/analytics-app/tables/data-table.css +0 -327
- package/template/.codex/skills/data-analytics/src/analytics-app/tokens.css +0 -225
- package/template/.codex/skills/data-analytics/src/analytics-app/types.ts +0 -204
- package/template/.codex/skills/data-analytics/src/analytics-app-core.md +0 -85
- package/template/.codex/skills/data-analytics/src/codex-style-contract.md +0 -30
- package/template/.codex/skills/data-analytics/src/datascience-artifact-widget.html +0 -12
- package/template/.codex/skills/data-analytics/src/datascience-artifact-widget.jsx +0 -1008
- package/template/.codex/skills/data-analytics/src/datascience-chart-widget.css +0 -2117
- package/template/.codex/skills/data-analytics/src/datascience-chart-widget.html +0 -122
- package/template/.codex/skills/data-analytics/src/datascience-chart-widget.js +0 -3588
- package/template/.codex/skills/data-analytics/src/datascience-table-widget.css +0 -483
- package/template/.codex/skills/data-analytics/src/datascience-table-widget.html +0 -32
- package/template/.codex/skills/data-analytics/src/datascience-table-widget.js +0 -333
- package/template/.codex/skills/data-analytics/src/mcp-host.js +0 -153
- package/template/.codex/skills/data-analytics/src/recharts-config.js +0 -315
- package/template/.codex/skills/data-analytics/src/recharts-renderer.jsx +0 -294
- package/template/.codex/skills/data-analytics/src/sql-source-view.css +0 -33
- package/template/.codex/skills/data-analytics/src/sql-source-view.js +0 -157
- package/template/.codex/skills/data-analytics/src/styles/codex-theme.css +0 -121
- package/template/.codex/skills/data-analytics/src/table-renderer.jsx +0 -28
- package/template/.codex/skills/data-analytics/tests/chart-transforms.test.mjs +0 -87
- package/template/.codex/skills/data-analytics/tests/funnel-smoke.html +0 -105
- package/template/.codex/skills/data-analytics/tests/inline-widget-compare.html +0 -233
- package/template/.codex/skills/data-analytics/tests/mcp-server.test.mjs +0 -1500
- package/template/.codex/skills/data-analytics/tests/native-style-contract.test.mjs +0 -219
- package/template/.codex/skills/data-analytics/tests/recharts-config.test.mjs +0 -144
- package/template/.codex/skills/data-analytics/tests/recharts-renderer.test.mjs +0 -11
- package/template/.codex/skills/data-analytics/tests/rich-markdown.test.mjs +0 -54
- package/template/.codex/skills/data-analytics/tests/widget-render-harness.html +0 -321
- package/template/.codex/skills/data-analytics/tsconfig.json +0 -19
- package/template/.codex/skills/data-analytics/vite.config.ts +0 -46
- package/template/.codex/skills/grill-with-docs/SKILL.md +0 -20
- package/template/.codex/skills/grill-with-docs/agents/openai.yaml +0 -5
- package/template/.codex/skills/improve-codebase-architecture/agents/openai.yaml +0 -5
- package/template/.codex/skills/prototype/UI.md +0 -112
- package/template/.codex/skills/setup-matt-pocock-skills/domain.md +0 -37
- package/template/.codex/skills/to-questionnaire/SKILL.md +0 -55
- package/template/.codex/skills/to-questionnaire/agents/openai.yaml +0 -5
- package/template/.codex/skills/wait-what/SKILL.md +0 -7
- package/template/.codex/skills/wait-what/agents/openai.yaml +0 -5
- package/template/.cursor/skills/grill-with-docs/SKILL.md +0 -20
- package/template/.cursor/skills/grill-with-docs/agents/openai.yaml +0 -5
- package/template/.cursor/skills/improve-codebase-architecture/agents/openai.yaml +0 -5
- package/template/.cursor/skills/prototype/UI.md +0 -112
- package/template/.cursor/skills/setup-matt-pocock-skills/domain.md +0 -37
- package/template/.cursor/skills/to-questionnaire/SKILL.md +0 -55
- package/template/.cursor/skills/to-questionnaire/agents/openai.yaml +0 -5
- package/template/.cursor/skills/wait-what/SKILL.md +0 -7
- package/template/.cursor/skills/wait-what/agents/openai.yaml +0 -5
- package/template/.pi/skills/grill-with-docs/SKILL.md +0 -20
- package/template/.pi/skills/grill-with-docs/agents/openai.yaml +0 -5
- package/template/.pi/skills/improve-codebase-architecture/agents/openai.yaml +0 -5
- package/template/.pi/skills/prototype/UI.md +0 -112
- package/template/.pi/skills/setup-matt-pocock-skills/domain.md +0 -37
- package/template/.pi/skills/to-questionnaire/SKILL.md +0 -55
- package/template/.pi/skills/to-questionnaire/agents/openai.yaml +0 -5
- package/template/.pi/skills/wait-what/SKILL.md +0 -7
- package/template/.pi/skills/wait-what/agents/openai.yaml +0 -5
- package/template/.template-spec/agents/domain.md +0 -31
- /package/template/.agents/skills/{improve-codebase-architecture → codebase-design/references}/HTML-REPORT.md +0 -0
- /package/template/.codex/skills/{improve-codebase-architecture → codebase-design/references}/HTML-REPORT.md +0 -0
- /package/template/.cursor/skills/{improve-codebase-architecture → codebase-design/references}/HTML-REPORT.md +0 -0
- /package/template/.pi/skills/{improve-codebase-architecture → codebase-design/references}/HTML-REPORT.md +0 -0
|
@@ -168,7 +168,7 @@ entry_routing:
|
|
|
168
168
|
invalid_manifest:
|
|
169
169
|
action: migration-check
|
|
170
170
|
formal_user_entry:
|
|
171
|
-
skills: [setup-matt-pocock-skills,
|
|
171
|
+
skills: [setup-matt-pocock-skills, to-spec, to-tickets, implement]
|
|
172
172
|
action: lifecycle-validate-and-accept
|
|
173
173
|
lifecycle_artifact_write: conditional-explicit-user-entry
|
|
174
174
|
return_to_orchestrator: required
|
|
@@ -297,8 +297,8 @@ task_package:
|
|
|
297
297
|
# may prepare, validate and accept their results, but cannot invoke them or create
|
|
298
298
|
# their formal artifacts on their behalf.
|
|
299
299
|
matt_invocation_boundary:
|
|
300
|
-
user_invoked_skills: [
|
|
301
|
-
lifecycle_managed_user_entries: [setup-matt-pocock-skills,
|
|
300
|
+
user_invoked_skills: [handoff, implement, setup-matt-pocock-skills, to-spec, to-tickets, triage, wayfinder]
|
|
301
|
+
lifecycle_managed_user_entries: [setup-matt-pocock-skills, to-spec, to-tickets, implement]
|
|
302
302
|
model_invoked_skills: [code-review, codebase-design, diagnosing-bugs, domain-modeling, grilling, prototype, resolving-merge-conflicts, tdd, writing-for-agents, yss-research]
|
|
303
303
|
lifecycle_allowed_model_invoked_skills: [code-review, codebase-design, diagnosing-bugs, domain-modeling, grilling, prototype, tdd, yss-research]
|
|
304
304
|
lifecycle_may_invoke_user_invoked: false
|
|
@@ -323,6 +323,18 @@ lifecycle_native_entries:
|
|
|
323
323
|
implement: lifecycle-validate-and-accept
|
|
324
324
|
|
|
325
325
|
work_unit_routes:
|
|
326
|
+
work-unit.maintenance-research:
|
|
327
|
+
native: {source: yss-product-lifecycle, skill: yss-research, invocation_mode: model-invoked}
|
|
328
|
+
primary_skill: yss-research
|
|
329
|
+
supporting_skills: []
|
|
330
|
+
skills: [yss-research]
|
|
331
|
+
applies_when: template_source_persisted_research
|
|
332
|
+
not_applicable_reason: project_instance_or_no_persisted_research
|
|
333
|
+
repository_mode: template-source
|
|
334
|
+
completion_validator: scripts/verify-maintenance-research
|
|
335
|
+
terminal_allowed: true
|
|
336
|
+
next_routes: [work-unit.ssot-update]
|
|
337
|
+
continuation_requires: bound_user_maintenance_authorization
|
|
326
338
|
work-unit.plan-opportunity:
|
|
327
339
|
native: {source: yss-product-lifecycle, skill: yss-product-lifecycle, invocation_mode: model-invoked}
|
|
328
340
|
primary_skill: yss-product-lifecycle
|
|
@@ -1031,7 +1043,11 @@ wayfinder_mode:
|
|
|
1031
1043
|
template_source_use: only-when-template-evolution-is-long-running
|
|
1032
1044
|
|
|
1033
1045
|
context_engineering:
|
|
1034
|
-
contract_field: slice_contract.common.context_plan
|
|
1046
|
+
contract_field: slice_contract.common.context_plan # 仅运行时归一化读取别名
|
|
1047
|
+
raw_v2_contract_field: slice_contract.common.context_plan
|
|
1048
|
+
raw_v3_contract_field: slice_contract.scope.context_plan
|
|
1049
|
+
dispatch_reading: implementation-task-view-or-review-view
|
|
1050
|
+
reading_reference: .template-spec/process/contract-reading.md
|
|
1035
1051
|
required_context: [CONTEXT.md, approved-spec, current-slice-contract, applicable-adr-or-baseline]
|
|
1036
1052
|
on_demand_context: [specialist-references, implementation-repository-files, historical-evidence]
|
|
1037
1053
|
stop_rule: minimal-sufficient-evidence
|
|
@@ -131,7 +131,7 @@ tracker 选择和冲突按 `.template-spec/agents/issue-tracker.md` 裁决:已
|
|
|
131
131
|
|
|
132
132
|
Decision ticket 产生决策,不是实现切片,不得标记 `ready-for-agent`。
|
|
133
133
|
|
|
134
|
-
## `
|
|
134
|
+
## `work-unit.plan-requirements` 退出判定
|
|
135
135
|
|
|
136
136
|
进入 `to-spec` 前必须区分已确认项与未决项,并确认用户、问题、MVP、非目标、成功标准、术语/ADR 候选和测试 seam。事实问题走 `yss-research`;需 runnable 反馈的问题走 `handoff → prototype → handoff`。存在未回流 blocker 时不得进入 Spec baseline。
|
|
137
137
|
|
|
@@ -139,7 +139,7 @@ Prototype 回流必须有可核验证据:来源 handoff、prototype 资产或
|
|
|
139
139
|
|
|
140
140
|
Matt `prototype` 的回流还必须注明 `prototype_branch`,并保留单文件 HTML 主来源;该结果只能作为 YSS 原型输入,仍须完成阶段 4 的低保真评审、H1/H2 档位路由、schema v4 验证和用户确认,不得用 throwaway prototype 替代。
|
|
141
141
|
|
|
142
|
-
|
|
142
|
+
生命周期外部输入问卷 未收到答案时使用 `external-input-required` 暂停,记录问卷、接收人、所需输出和恢复路由;收到答案后记录 response、重新分类影响面和更新后的权威资产,再回到 `work-unit.plan-requirements` 或 `to-spec`。
|
|
143
143
|
|
|
144
144
|
Release 与 Retrospective 属于生命周期编排器拥有的工作单元。发布和复盘前都必须重新取得 fresh verification;发布还需要发布/回滚证据和独立审查,复盘还需要复盘记录和治理回流判断,再回流权威资产。
|
|
145
145
|
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# 需求澄清与 Context 对账
|
|
2
|
+
|
|
3
|
+
`work-unit.plan-requirements` 由 `yss-product-lifecycle` 或当前 profile 编排器执行,按需使用 `grilling` 和 `domain-modeling`,不另建批准入口。
|
|
4
|
+
|
|
5
|
+
1. 读取 yss-project.yaml 与唯一根 CONTEXT.md,执行 `scripts/verify-context-contract --root . --json`。缺失、大小写错误、嵌套合同、跨仓路径、伪锚点或不支持的 schema 都阻断;格式消费 `domain-modeling/CONTEXT-FORMAT.md`。
|
|
6
|
+
2. 先查可发现事实;真正用户决定才组成当前决策前沿,每个问题给出建议,保留原始回复。未确认的术语留在 Plan,不能写成稳定事实。
|
|
7
|
+
3. 确认后由 domain-modeling 维护五列业务词汇表,以 `<ContextId>/<EnglishIdentifier>` 标识;非 Global 的 ContextId 来自已确认业务责任区。只有难以逆转、非显然且有真实取舍的决定才形成 ADR。研究和实际验证保留可读证据。
|
|
8
|
+
4. `project-instance` 批准或返回下一工作单元前生成 `context_reconciliation`,保存可读 ref、document_digest、referenced_terms_digest 与 term_refs,并执行对账验证。候选、别名、范围冲突或摘要漂移均阻断;对账不另增门禁。`template-source` 仅校验模板合同并记录有原因的 `not-applicable`,不虚构业务术语。
|
|
9
|
+
5. 结束时列出已确认决定、未决假设、变更文档、对账状态与引用、下一授权动作。按既有退出判定确认用户、问题、MVP、非目标、成功标准及测试 seam,未回流 blocker 不得进入 Spec。
|
|
10
|
+
6. 共享理解与变更范围未确认前不改实现合同或代码;澄清结果不能批准资产、设置 ready-for-agent 或自行推进阶段,交回当前编排器验收。
|
|
@@ -33,7 +33,7 @@ phase_boundary:
|
|
|
33
33
|
|
|
34
34
|
`handoff` 必须有来源和目的地;subagent 必须有任务包和汇合证据;`compact` 必须有下一阶段。`Continue`、`clear` 不要求跨上下文引用,但仍应记录判断理由。
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
生命周期外部输入问卷 的暂停使用 `pause.reason_code: external-input-required`,并保存 `questionnaire_ref`、`recipient_role`、`requested_outputs` 和 `resume_route`。答案回流后补 `response_ref`、`reclassified_impact` 和 `updated_authoritative_asset`,然后重新计算 `stale`、门禁和可执行 frontier。
|
|
37
37
|
|
|
38
38
|
## `ready-for-agent` 公式
|
|
39
39
|
|
|
@@ -42,6 +42,8 @@ Do not silently promote an exploratory request solely because more rigor would b
|
|
|
42
42
|
|
|
43
43
|
Use a background Agent when the runtime supports it and the reading can proceed independently while other useful work continues. Otherwise research in the current Agent. Delegation is an execution optimization, not a trust signal.
|
|
44
44
|
|
|
45
|
+
Read-only intake uses task-package schema v2 with `contract.kind: read-only-intake`, `Explorer`, a registered intake work unit and an empty write set. Use `scripts/prepare-read-only-intake` and `scripts/run-read-only-intake`; the dispatcher keeps task and execution evidence outside the repository. No maintenance checkpoint is needed for research intake. No executed commands means `verification_status: not-executed`, not verified. Formal asset writes require owner impact analysis and a new formal task package. See `.template-spec/process/subagent-collaboration.md`.
|
|
46
|
+
|
|
45
47
|
Lifecycle dispatches must use the repository's structured task package, write isolation, role binding, and handoff contract. The owner receiving the result remains responsible for verifying material claims before consuming them.
|
|
46
48
|
|
|
47
49
|
## Evidence-audited workflow
|
|
@@ -76,4 +78,6 @@ node scripts/validate-research-package.mjs <slug>-research-brief.md <slug>-evide
|
|
|
76
78
|
|
|
77
79
|
In `template-source`, save reusable maintenance research under the existing `.template-source/evidence/maintenance/` convention. In `project-instance`, use the project research/evidence convention and bind any decision-bearing output from the lifecycle asset that consumes it.
|
|
78
80
|
|
|
81
|
+
模板中正式落盘的研究使用 `work-unit.maintenance-research`,按 `.template-spec/process/research-completion.md` 记录当前验证并收尾;结束研究不授予维护或产品批准。仅回传结论的只读分诊继续使用既有 read-only-intake v2,不伪装成正式研究闭包。
|
|
82
|
+
|
|
79
83
|
If sources are unavailable or conflict, state the limitation. Ordinary gaps lower confidence; a missing or mismatched source for a decision-bearing claim prevents that claim from being treated as established.
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
| `issue-tracker.md` | Ticket / Spec / triage 在 Local Markdown、GitLab Issues 与 GitHub Issues 间路由的操作约定 |
|
|
19
19
|
| `triage-labels.md` | 标准五态 triage 标签与含义 |
|
|
20
20
|
| `domain.md` | 领域文档读取和维护规则 |
|
|
21
|
-
|
|
|
21
|
+
| `.template-source/agents/skills-maintenance.md`(仅模板源) | 模板源的技能安装、升级和验证说明;项目实例无需此维护文档 |
|
|
22
22
|
| `yss-skill-registry.yaml` | 技能分层、别名与运行时入口(active;不替代锁文件) |
|
|
23
23
|
| `gitlab-workflow-skills.md` | GitLab、MR、CI 和自动 gitworks 的技能配置与使用规则 |
|
|
24
24
|
|
|
@@ -76,7 +76,7 @@ roles:
|
|
|
76
76
|
title: YSS 需求经理
|
|
77
77
|
stages: [ stage.plan, stage.spec-architecture ]
|
|
78
78
|
draft_artifact_ids: [ artifact.plan-record, artifact.spec ]
|
|
79
|
-
core_skills: [ grilling, domain-modeling, yss-research, competitive-intelligence
|
|
79
|
+
core_skills: [ grilling, domain-modeling, yss-research, competitive-intelligence ]
|
|
80
80
|
forbidden_skills: [ yss-ui, yss-domain, yss-web-controller, yss-repository, yss-ddd-scaffold-generator, yss-layered-mvc-scaffold-generator, yss-frontend-scaffold-generator, implement, tdd ]
|
|
81
81
|
description: >-
|
|
82
82
|
Own Plan language, users, MVP, non-goals, success criteria, test seams, and Spec prose. Propose CONTEXT.md glossary entries. Do not freeze visual prototypes, OpenAPI, or code. Do not guess unconfirmed business rules. Hand off to the orchestrator when the frontier is empty.
|
|
@@ -98,3 +98,18 @@ DDD 脚手架的 Parent 工程约束由 `yss-ddd-scaffold-generator/references/e
|
|
|
98
98
|
- 独立低保真评审:`prototype-review`
|
|
99
99
|
|
|
100
100
|
已关闭的 Prototype Evidence schema v1/v2/v3、旧 artifact ID、AntD CLI、浏览器验证和确认记录只读保留。在途 UI 工作迁移到 Prototype Evidence schema v4、Visual Baseline schema v1 与 `artifact.prototype-deliverable` 后再关闭门禁;无 UI 影响不创建空包。不得创建同名兼容目录或删除历史证据。
|
|
101
|
+
|
|
102
|
+
## 2026-09-28 入口收敛
|
|
103
|
+
|
|
104
|
+
以下旧 Skill ID 已硬退役:新调用返回 `skill-retired` 和迁移提示,不能自动执行替代入口或改变阶段状态。历史证据只读保留。
|
|
105
|
+
|
|
106
|
+
| 旧入口 | 承接位置 |
|
|
107
|
+
|---|---|
|
|
108
|
+
| wait-what | 普通解释对话,按文档写作规范或 i-have-adhd 调整表达 |
|
|
109
|
+
| grill-with-docs | 当前生命周期的 work-unit.plan-requirements,保留 Context 校验、对账和退出判定 |
|
|
110
|
+
| to-questionnaire | 当前生命周期外部输入问卷,保留 external-input-required 与答案回流合同 |
|
|
111
|
+
| improve-codebase-architecture | codebase-design 显式架构审计模式及可选 HTML 报告 |
|
|
112
|
+
|
|
113
|
+
Data Analytics 平台包从本模板及 frontend 分发退出;不卸载用户另装插件。frontend-commit / java-backend-commit 保留专项入口并读取内部 git-commit-core。prototype 仅做逻辑与状态试验;正式 UI 由生命周期产品设计阶段承接。
|
|
114
|
+
|
|
115
|
+
存量实例先预览同步计划。只按旧版本基线移除未修改的受管文件,用户修改保留并报告冲突;不自动迁移历史审批、问卷或快照。
|
|
@@ -190,6 +190,10 @@ recipes:
|
|
|
190
190
|
- { id: frontend.vue3-scaffold, capabilities: [scaffold.frontend-vue3] }
|
|
191
191
|
- { id: backend.springboot3-migration, capabilities: [migration.springboot3, quality.java-code-style] }
|
|
192
192
|
skill_dependencies:
|
|
193
|
+
frontend-commit:
|
|
194
|
+
- { skill: git-commit-core, type: context-required }
|
|
195
|
+
java-backend-commit:
|
|
196
|
+
- { skill: git-commit-core, type: context-required }
|
|
193
197
|
yss-backend-spec-review:
|
|
194
198
|
- { skill: alibaba-java-code-style, type: context-required }
|
|
195
199
|
- { skill: yss-implementation-contract-compiler, type: coordination-only }
|
|
@@ -361,12 +365,6 @@ skills:
|
|
|
361
365
|
instance_default_discoverable: true
|
|
362
366
|
aliases: []
|
|
363
367
|
impacts: [discovery]
|
|
364
|
-
- id: grill-with-docs
|
|
365
|
-
layer: compatibility
|
|
366
|
-
maturity: supported
|
|
367
|
-
instance_default_discoverable: false
|
|
368
|
-
aliases: []
|
|
369
|
-
impacts: [discovery]
|
|
370
368
|
- id: grilling
|
|
371
369
|
layer: core
|
|
372
370
|
maturity: supported
|
|
@@ -391,12 +389,6 @@ skills:
|
|
|
391
389
|
instance_default_discoverable: true
|
|
392
390
|
aliases: []
|
|
393
391
|
impacts: [lifecycle]
|
|
394
|
-
- id: improve-codebase-architecture
|
|
395
|
-
layer: compatibility
|
|
396
|
-
maturity: supported
|
|
397
|
-
instance_default_discoverable: false
|
|
398
|
-
aliases: []
|
|
399
|
-
impacts: [quality]
|
|
400
392
|
- id: llm-wiki
|
|
401
393
|
layer: core
|
|
402
394
|
maturity: verified
|
|
@@ -457,12 +449,6 @@ skills:
|
|
|
457
449
|
instance_default_discoverable: true
|
|
458
450
|
aliases: []
|
|
459
451
|
impacts: [quality]
|
|
460
|
-
- id: to-questionnaire
|
|
461
|
-
layer: maintainer-only
|
|
462
|
-
maturity: supported
|
|
463
|
-
instance_default_discoverable: false
|
|
464
|
-
aliases: []
|
|
465
|
-
impacts: [discovery]
|
|
466
452
|
- id: to-spec
|
|
467
453
|
layer: compatibility
|
|
468
454
|
maturity: supported
|
|
@@ -487,12 +473,6 @@ skills:
|
|
|
487
473
|
instance_default_discoverable: false
|
|
488
474
|
aliases: []
|
|
489
475
|
impacts: [setup]
|
|
490
|
-
- id: wait-what
|
|
491
|
-
layer: maintainer-only
|
|
492
|
-
maturity: supported
|
|
493
|
-
instance_default_discoverable: false
|
|
494
|
-
aliases: []
|
|
495
|
-
impacts: [setup]
|
|
496
476
|
- id: wayfinder
|
|
497
477
|
layer: maintainer-only
|
|
498
478
|
maturity: supported
|
|
@@ -751,6 +731,12 @@ skills:
|
|
|
751
731
|
instance_default_discoverable: false
|
|
752
732
|
aliases: []
|
|
753
733
|
impacts: [frontend]
|
|
734
|
+
- id: git-commit-core
|
|
735
|
+
layer: maintainer-only
|
|
736
|
+
maturity: supported
|
|
737
|
+
instance_default_discoverable: false
|
|
738
|
+
aliases: []
|
|
739
|
+
impacts: [template-maintenance]
|
|
754
740
|
- id: frontend-commit
|
|
755
741
|
layer: maintainer-only
|
|
756
742
|
maturity: supported
|
|
@@ -788,11 +774,6 @@ skills:
|
|
|
788
774
|
aliases: []
|
|
789
775
|
impacts: [frontend]
|
|
790
776
|
platform_skills:
|
|
791
|
-
- id: data-analytics
|
|
792
|
-
root: .codex/skills
|
|
793
|
-
layer: maintainer-only
|
|
794
|
-
instance_default_discoverable: false
|
|
795
|
-
aliases: []
|
|
796
777
|
- id: product-design
|
|
797
778
|
root: .codex/skills
|
|
798
779
|
layer: specialist
|
|
@@ -26,33 +26,9 @@
|
|
|
26
26
|
|
|
27
27
|
---
|
|
28
28
|
|
|
29
|
-
##
|
|
30
|
-
|
|
31
|
-
### 方案生成器
|
|
32
|
-
```python
|
|
33
|
-
delegate_task(
|
|
34
|
-
goal="为'[功能]'生成 3 种技术方案并做 trade-off 对比",
|
|
35
|
-
context="评估维度:复杂度/安全/性能/扩展性/契合度/开发成本"
|
|
36
|
-
)
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
### 预审者 — 六维度审查
|
|
40
|
-
```python
|
|
41
|
-
delegate_task(
|
|
42
|
-
goal="从可扩展性、安全性、性能、可靠性、可维护性、成本六个维度预审此方案",
|
|
43
|
-
context="每个维度打分 1-5,评分<3 给出替代方案"
|
|
44
|
-
)
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
### ADR 记录者
|
|
48
|
-
```python
|
|
49
|
-
delegate_task(
|
|
50
|
-
goal="根据技术讨论记录,自动生成 ADR",
|
|
51
|
-
context="使用 .template-spec/templates/adr-template.md 模板"
|
|
52
|
-
)
|
|
53
|
-
```
|
|
29
|
+
## 方案比较与审查
|
|
54
30
|
|
|
55
|
-
|
|
31
|
+
存在真实取舍时比较候选方案,按业务风险说明依据,不固定方案数量或评分阈值。审查和批准只消费生命周期注册表及流程裁剪规则;本说明不增加架构师签字或进入实现的独立条件。ADR 仅记录难以回滚、非显而易见且存在真实取舍的决定。
|
|
56
32
|
|
|
57
33
|
## 六维度审查清单 (39项)
|
|
58
34
|
|
|
@@ -71,7 +47,7 @@ delegate_task(
|
|
|
71
47
|
|
|
72
48
|
## Deep Module 治理
|
|
73
49
|
|
|
74
|
-
当出现模块难改、测试 seam 不清晰、逻辑散落、Agent 难以理解代码路径时,优先使用 `
|
|
50
|
+
当出现模块难改、测试 seam 不清晰、逻辑散落、Agent 难以理解代码路径时,优先使用 `codebase-design` 的显式架构审计模式。
|
|
75
51
|
|
|
76
52
|
落地产物:
|
|
77
53
|
|
|
@@ -82,10 +58,3 @@ delegate_task(
|
|
|
82
58
|
架构讨论必须使用统一术语:`module`、`interface`、`seam`、`adapter`、`depth`、`leverage`、`locality`。
|
|
83
59
|
|
|
84
60
|
---
|
|
85
|
-
|
|
86
|
-
## AI-Human Loop
|
|
87
|
-
|
|
88
|
-
```
|
|
89
|
-
需求 → AI 3方案对比 → 架构师选方向 → AI 详细方案
|
|
90
|
-
→ AI 六维预审 → 架构师签字 → ADR 记录 → 进入实现
|
|
91
|
-
```
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> AI 辅助生成,人工审核补充。
|
|
4
4
|
> 建议配套产物:`competitive-matrix-template.md` 用于横向功能矩阵,本模板用于深度分析和 Spec 前置输入。
|
|
5
|
-
> 使用 `
|
|
5
|
+
> 使用 `work-unit.plan-requirements` 时,请把稳定术语同步沉淀到 `CONTEXT.md`,只有出现难以回滚、非显而易见且存在真实取舍的决策时才新增 ADR。
|
|
6
6
|
|
|
7
7
|
## 0. 文档信息
|
|
8
8
|
|
|
@@ -250,7 +250,7 @@ flowchart LR
|
|
|
250
250
|
## 11. 建议下一步
|
|
251
251
|
|
|
252
252
|
1. [补充调研 / 用户访谈 / 厂商验证]
|
|
253
|
-
2. [进入
|
|
253
|
+
2. [进入 work-unit.plan-requirements 继续澄清的问题]
|
|
254
254
|
3. [生成 Spec]
|
|
255
255
|
4. [判断是否需要 OpenAPI / 垂直切片 issue]
|
|
256
256
|
|
|
@@ -39,8 +39,32 @@ v2 的 `openapi` 是唯一 Draft 绑定,`draft_review` 只存 `ref/digest`,F
|
|
|
39
39
|
|
|
40
40
|
## 验证阶段与回退
|
|
41
41
|
|
|
42
|
+
Slice v3 的任务聚焦布局可显式试用 `scripts/contract view <资产> --kind slice --profile task --unit <ID> --task-layout focused`。默认仍为 `legacy`,推广取决于受控对照结果。聚焦布局展示当前工作单元及其验证项关联的验收(包括 `required_for_all`),保留全局、专项和未知约束,并给出完整验收原文件引用。v2 保留原布局,不根据缺失引用裁剪。
|
|
43
|
+
|
|
44
|
+
恢复入口 `scripts/lifecycle-status --checkpoint <ref> --task <task-package-ref>` 增量返回只读 `recovery`:任务引用、合同 task 视图命令、实际结果引用及恢复顺序。引用由调用方显式选择,不扫描目录猜任务;运行中、未知或版本不符不能重复派发。`not-checked` 和 `execution_authorization: not-evaluated` 保持原义。
|
|
45
|
+
|
|
42
46
|
预检、准备、派发各自建立私有验证阶段。阶段绑定根目录、用途、切片、工作单元、只读状态;只在本次操作内共享输入和纯校验结果。原始输入不可变,返回给调用者的是独立副本。相同 schema、输入和格式选项复用;外部 `$ref` 未追踪的校验不享受结果复用。Python 引擎、同步 API 和技术设计 Node 边界保留。
|
|
43
47
|
|
|
44
48
|
成功返回前复核所有登记原字节、目录枚举及不存在项。技术设计子进程自行验证批准,再返回依赖清单;父进程合并读取集合,读取矛盾、遗漏报告或异常均阻断。此清单不是批准上下文。品牌上下文不能序列化、跨仓或从只读升级;在阶段中生成的上下文结束后失效。调用者可传入 `AbortSignal`,已收到的撤回事件须中止当前操作;下一次边界始终重新读取当前批准和回复。未接入读取追踪的消费者保留原检查,不共享结果。
|
|
45
49
|
|
|
46
50
|
P1 可回用原 `slice-contract` 阅读入口;P2 可回退阶段调用与本次改动的读取适配,恢复完整重复检查;P3 可停止创建 v2,但已生成 v2 的读取能力必须保留。回退后重新验证当前来源和批准,不恢复历史通过状态。
|
|
51
|
+
|
|
52
|
+
## 默认派发与审阅材料
|
|
53
|
+
|
|
54
|
+
提供该查询入口的聚合与战略模板中,派发首先用 `scripts/query-lifecycle-context` 一次组合 mode、stage、work-unit 与必要合同子树(`--mode`、`--stage`、`--work-unit`、`--include`)。结果 `sources.lifecycle_registry.sha256` 绑定原始注册表字节,`context_sha256` 绑定规范化查询、实际返回内容及来源;旧 `semantic_sha256` 只绑定稳定 ID 语义。旧结果缺少新增绑定时重新查询,不视作可复用。身份、执行范围和查询来源在同一 `validation-phase` 内读取,返回前变化则失败。
|
|
55
|
+
|
|
56
|
+
专职交付 Profile 的阶段与 mode 继续由其现有 harness-profile 和主控入口解析,不假定未分发的查询命令存在。实现者默认读取指定 `--unit` 的 `task` 视图,审阅者默认读取 `review`;不要先整读 YAML 再重复生成相同视图。身份、版本、写边界、验收、停止条件、风险与未知约束均须保留,需要追溯时展开 `full`。一次执行边界内可复用未变来源;恢复、交接、实现、合并及发布重新核验。Context Plan 的原始 v2 字段为 `common.context_plan`,原始 v3 为 `scope.context_plan`;`common.context_plan` 在 v3 运行时只是归一化别名,不是修改原 YAML 的位置。
|
|
57
|
+
|
|
58
|
+
```sh
|
|
59
|
+
scripts/contract prepare-review <前资产> <后资产> --kind <类型> [--unit <ID>] [--decision <原决定.yaml>] --json
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
输出来源字节绑定、差异、完整约束、原决定与缺口及恢复动作。`approval_reusable: false`、`execution_allowed: false` 固定不授予批准或执行权;语义等价、风险接受、原回复真实性和批准延续由原审查及决定验证器处理。缺少原决定标记未提供,不能据此沿用批准。
|
|
63
|
+
|
|
64
|
+
## 当前前端交互证据
|
|
65
|
+
|
|
66
|
+
模板正式研究的路由、实际验证及收尾见 [研究收尾协议](research-completion.md)。
|
|
67
|
+
|
|
68
|
+
前端 verification schema v2 保留读取历史交互文字;正式完成校验要求 `implementation_plan: {ref, digest}` 绑定当前批准计划,`interaction_results` 使用 `{case_id, state, result, evidence_ref, evidence_digest}`,覆盖计划全部 state_cases 和选定 case_id。只有 `result: pass` 可继续。console、实现截图、视觉差异与实际命令日志均须绑定当前字节摘要,命令必须覆盖计划中的 pnpm_commands。
|
|
69
|
+
|
|
70
|
+
历史文字报告返回 `legacy-interaction-binding-missing`;先重验计划与批准,再真实执行交互、console、截图及适用命令并另存新报告,不给旧报告补造通过记录。摘要校验不证明交互语义,实际浏览器轨迹和独立前端审查仍按既有边界执行。
|
|
@@ -121,6 +121,7 @@
|
|
|
121
121
|
"work-unit.intensity-aware-review-v2",
|
|
122
122
|
"work-unit.intensity-aware-verification",
|
|
123
123
|
"work-unit.intensity-aware-verification-v2",
|
|
124
|
+
"work-unit.maintenance-research",
|
|
124
125
|
"work-unit.plan-opportunity",
|
|
125
126
|
"work-unit.plan-requirements",
|
|
126
127
|
"work-unit.prototype-design",
|
|
@@ -248,6 +249,7 @@
|
|
|
248
249
|
"work-unit.stage-decision": "9a43c029438849337d1ddead2b4f0ca1d1c3482c279265e2b1db3088cbff6048",
|
|
249
250
|
"work-unit.technical-analysis": "57bb8cab7b0ef2eff43d848914bdd9297ec582570d11c0639dda3227a383726a",
|
|
250
251
|
"work-unit.template-snapshot-build": "48463092d1c644f5a5fc4f1c188ba662d7984085b8b04b1fbff450ef8c682939",
|
|
251
|
-
"work-unit.ticket-decomposition": "d239bd6855ea3cc8d448892af8bff62f5531499774eed58761288374b4c3d2cc"
|
|
252
|
+
"work-unit.ticket-decomposition": "d239bd6855ea3cc8d448892af8bff62f5531499774eed58761288374b4c3d2cc",
|
|
253
|
+
"work-unit.maintenance-research": "ee03d6217e4225b453fe9a7f55718c3403769aa3b3993c28e8aedc6c6a3febec"
|
|
252
254
|
}
|
|
253
255
|
}
|
|
@@ -340,6 +340,12 @@ artifacts:
|
|
|
340
340
|
trigger: 发布后或阶段性完成后满足复盘触发条件。
|
|
341
341
|
|
|
342
342
|
work_units:
|
|
343
|
+
- id: work-unit.maintenance-research
|
|
344
|
+
name: 模板维护研究
|
|
345
|
+
scope: template-source
|
|
346
|
+
input: 已明确范围的技术或策略研究请求。
|
|
347
|
+
output: 研究简报、证据台账和绑定当前输入的验证记录。
|
|
348
|
+
completion: 当前研究包校验通过、执行阻断关闭;独立结束或在已授权范围内继续模板维护。
|
|
343
349
|
- id: work-unit.entry-triage
|
|
344
350
|
name: 入口分诊
|
|
345
351
|
scope: template-source
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# 模板维护研究收尾
|
|
2
|
+
|
|
3
|
+
本协议由主模板生命周期持有;专职接收 profile 缺少本工作单元时,将研究包回交主模板收尾,不在接收 profile 另建阶段或宣布维护批准。
|
|
4
|
+
|
|
5
|
+
正式落盘的模板研究使用注册工作单元 `work-unit.maintenance-research`,权威路由见生命周期注册表与主控合同。它不新增阶段或批准门禁。只返回来源与结论的咨询沿用 read-only-intake v2;产品实例研究仍由原生命周期工作单元消费。
|
|
6
|
+
|
|
7
|
+
## 当前验证与完成
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
node scripts/verify-maintenance-research <slug>-research-brief.md <slug>-evidence.yaml --output <不存在的验证目录>
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
命令实际调用研究包校验器,保留 stdout/stderr、退出码、起止时间及简报、台账、校验器、日志的 SHA-256;返回 `binding: {ref, digest}`。不会覆盖旧目录。失败记录保留,不能用于完成。
|
|
14
|
+
|
|
15
|
+
Workflow Execution Result 在原字段之外携带 `research_verification: {ref, digest}`。`evidence_refs` 包含验证记录、简报、台账和 Context 不适用说明。`context_reconciliation.status` 为 `not-applicable` 且必须给出原因;执行阻断、drift、violation、new_impacts 和 stale_candidates 必须为空。
|
|
16
|
+
|
|
17
|
+
接收端重读绑定字节,并实际重跑当前研究校验器。通过后可以 `next_route: null` 独立结束。结构校验不证明来源中的事实,也不代替主控对重要结论的来源审计;研究报告保留反证、来源缺口和结论边界。
|
|
18
|
+
|
|
19
|
+
## 继续维护与历史记录
|
|
20
|
+
|
|
21
|
+
继续 `work-unit.ssot-update` 时,`maintenance_authorization: {ref, digest}` 指向既有用户决定协议的 requirement:`boundary: template-maintenance-scope`、明确的 `subject_ref`、包含 `work-unit.ssot-update` 的 `scope`,以及 `user_decision_ref` 或 `continuation_ref`。验证复用现有 `assertUserDecisionRequirement`,核对原始回复、展示资产与范围;这是对已有授权的绑定,不要求用户重复确认。没有维护授权仍可合法结束研究。
|
|
22
|
+
|
|
23
|
+
身份从接收仓库根清单读取,结果中的 `repository_mode` 不能改变路由。旧 `entry-triage` 研究任务和阻断记录保持原字节;重新核验后另存研究收尾任务包,并通过 `inputs` 引用旧包。新记录说明复核对象及历史范围,不冒充原 Agent 在本轮重新研究。
|