@k2works/claude-code-booster 6.4.0 → 6.6.0
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/LICENSE +21 -21
- package/README.md +61 -61
- package/bin/claude-code-booster +113 -113
- package/lib/assets/.claude/README.md +287 -287
- package/lib/assets/.claude/agents/xp-architect.md +250 -250
- package/lib/assets/.claude/agents/xp-executive.md +207 -207
- package/lib/assets/.claude/agents/xp-interaction-designer.md +239 -239
- package/lib/assets/.claude/agents/xp-product-manager.md +245 -245
- package/lib/assets/.claude/agents/xp-programmer.md +268 -268
- package/lib/assets/.claude/agents/xp-project-manager.md +229 -229
- package/lib/assets/.claude/agents/xp-technical-writer.md +224 -224
- package/lib/assets/.claude/agents/xp-tester.md +265 -265
- package/lib/assets/.claude/agents/xp-user-representative.md +204 -204
- package/lib/assets/.claude/scripts/generate-inception-deck.mjs +911 -911
- package/lib/assets/.claude/settings.json +11 -11
- package/lib/assets/.claude/skills/ai-agent-guidelines/SKILL.md +111 -111
- package/lib/assets/.claude/skills/analyzing-architecture/SKILL.md +83 -83
- package/lib/assets/.claude/skills/analyzing-business-architecture/SKILL.md +122 -122
- package/lib/assets/.claude/skills/analyzing-business-case/SKILL.md +148 -148
- package/lib/assets/.claude/skills/analyzing-business-strategy/SKILL.md +277 -277
- package/lib/assets/.claude/skills/analyzing-data-model/SKILL.md +77 -77
- package/lib/assets/.claude/skills/analyzing-domain-model/SKILL.md +117 -117
- package/lib/assets/.claude/skills/analyzing-inception-deck/SKILL.md +84 -84
- package/lib/assets/.claude/skills/analyzing-non-functional/SKILL.md +95 -95
- package/lib/assets/.claude/skills/analyzing-operation/SKILL.md +95 -95
- package/lib/assets/.claude/skills/analyzing-requirements/SKILL.md +91 -91
- package/lib/assets/.claude/skills/analyzing-review/SKILL.md +174 -174
- package/lib/assets/.claude/skills/analyzing-tech-stack/SKILL.md +101 -101
- package/lib/assets/.claude/skills/analyzing-test-strategy/SKILL.md +89 -89
- package/lib/assets/.claude/skills/analyzing-ui-design/SKILL.md +80 -80
- package/lib/assets/.claude/skills/analyzing-usecases/SKILL.md +72 -72
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/benchmark.json +20 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/benchmark.md +13 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/eval_metadata.json +14 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/grading.json +39 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/adr/001-db.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/adr/002-cache-strategy.md +20 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/adr/index.md +4 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/design/data-model.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/design/index.md +3 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/index.md +10 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/log.md +7 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/operation/deploy-old.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/operation/deploy.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/operation/index.md +4 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +965 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/report.md +76 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/grading.json +39 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/adr/001-db.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/adr/002-cache-strategy.md +20 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/adr/index.md +4 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/design/data-model.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/design/index.md +3 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/index.md +10 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/log.md +7 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/operation/deploy-old.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/operation/deploy.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/operation/index.md +4 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +965 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/report.md +22 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/eval_metadata.json +13 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/grading.json +34 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/adr/001-db.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/adr/002-cache-strategy.md +11 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/adr/index.md +3 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/design/data-model.md +14 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/design/index.md +3 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/index.md +10 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/log.md +7 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/operation/deploy-old.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/operation/deploy.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/operation/index.md +4 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +965 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/report.md +61 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/grading.json +34 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/adr/001-db.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/adr/002-cache-strategy.md +11 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/adr/index.md +3 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/design/data-model.md +13 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/design/index.md +3 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/index.md +10 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/log.md +7 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/operation/deploy-old.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/operation/deploy.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/operation/index.md +4 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +965 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/report.md +18 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/eval_metadata.json +13 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/grading.json +34 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/adr/001-db.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/adr/002-cache-strategy.md +11 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/adr/index.md +3 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/design/data-model.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/design/index.md +3 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/index.md +10 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/log.md +7 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/operation/deploy-old.md +13 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/operation/deploy.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/operation/index.md +7 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +965 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/report.md +83 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/grading.json +34 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/adr/001-db.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/adr/002-cache-strategy.md +11 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/adr/index.md +3 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/design/data-model.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/design/index.md +3 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/index.md +10 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/log.md +7 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/operation/deploy-old.md +14 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/operation/deploy.md +12 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/operation/index.md +4 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +965 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/report.md +15 -0
- package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/review.html +1325 -0
- package/lib/assets/.claude/skills/closing-iteration/SKILL.md +176 -176
- package/lib/assets/.claude/skills/creating-adr/SKILL.md +117 -117
- package/lib/assets/.claude/skills/creating-development-strategy/SKILL.md +187 -151
- package/lib/assets/.claude/skills/creating-iteration-report/SKILL.md +210 -210
- package/lib/assets/.claude/skills/creating-journal/SKILL.md +140 -140
- package/lib/assets/.claude/skills/creating-manual/SKILL.md +199 -199
- package/lib/assets/.claude/skills/creating-release-report/SKILL.md +161 -161
- package/lib/assets/.claude/skills/creating-slides/SKILL.md +86 -86
- package/lib/assets/.claude/skills/creating-slides/agents/openai.yaml +4 -4
- package/lib/assets/.claude/skills/creating-slides/references/manga-css.md +45 -45
- package/lib/assets/.claude/skills/creating-slides/scripts/slide_tools.py +239 -239
- package/lib/assets/.claude/skills/developing-backend/SKILL.md +138 -100
- package/lib/assets/.claude/skills/developing-frontend/SKILL.md +131 -93
- package/lib/assets/.claude/skills/developing-release/SKILL.md +120 -120
- package/lib/assets/.claude/skills/developing-review/SKILL.md +175 -175
- package/lib/assets/.claude/skills/developing-uiux-review/SKILL.md +207 -207
- package/lib/assets/.claude/skills/generating-bmc/SKILL.md +123 -123
- package/lib/assets/.claude/skills/generating-slides/SKILL.md +94 -94
- package/lib/assets/.claude/skills/git-commit/SKILL.md +81 -81
- package/lib/assets/.claude/skills/killing-processes/SKILL.md +44 -44
- package/lib/assets/.claude/skills/migrating-ai-dlc/evals/evals.json +59 -59
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/benchmark.json +20 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/benchmark.md +13 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/eval_metadata.json +15 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/grading.json +44 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/adr/index.md +10 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/index.md +15 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/log.md +5 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +966 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/reference/index.md +6 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/reference//343/202/210/343/201/204/343/202/275/343/203/225/343/203/210/343/202/246/343/202/247/343/202/242/343/201/250/343/201/257.md +261 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/reference//343/203/252/343/203/252/343/203/274/343/202/271/343/202/254/343/202/244/343/203/211.md +480 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/reference//347/222/260/345/242/203/345/244/211/346/225/260/347/256/241/347/220/206/343/202/254/343/202/244/343/203/211.md +681 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/report.md +85 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/grading.json +44 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/adr/index.md +8 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/index.md +11 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/log.md +7 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +964 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/reference/index.md +9 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/reference//343/202/210/343/201/204/343/202/275/343/203/225/343/203/210/343/202/246/343/202/247/343/202/242/343/201/250/343/201/257.md +250 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/reference//343/203/252/343/203/252/343/203/274/343/202/271/343/202/254/343/202/244/343/203/211.md +469 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/reference//347/222/260/345/242/203/345/244/211/346/225/260/347/256/241/347/220/206/343/202/254/343/202/244/343/203/211.md +677 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/report.md +49 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/eval_metadata.json +13 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/grading.json +34 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/knowledge_after/index.md +7 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/knowledge_after/log.md +7 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/knowledge_after/metrics/churn.md +9 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/knowledge_after/metrics/income-statement.md +15 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/report.md +147 -0
- package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/review.html +1325 -0
- package/lib/assets/.claude/skills/opening-iteration/SKILL.md +124 -124
- package/lib/assets/.claude/skills/operating-backup/SKILL.md +59 -59
- package/lib/assets/.claude/skills/operating-cicd/SKILL.md +54 -54
- package/lib/assets/.claude/skills/operating-deploy/SKILL.md +67 -67
- package/lib/assets/.claude/skills/operating-docs/SKILL.md +219 -219
- package/lib/assets/.claude/skills/operating-provision/SKILL.md +77 -77
- package/lib/assets/.claude/skills/operating-qt/SKILL.md +147 -147
- package/lib/assets/.claude/skills/operating-review/SKILL.md +171 -171
- package/lib/assets/.claude/skills/operating-script/SKILL.md +145 -145
- package/lib/assets/.claude/skills/operating-setup/SKILL.md +63 -63
- package/lib/assets/.claude/skills/orchestrating-analysis/SKILL.md +110 -110
- package/lib/assets/.claude/skills/orchestrating-development/SKILL.md +208 -172
- package/lib/assets/.claude/skills/orchestrating-operation/SKILL.md +161 -161
- package/lib/assets/.claude/skills/orchestrating-project/SKILL.md +149 -149
- package/lib/assets/.claude/skills/planning-releases/SKILL.md +121 -121
- package/lib/assets/.claude/skills/practicing-getting-start-tdd/SKILL.md +262 -262
- package/lib/assets/.claude/skills/syncing-github-project/SKILL.md +151 -151
- package/lib/assets/.claude/skills/tracking-progress/SKILL.md +91 -91
- package/lib/assets/.claude/skills/validating-design/SKILL.md +130 -130
- package/lib/assets/.claude/skills/validating-iteration-plan/SKILL.md +238 -238
- package/lib/assets/.claude/skills/validating-operating-setup/SKILL.md +118 -118
- package/lib/assets/.devcontainer/devcontainer.json +37 -37
- package/lib/assets/.env.example +32 -32
- package/lib/assets/.gitattributes +4 -4
- package/lib/assets/.github/workflows/docker-publish.yml +77 -77
- package/lib/assets/.github/workflows/mkdocs.yml +39 -39
- package/lib/assets/AGENTS.md +102 -102
- package/lib/assets/README.md +304 -304
- package/lib/assets/docker-compose.yml +33 -33
- package/lib/assets/docs/adr/index.md +10 -10
- package/lib/assets/docs/article/index.md +8 -6
- package/lib/assets/docs/assets/css/extra.css +29 -29
- package/lib/assets/docs/assets/js/extra.js +48 -48
- package/lib/assets/docs/assets/js/mathjax.js +27 -27
- package/lib/assets/docs/design/index.md +44 -44
- package/lib/assets/docs/development/index.md +39 -39
- package/lib/assets/docs/index.md +37 -37
- package/lib/assets/docs/log.md +28 -28
- package/lib/assets/docs/operation/index.md +41 -41
- package/lib/assets/docs/reference/BDD/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211.md +766 -766
- package/lib/assets/docs/reference/CodexCLIMCP/343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/351/226/213/347/231/272/343/203/225/343/203/255/343/203/274.md +555 -555
- package/lib/assets/docs/reference/CodexCLIMCP/343/202/265/343/203/274/343/203/220/343/203/274/350/250/255/345/256/232/346/211/213/351/240/206.md +351 -351
- package/lib/assets/docs/reference/Java/343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/346/247/213/347/257/211/343/202/254/343/202/244/343/203/211.md +592 -592
- package/lib/assets/docs/reference/LivingDocumentation/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211.md +400 -0
- package/lib/assets/docs/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +965 -965
- package/lib/assets/docs/reference/SonarQube/343/203/255/343/203/274/343/202/253/343/203/253/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +652 -652
- package/lib/assets/docs/reference/TypeScript/343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/346/247/213/347/257/211/343/202/254/343/202/244/343/203/211.md +476 -476
- package/lib/assets/docs/reference/UI/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +460 -460
- package/lib/assets/docs/reference/Vim/346/223/215/344/275/234/343/203/236/343/203/213/343/203/245/343/202/242/343/203/253.md +177 -177
- package/lib/assets/docs/reference/images/Ansoff.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/BMC.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/BrandBasicStrategy.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/BrandCategorization.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/BrandRecurutementStrategy.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/BrandValue.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/BusinessActivitiy.svg +3 -3
- package/lib/assets/docs/reference/images/HRM.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/MarketingStructure.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/OrganizationElemnts.svg +3 -3
- package/lib/assets/docs/reference/images/PPM.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/PositioningMap.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/ProductLayer.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/ProductMix.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/SWOT.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/TargetMarket.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/ThreeGenericStrategies.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/VRIO.drawio.svg +3 -3
- package/lib/assets/docs/reference/images/ValueChain.drawio.svg +3 -3
- package/lib/assets/docs/reference/index.md +66 -62
- package/lib/assets/docs/reference//343/202/210/343/201/204/343/202/275/343/203/225/343/203/210/343/202/246/343/202/247/343/202/242/343/201/250/343/201/257.md +250 -250
- package/lib/assets/docs/reference//343/202/242/343/203/216/343/203/206/343/203/274/343/202/267/343/203/247/343/203/263/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211.md +268 -0
- package/lib/assets/docs/reference//343/202/242/343/203/274/343/202/255/343/203/206/343/202/257/343/203/201/343/203/243/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +2226 -2226
- package/lib/assets/docs/reference//343/202/244/343/203/263/343/203/225/343/203/251/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +1888 -1888
- package/lib/assets/docs/reference//343/202/250/343/202/257/343/202/271/343/203/210/343/203/252/343/203/274/343/203/240/343/203/227/343/203/255/343/202/260/343/203/251/343/203/237/343/203/263/343/202/260.md +549 -549
- package/lib/assets/docs/reference//343/202/254/343/202/244/343/203/211/343/203/204/343/202/242/343/203/274/343/203/273/343/202/265/343/202/244/343/203/210/343/202/267/343/203/274/343/202/244/343/203/263/343/202/260/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211.md +192 -0
- package/lib/assets/docs/reference//343/202/263/343/203/274/343/203/207/343/202/243/343/203/263/343/202/260/343/201/250/343/203/206/343/202/271/343/203/210/343/202/254/343/202/244/343/203/211.md +715 -715
- package/lib/assets/docs/reference//343/203/200/343/202/244/343/203/212/343/203/237/343/203/203/343/202/257/343/202/255/343/203/245/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211.md +191 -0
- package/lib/assets/docs/reference//343/203/206/343/202/271/343/203/210/346/210/246/347/225/245/343/202/254/343/202/244/343/203/211.md +1323 -1323
- package/lib/assets/docs/reference//343/203/207/343/203/274/343/202/277/343/203/242/343/203/207/343/203/253/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +321 -321
- package/lib/assets/docs/reference//343/203/211/343/203/241/343/202/244/343/203/263/343/203/242/343/203/207/343/203/253/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +609 -609
- package/lib/assets/docs/reference//343/203/223/343/202/270/343/203/215/343/202/271/343/202/242/343/203/274/343/202/255/343/203/206/343/202/257/343/203/201/343/203/243/345/210/206/346/236/220/343/202/254/343/202/244/343/203/211.md +537 -537
- package/lib/assets/docs/reference//343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271/344/275/234/346/210/220/343/202/254/343/202/244/343/203/211.md +699 -699
- package/lib/assets/docs/reference//343/203/252/343/203/252/343/203/274/343/202/271/343/202/254/343/202/244/343/203/211.md +470 -470
- package/lib/assets/docs/reference//343/203/252/343/203/252/343/203/274/343/202/271/343/203/273/343/202/244/343/203/206/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/350/250/210/347/224/273/343/202/254/343/202/244/343/203/211.md +580 -580
- package/lib/assets/docs/reference//343/203/255/343/202/270/343/202/253/343/203/253/343/202/267/343/203/263/343/202/255/343/203/263/343/202/260.md +1376 -1376
- package/lib/assets/docs/reference//344/274/201/346/245/255/347/265/214/345/226/266/350/253/226.md +2647 -2647
- package/lib/assets/docs/reference//347/222/260/345/242/203/345/244/211/346/225/260/347/256/241/347/220/206/343/202/254/343/202/244/343/203/211.md +675 -675
- package/lib/assets/docs/reference//347/265/214/345/226/266/346/210/246/347/225/245/345/210/206/346/236/220/343/202/254/343/202/244/343/203/211.md +575 -575
- package/lib/assets/docs/reference//350/246/201/344/273/266/345/256/232/347/276/251/343/202/254/343/202/244/343/203/211.md +1258 -1258
- package/lib/assets/docs/reference//350/250/200/350/252/236/345/210/245/351/226/213/347/231/272/343/202/254/343/202/244/343/203/211.md +527 -527
- package/lib/assets/docs/reference//351/201/213/345/226/266/347/256/241/347/220/206.md +1492 -1492
- package/lib/assets/docs/reference//351/201/213/347/224/250/343/202/271/343/202/257/343/203/252/343/203/227/343/203/210/344/275/234/346/210/220/343/202/254/343/202/244/343/203/211.md +430 -430
- package/lib/assets/docs/reference//351/201/213/347/224/250/350/246/201/344/273/266/345/256/232/347/276/251/343/202/254/343/202/244/343/203/211.md +402 -402
- package/lib/assets/docs/reference//351/226/213/347/231/272/343/202/254/343/202/244/343/203/211.md +314 -314
- package/lib/assets/docs/reference//351/235/236/346/251/237/350/203/275/350/246/201/344/273/266/345/256/232/347/276/251/343/202/254/343/202/244/343/203/211.md +1246 -1246
- package/lib/assets/docs/requirements/index.md +17 -17
- package/lib/assets/docs/review/index.md +5 -5
- package/lib/assets/docs/strategy/index.md +17 -17
- package/lib/assets/docs/template/ADR.md +39 -39
- package/lib/assets/docs/template/AWS/343/202/271/343/203/206/343/203/274/343/202/270/343/203/263/343/202/260/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +1375 -1375
- package/lib/assets/docs/template/AWS/343/203/227/343/203/255/343/203/200/343/202/257/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +643 -643
- package/lib/assets/docs/template/README.md +59 -59
- package/lib/assets/docs/template/index.md +24 -24
- package/lib/assets/docs/template//343/201/276/343/201/232/343/201/223/343/202/214/343/202/222/350/252/255/343/202/202/343/201/206/343/203/252/343/202/271/343/203/210.md +21 -21
- package/lib/assets/docs/template//343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/351/226/213/347/231/272/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +556 -556
- package/lib/assets/docs/template//343/202/244/343/203/206/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/345/256/214/344/272/206/345/240/261/345/221/212/346/233/270.md +68 -68
- package/lib/assets/docs/template//343/202/244/343/203/206/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/350/250/210/347/224/273.md +336 -336
- package/lib/assets/docs/template//343/202/244/343/203/263/343/202/273/343/203/227/343/202/267/343/203/247/343/203/263/343/203/207/343/203/203/343/202/255.md +22 -22
- package/lib/assets/docs/template//343/203/223/343/202/270/343/203/215/343/202/271/343/202/242/343/203/274/343/202/255/343/203/206/343/202/257/343/203/201/343/203/243.md +388 -388
- package/lib/assets/docs/template//343/203/252/343/203/252/343/203/274/343/202/271/345/256/214/344/272/206/345/240/261/345/221/212/346/233/270.md +284 -284
- package/lib/assets/docs/template//343/203/252/343/203/252/343/203/274/343/202/271/350/250/210/347/224/273.md +289 -289
- package/lib/assets/docs/template//344/272/213/344/276/213/345/210/206/346/236/220.md +522 -522
- package/lib/assets/docs/template//344/274/201/346/245/255/345/210/206/346/236/220.md +582 -582
- package/lib/assets/docs/template//345/256/214/345/205/250/345/275/242/345/274/217/343/201/256/343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271.md +69 -69
- package/lib/assets/docs/template//350/246/201/344/273/266/345/256/232/347/276/251.md +669 -669
- package/lib/assets/docs/template//350/250/255/350/250/210.md +183 -183
- package/lib/assets/docs/template//351/226/213/347/231/272/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +697 -697
- package/lib/assets/gulpfile.js +29 -29
- package/lib/assets/mkdocs.yml +151 -147
- package/lib/assets/ops/docker/sonarqube-local/docker-compose.yml +57 -57
- package/lib/assets/ops/scripts/journal.js +180 -180
- package/lib/assets/ops/scripts/mkdocs.js +82 -82
- package/lib/assets/ops/scripts/release.js +431 -431
- package/lib/assets/ops/scripts/sonar_local.js +726 -726
- package/lib/assets/ops/scripts/ssh.js +190 -190
- package/lib/assets/ops/scripts/vault.js +299 -299
- package/lib/assets/package-lock.json +1673 -1673
- package/lib/assets/package.json +45 -45
- package/lib/gulpfile.js +37 -37
- package/package.json +41 -41
|
@@ -1,100 +1,138 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: developing-backend
|
|
3
|
-
description: バックエンド開発の TDD ワークフローを支援。Red-Green-Refactor サイクルとインサイドアウトアプローチで品質の高いバックエンドを実装する。「バックエンドを実装したい」「API
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# バックエンド開発
|
|
7
|
-
|
|
8
|
-
TDD サイクルに従いバックエンドを開発する。インサイドアウトアプローチ(データ層→ドメイン層→API 層)で、内側から外側へ段階的に構築する。
|
|
9
|
-
|
|
10
|
-
インサイドアウトの利点は、ドメインロジックのテストが外部依存なしで書けること。テストの実行速度が速く、フィードバックループを短く保てる。
|
|
11
|
-
|
|
12
|
-
## 参照ドキュメント
|
|
13
|
-
|
|
14
|
-
| 種類 | パス |
|
|
15
|
-
|------|------|
|
|
16
|
-
| ワークフロー | @docs/reference/コーディングとテストガイド.md |
|
|
17
|
-
| アーキテクチャ | @docs/design/architecture_backend.md |
|
|
18
|
-
| データモデル | @docs/design/data-model.md |
|
|
19
|
-
| ドメインモデル | @docs/design/domain-model.md |
|
|
20
|
-
| 技術スタック | @docs/design/tech_stack.md |
|
|
21
|
-
| テスト戦略 | @docs/design/test_strategy.md |
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
1
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
-
|
|
64
|
-
-
|
|
65
|
-
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
-
|
|
99
|
-
-
|
|
100
|
-
-
|
|
1
|
+
---
|
|
2
|
+
name: developing-backend
|
|
3
|
+
description: バックエンド開発の TDD ワークフローを支援。Red-Green-Refactor サイクルとインサイドアウトアプローチで品質の高いバックエンドを実装する。「バックエンドを実装したい」「API を作りたい」「サーバーサイドの機能を追加したい」「バックエンドのテストを書きたい」「ドメインモデルに役割や根拠を残したい」「API ドキュメントや用語集をコードから生成したい」といった場面で発動する。層ごとの知識を Living Documentation としてコードに持たせる実践も案内する。TDD で開発することで、リファクタリングの安全網を確保し、変更を楽に安全にできるコードを維持する。
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# バックエンド開発
|
|
7
|
+
|
|
8
|
+
TDD サイクルに従いバックエンドを開発する。インサイドアウトアプローチ(データ層→ドメイン層→API 層)で、内側から外側へ段階的に構築する。
|
|
9
|
+
|
|
10
|
+
インサイドアウトの利点は、ドメインロジックのテストが外部依存なしで書けること。テストの実行速度が速く、フィードバックループを短く保てる。
|
|
11
|
+
|
|
12
|
+
## 参照ドキュメント
|
|
13
|
+
|
|
14
|
+
| 種類 | パス |
|
|
15
|
+
|------|------|
|
|
16
|
+
| ワークフロー | @docs/reference/コーディングとテストガイド.md |
|
|
17
|
+
| アーキテクチャ | @docs/design/architecture_backend.md |
|
|
18
|
+
| データモデル | @docs/design/data-model.md |
|
|
19
|
+
| ドメインモデル | @docs/design/domain-model.md |
|
|
20
|
+
| 技術スタック | @docs/design/tech_stack.md |
|
|
21
|
+
| テスト戦略 | @docs/design/test_strategy.md |
|
|
22
|
+
| 開発戦略 | @docs/development/development_strategy.md(Living Documentation の採用可否・語彙・局面ごとの重点) |
|
|
23
|
+
| Living Documentation | @docs/reference/LivingDocumentation導入ガイド.md、@docs/reference/アノテーション導入ガイド.md |
|
|
24
|
+
|
|
25
|
+
## TDD サイクル
|
|
26
|
+
|
|
27
|
+
10-15 分で 1 サイクルを完了させる。サイクルが長引くなら、タスクの粒度が大きすぎる。
|
|
28
|
+
|
|
29
|
+
1. **Red**: 失敗するテストを最初に書く
|
|
30
|
+
2. **Green**: テストを通す最小限のコードを実装する
|
|
31
|
+
3. **Refactor**: 重複を除去し設計を改善する
|
|
32
|
+
|
|
33
|
+
## アプローチ
|
|
34
|
+
|
|
35
|
+
- **インサイドアウト**(推奨): データ層から開始し上位層へ展開する
|
|
36
|
+
- **アウトサイドイン**: API から開始しドメインロジックを段階的に実装する
|
|
37
|
+
|
|
38
|
+
## Living Documentation の実践
|
|
39
|
+
|
|
40
|
+
バックエンドの知識の大半は、スキーマ・ドメインモデル・API 定義・テストの中にある。それを設計ドキュメントに書き写すのではなく、**権威ある情報源をコードに置き、そこから生成し、足りない意図と根拠だけを補う**。採用するかどうかとアノテーションの語彙は開発戦略に従う。ここではインサイドアウトの層ごとに、何をどこに持たせるかを示す。
|
|
41
|
+
|
|
42
|
+
### 層ごとの知識の持たせ方
|
|
43
|
+
|
|
44
|
+
| 層 | 権威ある情報源 | 生成・検証するもの | 補う知識 |
|
|
45
|
+
| :--- | :--- | :--- | :--- |
|
|
46
|
+
| データ層 | マイグレーション・スキーマ定義 | ER 図・テーブル定義をスキーマから生成する。`docs/design/` のデータモデルに列定義を手で複製しない | 正規化を崩した理由などの判断は ADR に残す |
|
|
47
|
+
| ドメイン層 | エンティティ・値オブジェクト・集約のコード | ドメインのクラス名・メソッド名・列挙型から用語集(Living Glossary)を生成する | 役割(`@Entity`・`@ValueObject`・`@DomainService` など)とコア概念(`@CoreConcept`)をアノテーションで補う |
|
|
48
|
+
| API 層 | コントローラとリクエスト/レスポンスの型 | OpenAPI をコードから生成して公開する。外部に公開した契約は、変更を検出するテストで守る | 外部システムとの境界(連携先・方向)を宣言し、コンテキスト図の元にする |
|
|
49
|
+
| 層をまたぐ構造 | パッケージ構成・レイヤー宣言 | 層の依存方向をアーキテクチャテスト(ArchUnit など)で検証し、アーキテクチャ図をコードから生成する | パッケージ単位の宣言(`package-info.java` のレイヤー・境界づけられたコンテキスト)で補う |
|
|
50
|
+
|
|
51
|
+
### ドメイン層で守ること
|
|
52
|
+
|
|
53
|
+
インサイドアウトで最初に固めるドメイン層は、用語集と図の出来を左右する。
|
|
54
|
+
|
|
55
|
+
- **宣言的に書く**: クラス名・メソッド名・列挙型の定数名をドメインの用語にする。生成した用語集が読みにくければ、用語集ではなく名前を直す
|
|
56
|
+
- **本質的な知識だけを付ける**: 不変である、副作用がない、値で同一性を判定するといった、要素を消せば一緒に消える性質だけをアノテーションにする。所有者や使われ方などの外在的な知識は付けない
|
|
57
|
+
- **デフォルトを決めて例外に付ける**: 値オブジェクトを不変とする方針なら、全クラスに `@Immutable` を付けず、可変なものだけを明示する
|
|
58
|
+
- **フレームワークの注釈を流用しない**: JPA の `@Entity` などの技術的な注釈はドメインの意味を表さない。ドメインの役割は独自の語彙で表す
|
|
59
|
+
- **テストをシナリオとして読めるようにする**: テスト名は業務の言葉で書く。イベントソーシングを使う場合は「Given 過去のイベント / When コマンド / Then 新しいイベント」の形にし、コマンドは命令形、イベントは過去形で命名する
|
|
60
|
+
|
|
61
|
+
### TDD サイクルでのタイミング
|
|
62
|
+
|
|
63
|
+
- **Red**: テスト名とテストデータにドメインの用語を使う
|
|
64
|
+
- **Refactor**: 名前を用語に揃え、役割と性質のアノテーションを付ける。付ける数は最小にする
|
|
65
|
+
- **コミット**: 変更の意図を書く(`git-commit`)。代替案を比べて選んだ設計判断は ADR に残す(`creating-adr`)
|
|
66
|
+
|
|
67
|
+
## テストコマンド
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
# 全テスト実行
|
|
71
|
+
cd apps/backend && ./gradlew test
|
|
72
|
+
|
|
73
|
+
# 特定テストクラス実行
|
|
74
|
+
cd apps/backend && ./gradlew test --tests "UserServiceTest"
|
|
75
|
+
|
|
76
|
+
# テストカバレッジ確認
|
|
77
|
+
cd apps/backend && ./gradlew jacocoTestReport
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## API ドキュメント
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
# バックエンドを起動
|
|
84
|
+
cd apps/backend && ./gradlew bootRun
|
|
85
|
+
# Swagger UI: http://localhost:8080/swagger-ui.html
|
|
86
|
+
# OpenAPI JSON: http://localhost:8080/v3/api-docs
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
API ドキュメントはコードから生成されるので、別文書に API 仕様を手で書かない。エンドポイントの意図や制約など、コードに無い説明はアノテーションの説明文に書き、生成物に含める。
|
|
90
|
+
|
|
91
|
+
## 品質チェックリスト
|
|
92
|
+
|
|
93
|
+
コミット前に必ず確認する。
|
|
94
|
+
|
|
95
|
+
- [ ] すべてのテストがパス
|
|
96
|
+
- [ ] ESLint/コンパイラの警告がゼロ
|
|
97
|
+
- [ ] テストカバレッジが目標を満たしている
|
|
98
|
+
- [ ] 単一の論理的作業単位を表現
|
|
99
|
+
- [ ] コミットメッセージが変更内容を明確に説明
|
|
100
|
+
- [ ] (Living Documentation 採用時)ドメインの名前が用語に揃い、開発戦略で決めたアノテーションが付いている
|
|
101
|
+
- [ ] (Living Documentation 採用時)アーキテクチャテストと公開契約のテストがパスし、生成するドキュメントがビルドで生成できる
|
|
102
|
+
|
|
103
|
+
## 途中から再開
|
|
104
|
+
|
|
105
|
+
開発セッションの途中から再開する場合は、まず現在のテスト状態を確認する。
|
|
106
|
+
|
|
107
|
+
**Example:**
|
|
108
|
+
|
|
109
|
+
```
|
|
110
|
+
ユーザー: 「ユーザー認証の Entity と Repository は実装済み。Service 層に進みたい」
|
|
111
|
+
回答: 既存テストを実行して Green 状態を確認する。
|
|
112
|
+
Service 層の失敗するテスト(Red)を書いてから実装に進む。
|
|
113
|
+
Repository の戻り値を使った Service のビジネスロジックをテストする。
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
## コンテキスト管理
|
|
117
|
+
|
|
118
|
+
タスクの区切りごとに `/compact` を実施して Context limit reached エラーを回避する。
|
|
119
|
+
|
|
120
|
+
- TDD サイクルを数回繰り返した後、ユーザーストーリー完了時、コミット完了後に実施する
|
|
121
|
+
- `/compact` 前に現在の作業状態と次のタスクをメモとして出力する
|
|
122
|
+
|
|
123
|
+
## 注意事項
|
|
124
|
+
|
|
125
|
+
- Java/Gradle のテスト環境が設定済みであること(前提条件)
|
|
126
|
+
- TDD の三原則を厳密に守る。テストなしでプロダクションコードを書かない
|
|
127
|
+
- コミット前に必ず品質チェックリストを実行する
|
|
128
|
+
- 作業完了後に対象の @docs/development/iteration_plan-N.md の進捗を更新する
|
|
129
|
+
- TODO 駆動開発でタスクを細かく分割し、Rule of Three で 3 回同じコードが現れたらリファクタリングする
|
|
130
|
+
- スキーマ・クラス一覧・API 仕様など、コードから取り出せる知識を `docs/design/` に手で書き写さない。書くのはコードに無い意図と根拠だけにする
|
|
131
|
+
|
|
132
|
+
## 関連スキル
|
|
133
|
+
|
|
134
|
+
- `developing-frontend` — フロントエンド TDD 開発
|
|
135
|
+
- `orchestrating-development` — 開発フェーズ全体のワークフロー
|
|
136
|
+
- `git-commit` — Conventional Commits 準拠のコミット
|
|
137
|
+
- `creating-adr` — 設計判断の根拠の記録
|
|
138
|
+
- `creating-development-strategy` — Living Documentation の採用可否・語彙・局面ごとの重点
|
|
@@ -1,93 +1,131 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: developing-frontend
|
|
3
|
-
description: フロントエンド開発の TDD ワークフローを支援。Red-Green-Refactor サイクルとアウトサイドインアプローチで品質の高い UI
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# フロントエンド開発
|
|
7
|
-
|
|
8
|
-
TDD サイクルに従いフロントエンドを開発する。アウトサイドインアプローチ(UI 層→ロジック層→データ層)で、ユーザー視点から内側へ段階的に構築する。
|
|
9
|
-
|
|
10
|
-
アウトサイドインの利点は、ユーザーが実際に操作する画面から始めるため、不要な機能を作らずに済むこと。テストがユーザーの振る舞いに基づくため、実装の詳細に依存しにくい。
|
|
11
|
-
|
|
12
|
-
## 参照ドキュメント
|
|
13
|
-
|
|
14
|
-
| 種類 | パス |
|
|
15
|
-
|------|------|
|
|
16
|
-
| ワークフロー | @docs/reference/コーディングとテストガイド.md |
|
|
17
|
-
| アーキテクチャ | @docs/design/architecture_frontend.md |
|
|
18
|
-
| UI 設計 | @docs/design/ui-design.md |
|
|
19
|
-
| 技術スタック | @docs/design/tech_stack.md |
|
|
20
|
-
| テスト戦略 | @docs/design/test_strategy.md |
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
-
|
|
56
|
-
-
|
|
57
|
-
-
|
|
58
|
-
-
|
|
59
|
-
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
-
|
|
92
|
-
-
|
|
93
|
-
-
|
|
1
|
+
---
|
|
2
|
+
name: developing-frontend
|
|
3
|
+
description: フロントエンド開発の TDD ワークフローを支援。Red-Green-Refactor サイクルとアウトサイドインアプローチで品質の高い UI を実装する。「フロントエンドを実装したい」「画面を作りたい」「コンポーネントを追加したい」「フロントエンドのテストを書きたい」「画面遷移やコンポーネントの一覧をコードと同期させたい」「API の型をバックエンドと揃えたい」といった場面で発動する。画面とシナリオの知識を Living Documentation としてコードに持たせる実践も案内する。TDD で開発することで、UI の振る舞いを自動テストで保証し、安全なリファクタリングを可能にする。
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# フロントエンド開発
|
|
7
|
+
|
|
8
|
+
TDD サイクルに従いフロントエンドを開発する。アウトサイドインアプローチ(UI 層→ロジック層→データ層)で、ユーザー視点から内側へ段階的に構築する。
|
|
9
|
+
|
|
10
|
+
アウトサイドインの利点は、ユーザーが実際に操作する画面から始めるため、不要な機能を作らずに済むこと。テストがユーザーの振る舞いに基づくため、実装の詳細に依存しにくい。
|
|
11
|
+
|
|
12
|
+
## 参照ドキュメント
|
|
13
|
+
|
|
14
|
+
| 種類 | パス |
|
|
15
|
+
|------|------|
|
|
16
|
+
| ワークフロー | @docs/reference/コーディングとテストガイド.md |
|
|
17
|
+
| アーキテクチャ | @docs/design/architecture_frontend.md |
|
|
18
|
+
| UI 設計 | @docs/design/ui-design.md |
|
|
19
|
+
| 技術スタック | @docs/design/tech_stack.md |
|
|
20
|
+
| テスト戦略 | @docs/design/test_strategy.md |
|
|
21
|
+
| 開発戦略 | @docs/development/development_strategy.md(Living Documentation の採用可否・語彙・局面ごとの重点) |
|
|
22
|
+
| Living Documentation | @docs/reference/LivingDocumentation導入ガイド.md、@docs/reference/ダイナミックキュレーション導入ガイド.md |
|
|
23
|
+
| 受け入れシナリオ(BDD 採用時) | @docs/reference/BDD導入ガイド.md |
|
|
24
|
+
|
|
25
|
+
## TDD サイクル
|
|
26
|
+
|
|
27
|
+
10-15 分で 1 サイクルを完了させる。サイクルが長引くなら、タスクの粒度が大きすぎる。
|
|
28
|
+
|
|
29
|
+
1. **Red**: 失敗するテストを最初に書く
|
|
30
|
+
2. **Green**: テストを通す最小限のコードを実装する
|
|
31
|
+
3. **Refactor**: 重複を除去し設計を改善する
|
|
32
|
+
|
|
33
|
+
## アプローチ
|
|
34
|
+
|
|
35
|
+
- **アウトサイドイン**(推奨): UI から開始しロジックを段階的に実装する
|
|
36
|
+
- **インサイドアウト**: ユーティリティ/hooks から開始し上位層へ展開する
|
|
37
|
+
|
|
38
|
+
## Living Documentation の実践
|
|
39
|
+
|
|
40
|
+
フロントエンドの知識は、ルート定義・コンポーネント・API の型・E2E テストの中にある。画面一覧や遷移図、API の型を別文書に書き写すと、画面を 1 つ足すたびに古くなる。**権威ある情報源をコードに置き、そこから生成し、足りない意図だけを補う**。採用するかどうかと語彙は開発戦略に従う。
|
|
41
|
+
|
|
42
|
+
### 層ごとの知識の持たせ方
|
|
43
|
+
|
|
44
|
+
アウトサイドインで外側から下りる順に並べる。
|
|
45
|
+
|
|
46
|
+
| 層 | 権威ある情報源 | 生成・検証するもの | 補う知識 |
|
|
47
|
+
| :--- | :--- | :--- | :--- |
|
|
48
|
+
| 受け入れ(最外殻) | E2E テスト・BDD シナリオ | デモ項目をシナリオとして実行し、そのまま振る舞いの仕様として公開する | シナリオの意図(誰が何のために操作するか)をシナリオの冒頭に書く |
|
|
49
|
+
| 画面・ルーティング | ルート定義 | 画面一覧と画面遷移図をルート定義から生成する。`docs/design/` の UI 設計にルート一覧を手で複製しない | 遷移の理由やロールによる制御の意図を UI 設計に残す |
|
|
50
|
+
| コンポーネント | コンポーネントとその使用例 | コンポーネントカタログ(Storybook など、採用している場合)を使用例から生成する | 模範とするコンポーネントを JSDoc タグ(例: `@exemplar`)や命名規約で示す |
|
|
51
|
+
| ロジック・データ | API クライアントと型 | API の型はバックエンドが公開する OpenAPI から生成し、手で書かない。生成した型とのずれは型チェックで検出する | 画面固有の状態の持ち方など、型に表れない判断を ADR に残す |
|
|
52
|
+
|
|
53
|
+
### フロントエンドで守ること
|
|
54
|
+
|
|
55
|
+
- **ユビキタス言語を画面に通す**: コンポーネント名・画面の文言・テスト名をバックエンドのドメイン用語と揃える。同じ概念を画面ごとに別の名前で呼ばない
|
|
56
|
+
- **テストを利用者の言葉で書く**: テスト名とテスト内の操作は「ユーザーが何をするか」で書く。実装の詳細(DOM 構造やクラス名)に依存したテストは、仕様として読めない
|
|
57
|
+
- **注釈は軽く保つ**: TypeScript/JavaScript は実行時に読めるアノテーションが一般にないため、JSDoc のタグ・フォルダ構成・命名規約で役割を表す。付けるのは例外と本質的な知識だけにする
|
|
58
|
+
- **重複させた知識には検証を付ける**: バックエンドと共有する型・定数・ルートの権限設定は、生成するか、不一致を検出するテストで守る
|
|
59
|
+
- **画面キャプチャは生成する**: マニュアル用の画面キャプチャは E2E ツールで再生成する(`creating-manual`)。手で撮り直す運用にすると画面の変更に追従しなくなる
|
|
60
|
+
|
|
61
|
+
### TDD サイクルでのタイミング
|
|
62
|
+
|
|
63
|
+
- **Red**: 最外殻のテスト(E2E・シナリオ)を業務の言葉で書き、そこから内側のテストへ下りる
|
|
64
|
+
- **Refactor**: コンポーネント名と文言を用語に揃える。模範例や見どころの印は、付ける数を最小にする
|
|
65
|
+
- **コミット**: 変更の意図を書く(`git-commit`)。状態管理やルーティングの方式など、代替案を比べて選んだ判断は ADR に残す(`creating-adr`)
|
|
66
|
+
|
|
67
|
+
## テストコマンド
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
# 全テスト実行
|
|
71
|
+
cd apps/frontend && npm run test
|
|
72
|
+
|
|
73
|
+
# ウォッチモードでテスト実行
|
|
74
|
+
cd apps/frontend && npm run test:watch
|
|
75
|
+
|
|
76
|
+
# テストカバレッジ確認
|
|
77
|
+
cd apps/frontend && npm run test:coverage
|
|
78
|
+
|
|
79
|
+
# E2E テスト実行
|
|
80
|
+
cd apps/frontend && npm run test:e2e
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## 品質チェックリスト
|
|
84
|
+
|
|
85
|
+
コミット前に必ず確認する。
|
|
86
|
+
|
|
87
|
+
- [ ] すべてのテストがパス
|
|
88
|
+
- [ ] ESLint の警告がゼロ
|
|
89
|
+
- [ ] テストカバレッジが目標を満たしている
|
|
90
|
+
- [ ] 単一の論理的作業単位を表現
|
|
91
|
+
- [ ] コミットメッセージが変更内容を明確に説明
|
|
92
|
+
- [ ] (Living Documentation 採用時)コンポーネント名・文言・テスト名がドメインの用語に揃っている
|
|
93
|
+
- [ ] (Living Documentation 採用時)API の型が生成物と一致し、画面一覧・遷移図などの生成物がビルドで生成できる
|
|
94
|
+
|
|
95
|
+
## 途中から再開
|
|
96
|
+
|
|
97
|
+
開発セッションの途中から再開する場合は、まず現在のテスト状態を確認する。
|
|
98
|
+
|
|
99
|
+
**Example:**
|
|
100
|
+
|
|
101
|
+
```
|
|
102
|
+
ユーザー: 「ログイン画面のコンポーネントは作った。バリデーションを追加したい」
|
|
103
|
+
回答: 既存テストを実行して Green 状態を確認する。
|
|
104
|
+
バリデーションの失敗するテスト(Red)を書いてから実装に進む。
|
|
105
|
+
ユーザーが不正な入力をした場合のエラー表示をテストする。
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## コンテキスト管理
|
|
109
|
+
|
|
110
|
+
タスクの区切りごとに `/compact` を実施して Context limit reached エラーを回避する。
|
|
111
|
+
|
|
112
|
+
- TDD サイクルを数回繰り返した後、コンポーネント完了時、コミット完了後に実施する
|
|
113
|
+
- `/compact` 前に現在の作業状態と次のタスクをメモとして出力する
|
|
114
|
+
|
|
115
|
+
## 注意事項
|
|
116
|
+
|
|
117
|
+
- Node.js/npm のテスト環境が設定済みであること(前提条件)
|
|
118
|
+
- TDD の三原則を厳密に守る。テストなしでプロダクションコードを書かない
|
|
119
|
+
- コミット前に必ず品質チェックリストを実行する
|
|
120
|
+
- 作業完了後に対象の @docs/development/iteration_plan-N.md の進捗を更新する
|
|
121
|
+
- コンポーネントは単一責任の原則に従い小さく保つ。TODO 駆動で分割し、Rule of Three でリファクタリングする
|
|
122
|
+
- ルート一覧・コンポーネント一覧・API の型など、コードから取り出せる知識を `docs/design/` に手で書き写さない。書くのはコードに無い意図と根拠だけにする
|
|
123
|
+
|
|
124
|
+
## 関連スキル
|
|
125
|
+
|
|
126
|
+
- `developing-backend` — バックエンド TDD 開発
|
|
127
|
+
- `orchestrating-development` — 開発フェーズ全体のワークフロー
|
|
128
|
+
- `git-commit` — Conventional Commits 準拠のコミット
|
|
129
|
+
- `creating-adr` — 設計判断の根拠の記録
|
|
130
|
+
- `creating-manual` — E2E ツールによる画面キャプチャの再生成
|
|
131
|
+
- `creating-development-strategy` — Living Documentation の採用可否・語彙・局面ごとの重点
|