@arimakouyou/spec-workflow-mcp 2.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/.mcp.json +8 -0
- package/.claude-plugin/agents/code-simplifier.md +80 -0
- package/.claude-plugin/agents/integ-test-auditor.md +91 -0
- package/.claude-plugin/agents/integ-test-worker.md +73 -0
- package/.claude-plugin/agents/parallel-worker.md +136 -0
- package/.claude-plugin/agents/review-worker.md +279 -0
- package/.claude-plugin/agents/unit-test-engineer.md +148 -0
- package/.claude-plugin/agents/wave-harness-worker.md +158 -0
- package/.claude-plugin/hooks/hooks.json +16 -0
- package/.claude-plugin/hooks/tasks-read-guard.sh +17 -0
- package/.claude-plugin/marketplace.json +33 -0
- package/.claude-plugin/plugin.json +11 -0
- package/.claude-plugin/rules/axum.md +154 -0
- package/.claude-plugin/rules/cargo-toml.md +63 -0
- package/.claude-plugin/rules/context7.md +17 -0
- package/.claude-plugin/rules/design-conformance.md +82 -0
- package/.claude-plugin/rules/design-principles.md +53 -0
- package/.claude-plugin/rules/diesel.md +176 -0
- package/.claude-plugin/rules/feedback-loop.md +33 -0
- package/.claude-plugin/rules/leptos.md +319 -0
- package/.claude-plugin/rules/project-architecture.md +134 -0
- package/.claude-plugin/rules/quality-checks.md +265 -0
- package/.claude-plugin/rules/rust-style.md +242 -0
- package/.claude-plugin/rules/security.md +67 -0
- package/.claude-plugin/rules/spec-workflow-enforcement.md +47 -0
- package/.claude-plugin/rules/valkey.md +167 -0
- package/.claude-plugin/skills/integration-test/SKILL.md +230 -0
- package/.claude-plugin/skills/integration-test/references/auditor-prompt.md +78 -0
- package/.claude-plugin/skills/integration-test/references/external-api-mock.md +98 -0
- package/.claude-plugin/skills/integration-test/references/fixture-catalog.md +155 -0
- package/.claude-plugin/skills/integration-test/references/parallel-execution.md +124 -0
- package/.claude-plugin/skills/integration-test/references/quality-gate.md +80 -0
- package/.claude-plugin/skills/integration-test/references/test-case-design.md +88 -0
- package/.claude-plugin/skills/integration-test/references/test-patterns.md +215 -0
- package/.claude-plugin/skills/integration-test/references/whiteboard-template.md +81 -0
- package/.claude-plugin/skills/integration-test/references/worker-prompt.md +70 -0
- package/.claude-plugin/skills/knowhow-capture/SKILL.md +143 -0
- package/.claude-plugin/skills/phase-review-team/SKILL.md +380 -0
- package/.claude-plugin/skills/spec-design/SKILL.md +282 -0
- package/.claude-plugin/skills/spec-e2e-implement/SKILL.md +259 -0
- package/.claude-plugin/skills/spec-impl-code/SKILL.md +101 -0
- package/.claude-plugin/skills/spec-impl-review/SKILL.md +115 -0
- package/.claude-plugin/skills/spec-impl-test-run/SKILL.md +98 -0
- package/.claude-plugin/skills/spec-impl-test-write/SKILL.md +121 -0
- package/.claude-plugin/skills/spec-implement/SKILL.md +822 -0
- package/.claude-plugin/skills/spec-requirements/SKILL.md +130 -0
- package/.claude-plugin/skills/spec-review/SKILL.md +274 -0
- package/.claude-plugin/skills/spec-tasks/SKILL.md +372 -0
- package/.claude-plugin/skills/spec-test-design/SKILL.md +233 -0
- package/.claude-plugin/skills/tdd-skills/SKILL.md +95 -0
- package/.claude-plugin/skills/tdd-skills/references/advanced-techniques.md +49 -0
- package/.claude-plugin/skills/tdd-skills/references/green-strategies.md +70 -0
- package/.claude-plugin/skills/tdd-skills/references/tdd-and-design.md +48 -0
- package/.claude-plugin/skills/tdd-skills/references/test-design.md +43 -0
- package/.claude-plugin/skills/tdd-skills/references/test-doubles.md +53 -0
- package/.claude-plugin/skills/tdd-skills/references/test-patterns.md +40 -0
- package/.claude-plugin/skills/tdd-skills-rust/SKILL.md +128 -0
- package/.claude-plugin/skills/tdd-skills-rust/references/advanced-techniques.md +205 -0
- package/.claude-plugin/skills/tdd-skills-rust/references/green-strategies.md +166 -0
- package/.claude-plugin/skills/tdd-skills-rust/references/tdd-and-design.md +215 -0
- package/.claude-plugin/skills/tdd-skills-rust/references/test-design.md +128 -0
- package/.claude-plugin/skills/tdd-skills-rust/references/test-doubles.md +208 -0
- package/.claude-plugin/skills/tdd-skills-rust/references/test-patterns.md +223 -0
- package/.claude-plugin/with-dashboard/.mcp.json +8 -0
- package/.claude-plugin/with-dashboard/plugin.json +10 -0
- package/CHANGELOG.md +1007 -0
- package/LICENSE +674 -0
- package/README.ja.md +380 -0
- package/README.md +437 -0
- package/dist/__tests__/config.test.d.ts +2 -0
- package/dist/__tests__/config.test.d.ts.map +1 -0
- package/dist/__tests__/config.test.js +264 -0
- package/dist/__tests__/config.test.js.map +1 -0
- package/dist/__tests__/index-args.test.d.ts +2 -0
- package/dist/__tests__/index-args.test.d.ts.map +1 -0
- package/dist/__tests__/index-args.test.js +43 -0
- package/dist/__tests__/index-args.test.js.map +1 -0
- package/dist/__tests__/index-entrypoint.test.d.ts +2 -0
- package/dist/__tests__/index-entrypoint.test.d.ts.map +1 -0
- package/dist/__tests__/index-entrypoint.test.js +23 -0
- package/dist/__tests__/index-entrypoint.test.js.map +1 -0
- package/dist/config.d.ts +26 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +188 -0
- package/dist/config.js.map +1 -0
- package/dist/core/__tests__/git-utils.test.d.ts +2 -0
- package/dist/core/__tests__/git-utils.test.d.ts.map +1 -0
- package/dist/core/__tests__/git-utils.test.js +179 -0
- package/dist/core/__tests__/git-utils.test.js.map +1 -0
- package/dist/core/__tests__/mdx-validator.test.d.ts +2 -0
- package/dist/core/__tests__/mdx-validator.test.d.ts.map +1 -0
- package/dist/core/__tests__/mdx-validator.test.js +42 -0
- package/dist/core/__tests__/mdx-validator.test.js.map +1 -0
- package/dist/core/__tests__/path-utils.test.d.ts +2 -0
- package/dist/core/__tests__/path-utils.test.d.ts.map +1 -0
- package/dist/core/__tests__/path-utils.test.js +342 -0
- package/dist/core/__tests__/path-utils.test.js.map +1 -0
- package/dist/core/__tests__/project-registry.test.d.ts +2 -0
- package/dist/core/__tests__/project-registry.test.d.ts.map +1 -0
- package/dist/core/__tests__/project-registry.test.js +62 -0
- package/dist/core/__tests__/project-registry.test.js.map +1 -0
- package/dist/core/__tests__/security-utils.test.d.ts +2 -0
- package/dist/core/__tests__/security-utils.test.d.ts.map +1 -0
- package/dist/core/__tests__/security-utils.test.js +657 -0
- package/dist/core/__tests__/security-utils.test.js.map +1 -0
- package/dist/core/__tests__/task-parser.test.d.ts +2 -0
- package/dist/core/__tests__/task-parser.test.d.ts.map +1 -0
- package/dist/core/__tests__/task-parser.test.js +222 -0
- package/dist/core/__tests__/task-parser.test.js.map +1 -0
- package/dist/core/__tests__/task-validator.test.d.ts +2 -0
- package/dist/core/__tests__/task-validator.test.d.ts.map +1 -0
- package/dist/core/__tests__/task-validator.test.js +308 -0
- package/dist/core/__tests__/task-validator.test.js.map +1 -0
- package/dist/core/archive-service.d.ts +10 -0
- package/dist/core/archive-service.d.ts.map +1 -0
- package/dist/core/archive-service.js +99 -0
- package/dist/core/archive-service.js.map +1 -0
- package/dist/core/dashboard-session.d.ts +49 -0
- package/dist/core/dashboard-session.d.ts.map +1 -0
- package/dist/core/dashboard-session.js +132 -0
- package/dist/core/dashboard-session.js.map +1 -0
- package/dist/core/git-utils.d.ts +25 -0
- package/dist/core/git-utils.d.ts.map +1 -0
- package/dist/core/git-utils.js +87 -0
- package/dist/core/git-utils.js.map +1 -0
- package/dist/core/global-dir.d.ts +44 -0
- package/dist/core/global-dir.d.ts.map +1 -0
- package/dist/core/global-dir.js +74 -0
- package/dist/core/global-dir.js.map +1 -0
- package/dist/core/implementation-log-migrator.d.ts +41 -0
- package/dist/core/implementation-log-migrator.d.ts.map +1 -0
- package/dist/core/implementation-log-migrator.js +258 -0
- package/dist/core/implementation-log-migrator.js.map +1 -0
- package/dist/core/mdx-validator.d.ts +14 -0
- package/dist/core/mdx-validator.d.ts.map +1 -0
- package/dist/core/mdx-validator.js +34 -0
- package/dist/core/mdx-validator.js.map +1 -0
- package/dist/core/parser.d.ts +11 -0
- package/dist/core/parser.d.ts.map +1 -0
- package/dist/core/parser.js +128 -0
- package/dist/core/parser.js.map +1 -0
- package/dist/core/path-utils.d.ts +68 -0
- package/dist/core/path-utils.d.ts.map +1 -0
- package/dist/core/path-utils.js +302 -0
- package/dist/core/path-utils.js.map +1 -0
- package/dist/core/project-registry.d.ts +94 -0
- package/dist/core/project-registry.d.ts.map +1 -0
- package/dist/core/project-registry.js +297 -0
- package/dist/core/project-registry.js.map +1 -0
- package/dist/core/security-utils.d.ts +99 -0
- package/dist/core/security-utils.d.ts.map +1 -0
- package/dist/core/security-utils.js +275 -0
- package/dist/core/security-utils.js.map +1 -0
- package/dist/core/task-parser.d.ts +90 -0
- package/dist/core/task-parser.d.ts.map +1 -0
- package/dist/core/task-parser.js +477 -0
- package/dist/core/task-parser.js.map +1 -0
- package/dist/core/task-validator.d.ts +37 -0
- package/dist/core/task-validator.d.ts.map +1 -0
- package/dist/core/task-validator.js +499 -0
- package/dist/core/task-validator.js.map +1 -0
- package/dist/core/workspace-initializer.d.ts +16 -0
- package/dist/core/workspace-initializer.d.ts.map +1 -0
- package/dist/core/workspace-initializer.js +168 -0
- package/dist/core/workspace-initializer.js.map +1 -0
- package/dist/dashboard/__tests__/approval-storage-path-resolution.test.d.ts +2 -0
- package/dist/dashboard/__tests__/approval-storage-path-resolution.test.d.ts.map +1 -0
- package/dist/dashboard/__tests__/approval-storage-path-resolution.test.js +78 -0
- package/dist/dashboard/__tests__/approval-storage-path-resolution.test.js.map +1 -0
- package/dist/dashboard/__tests__/multi-server-approvals-content.test.d.ts +2 -0
- package/dist/dashboard/__tests__/multi-server-approvals-content.test.d.ts.map +1 -0
- package/dist/dashboard/__tests__/multi-server-approvals-content.test.js +115 -0
- package/dist/dashboard/__tests__/multi-server-approvals-content.test.js.map +1 -0
- package/dist/dashboard/__tests__/watcher-error-handling.test.d.ts +2 -0
- package/dist/dashboard/__tests__/watcher-error-handling.test.d.ts.map +1 -0
- package/dist/dashboard/__tests__/watcher-error-handling.test.js +118 -0
- package/dist/dashboard/__tests__/watcher-error-handling.test.js.map +1 -0
- package/dist/dashboard/approval-storage.d.ts +139 -0
- package/dist/dashboard/approval-storage.d.ts.map +1 -0
- package/dist/dashboard/approval-storage.js +608 -0
- package/dist/dashboard/approval-storage.js.map +1 -0
- package/dist/dashboard/execution-history-manager.d.ts +52 -0
- package/dist/dashboard/execution-history-manager.d.ts.map +1 -0
- package/dist/dashboard/execution-history-manager.js +161 -0
- package/dist/dashboard/execution-history-manager.js.map +1 -0
- package/dist/dashboard/implementation-log-manager.d.ts +97 -0
- package/dist/dashboard/implementation-log-manager.d.ts.map +1 -0
- package/dist/dashboard/implementation-log-manager.js +617 -0
- package/dist/dashboard/implementation-log-manager.js.map +1 -0
- package/dist/dashboard/job-scheduler.d.ts +91 -0
- package/dist/dashboard/job-scheduler.d.ts.map +1 -0
- package/dist/dashboard/job-scheduler.js +321 -0
- package/dist/dashboard/job-scheduler.js.map +1 -0
- package/dist/dashboard/multi-server.d.ts +42 -0
- package/dist/dashboard/multi-server.d.ts.map +1 -0
- package/dist/dashboard/multi-server.js +1460 -0
- package/dist/dashboard/multi-server.js.map +1 -0
- package/dist/dashboard/parser.d.ts +18 -0
- package/dist/dashboard/parser.d.ts.map +1 -0
- package/dist/dashboard/parser.js +269 -0
- package/dist/dashboard/parser.js.map +1 -0
- package/dist/dashboard/project-manager.d.ts +82 -0
- package/dist/dashboard/project-manager.d.ts.map +1 -0
- package/dist/dashboard/project-manager.js +257 -0
- package/dist/dashboard/project-manager.js.map +1 -0
- package/dist/dashboard/public/assets/Inter-Bold-CD3Pr7BX.woff2 +0 -0
- package/dist/dashboard/public/assets/Inter-Medium-B_8v_WHh.woff2 +0 -0
- package/dist/dashboard/public/assets/Inter-Regular-DRVdRqcI.woff2 +0 -0
- package/dist/dashboard/public/assets/Inter-SemiBold-CtskMddL.woff2 +0 -0
- package/dist/dashboard/public/assets/JetBrainsMono-Bold-D4WEaHbo.woff2 +0 -0
- package/dist/dashboard/public/assets/JetBrainsMono-Medium-3S3k2nMz.woff2 +0 -0
- package/dist/dashboard/public/assets/JetBrainsMono-Regular-BQaDgvhP.woff2 +0 -0
- package/dist/dashboard/public/assets/Tableau10-B-NsZVaP.js +1 -0
- package/dist/dashboard/public/assets/apl-B4CMkyY2.js +1 -0
- package/dist/dashboard/public/assets/arc-a5wW942W.js +1 -0
- package/dist/dashboard/public/assets/array-BKyUJesY.js +1 -0
- package/dist/dashboard/public/assets/asciiarmor-Df11BRmG.js +1 -0
- package/dist/dashboard/public/assets/asn1-EdZsLKOL.js +1 -0
- package/dist/dashboard/public/assets/asterisk-B-8jnY81.js +1 -0
- package/dist/dashboard/public/assets/blockDiagram-c4efeb88-CvjTuK-w.js +118 -0
- package/dist/dashboard/public/assets/brainfuck-C4LP7Hcl.js +1 -0
- package/dist/dashboard/public/assets/c4Diagram-c83219d4-NwVQo5kf.js +10 -0
- package/dist/dashboard/public/assets/channel-Bi16YZhk.js +1 -0
- package/dist/dashboard/public/assets/classDiagram-beda092f-BmSeXDdU.js +2 -0
- package/dist/dashboard/public/assets/classDiagram-v2-2358418a-D7GvvuPr.js +2 -0
- package/dist/dashboard/public/assets/clike-B9uivgTg.js +1 -0
- package/dist/dashboard/public/assets/clojure-BMjYHr_A.js +1 -0
- package/dist/dashboard/public/assets/clone-BpKTiq7P.js +1 -0
- package/dist/dashboard/public/assets/cmake-BQqOBYOt.js +1 -0
- package/dist/dashboard/public/assets/cobol-CWcv1MsR.js +1 -0
- package/dist/dashboard/public/assets/coffeescript-S37ZYGWr.js +1 -0
- package/dist/dashboard/public/assets/commonlisp-DBKNyK5s.js +1 -0
- package/dist/dashboard/public/assets/createText-1719965b-qASbqHUP.js +7 -0
- package/dist/dashboard/public/assets/crystal-SjHAIU92.js +1 -0
- package/dist/dashboard/public/assets/css-BnMrqG3P.js +1 -0
- package/dist/dashboard/public/assets/cypher-C_CwsFkJ.js +1 -0
- package/dist/dashboard/public/assets/d-pRatUO7H.js +1 -0
- package/dist/dashboard/public/assets/diff-DbItnlRl.js +1 -0
- package/dist/dashboard/public/assets/dockerfile-BKs6k2Af.js +1 -0
- package/dist/dashboard/public/assets/dtd-DF_7sFjM.js +1 -0
- package/dist/dashboard/public/assets/dylan-DwRh75JA.js +1 -0
- package/dist/dashboard/public/assets/ebnf-CDyGwa7X.js +1 -0
- package/dist/dashboard/public/assets/ecl-Cabwm37j.js +1 -0
- package/dist/dashboard/public/assets/edges-96097737-BItTSnH7.js +4 -0
- package/dist/dashboard/public/assets/eiffel-CnydiIhH.js +1 -0
- package/dist/dashboard/public/assets/elm-vLlmbW-K.js +1 -0
- package/dist/dashboard/public/assets/erDiagram-0228fc6a-DT224olg.js +51 -0
- package/dist/dashboard/public/assets/erlang-BNw1qcRV.js +1 -0
- package/dist/dashboard/public/assets/factor-kuTfRLto.js +1 -0
- package/dist/dashboard/public/assets/fcl-Kvtd6kyn.js +1 -0
- package/dist/dashboard/public/assets/flowDb-c6c81e3f-D9_ukKtv.js +10 -0
- package/dist/dashboard/public/assets/flowDiagram-50d868cf-CylE8siG.js +4 -0
- package/dist/dashboard/public/assets/flowDiagram-v2-4f6560a1-B2O3JN7Y.js +1 -0
- package/dist/dashboard/public/assets/flowchart-elk-definition-6af322e1-BCaqFKf3.js +139 -0
- package/dist/dashboard/public/assets/forth-Ffai-XNe.js +1 -0
- package/dist/dashboard/public/assets/fortran-DYz_wnZ1.js +1 -0
- package/dist/dashboard/public/assets/ganttDiagram-a2739b55-WQUL1QW_.js +257 -0
- package/dist/dashboard/public/assets/gas-Bneqetm1.js +1 -0
- package/dist/dashboard/public/assets/gherkin-heZmZLOM.js +1 -0
- package/dist/dashboard/public/assets/gitGraphDiagram-82fe8481-CttZrdmr.js +70 -0
- package/dist/dashboard/public/assets/graph-Ch-rVueN.js +1 -0
- package/dist/dashboard/public/assets/groovy-D9Dt4D0W.js +1 -0
- package/dist/dashboard/public/assets/haskell-Cw1EW3IL.js +1 -0
- package/dist/dashboard/public/assets/haxe-H-WmDvRZ.js +1 -0
- package/dist/dashboard/public/assets/http-DBlCnlav.js +1 -0
- package/dist/dashboard/public/assets/idl-BEugSyMb.js +1 -0
- package/dist/dashboard/public/assets/index--kbPpDKv.js +1 -0
- package/dist/dashboard/public/assets/index-3scDwWm6.js +1 -0
- package/dist/dashboard/public/assets/index-5325376f-BL2zVOJU.js +1 -0
- package/dist/dashboard/public/assets/index-BZdjbO25.js +1 -0
- package/dist/dashboard/public/assets/index-BmA_batZ.js +1 -0
- package/dist/dashboard/public/assets/index-Bu0u99kF.js +2 -0
- package/dist/dashboard/public/assets/index-Ch-lr7F4.js +1 -0
- package/dist/dashboard/public/assets/index-ClgWbdoq.js +1 -0
- package/dist/dashboard/public/assets/index-CzLwOMQ_.js +3 -0
- package/dist/dashboard/public/assets/index-DAOEjGO7.js +1 -0
- package/dist/dashboard/public/assets/index-DXqf0B9c.js +1 -0
- package/dist/dashboard/public/assets/index-DegWdR16.js +1 -0
- package/dist/dashboard/public/assets/index-DiHyYGim.js +1 -0
- package/dist/dashboard/public/assets/index-DlZtG7I5.js +1 -0
- package/dist/dashboard/public/assets/index-DmhGE2M8.js +1 -0
- package/dist/dashboard/public/assets/index-QEGvld4x.js +1 -0
- package/dist/dashboard/public/assets/index-RfZPGAJu.js +1 -0
- package/dist/dashboard/public/assets/index-UybBj_7u.js +319 -0
- package/dist/dashboard/public/assets/index-bVekzPnl.js +7 -0
- package/dist/dashboard/public/assets/index-f5bysQzW.css +1 -0
- package/dist/dashboard/public/assets/infoDiagram-8eee0895-DjzkkE3o.js +7 -0
- package/dist/dashboard/public/assets/init-Gi6I4Gst.js +1 -0
- package/dist/dashboard/public/assets/javascript-iXu5QeM3.js +1 -0
- package/dist/dashboard/public/assets/journeyDiagram-c64418c1-CxPZkNdB.js +139 -0
- package/dist/dashboard/public/assets/julia-DuME0IfC.js +1 -0
- package/dist/dashboard/public/assets/katex-XbL3y5x-.js +261 -0
- package/dist/dashboard/public/assets/layout-DX7DNTRm.js +1 -0
- package/dist/dashboard/public/assets/line-DfvpmKOn.js +1 -0
- package/dist/dashboard/public/assets/linear-gQbBPHO5.js +1 -0
- package/dist/dashboard/public/assets/livescript-BwQOo05w.js +1 -0
- package/dist/dashboard/public/assets/lua-BgMRiT3U.js +1 -0
- package/dist/dashboard/public/assets/mathematica-DTrFuWx2.js +1 -0
- package/dist/dashboard/public/assets/mbox-CNhZ1qSd.js +1 -0
- package/dist/dashboard/public/assets/mindmap-definition-8da855dc-CNxmpyG6.js +415 -0
- package/dist/dashboard/public/assets/mirc-CjQqDB4T.js +1 -0
- package/dist/dashboard/public/assets/mllike-CXdrOF99.js +1 -0
- package/dist/dashboard/public/assets/modelica-Dc1JOy9r.js +1 -0
- package/dist/dashboard/public/assets/mscgen-BA5vi2Kp.js +1 -0
- package/dist/dashboard/public/assets/mumps-BT43cFF4.js +1 -0
- package/dist/dashboard/public/assets/nginx-DdIZxoE0.js +1 -0
- package/dist/dashboard/public/assets/nsis-LdVXkNf5.js +1 -0
- package/dist/dashboard/public/assets/ntriples-BfvgReVJ.js +1 -0
- package/dist/dashboard/public/assets/octave-Ck1zUtKM.js +1 -0
- package/dist/dashboard/public/assets/ordinal-Cboi1Yqb.js +1 -0
- package/dist/dashboard/public/assets/oz-BzwKVEFT.js +1 -0
- package/dist/dashboard/public/assets/pascal--L3eBynH.js +1 -0
- package/dist/dashboard/public/assets/path-CbwjOpE9.js +1 -0
- package/dist/dashboard/public/assets/perl-CdXCOZ3F.js +1 -0
- package/dist/dashboard/public/assets/pieDiagram-a8764435-D-xy_NSA.js +35 -0
- package/dist/dashboard/public/assets/pig-CevX1Tat.js +1 -0
- package/dist/dashboard/public/assets/powershell-CFHJl5sT.js +1 -0
- package/dist/dashboard/public/assets/properties-C78fOPTZ.js +1 -0
- package/dist/dashboard/public/assets/protobuf-ChK-085T.js +1 -0
- package/dist/dashboard/public/assets/pug-DeIclll2.js +1 -0
- package/dist/dashboard/public/assets/puppet-DMA9R1ak.js +1 -0
- package/dist/dashboard/public/assets/python-BuPzkPfP.js +1 -0
- package/dist/dashboard/public/assets/q-pXgVlZs6.js +1 -0
- package/dist/dashboard/public/assets/quadrantDiagram-1e28029f-BoL2wzz0.js +7 -0
- package/dist/dashboard/public/assets/r-B6wPVr8A.js +1 -0
- package/dist/dashboard/public/assets/requirementDiagram-08caed73-BujFz0q1.js +52 -0
- package/dist/dashboard/public/assets/rpm-CTu-6PCP.js +1 -0
- package/dist/dashboard/public/assets/ruby-B2Rjki9n.js +1 -0
- package/dist/dashboard/public/assets/sankeyDiagram-a04cb91d-D03_NARm.js +8 -0
- package/dist/dashboard/public/assets/sas-B4kiWyti.js +1 -0
- package/dist/dashboard/public/assets/scheme-C41bIUwD.js +1 -0
- package/dist/dashboard/public/assets/sequenceDiagram-c5b8d532-B65eFcaT.js +122 -0
- package/dist/dashboard/public/assets/shell-CjFT_Tl9.js +1 -0
- package/dist/dashboard/public/assets/sieve-C3Gn_uJK.js +1 -0
- package/dist/dashboard/public/assets/simple-mode-GW_nhZxv.js +1 -0
- package/dist/dashboard/public/assets/smalltalk-CnHTOXQT.js +1 -0
- package/dist/dashboard/public/assets/solr-DehyRSwq.js +1 -0
- package/dist/dashboard/public/assets/sparql-DkYu6x3z.js +1 -0
- package/dist/dashboard/public/assets/spreadsheet-BCZA_wO0.js +1 -0
- package/dist/dashboard/public/assets/sql-D0XecflT.js +1 -0
- package/dist/dashboard/public/assets/stateDiagram-1ecb1508-BDbqu0Vl.js +1 -0
- package/dist/dashboard/public/assets/stateDiagram-v2-c2b004d7-CBHvk4b8.js +1 -0
- package/dist/dashboard/public/assets/stex-C3f8Ysf7.js +1 -0
- package/dist/dashboard/public/assets/styles-b4e223ce-CELsPqaO.js +160 -0
- package/dist/dashboard/public/assets/styles-ca3715f6-BRqMqT6F.js +207 -0
- package/dist/dashboard/public/assets/styles-d45a18b0-e8N-oLPy.js +116 -0
- package/dist/dashboard/public/assets/stylus-B533Al4x.js +1 -0
- package/dist/dashboard/public/assets/svgDrawCommon-b86b1483-vNDtmQc-.js +1 -0
- package/dist/dashboard/public/assets/swift-BzpIVaGY.js +1 -0
- package/dist/dashboard/public/assets/tcl-DVfN8rqt.js +1 -0
- package/dist/dashboard/public/assets/textile-CnDTJFAw.js +1 -0
- package/dist/dashboard/public/assets/tiddlywiki-DO-Gjzrf.js +1 -0
- package/dist/dashboard/public/assets/tiki-DGYXhP31.js +1 -0
- package/dist/dashboard/public/assets/timeline-definition-faaaa080-Dh2_A5VU.js +61 -0
- package/dist/dashboard/public/assets/toml-Bm5Em-hy.js +1 -0
- package/dist/dashboard/public/assets/troff-wAsdV37c.js +1 -0
- package/dist/dashboard/public/assets/ttcn-CfJYG6tj.js +1 -0
- package/dist/dashboard/public/assets/ttcn-cfg-B9xdYoR4.js +1 -0
- package/dist/dashboard/public/assets/turtle-B1tBg_DP.js +1 -0
- package/dist/dashboard/public/assets/vb-CmGdzxic.js +1 -0
- package/dist/dashboard/public/assets/vbscript-BuJXcnF6.js +1 -0
- package/dist/dashboard/public/assets/velocity-D8B20fx6.js +1 -0
- package/dist/dashboard/public/assets/verilog-C6RDOZhf.js +1 -0
- package/dist/dashboard/public/assets/vhdl-lSbBsy5d.js +1 -0
- package/dist/dashboard/public/assets/webidl-ZXfAyPTL.js +1 -0
- package/dist/dashboard/public/assets/xquery-DzFWVndE.js +1 -0
- package/dist/dashboard/public/assets/xychartDiagram-f5964ef8-B76v1AVF.js +7 -0
- package/dist/dashboard/public/assets/yacas-BJ4BC0dw.js +1 -0
- package/dist/dashboard/public/assets/z80-Hz9HOZM7.js +1 -0
- package/dist/dashboard/public/claude-icon-dark.svg +1 -0
- package/dist/dashboard/public/claude-icon.svg +1 -0
- package/dist/dashboard/public/index.html +16 -0
- package/dist/dashboard/settings-manager.d.ts +47 -0
- package/dist/dashboard/settings-manager.d.ts.map +1 -0
- package/dist/dashboard/settings-manager.js +180 -0
- package/dist/dashboard/settings-manager.js.map +1 -0
- package/dist/dashboard/utils.d.ts +31 -0
- package/dist/dashboard/utils.d.ts.map +1 -0
- package/dist/dashboard/utils.js +102 -0
- package/dist/dashboard/utils.js.map +1 -0
- package/dist/dashboard/watcher.d.ts +32 -0
- package/dist/dashboard/watcher.d.ts.map +1 -0
- package/dist/dashboard/watcher.js +173 -0
- package/dist/dashboard/watcher.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +380 -0
- package/dist/index.js.map +1 -0
- package/dist/markdown/templates/design-template.md +126 -0
- package/dist/markdown/templates/product-template.md +51 -0
- package/dist/markdown/templates/requirements-template.md +50 -0
- package/dist/markdown/templates/structure-template.md +145 -0
- package/dist/markdown/templates/tasks-template.md +100 -0
- package/dist/markdown/templates/tech-template.md +99 -0
- package/dist/markdown/templates/test-design-template.md +221 -0
- package/dist/prompts/create-spec.d.ts +3 -0
- package/dist/prompts/create-spec.d.ts.map +1 -0
- package/dist/prompts/create-spec.js +97 -0
- package/dist/prompts/create-spec.js.map +1 -0
- package/dist/prompts/create-steering-doc.d.ts +3 -0
- package/dist/prompts/create-steering-doc.d.ts.map +1 -0
- package/dist/prompts/create-steering-doc.js +75 -0
- package/dist/prompts/create-steering-doc.js.map +1 -0
- package/dist/prompts/implement-task.d.ts +3 -0
- package/dist/prompts/implement-task.d.ts.map +1 -0
- package/dist/prompts/implement-task.js +174 -0
- package/dist/prompts/implement-task.js.map +1 -0
- package/dist/prompts/index.d.ts +20 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +103 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/inject-spec-workflow-guide.d.ts +3 -0
- package/dist/prompts/inject-spec-workflow-guide.d.ts.map +1 -0
- package/dist/prompts/inject-spec-workflow-guide.js +60 -0
- package/dist/prompts/inject-spec-workflow-guide.js.map +1 -0
- package/dist/prompts/inject-steering-guide.d.ts +3 -0
- package/dist/prompts/inject-steering-guide.d.ts.map +1 -0
- package/dist/prompts/inject-steering-guide.js +64 -0
- package/dist/prompts/inject-steering-guide.js.map +1 -0
- package/dist/prompts/refresh-tasks.d.ts +3 -0
- package/dist/prompts/refresh-tasks.d.ts.map +1 -0
- package/dist/prompts/refresh-tasks.js +237 -0
- package/dist/prompts/refresh-tasks.js.map +1 -0
- package/dist/prompts/spec-status.d.ts +3 -0
- package/dist/prompts/spec-status.d.ts.map +1 -0
- package/dist/prompts/spec-status.js +77 -0
- package/dist/prompts/spec-status.js.map +1 -0
- package/dist/prompts/types.d.ts +13 -0
- package/dist/prompts/types.d.ts.map +1 -0
- package/dist/prompts/types.js +2 -0
- package/dist/prompts/types.js.map +1 -0
- package/dist/server.d.ts +17 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +175 -0
- package/dist/server.js.map +1 -0
- package/dist/tools/__tests__/log-implementation-review-process.test.d.ts +2 -0
- package/dist/tools/__tests__/log-implementation-review-process.test.d.ts.map +1 -0
- package/dist/tools/__tests__/log-implementation-review-process.test.js +190 -0
- package/dist/tools/__tests__/log-implementation-review-process.test.js.map +1 -0
- package/dist/tools/__tests__/projectPath.test.d.ts +2 -0
- package/dist/tools/__tests__/projectPath.test.d.ts.map +1 -0
- package/dist/tools/__tests__/projectPath.test.js +187 -0
- package/dist/tools/__tests__/projectPath.test.js.map +1 -0
- package/dist/tools/approvals.d.ts +14 -0
- package/dist/tools/approvals.d.ts.map +1 -0
- package/dist/tools/approvals.js +505 -0
- package/dist/tools/approvals.js.map +1 -0
- package/dist/tools/index.d.ts +5 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +52 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/log-implementation.d.ts +5 -0
- package/dist/tools/log-implementation.d.ts.map +1 -0
- package/dist/tools/log-implementation.js +498 -0
- package/dist/tools/log-implementation.js.map +1 -0
- package/dist/tools/spec-status.d.ts +5 -0
- package/dist/tools/spec-status.d.ts.map +1 -0
- package/dist/tools/spec-status.js +192 -0
- package/dist/tools/spec-status.js.map +1 -0
- package/dist/tools/spec-workflow-guide.d.ts +5 -0
- package/dist/tools/spec-workflow-guide.d.ts.map +1 -0
- package/dist/tools/spec-workflow-guide.js +116 -0
- package/dist/tools/spec-workflow-guide.js.map +1 -0
- package/dist/tools/steering-guide.d.ts +5 -0
- package/dist/tools/steering-guide.d.ts.map +1 -0
- package/dist/tools/steering-guide.js +192 -0
- package/dist/tools/steering-guide.js.map +1 -0
- package/dist/types.d.ts +183 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +13 -0
- package/dist/types.js.map +1 -0
- package/package.json +106 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: code-simplifier
|
|
3
|
+
description: Simplifies and refines code to improve clarity, consistency, and maintainability while fully preserving functionality. Focuses on recently changed code unless explicitly instructed otherwise.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
You are a code simplification specialist focused on improving clarity, consistency, and maintainability while preserving exact functionality. You apply best practices defined in the project's `.claude-plugin/rules/` and improve code without changing its behavior.
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Priority Order
|
|
11
|
+
|
|
12
|
+
1. **Compliance with `.claude-plugin/rules/` rules** (highest priority)
|
|
13
|
+
2. **Preservation of functionality**: Never change what the code does
|
|
14
|
+
3. **Conformance to the official Rust style guide**: `rustfmt` + `clippy` defaults
|
|
15
|
+
4. **Application of project conventions**: rust-style.md, axum.md, diesel.md, etc.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Principles for Improving Clarity
|
|
20
|
+
|
|
21
|
+
Simplify code structure using the following approaches:
|
|
22
|
+
|
|
23
|
+
- Reduce unnecessary complexity and nesting
|
|
24
|
+
- Eliminate redundant code and abstractions
|
|
25
|
+
- Improve readability through clear variable and function names
|
|
26
|
+
- Consolidate related logic
|
|
27
|
+
- Remove unnecessary comments that explain self-evident code
|
|
28
|
+
- Leverage Rust idioms (`if let`, `?` operator, `map`/`and_then` chains, etc.)
|
|
29
|
+
- Prefer clarity over brevity — explicit code is better than overly compact code
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Rust-Specific Improvement Points
|
|
34
|
+
|
|
35
|
+
- Eliminate unnecessary `clone()` usage (when borrowing is sufficient)
|
|
36
|
+
- Replace `unwrap()` with the `?` operator or proper error handling
|
|
37
|
+
- Identify locations where `String` can be changed to `&str`
|
|
38
|
+
- Replace unnecessary `Box<dyn Trait>` with generics
|
|
39
|
+
- Consolidate re-iteration after `collect()` into a single iterator chain
|
|
40
|
+
- Flatten excessive `match` nesting using `if let` / `let else`
|
|
41
|
+
|
|
42
|
+
---
|
|
43
|
+
|
|
44
|
+
## Maintaining Balance
|
|
45
|
+
|
|
46
|
+
Avoid over-simplification that leads to:
|
|
47
|
+
|
|
48
|
+
- Reduced code clarity or maintainability
|
|
49
|
+
- "Clever" solutions that are difficult to understand
|
|
50
|
+
- Excessive responsibility concentrated in a single function
|
|
51
|
+
- Removal of useful abstractions that improve code organization
|
|
52
|
+
- Prioritizing "line count reduction" over readability
|
|
53
|
+
- Making debugging or extension more difficult
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## Refinement Process
|
|
58
|
+
|
|
59
|
+
1. Identify recently changed code sections
|
|
60
|
+
2. Reference `.claude-plugin/rules/` to check for convention violations
|
|
61
|
+
3. Determine the layer of the target file and apply the relevant rules
|
|
62
|
+
4. Analyze opportunities to improve clarity and consistency
|
|
63
|
+
5. Confirm that all functionality remains unchanged
|
|
64
|
+
6. Verify that the refined code is simpler and more maintainable
|
|
65
|
+
7. Run `rustfmt` and `clippy` for a final check
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## Prohibited Actions
|
|
70
|
+
|
|
71
|
+
- Changing functionality
|
|
72
|
+
- Changing specifications
|
|
73
|
+
- Unnecessary refactoring
|
|
74
|
+
- Over-simplification (reduced readability, harder to debug)
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
## Scope
|
|
79
|
+
|
|
80
|
+
Refine only code that was recently changed or edited in the current session, unless explicitly instructed to review a broader scope.
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: integ-test-auditor
|
|
3
|
+
description: Quality auditor for integration tests. Reviews tests created by Workers against the quality gate criteria.
|
|
4
|
+
tools: Read, Grep, Glob, TaskGet, TaskUpdate, TaskList, SendMessage
|
|
5
|
+
memory: project
|
|
6
|
+
permissionMode: bypassPermissions
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# integ-test-auditor
|
|
10
|
+
|
|
11
|
+
Quality auditor for integration tests. Reviews test code in **read-only** mode and determines pass/fail against the quality gate.
|
|
12
|
+
|
|
13
|
+
## Core Principle: Write No Code, Only Evaluate
|
|
14
|
+
|
|
15
|
+
Edit / Write / Bash are not available. Read test files and evaluate them against quality criteria to determine PASS/FAIL only.
|
|
16
|
+
|
|
17
|
+
## Files to Load at Startup (Required)
|
|
18
|
+
|
|
19
|
+
Read the following files immediately after startup and retain the evaluation criteria in context:
|
|
20
|
+
|
|
21
|
+
1. `.claude/skills/integration-test/references/quality-gate.md` — Quality checklist
|
|
22
|
+
2. `.claude/skills/integration-test/references/test-case-design.md` — 5 test case categories
|
|
23
|
+
|
|
24
|
+
## Review Procedure
|
|
25
|
+
|
|
26
|
+
1. **Receive a review request from Command via SendMessage**
|
|
27
|
+
- Target test file path
|
|
28
|
+
- Overview of the target API (HTTP method + path)
|
|
29
|
+
- Whiteboard path
|
|
30
|
+
|
|
31
|
+
2. **Read the test file**
|
|
32
|
+
|
|
33
|
+
3. **Apply the quality gate checklist in order**:
|
|
34
|
+
|
|
35
|
+
| # | Check Item | What to Verify |
|
|
36
|
+
|---|------------|----------------|
|
|
37
|
+
| A | 5-category coverage | At least 1 case each: happy path / error / boundary / edge / external dependency |
|
|
38
|
+
| B1 | Status-code-only tests = 0 | All tests also verify the response body |
|
|
39
|
+
| B2 | Post-operation DB verification | Verify DB directly after POST/PUT/DELETE |
|
|
40
|
+
| C | Code quality | Given-When-Then structure, naming, independence |
|
|
41
|
+
| D | Hermetic & Deterministic | TestContext isolation, trait DI, time control |
|
|
42
|
+
| E | Rust-specific | `#[tokio::test]`, clippy, rustfmt |
|
|
43
|
+
|
|
44
|
+
4. **Report the evaluation result to Command via SendMessage**
|
|
45
|
+
|
|
46
|
+
## Report Format
|
|
47
|
+
|
|
48
|
+
### On PASS
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
## Quality Gate Review: {test_file}
|
|
52
|
+
|
|
53
|
+
### Result: PASS
|
|
54
|
+
|
|
55
|
+
### Checklist
|
|
56
|
+
- [x] A. 5-category coverage: happy path {N} / error {N} / boundary {N} / edge {N} / external dependency {N}
|
|
57
|
+
- [x] B1. Status-code-only tests: 0
|
|
58
|
+
- [x] B2. Post-operation DB verification: OK
|
|
59
|
+
- [x] C. Code quality: OK
|
|
60
|
+
- [x] D. Determinism: OK
|
|
61
|
+
- [x] E. Rust-specific: OK
|
|
62
|
+
|
|
63
|
+
### Summary
|
|
64
|
+
All items passed. Test quality is good.
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
### On FAIL
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
## Quality Gate Review: {test_file}
|
|
71
|
+
|
|
72
|
+
### Result: FAIL
|
|
73
|
+
|
|
74
|
+
### Checklist
|
|
75
|
+
- [x] A. 5-category coverage: OK
|
|
76
|
+
- [ ] B1. Status-code-only tests: 2 detected
|
|
77
|
+
- [x] B2. Post-operation DB verification: OK
|
|
78
|
+
- [x] C. Code quality: OK
|
|
79
|
+
- [x] D. Determinism: OK
|
|
80
|
+
- [x] E. Rust-specific: OK
|
|
81
|
+
|
|
82
|
+
### Issues
|
|
83
|
+
1. **B1**: `unauthenticated_request_returns_401` (L45) only verifies status_code.
|
|
84
|
+
→ Also verify the error structure in the response body.
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Important Notes
|
|
88
|
+
|
|
89
|
+
- **Maximum 3 reviews**: Review the same test file at most 3 times. If FAIL on the 3rd review, treat remaining issues as PASS with comments attached.
|
|
90
|
+
- **Be specific in fix instructions**: Include line numbers and concrete change details. Vague feedback is not acceptable.
|
|
91
|
+
- **Minor improvement suggestions**: Record improvement suggestions that do not affect PASS/FAIL in a `Suggestions` section.
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: integ-test-worker
|
|
3
|
+
description: Implementation worker for the integration-test skill. Responsible for test case design, test implementation, and quality checks.
|
|
4
|
+
tools: Read, Write, Edit, Bash, Grep, Glob, TaskGet, TaskUpdate, TaskList, SendMessage
|
|
5
|
+
memory: project
|
|
6
|
+
permissionMode: bypassPermissions
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# integ-test-worker
|
|
10
|
+
|
|
11
|
+
Worker for integration tests. Implements the test file assigned by Command.
|
|
12
|
+
|
|
13
|
+
## Work Procedure
|
|
14
|
+
|
|
15
|
+
1. **Read the whiteboard (most important)**: Check Goal, Key Questions, and Findings from other Workers
|
|
16
|
+
2. **Understand the context**: Read handler → repository → model → dto
|
|
17
|
+
3. **Design test cases**: Cover all 5 categories (happy path / error / boundary / edge / external dependency error)
|
|
18
|
+
4. **Implement tests**: Write code in compliance with test-patterns.md
|
|
19
|
+
5. **Self quality check**: Run rustfmt + clippy + cargo test
|
|
20
|
+
6. **Report completion**: TaskUpdate(completed) + SendMessage to Command
|
|
21
|
+
|
|
22
|
+
## Required Reference Files
|
|
23
|
+
|
|
24
|
+
- Whiteboard (path notified by Command via SendMessage)
|
|
25
|
+
- `tests/integration/helpers/` — Common helpers (TestContext, etc.)
|
|
26
|
+
- `.claude/skills/integration-test/references/test-patterns.md` — Test implementation patterns
|
|
27
|
+
- `.claude/skills/integration-test/references/test-case-design.md` — Test case design
|
|
28
|
+
- `.claude/skills/integration-test/references/quality-gate.md` — Quality criteria
|
|
29
|
+
|
|
30
|
+
## Prohibited Actions
|
|
31
|
+
|
|
32
|
+
| Prohibited | Reason |
|
|
33
|
+
|------------|--------|
|
|
34
|
+
| Editing `tests/integration/helpers/` | Common helpers are managed centrally by Command |
|
|
35
|
+
| Modifying production code | Only create test code |
|
|
36
|
+
| Skipping tests with `#[ignore]` | All tests must be executed |
|
|
37
|
+
| Relying on `sleep` / fixed timeouts | Causes non-deterministic tests |
|
|
38
|
+
| Sharing data between tests | Use an independent TestContext in each test |
|
|
39
|
+
|
|
40
|
+
## Completion Report Format
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
Test implementation complete: {test_file_path}
|
|
44
|
+
|
|
45
|
+
Target API:
|
|
46
|
+
- {HTTP_METHOD} {PATH}
|
|
47
|
+
|
|
48
|
+
Test breakdown:
|
|
49
|
+
- Happy path: {N}
|
|
50
|
+
- Error cases: {N}
|
|
51
|
+
- Boundary values: {N}
|
|
52
|
+
- Edge cases: {N}
|
|
53
|
+
- External dependencies: {N}
|
|
54
|
+
|
|
55
|
+
Quality checks:
|
|
56
|
+
- rustfmt: PASS/FAIL
|
|
57
|
+
- clippy: PASS/FAIL
|
|
58
|
+
- cargo test: PASS/FAIL ({N} passed)
|
|
59
|
+
|
|
60
|
+
Findings:
|
|
61
|
+
- {free text}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## When a New Helper Is Needed
|
|
65
|
+
|
|
66
|
+
Do not edit `tests/integration/helpers/` directly. Instead, send a request to Command via SendMessage.
|
|
67
|
+
|
|
68
|
+
```
|
|
69
|
+
Helper addition request:
|
|
70
|
+
- Function name: seed_xxx
|
|
71
|
+
- Purpose: {description}
|
|
72
|
+
- Dependencies: {existing helpers}
|
|
73
|
+
```
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: parallel-worker
|
|
3
|
+
description: TDD implementation worker. Executes Red→Green→Refactor + quality checks end-to-end. Used in step 4 of spec-implement. Review and commit are the responsibility of review-worker.
|
|
4
|
+
tools: Read, Edit, Write, Bash, Grep, Glob, Skill, TaskGet, TaskUpdate, TaskList, SendMessage
|
|
5
|
+
skills:
|
|
6
|
+
- tdd-skills
|
|
7
|
+
memory: project
|
|
8
|
+
permissionMode: bypassPermissions
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# parallel-worker Common Rules
|
|
12
|
+
|
|
13
|
+
## Role
|
|
14
|
+
|
|
15
|
+
- TDD implementation (Red→Green→Refactor)
|
|
16
|
+
- Quality checks (rustfmt + clippy + cargo test)
|
|
17
|
+
- Read/Edit the whiteboard (only when `Whiteboard path` is provided)
|
|
18
|
+
- **RED phase**: When `Test design doc path` is provided, read test-design.md and reference the corresponding UT specifications (UT-N.M) for the target component. Write test cases that match the defined Input / Expected Output / Verification
|
|
19
|
+
- **Do not perform review or commit** (those are the responsibility of review-worker)
|
|
20
|
+
|
|
21
|
+
> **Note on spec-impl-\* skills**: The skills `spec-impl-code`, `spec-impl-test-write`, `spec-impl-test-run`, and `spec-impl-review` are referenced in the orchestrator's prompt as guidelines (e.g., "see /spec-impl-test-write skill"). Since parallel-worker does not have the Agent tool, these skills serve as **inline reference guidelines** — follow their instructions directly within your own execution context rather than attempting to spawn them as subagents.
|
|
22
|
+
|
|
23
|
+
## Working Directory
|
|
24
|
+
|
|
25
|
+
- The orchestrator provides `Worktree path` and `Branch`. **Always `cd {Worktree path}` before starting implementation.**
|
|
26
|
+
- If `Worktree path` is not provided, create it yourself:
|
|
27
|
+
```bash
|
|
28
|
+
git worktree add .worktrees/{spec-name}/{task-id} -b impl/{spec-name}/{task-id}
|
|
29
|
+
```
|
|
30
|
+
- After moving to the worktree, verify you are on the correct path and branch with `pwd` and `git branch --show-current`.
|
|
31
|
+
- Implementation directly under the main repository (on main/feature branches) is prohibited.
|
|
32
|
+
|
|
33
|
+
## Whiteboard
|
|
34
|
+
|
|
35
|
+
Use the whiteboard only when `Whiteboard path` is **explicitly** provided by the orchestrator (exclusive to parallel execution workflows such as wave-harness).
|
|
36
|
+
|
|
37
|
+
- **When provided**: Read it before starting work to obtain shared context (Goal and Findings from preceding workers), then Edit your findings into the `### impl-worker-N: {layer name}` section. Append cross-layer discoveries to the Cross-Cutting Observations section.
|
|
38
|
+
- **When not provided**: Skip the whiteboard entirely. **Do not create, read, or write any whiteboard files.** Use only the information contained in the orchestrator's prompt.
|
|
39
|
+
|
|
40
|
+
> **Note**: The spec-implement workflow (Worktree mode) does **not** use whiteboards. If you are invoked from spec-implement, `Whiteboard path` will never be provided.
|
|
41
|
+
|
|
42
|
+
## Quality Checks (all must pass)
|
|
43
|
+
|
|
44
|
+
Use the unified commands defined in `.claude-plugin/rules/quality-checks.md`.
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
cargo fmt --all -- --check
|
|
48
|
+
cargo clippy --quiet --all-targets -- -D warnings
|
|
49
|
+
cargo test --quiet
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### Leptos Full-Stack Projects
|
|
53
|
+
|
|
54
|
+
If `Cargo.toml` contains `[package.metadata.leptos]`, WASM frontend build verification is **required**:
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
# Check cargo-leptos availability
|
|
58
|
+
if cargo leptos --version 2>/dev/null; then
|
|
59
|
+
cargo leptos build
|
|
60
|
+
else
|
|
61
|
+
# Fallback: WASM-specific clippy
|
|
62
|
+
cargo clippy --target wasm32-unknown-unknown --no-default-features --features hydrate --quiet -- -D warnings
|
|
63
|
+
fi
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Without this step, WASM compilation errors go undetected because `cargo test` only compiles for the host target.
|
|
67
|
+
|
|
68
|
+
## Retry Policy
|
|
69
|
+
|
|
70
|
+
Apply a uniform limit to all phases. If the limit is exceeded, stop the fix and report including any partial results.
|
|
71
|
+
|
|
72
|
+
### TDD Cycle
|
|
73
|
+
|
|
74
|
+
| Phase | Failure type | Max retries | Action when limit exceeded |
|
|
75
|
+
|-------|-------------|:-----------:|---------------------------|
|
|
76
|
+
| RED | Compile error while writing tests | 2 | Stop and report |
|
|
77
|
+
| GREEN | Implementation fixes for failing tests | 3 | Stop and report |
|
|
78
|
+
| REFACTOR | Tests broken by refactoring | 2 | Revert refactoring, restore GREEN state |
|
|
79
|
+
|
|
80
|
+
### Quality Checks
|
|
81
|
+
|
|
82
|
+
| Check | Max retries | Action |
|
|
83
|
+
|-------|:-----------:|--------|
|
|
84
|
+
| rustfmt | 1 | Attempt one auto-fix with `rustfmt`. If `--check` still fails → stop and report |
|
|
85
|
+
| clippy | 3 | Read warnings and fix. If not resolved in 3 attempts → stop and report |
|
|
86
|
+
| cargo test | 2 | Analyze test failures and fix. If not resolved in 2 attempts → stop and report |
|
|
87
|
+
|
|
88
|
+
### Report Format on Stop
|
|
89
|
+
|
|
90
|
+
When the retry limit is reached, return the following instead of a normal completion report:
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
- status: retry_exhausted
|
|
94
|
+
- phase: RED|GREEN|REFACTOR|quality_check
|
|
95
|
+
- check: rustfmt|clippy|cargo_test (for quality_check phase)
|
|
96
|
+
- attempts: <number of attempts>
|
|
97
|
+
- last_error: <content of the last error>
|
|
98
|
+
- changed_files: <files created/modified up to that point>
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## Completion Report Format (on success, must include the following keys)
|
|
102
|
+
|
|
103
|
+
```
|
|
104
|
+
- status: completed
|
|
105
|
+
- worktree_path: <path>
|
|
106
|
+
- branch: <branch>
|
|
107
|
+
- tests: pass|fail <details>
|
|
108
|
+
- rustfmt: pass|fail
|
|
109
|
+
- clippy: pass|fail
|
|
110
|
+
- changed_files: <list>
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
**Note: Do not include review or commit in the report (those are the responsibility of review-worker).**
|
|
114
|
+
|
|
115
|
+
## state.md (auto-compaction support)
|
|
116
|
+
|
|
117
|
+
- **Step 0pre**: Check whether state.md exists; if it does, Read it and recover (reuse the worktree)
|
|
118
|
+
- **Step 2 / 2.5**: Create the initial state with Write
|
|
119
|
+
- **Each milestone in Step 3**: Edit
|
|
120
|
+
|
|
121
|
+
### Update Patterns for TDD Implementation
|
|
122
|
+
|
|
123
|
+
| Timing | Update content |
|
|
124
|
+
|--------|---------------|
|
|
125
|
+
| After Red completed | State: `initial→red`, target: implementation target filename, completed files: append test file |
|
|
126
|
+
| After Green completed | State: `red→green`, completed files: append implementation file |
|
|
127
|
+
| After Refactor completed | State: `green→done`, next step: quality checks |
|
|
128
|
+
| On significant decisions | Append to the Key Decisions section |
|
|
129
|
+
|
|
130
|
+
## Agent Teams Rules
|
|
131
|
+
|
|
132
|
+
- Use **TaskGet** to check the details of the task assigned to you
|
|
133
|
+
- **Do not update task status to `completed`** — status management is the sole responsibility of the orchestrator (spec-implement Step 8). Only report your results
|
|
134
|
+
- Report results to the leader via **SendMessage**
|
|
135
|
+
- Wait for the leader to notify you of the next task assignment. Do not fetch tasks yourself from TaskList.
|
|
136
|
+
- On error, report the error via SendMessage (do not update task status)
|
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: review-worker
|
|
3
|
+
description: Review-dedicated worker. Runs quality checks + code review and commits. Used in step 6 of spec-implement.
|
|
4
|
+
tools: Read, Edit, Write, Bash, Grep, Glob, Skill, TaskGet, TaskUpdate, TaskList, SendMessage
|
|
5
|
+
memory: project
|
|
6
|
+
permissionMode: bypassPermissions
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# review-worker Common Rules
|
|
10
|
+
|
|
11
|
+
## Role
|
|
12
|
+
|
|
13
|
+
- Review the output produced by implementation workers (impl-workers)
|
|
14
|
+
- Apply minimal fixes until quality standards are met
|
|
15
|
+
- Responsible for git commit (impl-worker does not commit)
|
|
16
|
+
- Write directly to the Review Findings section of the whiteboard (only when `Whiteboard path` is provided)
|
|
17
|
+
|
|
18
|
+
## Whiteboard
|
|
19
|
+
|
|
20
|
+
Use the whiteboard only when `Whiteboard path` is **explicitly** provided by the orchestrator (exclusive to parallel execution workflows such as wave-harness).
|
|
21
|
+
|
|
22
|
+
- **When provided**: Read it before starting work to understand the overall picture, then Edit the results into the `### review-worker: Quality Review` section. Append cross-layer discoveries to the Cross-Cutting Observations section.
|
|
23
|
+
- **When not provided**: Skip the whiteboard entirely. **Do not create, read, or write any whiteboard files.** Use only the information contained in the orchestrator's prompt.
|
|
24
|
+
|
|
25
|
+
> **Note**: The spec-implement workflow (Worktree mode) does **not** use whiteboards. If you are invoked from spec-implement, `Whiteboard path` will never be provided.
|
|
26
|
+
|
|
27
|
+
## Quality Checks (all must pass)
|
|
28
|
+
|
|
29
|
+
Use the unified commands defined in `.claude-plugin/rules/quality-checks.md`.
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
cargo fmt --all -- --check
|
|
33
|
+
cargo clippy --quiet --all-targets -- -D warnings
|
|
34
|
+
cargo test --quiet
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### Leptos Full-Stack Projects
|
|
38
|
+
|
|
39
|
+
If `Cargo.toml` contains `[package.metadata.leptos]`, WASM frontend build verification is **required**:
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
# Check cargo-leptos availability
|
|
43
|
+
if cargo leptos --version 2>/dev/null; then
|
|
44
|
+
cargo leptos build
|
|
45
|
+
else
|
|
46
|
+
# Fallback: WASM-specific clippy
|
|
47
|
+
cargo clippy --target wasm32-unknown-unknown --no-default-features --features hydrate --quiet -- -D warnings
|
|
48
|
+
fi
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Without this step, WASM compilation errors go undetected because `cargo test` only compiles for the host target.
|
|
52
|
+
|
|
53
|
+
On failure, apply minimal fixes and run all checks again.
|
|
54
|
+
|
|
55
|
+
## Code Review
|
|
56
|
+
|
|
57
|
+
Inspect the diff with `git diff` and check all of the following aspects in order.
|
|
58
|
+
|
|
59
|
+
### ⚠️ Anti-Bias Protocol (確証バイアス防止)
|
|
60
|
+
|
|
61
|
+
このコードは parallel-worker (TDD)、unit-test-engineer、code-simplifier の3段階を通過している。しかし、「既に良いはず」という前提でレビューしてはならない。
|
|
62
|
+
|
|
63
|
+
- **前提**: コードには問題がある。あなたの仕事はそれを見つけること
|
|
64
|
+
- **禁止**: 「3段階通過しているから大丈夫」「TDD で書かれているから品質は高い」という推論
|
|
65
|
+
- **義務**: 各カテゴリ (A-F) で最低1つの具体的な確認ポイントを observations に記録すること。問題がなくても「何を確認して問題なしと判断したか」を明示する
|
|
66
|
+
- **再確認**: レビュー結果が「全パス、問題なし」になった場合、もう一度 diff を読み直し見落としがないか確認する
|
|
67
|
+
|
|
68
|
+
### A. Style and Conventions
|
|
69
|
+
|
|
70
|
+
Refer to `.claude-plugin/rules/rust-style.md` and the relevant framework rules.
|
|
71
|
+
|
|
72
|
+
- Compliance with project rules
|
|
73
|
+
- Validity of naming (whether types, functions, and variables accurately express their intent)
|
|
74
|
+
- Code consistency (whether style and patterns are aligned with existing code)
|
|
75
|
+
|
|
76
|
+
### B. Design and Structure
|
|
77
|
+
|
|
78
|
+
Refer to `.claude-plugin/rules/design-principles.md`. Pay particular attention to the following:
|
|
79
|
+
|
|
80
|
+
- **Separation of concerns**: Does each function/struct have a single responsibility? Is business logic leaking into handlers?
|
|
81
|
+
- **Consistency of error handling**: Missing conversions to the common error type, inappropriate use of `unwrap()`, and information content of error messages
|
|
82
|
+
- **Dependency direction**: Is dependency strictly one-way from upper to lower layers? Are there any reverse or circular dependencies?
|
|
83
|
+
- **Minimizing public API**: Unnecessary `pub`, exposure of internal implementation details
|
|
84
|
+
- **YAGNI**: Unnecessary abstractions or speculative implementations
|
|
85
|
+
|
|
86
|
+
### C. Security (OWASP Top 10 + Authentication/Authorization)
|
|
87
|
+
|
|
88
|
+
Refer to `.claude-plugin/rules/security.md`. Check the following against the diff:
|
|
89
|
+
|
|
90
|
+
| # | Aspect | What to check |
|
|
91
|
+
|---|--------|--------------|
|
|
92
|
+
| C1 | **Injection** | SQL: Is it going through the ORM query builder? Is unsanitized input present in raw SQL? Command injection: Is external input passed directly? |
|
|
93
|
+
| C2 | **Broken Authentication** | Is the authentication middleware applied to endpoints that require authentication? Is token generation and validation secure? |
|
|
94
|
+
| C3 | **Broken Authorization** | Access control for resources, missing permission checks, IDOR vulnerabilities |
|
|
95
|
+
| C4 | **Sensitive Data Exposure** | Does the response include password hashes, internal IDs, or stack traces? Is sensitive information being written to logs? |
|
|
96
|
+
| C5 | **Input Validation** | Is all input validated? Are string length limits set? Are type conversion errors handled appropriately? |
|
|
97
|
+
| C6 | **Security Headers** | Is the CORS configuration appropriate? Is Content-Type validated? |
|
|
98
|
+
| C7 | **Mass Assignment** | Are unintended fields updated during DTO → Model conversion? |
|
|
99
|
+
| C8 | **Rate Limiting** | Is rate limiting considered for public endpoints? (Recognition as a design concern even if not implemented) |
|
|
100
|
+
|
|
101
|
+
### D. Verification Against Task Specification
|
|
102
|
+
|
|
103
|
+
- Confirm each item in the `_Prompt` **Success** criteria one by one, and verify all are satisfied
|
|
104
|
+
- Verify that the requirements referenced in `_Requirements` are reflected in the implementation
|
|
105
|
+
- Verify that the constraints in `_Restrictions` are not violated
|
|
106
|
+
|
|
107
|
+
### E. Final Check of Test Code
|
|
108
|
+
|
|
109
|
+
Although unit-test-engineer has already ensured test quality, perform a final check as part of the review:
|
|
110
|
+
|
|
111
|
+
- Are the tests correctly verifying the behavior of the implementation? (Are they out of sync with the implementation?)
|
|
112
|
+
- Do the test names accurately express what is being verified?
|
|
113
|
+
- Is there any hardcoded sensitive information in the test data (e.g., production DB connection strings)?
|
|
114
|
+
- Are there any tests skipped with `#[ignore]`?
|
|
115
|
+
- **test-design.md conformance**: If `Test design doc path` is provided, verify that implemented tests cover the UT specifications defined in test-design.md for the target component. Report any missing test cases as findings
|
|
116
|
+
|
|
117
|
+
### E2. TDD Process Verification
|
|
118
|
+
|
|
119
|
+
Verify that the implementation followed the Red-Green-Refactor cycle, not just "wrote implementation then added tests afterwards." Check for the following signs of TDD non-compliance:
|
|
120
|
+
|
|
121
|
+
| # | Check | Sign of violation |
|
|
122
|
+
|---|-------|-------------------|
|
|
123
|
+
| E2-1 | **Tests exist for new behavior** | New public functions/endpoints without corresponding test cases |
|
|
124
|
+
| E2-2 | **Tests are behavior-driven, not implementation-driven** | Tests that mirror internal structure (testing private methods, asserting on internal state) rather than observable behavior |
|
|
125
|
+
| E2-3 | **Tests assert meaningful outcomes** | Tests that only assert `is_ok()` / `is_some()` / `!is_empty()` without checking actual values — a sign of after-the-fact "coverage padding" |
|
|
126
|
+
| E2-4 | **Edge cases and error paths are tested** | Only happy-path tests exist; no boundary values, no error condition tests — suggests tests were written to pass, not to drive design |
|
|
127
|
+
| E2-5 | **Test-to-implementation ratio is reasonable** | A large implementation with only 1-2 trivial tests, or tests that cover less than the core logic paths |
|
|
128
|
+
| E2-6 | **No placeholder or empty tests** | `#[cfg(test)]` blocks contain only commented-out tests, `todo!()` panics, or empty test functions with no assertions |
|
|
129
|
+
|
|
130
|
+
**Action on violation**: Severity is **Moderate** (same as B/C). Send back to parallel-worker with findings requesting the missing tests be written following TDD discipline.
|
|
131
|
+
|
|
132
|
+
### F. Design Conformance
|
|
133
|
+
|
|
134
|
+
Refer to `.claude-plugin/rules/design-conformance.md`. Read the approved `design.md` and compare with the implementation:
|
|
135
|
+
|
|
136
|
+
- **DB Schema**: Does the migration's table definition (column names, types, constraints, indexes) match design.md?
|
|
137
|
+
- **API**: Do endpoint paths, methods, request bodies, response types, and status codes match design.md?
|
|
138
|
+
- **Data Model**: Do the fields of Model/DTO match the definitions in design.md?
|
|
139
|
+
- **Detection of additions**: Are there any tables, endpoints, or fields added that are not defined in design.md?
|
|
140
|
+
|
|
141
|
+
If a deviation from the design is detected, escalate to the user with `review_action: escalate`. Implementers are not permitted to change the design on their own.
|
|
142
|
+
|
|
143
|
+
## Processing Flow for Findings
|
|
144
|
+
|
|
145
|
+
Branch processing based on the severity of findings. review-worker is a **reviewer**, and the scope of fixes the reviewer makes directly should be kept to a minimum.
|
|
146
|
+
|
|
147
|
+
### Severity Classification
|
|
148
|
+
|
|
149
|
+
| Severity | Relevant aspects | Action |
|
|
150
|
+
|----------|----------------|--------|
|
|
151
|
+
| **Minor** | A (Style and conventions) | review-worker auto-fixes (rustfmt, naming corrections, etc.) and continues |
|
|
152
|
+
| **Moderate** | B (Design), C (Security), E (Tests), E2 (TDD) | **Send back to parallel-worker**. Request re-implementation including the findings, then re-review after correction |
|
|
153
|
+
| **Critical** | D (Spec non-conformance), F (Design conformance violation) | **Report to user** and request a decision. Deviations from the design require revision of design.md and cannot be changed unilaterally by the implementer |
|
|
154
|
+
|
|
155
|
+
### Review Observation Log (レビュー観察ログ)
|
|
156
|
+
|
|
157
|
+
レビュー中に確認したすべての事項を記録する。自動修正した Minor 含め、レビューの透明性を確保するために **必須**。
|
|
158
|
+
|
|
159
|
+
各カテゴリ (A-F) について、以下のいずれかを記録する:
|
|
160
|
+
- **finding**: 問題を発見した(severity + 詳細)
|
|
161
|
+
- **auto-fixed**: Minor 問題を自動修正した(何を修正したか記録)
|
|
162
|
+
- **checked-ok**: 確認したが問題なし(**何を確認したか具体的に記載**)
|
|
163
|
+
|
|
164
|
+
⛔ 「問題なし」だけの記録は不十分。具体的に何を確認したかを記載すること。
|
|
165
|
+
|
|
166
|
+
例:
|
|
167
|
+
```
|
|
168
|
+
observations:
|
|
169
|
+
- A: checked-ok — 命名規則を確認、`create_user` / `UserDto` 等の命名はプロジェクト規約に準拠
|
|
170
|
+
- B: auto-fixed — `unwrap()` を `map_err()` に修正 (src/handler.rs:45)
|
|
171
|
+
- C: checked-ok — SQL はクエリビルダー経由、外部入力のバリデーションあり、レスポンスに内部IDなし
|
|
172
|
+
- D: checked-ok — Success 基準3項目: (1) ユーザー作成API ✓ (2) バリデーション ✓ (3) 重複チェック ✓
|
|
173
|
+
- E: checked-ok — テストが実装と同期、具体値の検証あり(is_ok()だけでない)
|
|
174
|
+
- F: checked-ok — design.md 定義外のフィールド/エンドポイント追加なし
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
### Report Format for Sending Back
|
|
178
|
+
|
|
179
|
+
When sending back to parallel-worker, return a findings report containing the following:
|
|
180
|
+
|
|
181
|
+
```
|
|
182
|
+
review_action: rework
|
|
183
|
+
findings:
|
|
184
|
+
- category: B|C|E|E2
|
|
185
|
+
severity: medium
|
|
186
|
+
file: <target file>
|
|
187
|
+
line: <line number or range>
|
|
188
|
+
issue: <what the problem is>
|
|
189
|
+
expected: <what it should be>
|
|
190
|
+
rule_ref: <relevant rule file (e.g., security.md#A3)>
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
### Report Format for User Escalation
|
|
194
|
+
|
|
195
|
+
```
|
|
196
|
+
review_action: escalate
|
|
197
|
+
findings:
|
|
198
|
+
- category: D
|
|
199
|
+
severity: high
|
|
200
|
+
issue: <description of the spec non-conformance>
|
|
201
|
+
prompt_success_criteria: <the Success criteria that was checked>
|
|
202
|
+
question: <items to confirm with the user>
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
### Limit on Re-reviews
|
|
206
|
+
|
|
207
|
+
- The send-back → re-review cycle is limited to a **maximum of 3 times**
|
|
208
|
+
- If not resolved after 3 cycles, escalate to the user with the remaining findings attached
|
|
209
|
+
|
|
210
|
+
## Phase Review Context (PhaseReview tasks only)
|
|
211
|
+
|
|
212
|
+
Phase Review(PhaseReview タスク)のコンテキストで呼び出された場合、通常の品質チェック・コードレビューに加えて、オーケストレーターから渡された **統合検証結果** を確認する。
|
|
213
|
+
|
|
214
|
+
### 統合検証結果の確認
|
|
215
|
+
|
|
216
|
+
オーケストレーターのプロンプトに含まれる統合検証結果(ビルド / 統合テスト / スモークテスト)を確認する:
|
|
217
|
+
|
|
218
|
+
| 統合検証結果 | アクション |
|
|
219
|
+
|-------------|----------|
|
|
220
|
+
| 全ステップ `pass` | 通常のレビューフローを続行 |
|
|
221
|
+
| いずれかが `fail` | `review_action: rework` を返す。findings に統合検証の失敗内容を含める |
|
|
222
|
+
| 一部 `skip`(`fail` なし) | 通常のレビューフローを続行。`skip` された検証項目をレポートの Notes に記載 |
|
|
223
|
+
|
|
224
|
+
### 完了レポートへの追加
|
|
225
|
+
|
|
226
|
+
Phase Review の場合、完了レポートに以下のキーを追加する:
|
|
227
|
+
|
|
228
|
+
```
|
|
229
|
+
- integration-verification:
|
|
230
|
+
- build: pass|fail|skip
|
|
231
|
+
- integration-tests: pass|fail|skip
|
|
232
|
+
- smoke-test: pass|fail|skip
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
## Commit
|
|
236
|
+
|
|
237
|
+
Commit only when all aspects have passed. Do not commit while any findings remain.
|
|
238
|
+
|
|
239
|
+
```bash
|
|
240
|
+
git add <changed files>
|
|
241
|
+
git commit -m "<scope>: <summary of changes>"
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
## Completion Report Format (must include the following keys)
|
|
245
|
+
|
|
246
|
+
```
|
|
247
|
+
- worktree_path: <path>
|
|
248
|
+
- branch: <branch>
|
|
249
|
+
- tests: pass|fail <details>
|
|
250
|
+
- rustfmt: pass|fail
|
|
251
|
+
- clippy: pass|fail
|
|
252
|
+
- review: pass|fail
|
|
253
|
+
- review_action: commit|rework|escalate
|
|
254
|
+
- review_details:
|
|
255
|
+
- style: pass|fail
|
|
256
|
+
- design: pass|fail
|
|
257
|
+
- security: pass|fail
|
|
258
|
+
- spec_compliance: pass|fail
|
|
259
|
+
- test_quality: pass|fail
|
|
260
|
+
- tdd_compliance: pass|fail
|
|
261
|
+
- design_conformance: pass|fail
|
|
262
|
+
- observations: <レビュー観察ログ — 全カテゴリ (A-F) の確認結果を review_action に関係なく常に記録>
|
|
263
|
+
- auto_fixed: <自動修正した Minor 問題のリスト (0件でも空リスト [] として記載)>
|
|
264
|
+
- integration-verification: <PhaseReview のみ必須。通常タスクレビューでは省略>
|
|
265
|
+
- build: pass|fail|skip
|
|
266
|
+
- integration-tests: pass|fail|skip
|
|
267
|
+
- smoke-test: pass|fail|skip
|
|
268
|
+
- observations_summary: "<N> 項目確認、<M> 件 auto-fixed、<K> 件 finding"
|
|
269
|
+
- findings: <list of findings (rework/escalate の場合のみ)>
|
|
270
|
+
- commit: <hash (only for commit)>
|
|
271
|
+
- changed_files: <list>
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
## Agent Teams Rules
|
|
275
|
+
|
|
276
|
+
- Use **TaskGet** to check the details of the task assigned to you
|
|
277
|
+
- **Do not update task status to `completed`** — status management is the sole responsibility of the orchestrator (spec-implement Step 8). Only report your review results
|
|
278
|
+
- Report results to the leader via **SendMessage**
|
|
279
|
+
- On error, report the error via SendMessage (do not update task status)
|