@k2works/claude-code-booster 4.15.0 → 5.0.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.
Files changed (758) hide show
  1. package/README.md +19 -0
  2. package/lib/assets/.claude/skills/apply-okf/SKILL.md +88 -0
  3. package/lib/assets/.claude/skills/apply-okf/evals/evals.json +8 -0
  4. package/lib/assets/.claude/skills/apply-okf/scripts/__pycache__/okf_apply.cpython-314.pyc +0 -0
  5. package/lib/assets/.claude/skills/apply-okf/scripts/okf_apply.py +397 -0
  6. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/benchmark.json +20 -0
  7. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/benchmark.md +13 -0
  8. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/eval_metadata.json +14 -0
  9. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/grading.json +39 -0
  10. 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
  11. 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
  12. 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
  13. 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
  14. 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
  15. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/index.md +10 -0
  16. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/log.md +7 -0
  17. 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
  18. 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
  19. 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
  20. 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
  21. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/report.md +76 -0
  22. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/grading.json +39 -0
  23. 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
  24. 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
  25. 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
  26. 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
  27. 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
  28. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/index.md +10 -0
  29. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/log.md +7 -0
  30. 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
  31. 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
  32. 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
  33. 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
  34. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/report.md +22 -0
  35. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/eval_metadata.json +13 -0
  36. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/grading.json +34 -0
  37. 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
  38. 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
  39. 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
  40. 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
  41. 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
  42. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/index.md +10 -0
  43. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/log.md +7 -0
  44. 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
  45. 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
  46. 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
  47. 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
  48. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/report.md +61 -0
  49. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/grading.json +34 -0
  50. 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
  51. 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
  52. 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
  53. 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
  54. 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
  55. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/index.md +10 -0
  56. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/log.md +7 -0
  57. 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
  58. 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
  59. 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
  60. 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
  61. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/report.md +18 -0
  62. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/eval_metadata.json +13 -0
  63. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/grading.json +34 -0
  64. 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
  65. 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
  66. 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
  67. 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
  68. 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
  69. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/index.md +10 -0
  70. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/log.md +7 -0
  71. 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
  72. 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
  73. 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
  74. 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
  75. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/report.md +83 -0
  76. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/grading.json +34 -0
  77. 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
  78. 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
  79. 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
  80. 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
  81. 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
  82. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/index.md +10 -0
  83. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/log.md +7 -0
  84. 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
  85. 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
  86. 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
  87. 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
  88. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/report.md +15 -0
  89. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/review.html +1325 -0
  90. package/lib/assets/.claude/skills/closing-iteration/SKILL.md +16 -0
  91. package/lib/assets/.claude/skills/creating-adr/SKILL.md +4 -0
  92. package/lib/assets/.claude/skills/creating-journal/SKILL.md +12 -1
  93. package/lib/assets/.claude/skills/creating-manual/SKILL.md +199 -199
  94. package/lib/assets/.claude/skills/migrating-okf/SKILL.md +149 -0
  95. package/lib/assets/.claude/skills/migrating-okf/evals/evals.json +23 -0
  96. package/lib/assets/.claude/skills/migrating-okf/scripts/__pycache__/okf_check.cpython-314.pyc +0 -0
  97. package/lib/assets/.claude/skills/migrating-okf/scripts/okf_check.py +468 -0
  98. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/benchmark.json +20 -0
  99. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/benchmark.md +13 -0
  100. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/eval_metadata.json +15 -0
  101. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/grading.json +44 -0
  102. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/adr/index.md +10 -0
  103. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/index.md +15 -0
  104. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/log.md +5 -0
  105. 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
  106. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/reference/index.md +6 -0
  107. 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
  108. 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
  109. 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
  110. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/report.md +85 -0
  111. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/grading.json +44 -0
  112. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/adr/index.md +8 -0
  113. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/index.md +11 -0
  114. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/log.md +7 -0
  115. 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
  116. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/reference/index.md +9 -0
  117. 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
  118. 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
  119. 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
  120. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/report.md +49 -0
  121. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/eval_metadata.json +13 -0
  122. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/grading.json +34 -0
  123. 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
  124. 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
  125. 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
  126. 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
  127. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/report.md +147 -0
  128. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/review.html +1325 -0
  129. package/lib/assets/.claude/skills/opening-iteration/SKILL.md +15 -0
  130. package/lib/assets/.claude/skills/orchestrating-analysis/SKILL.md +4 -1
  131. package/lib/assets/.claude/skills/orchestrating-development/SKILL.md +2 -0
  132. package/lib/assets/.claude/skills/orchestrating-operation/SKILL.md +3 -1
  133. package/lib/assets/.claude/skills/orchestrating-project/SKILL.md +4 -1
  134. package/lib/assets/.claude/skills/planning-releases/SKILL.md +2 -0
  135. package/lib/assets/.env.example +9 -0
  136. package/lib/assets/AGENTS.md +8 -0
  137. package/lib/assets/CLAUDE.md +218 -201
  138. package/lib/assets/docs/article/functional-desgin-ppp/all/01-immutability-and-data-transformation.md +9 -0
  139. package/lib/assets/docs/article/functional-desgin-ppp/all/02-function-composition.md +9 -0
  140. package/lib/assets/docs/article/functional-desgin-ppp/all/03-polymorphism.md +9 -0
  141. package/lib/assets/docs/article/functional-desgin-ppp/all/04-data-validation.md +9 -0
  142. package/lib/assets/docs/article/functional-desgin-ppp/all/05-property-based-testing.md +9 -0
  143. package/lib/assets/docs/article/functional-desgin-ppp/all/06-tdd-and-functional.md +9 -0
  144. package/lib/assets/docs/article/functional-desgin-ppp/all/07-composite-pattern.md +9 -0
  145. package/lib/assets/docs/article/functional-desgin-ppp/all/08-decorator-pattern.md +10 -1
  146. package/lib/assets/docs/article/functional-desgin-ppp/all/09-adapter-pattern.md +9 -0
  147. package/lib/assets/docs/article/functional-desgin-ppp/all/10-strategy-pattern.md +9 -0
  148. package/lib/assets/docs/article/functional-desgin-ppp/all/11-command-pattern.md +9 -0
  149. package/lib/assets/docs/article/functional-desgin-ppp/all/12-visitor-pattern.md +9 -0
  150. package/lib/assets/docs/article/functional-desgin-ppp/all/13-abstract-factory-pattern.md +9 -0
  151. package/lib/assets/docs/article/functional-desgin-ppp/all/14-abstract-server-pattern.md +9 -0
  152. package/lib/assets/docs/article/functional-desgin-ppp/all/15-gossiping-bus-drivers.md +9 -0
  153. package/lib/assets/docs/article/functional-desgin-ppp/all/16-payroll-system.md +9 -0
  154. package/lib/assets/docs/article/functional-desgin-ppp/all/17-video-rental-system.md +9 -0
  155. package/lib/assets/docs/article/functional-desgin-ppp/all/18-concurrency-system.md +9 -0
  156. package/lib/assets/docs/article/functional-desgin-ppp/all/19-wa-tor-simulation.md +10 -1
  157. package/lib/assets/docs/article/functional-desgin-ppp/all/20-pattern-interactions.md +9 -0
  158. package/lib/assets/docs/article/functional-desgin-ppp/all/21-best-practices.md +9 -0
  159. package/lib/assets/docs/article/functional-desgin-ppp/all/22-oo-to-fp-migration.md +9 -0
  160. package/lib/assets/docs/article/functional-desgin-ppp/clojure/01-immutability-and-data-transformation.md +9 -0
  161. package/lib/assets/docs/article/functional-desgin-ppp/clojure/02-function-composition.md +9 -0
  162. package/lib/assets/docs/article/functional-desgin-ppp/clojure/03-polymorphism.md +9 -0
  163. package/lib/assets/docs/article/functional-desgin-ppp/clojure/04-clojure-spec.md +9 -0
  164. package/lib/assets/docs/article/functional-desgin-ppp/clojure/05-property-based-testing.md +9 -0
  165. package/lib/assets/docs/article/functional-desgin-ppp/clojure/06-tdd-in-functional.md +9 -0
  166. package/lib/assets/docs/article/functional-desgin-ppp/clojure/07-composite-pattern.md +9 -0
  167. package/lib/assets/docs/article/functional-desgin-ppp/clojure/08-decorator-pattern.md +9 -0
  168. package/lib/assets/docs/article/functional-desgin-ppp/clojure/09-adapter-pattern.md +9 -0
  169. package/lib/assets/docs/article/functional-desgin-ppp/clojure/10-strategy-pattern.md +9 -0
  170. package/lib/assets/docs/article/functional-desgin-ppp/clojure/11-command-pattern.md +9 -0
  171. package/lib/assets/docs/article/functional-desgin-ppp/clojure/12-visitor-pattern.md +9 -0
  172. package/lib/assets/docs/article/functional-desgin-ppp/clojure/13-abstract-factory-pattern.md +9 -0
  173. package/lib/assets/docs/article/functional-desgin-ppp/clojure/14-abstract-server-pattern.md +9 -0
  174. package/lib/assets/docs/article/functional-desgin-ppp/clojure/15-gossiping-bus-drivers.md +9 -0
  175. package/lib/assets/docs/article/functional-desgin-ppp/clojure/16-payroll-system.md +9 -0
  176. package/lib/assets/docs/article/functional-desgin-ppp/clojure/17-video-rental-system.md +9 -0
  177. package/lib/assets/docs/article/functional-desgin-ppp/clojure/18-concurrency-system.md +9 -0
  178. package/lib/assets/docs/article/functional-desgin-ppp/clojure/19-wator-simulation.md +9 -0
  179. package/lib/assets/docs/article/functional-desgin-ppp/clojure/20-pattern-interactions.md +9 -0
  180. package/lib/assets/docs/article/functional-desgin-ppp/clojure/21-best-practices.md +9 -0
  181. package/lib/assets/docs/article/functional-desgin-ppp/clojure/22-oo-to-fp-migration.md +9 -0
  182. package/lib/assets/docs/article/functional-desgin-ppp/clojure/index.md +3 -3
  183. package/lib/assets/docs/article/functional-desgin-ppp/elixir/01-immutability-and-data-transformation.md +9 -0
  184. package/lib/assets/docs/article/functional-desgin-ppp/elixir/02-function-composition.md +9 -0
  185. package/lib/assets/docs/article/functional-desgin-ppp/elixir/03-polymorphism.md +9 -0
  186. package/lib/assets/docs/article/functional-desgin-ppp/elixir/04-data-validation.md +9 -0
  187. package/lib/assets/docs/article/functional-desgin-ppp/elixir/05-property-based-testing.md +9 -0
  188. package/lib/assets/docs/article/functional-desgin-ppp/elixir/06-tdd-and-fp.md +9 -0
  189. package/lib/assets/docs/article/functional-desgin-ppp/elixir/07-effects-and-pure-functions.md +9 -0
  190. package/lib/assets/docs/article/functional-desgin-ppp/elixir/08-error-handling-strategies.md +9 -0
  191. package/lib/assets/docs/article/functional-desgin-ppp/elixir/09-io-and-external-systems.md +9 -0
  192. package/lib/assets/docs/article/functional-desgin-ppp/elixir/10-concurrency-patterns.md +9 -0
  193. package/lib/assets/docs/article/functional-desgin-ppp/elixir/11-command-pattern.md +9 -0
  194. package/lib/assets/docs/article/functional-desgin-ppp/elixir/12-visitor-pattern.md +9 -0
  195. package/lib/assets/docs/article/functional-desgin-ppp/elixir/13-abstract-factory-pattern.md +9 -0
  196. package/lib/assets/docs/article/functional-desgin-ppp/elixir/14-abstract-server-pattern.md +9 -0
  197. package/lib/assets/docs/article/functional-desgin-ppp/elixir/15-gossiping-bus-drivers.md +9 -0
  198. package/lib/assets/docs/article/functional-desgin-ppp/elixir/16-payroll-system.md +9 -0
  199. package/lib/assets/docs/article/functional-desgin-ppp/elixir/17-video-rental-system.md +9 -0
  200. package/lib/assets/docs/article/functional-desgin-ppp/elixir/18-concurrency-system.md +9 -0
  201. package/lib/assets/docs/article/functional-desgin-ppp/elixir/19-wator-simulation.md +9 -0
  202. package/lib/assets/docs/article/functional-desgin-ppp/elixir/20-pattern-interactions.md +9 -0
  203. package/lib/assets/docs/article/functional-desgin-ppp/elixir/21-best-practices.md +9 -0
  204. package/lib/assets/docs/article/functional-desgin-ppp/elixir/22-oo-to-fp-migration.md +9 -0
  205. package/lib/assets/docs/article/functional-desgin-ppp/elixir/index.md +22 -22
  206. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/01-immutability-and-data-transformation.md +9 -0
  207. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/02-function-composition.md +9 -0
  208. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/03-polymorphism.md +9 -0
  209. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/04-data-validation.md +9 -0
  210. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/05-property-based-testing.md +9 -0
  211. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/06-tdd-functional.md +9 -0
  212. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/07-composite-pattern.md +9 -0
  213. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/08-decorator-pattern.md +9 -0
  214. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/09-adapter-pattern.md +9 -0
  215. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/10-strategy-pattern.md +9 -0
  216. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/11-command-pattern.md +9 -0
  217. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/12-visitor-pattern.md +9 -0
  218. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/13-abstract-factory-pattern.md +9 -0
  219. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/14-abstract-server-pattern.md +9 -0
  220. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/15-gossiping-bus-drivers.md +9 -0
  221. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/16-payroll-system.md +9 -0
  222. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/17-video-rental-system.md +9 -0
  223. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/18-concurrency-system.md +9 -0
  224. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/19-wator-simulation.md +9 -0
  225. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/20-pattern-interactions.md +9 -0
  226. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/21-best-practices.md +9 -0
  227. package/lib/assets/docs/article/functional-desgin-ppp/fsharp/22-oo-to-fp-migration.md +9 -0
  228. package/lib/assets/docs/article/functional-desgin-ppp/haskell/01-immutability-and-data-transformation.md +9 -0
  229. package/lib/assets/docs/article/functional-desgin-ppp/haskell/02-function-composition.md +9 -0
  230. package/lib/assets/docs/article/functional-desgin-ppp/haskell/03-polymorphism.md +9 -0
  231. package/lib/assets/docs/article/functional-desgin-ppp/haskell/04-data-validation.md +9 -0
  232. package/lib/assets/docs/article/functional-desgin-ppp/haskell/05-property-based-testing.md +9 -0
  233. package/lib/assets/docs/article/functional-desgin-ppp/haskell/06-tdd-functional.md +9 -0
  234. package/lib/assets/docs/article/functional-desgin-ppp/haskell/07-composite-pattern.md +9 -0
  235. package/lib/assets/docs/article/functional-desgin-ppp/haskell/08-decorator-pattern.md +9 -0
  236. package/lib/assets/docs/article/functional-desgin-ppp/haskell/09-adapter-pattern.md +9 -0
  237. package/lib/assets/docs/article/functional-desgin-ppp/haskell/10-strategy-pattern.md +9 -0
  238. package/lib/assets/docs/article/functional-desgin-ppp/haskell/11-command-pattern.md +9 -0
  239. package/lib/assets/docs/article/functional-desgin-ppp/haskell/12-visitor-pattern.md +9 -0
  240. package/lib/assets/docs/article/functional-desgin-ppp/haskell/13-abstract-factory-pattern.md +9 -0
  241. package/lib/assets/docs/article/functional-desgin-ppp/haskell/14-abstract-server-pattern.md +9 -0
  242. package/lib/assets/docs/article/functional-desgin-ppp/haskell/15-gossiping-bus-drivers.md +9 -0
  243. package/lib/assets/docs/article/functional-desgin-ppp/haskell/16-payroll-system.md +9 -0
  244. package/lib/assets/docs/article/functional-desgin-ppp/haskell/17-video-rental-system.md +9 -0
  245. package/lib/assets/docs/article/functional-desgin-ppp/haskell/18-concurrency-system.md +9 -0
  246. package/lib/assets/docs/article/functional-desgin-ppp/haskell/19-wator-simulation.md +9 -0
  247. package/lib/assets/docs/article/functional-desgin-ppp/haskell/20-pattern-interactions.md +9 -0
  248. package/lib/assets/docs/article/functional-desgin-ppp/haskell/21-best-practices.md +9 -0
  249. package/lib/assets/docs/article/functional-desgin-ppp/haskell/22-oo-to-fp-migration.md +9 -0
  250. package/lib/assets/docs/article/functional-desgin-ppp/rust/01-immutability-and-data-transformation.md +9 -0
  251. package/lib/assets/docs/article/functional-desgin-ppp/rust/02-function-composition.md +9 -0
  252. package/lib/assets/docs/article/functional-desgin-ppp/rust/03-polymorphism.md +9 -0
  253. package/lib/assets/docs/article/functional-desgin-ppp/rust/04-data-validation.md +9 -0
  254. package/lib/assets/docs/article/functional-desgin-ppp/rust/05-property-based-testing.md +9 -0
  255. package/lib/assets/docs/article/functional-desgin-ppp/rust/06-tdd-and-functional.md +9 -0
  256. package/lib/assets/docs/article/functional-desgin-ppp/rust/07-composite-pattern.md +9 -0
  257. package/lib/assets/docs/article/functional-desgin-ppp/rust/08-decorator-pattern.md +9 -0
  258. package/lib/assets/docs/article/functional-desgin-ppp/rust/09-adapter-pattern.md +9 -0
  259. package/lib/assets/docs/article/functional-desgin-ppp/rust/10-strategy-pattern.md +9 -0
  260. package/lib/assets/docs/article/functional-desgin-ppp/rust/11-command-pattern.md +9 -0
  261. package/lib/assets/docs/article/functional-desgin-ppp/rust/12-visitor-pattern.md +9 -0
  262. package/lib/assets/docs/article/functional-desgin-ppp/rust/13-abstract-factory-pattern.md +9 -0
  263. package/lib/assets/docs/article/functional-desgin-ppp/rust/14-abstract-server-pattern.md +9 -0
  264. package/lib/assets/docs/article/functional-desgin-ppp/rust/15-gossiping-bus-drivers.md +9 -0
  265. package/lib/assets/docs/article/functional-desgin-ppp/rust/16-payroll-system.md +9 -0
  266. package/lib/assets/docs/article/functional-desgin-ppp/rust/17-video-rental-system.md +9 -0
  267. package/lib/assets/docs/article/functional-desgin-ppp/rust/18-concurrency-system.md +9 -0
  268. package/lib/assets/docs/article/functional-desgin-ppp/rust/19-wator-simulation.md +9 -0
  269. package/lib/assets/docs/article/functional-desgin-ppp/rust/20-pattern-interactions.md +9 -0
  270. package/lib/assets/docs/article/functional-desgin-ppp/rust/21-best-practices.md +9 -0
  271. package/lib/assets/docs/article/functional-desgin-ppp/rust/22-oo-to-fp-migration.md +9 -0
  272. package/lib/assets/docs/article/functional-desgin-ppp/scala/01-immutability-and-data-transformation.md +9 -0
  273. package/lib/assets/docs/article/functional-desgin-ppp/scala/02-function-composition.md +9 -0
  274. package/lib/assets/docs/article/functional-desgin-ppp/scala/03-polymorphism.md +9 -0
  275. package/lib/assets/docs/article/functional-desgin-ppp/scala/04-data-validation.md +9 -0
  276. package/lib/assets/docs/article/functional-desgin-ppp/scala/05-property-based-testing.md +9 -0
  277. package/lib/assets/docs/article/functional-desgin-ppp/scala/06-tdd-functional.md +9 -0
  278. package/lib/assets/docs/article/functional-desgin-ppp/scala/07-composite-pattern.md +9 -0
  279. package/lib/assets/docs/article/functional-desgin-ppp/scala/08-decorator-pattern.md +9 -0
  280. package/lib/assets/docs/article/functional-desgin-ppp/scala/09-adapter-pattern.md +9 -0
  281. package/lib/assets/docs/article/functional-desgin-ppp/scala/10-strategy-pattern.md +9 -0
  282. package/lib/assets/docs/article/functional-desgin-ppp/scala/11-command-pattern.md +9 -0
  283. package/lib/assets/docs/article/functional-desgin-ppp/scala/12-visitor-pattern.md +9 -0
  284. package/lib/assets/docs/article/functional-desgin-ppp/scala/13-abstract-factory-pattern.md +9 -0
  285. package/lib/assets/docs/article/functional-desgin-ppp/scala/14-abstract-server-pattern.md +9 -0
  286. package/lib/assets/docs/article/functional-desgin-ppp/scala/15-gossiping-bus-drivers.md +9 -0
  287. package/lib/assets/docs/article/functional-desgin-ppp/scala/16-payroll-system.md +9 -0
  288. package/lib/assets/docs/article/functional-desgin-ppp/scala/17-video-rental-system.md +9 -0
  289. package/lib/assets/docs/article/functional-desgin-ppp/scala/18-concurrency-system.md +9 -0
  290. package/lib/assets/docs/article/functional-desgin-ppp/scala/19-wator-simulation.md +9 -0
  291. package/lib/assets/docs/article/functional-desgin-ppp/scala/20-pattern-interactions.md +9 -0
  292. package/lib/assets/docs/article/functional-desgin-ppp/scala/21-best-practices.md +9 -0
  293. package/lib/assets/docs/article/functional-desgin-ppp/scala/22-oo-to-fp-migration.md +9 -0
  294. package/lib/assets/docs/article/getting-start-docker-kubernetes/01-container-and-docker-basics.md +341 -332
  295. package/lib/assets/docs/article/getting-start-docker-kubernetes/02-container-deployment.md +785 -776
  296. package/lib/assets/docs/article/getting-start-docker-kubernetes/03-practical-container-build-deploy.md +466 -457
  297. package/lib/assets/docs/article/getting-start-docker-kubernetes/04-multi-container-application.md +878 -869
  298. package/lib/assets/docs/article/getting-start-docker-kubernetes/05-kubernetes-introduction.md +585 -576
  299. package/lib/assets/docs/article/getting-start-docker-kubernetes/06-kubernetes-deploy-cluster.md +620 -611
  300. package/lib/assets/docs/article/getting-start-docker-kubernetes/07-kubernetes-advanced.md +621 -612
  301. package/lib/assets/docs/article/getting-start-docker-kubernetes/08-kubernetes-packaging.md +518 -509
  302. package/lib/assets/docs/article/getting-start-docker-kubernetes/09-container-operations.md +546 -537
  303. package/lib/assets/docs/article/getting-start-docker-kubernetes/10-optimal-container-image.md +640 -631
  304. package/lib/assets/docs/article/getting-start-docker-kubernetes/11-continuous-delivery.md +607 -598
  305. package/lib/assets/docs/article/getting-start-docker-kubernetes/12-container-use-cases.md +463 -454
  306. package/lib/assets/docs/article/getting-start-docker-kubernetes/13-case-monolith-compose-vs-kustomize.md +346 -337
  307. package/lib/assets/docs/article/getting-start-docker-kubernetes/14-case-event-driven-kustomize-vs-helm.md +324 -315
  308. package/lib/assets/docs/article/getting-start-docker-kubernetes/15-case-escqrs-axon-kustomize-vs-helm.md +297 -288
  309. package/lib/assets/docs/article/getting-start-docker-kubernetes/16-case-escqrs-kafka-kustomize-vs-helm.md +256 -247
  310. package/lib/assets/docs/article/getting-start-docker-kubernetes/17-case-comparison-summary.md +141 -132
  311. package/lib/assets/docs/article/getting-start-docker-kubernetes/18-case-load-testing.md +303 -294
  312. package/lib/assets/docs/article/getting-start-docker-kubernetes/appendix-a-dev-tools-setup.md +274 -265
  313. package/lib/assets/docs/article/getting-start-docker-kubernetes/appendix-b-orchestration-environments.md +530 -521
  314. package/lib/assets/docs/article/getting-start-docker-kubernetes/appendix-c-tips.md +519 -510
  315. package/lib/assets/docs/article/getting-start-docker-kubernetes/outline.md +220 -211
  316. package/lib/assets/docs/article/getting-start-tdd/clojure/01-todo-list-and-first-test.md +9 -0
  317. package/lib/assets/docs/article/getting-start-tdd/clojure/02-fake-it-and-triangulation.md +9 -0
  318. package/lib/assets/docs/article/getting-start-tdd/clojure/03-obvious-implementation-and-refactoring.md +9 -0
  319. package/lib/assets/docs/article/getting-start-tdd/clojure/04-version-control-and-conventional-commits.md +9 -0
  320. package/lib/assets/docs/article/getting-start-tdd/clojure/05-package-management-and-static-analysis.md +9 -0
  321. package/lib/assets/docs/article/getting-start-tdd/clojure/06-task-runner-and-ci-cd.md +9 -0
  322. package/lib/assets/docs/article/getting-start-tdd/clojure/07-protocols-and-records.md +9 -0
  323. package/lib/assets/docs/article/getting-start-tdd/clojure/08-multimethods-and-design-patterns.md +9 -0
  324. package/lib/assets/docs/article/getting-start-tdd/clojure/09-namespaces-and-module-design.md +9 -0
  325. package/lib/assets/docs/article/getting-start-tdd/clojure/10-higher-order-functions-and-composition.md +9 -0
  326. package/lib/assets/docs/article/getting-start-tdd/clojure/11-persistent-data-and-pipeline.md +9 -0
  327. package/lib/assets/docs/article/getting-start-tdd/clojure/12-error-handling-and-spec.md +9 -0
  328. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter01.md +9 -0
  329. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter02.md +9 -0
  330. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter03.md +9 -0
  331. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter04.md +9 -0
  332. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter05.md +9 -0
  333. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter06.md +9 -0
  334. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter07.md +9 -0
  335. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter08.md +9 -0
  336. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter09.md +9 -0
  337. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter10.md +9 -0
  338. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter11.md +9 -0
  339. package/lib/assets/docs/article/getting-start-tdd/csharp/chapter12.md +9 -0
  340. package/lib/assets/docs/article/getting-start-tdd/elixir/01-todo-list-and-first-test.md +9 -0
  341. package/lib/assets/docs/article/getting-start-tdd/elixir/02-fake-it-and-triangulation.md +9 -0
  342. package/lib/assets/docs/article/getting-start-tdd/elixir/03-obvious-implementation-and-refactoring.md +9 -0
  343. package/lib/assets/docs/article/getting-start-tdd/elixir/04-version-control-and-conventional-commits.md +9 -0
  344. package/lib/assets/docs/article/getting-start-tdd/elixir/05-package-management-and-static-analysis.md +9 -0
  345. package/lib/assets/docs/article/getting-start-tdd/elixir/06-task-runner-and-ci-cd.md +9 -0
  346. package/lib/assets/docs/article/getting-start-tdd/elixir/07-structs-and-protocols.md +9 -0
  347. package/lib/assets/docs/article/getting-start-tdd/elixir/08-pattern-matching-and-guards.md +9 -0
  348. package/lib/assets/docs/article/getting-start-tdd/elixir/09-module-design-and-behaviours.md +9 -0
  349. package/lib/assets/docs/article/getting-start-tdd/elixir/10-higher-order-functions-and-pipeline.md +9 -0
  350. package/lib/assets/docs/article/getting-start-tdd/elixir/11-stream-and-lazy-evaluation.md +9 -0
  351. package/lib/assets/docs/article/getting-start-tdd/elixir/12-error-handling-and-with.md +9 -0
  352. package/lib/assets/docs/article/getting-start-tdd/elixir/index.md +2 -2
  353. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter01.md +9 -0
  354. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter02.md +9 -0
  355. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter03.md +9 -0
  356. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter04.md +9 -0
  357. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter05.md +9 -0
  358. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter06.md +9 -0
  359. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter07.md +9 -0
  360. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter08.md +9 -0
  361. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter09.md +9 -0
  362. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter10.md +9 -0
  363. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter11.md +9 -0
  364. package/lib/assets/docs/article/getting-start-tdd/fsharp/chapter12.md +9 -0
  365. package/lib/assets/docs/article/getting-start-tdd/go/01-todo-list-and-first-test.md +9 -0
  366. package/lib/assets/docs/article/getting-start-tdd/go/02-fake-it-and-triangulation.md +9 -0
  367. package/lib/assets/docs/article/getting-start-tdd/go/03-obvious-implementation-and-refactoring.md +9 -0
  368. package/lib/assets/docs/article/getting-start-tdd/go/04-version-control-and-conventional-commits.md +9 -0
  369. package/lib/assets/docs/article/getting-start-tdd/go/05-package-management-and-static-analysis.md +9 -0
  370. package/lib/assets/docs/article/getting-start-tdd/go/06-task-runner-and-ci-cd.md +9 -0
  371. package/lib/assets/docs/article/getting-start-tdd/go/07-encapsulation-and-polymorphism.md +8 -0
  372. package/lib/assets/docs/article/getting-start-tdd/go/08-design-patterns.md +8 -0
  373. package/lib/assets/docs/article/getting-start-tdd/go/09-solid-principles-and-module-design.md +8 -0
  374. package/lib/assets/docs/article/getting-start-tdd/go/10-higher-order-functions-and-composition.md +8 -0
  375. package/lib/assets/docs/article/getting-start-tdd/go/11-immutable-data-and-pipeline.md +8 -0
  376. package/lib/assets/docs/article/getting-start-tdd/go/12-error-handling-and-type-safety.md +8 -0
  377. package/lib/assets/docs/article/getting-start-tdd/haskell/01-todo-list-and-first-test.md +9 -0
  378. package/lib/assets/docs/article/getting-start-tdd/haskell/02-fake-it-and-triangulation.md +9 -0
  379. package/lib/assets/docs/article/getting-start-tdd/haskell/03-obvious-implementation-and-refactoring.md +9 -0
  380. package/lib/assets/docs/article/getting-start-tdd/haskell/04-version-control-and-conventional-commits.md +9 -0
  381. package/lib/assets/docs/article/getting-start-tdd/haskell/05-package-management-and-static-analysis.md +9 -0
  382. package/lib/assets/docs/article/getting-start-tdd/haskell/06-task-runner-and-ci-cd.md +9 -0
  383. package/lib/assets/docs/article/getting-start-tdd/haskell/07-algebraic-data-types-and-type-classes.md +9 -0
  384. package/lib/assets/docs/article/getting-start-tdd/haskell/08-pattern-matching-and-guards.md +9 -0
  385. package/lib/assets/docs/article/getting-start-tdd/haskell/09-module-design-and-smart-constructors.md +9 -0
  386. package/lib/assets/docs/article/getting-start-tdd/haskell/10-higher-order-functions-and-currying.md +9 -0
  387. package/lib/assets/docs/article/getting-start-tdd/haskell/11-function-composition-and-point-free.md +9 -0
  388. package/lib/assets/docs/article/getting-start-tdd/haskell/12-monad-and-error-handling.md +9 -0
  389. package/lib/assets/docs/article/getting-start-tdd/integration/01-language-overview.md +9 -0
  390. package/lib/assets/docs/article/getting-start-tdd/integration/02-test-framework-comparison.md +9 -0
  391. package/lib/assets/docs/article/getting-start-tdd/integration/03-tdd-pattern-comparison.md +9 -0
  392. package/lib/assets/docs/article/getting-start-tdd/integration/04-type-system-comparison.md +9 -0
  393. package/lib/assets/docs/article/getting-start-tdd/integration/05-dev-environment-comparison.md +9 -0
  394. package/lib/assets/docs/article/getting-start-tdd/integration/06-learning-roadmap.md +9 -0
  395. package/lib/assets/docs/article/getting-start-tdd/java/01-todo-list-and-first-test.md +9 -0
  396. package/lib/assets/docs/article/getting-start-tdd/java/02-fake-it-and-triangulation.md +9 -0
  397. package/lib/assets/docs/article/getting-start-tdd/java/03-obvious-implementation-and-refactoring.md +9 -0
  398. package/lib/assets/docs/article/getting-start-tdd/java/04-version-control-and-conventional-commits.md +9 -0
  399. package/lib/assets/docs/article/getting-start-tdd/java/05-package-management-and-static-analysis.md +9 -0
  400. package/lib/assets/docs/article/getting-start-tdd/java/06-task-runner-and-ci-cd.md +9 -0
  401. package/lib/assets/docs/article/getting-start-tdd/java/07-encapsulation-and-polymorphism.md +9 -0
  402. package/lib/assets/docs/article/getting-start-tdd/java/08-design-patterns.md +9 -0
  403. package/lib/assets/docs/article/getting-start-tdd/java/09-solid-principles-and-module-design.md +9 -0
  404. package/lib/assets/docs/article/getting-start-tdd/java/10-higher-order-functions-and-composition.md +9 -0
  405. package/lib/assets/docs/article/getting-start-tdd/java/11-immutable-data-and-pipeline.md +9 -0
  406. package/lib/assets/docs/article/getting-start-tdd/java/12-error-handling-and-type-safety.md +9 -0
  407. package/lib/assets/docs/article/getting-start-tdd/node/01-todo-list-and-first-test.md +9 -0
  408. package/lib/assets/docs/article/getting-start-tdd/node/02-fake-it-and-triangulation.md +9 -0
  409. package/lib/assets/docs/article/getting-start-tdd/node/03-obvious-implementation-and-refactoring.md +9 -0
  410. package/lib/assets/docs/article/getting-start-tdd/node/04-version-control-and-conventional-commits.md +9 -0
  411. package/lib/assets/docs/article/getting-start-tdd/node/05-package-management-and-static-analysis.md +9 -0
  412. package/lib/assets/docs/article/getting-start-tdd/node/06-task-runner-and-ci-cd.md +9 -0
  413. package/lib/assets/docs/article/getting-start-tdd/node/07-encapsulation-and-polymorphism.md +9 -0
  414. package/lib/assets/docs/article/getting-start-tdd/node/08-design-patterns.md +9 -0
  415. package/lib/assets/docs/article/getting-start-tdd/node/09-solid-principles-and-module-design.md +9 -0
  416. package/lib/assets/docs/article/getting-start-tdd/node/10-higher-order-functions-and-composition.md +9 -0
  417. package/lib/assets/docs/article/getting-start-tdd/node/11-immutable-data-and-pipeline.md +9 -0
  418. package/lib/assets/docs/article/getting-start-tdd/node/12-error-handling-and-type-safety.md +9 -0
  419. package/lib/assets/docs/article/getting-start-tdd/php/01-todo-list-and-first-test.md +9 -0
  420. package/lib/assets/docs/article/getting-start-tdd/php/02-fake-it-and-triangulation.md +9 -0
  421. package/lib/assets/docs/article/getting-start-tdd/php/03-obvious-implementation-and-refactoring.md +9 -0
  422. package/lib/assets/docs/article/getting-start-tdd/php/04-version-control-and-conventional-commits.md +9 -0
  423. package/lib/assets/docs/article/getting-start-tdd/php/05-package-management-and-static-analysis.md +9 -0
  424. package/lib/assets/docs/article/getting-start-tdd/php/06-task-runner-and-ci-cd.md +9 -0
  425. package/lib/assets/docs/article/getting-start-tdd/php/07-encapsulation-and-polymorphism.md +8 -0
  426. package/lib/assets/docs/article/getting-start-tdd/php/08-design-patterns.md +8 -0
  427. package/lib/assets/docs/article/getting-start-tdd/php/09-solid-principles-and-module-design.md +8 -0
  428. package/lib/assets/docs/article/getting-start-tdd/php/10-higher-order-functions-and-composition.md +8 -0
  429. package/lib/assets/docs/article/getting-start-tdd/php/11-immutable-data-and-pipeline.md +8 -0
  430. package/lib/assets/docs/article/getting-start-tdd/php/12-error-handling-and-type-safety.md +8 -0
  431. package/lib/assets/docs/article/getting-start-tdd/python/01-todo-list-and-first-test.md +9 -0
  432. package/lib/assets/docs/article/getting-start-tdd/python/02-fake-it-and-triangulation.md +9 -0
  433. package/lib/assets/docs/article/getting-start-tdd/python/03-obvious-implementation-and-refactoring.md +9 -0
  434. package/lib/assets/docs/article/getting-start-tdd/python/04-version-control-and-conventional-commits.md +9 -0
  435. package/lib/assets/docs/article/getting-start-tdd/python/05-package-management-and-static-analysis.md +9 -0
  436. package/lib/assets/docs/article/getting-start-tdd/python/06-task-runner-and-ci-cd.md +9 -0
  437. package/lib/assets/docs/article/getting-start-tdd/python/07-encapsulation-and-polymorphism.md +9 -0
  438. package/lib/assets/docs/article/getting-start-tdd/python/08-design-patterns.md +9 -0
  439. package/lib/assets/docs/article/getting-start-tdd/python/09-solid-principles-and-module-design.md +9 -0
  440. package/lib/assets/docs/article/getting-start-tdd/python/10-higher-order-functions-and-composition.md +9 -0
  441. package/lib/assets/docs/article/getting-start-tdd/python/11-immutable-data-and-pipeline.md +9 -0
  442. package/lib/assets/docs/article/getting-start-tdd/python/12-error-handling-and-type-safety.md +9 -0
  443. package/lib/assets/docs/article/getting-start-tdd/ruby/01-todo-list-and-first-test.md +9 -0
  444. package/lib/assets/docs/article/getting-start-tdd/ruby/02-fake-it-and-triangulation.md +9 -0
  445. package/lib/assets/docs/article/getting-start-tdd/ruby/03-obvious-implementation-and-refactoring.md +9 -0
  446. package/lib/assets/docs/article/getting-start-tdd/ruby/04-version-control-and-conventional-commits.md +9 -0
  447. package/lib/assets/docs/article/getting-start-tdd/ruby/05-package-management-and-static-analysis.md +9 -0
  448. package/lib/assets/docs/article/getting-start-tdd/ruby/06-task-runner-and-ci-cd.md +9 -0
  449. package/lib/assets/docs/article/getting-start-tdd/ruby/07-encapsulation-and-polymorphism.md +9 -0
  450. package/lib/assets/docs/article/getting-start-tdd/ruby/08-design-patterns.md +9 -0
  451. package/lib/assets/docs/article/getting-start-tdd/ruby/09-solid-principles-and-module-design.md +9 -0
  452. package/lib/assets/docs/article/getting-start-tdd/ruby/10-higher-order-functions-and-composition.md +9 -0
  453. package/lib/assets/docs/article/getting-start-tdd/ruby/11-immutable-data-and-pipeline.md +9 -0
  454. package/lib/assets/docs/article/getting-start-tdd/ruby/12-error-handling-and-type-safety.md +9 -0
  455. package/lib/assets/docs/article/getting-start-tdd/rust/01-todo-list-and-first-test.md +9 -0
  456. package/lib/assets/docs/article/getting-start-tdd/rust/02-fake-it-and-triangulation.md +9 -0
  457. package/lib/assets/docs/article/getting-start-tdd/rust/03-obvious-implementation-and-refactoring.md +9 -0
  458. package/lib/assets/docs/article/getting-start-tdd/rust/04-version-control-and-conventional-commits.md +9 -0
  459. package/lib/assets/docs/article/getting-start-tdd/rust/05-package-management-and-static-analysis.md +9 -0
  460. package/lib/assets/docs/article/getting-start-tdd/rust/06-task-runner-and-ci-cd.md +9 -0
  461. package/lib/assets/docs/article/getting-start-tdd/rust/07-encapsulation-and-polymorphism.md +9 -0
  462. package/lib/assets/docs/article/getting-start-tdd/rust/08-design-patterns.md +9 -0
  463. package/lib/assets/docs/article/getting-start-tdd/rust/09-solid-principles-and-module-design.md +9 -0
  464. package/lib/assets/docs/article/getting-start-tdd/rust/10-higher-order-functions-and-composition.md +9 -0
  465. package/lib/assets/docs/article/getting-start-tdd/rust/11-immutable-data-and-pipeline.md +9 -0
  466. package/lib/assets/docs/article/getting-start-tdd/rust/12-error-handling-and-type-safety.md +9 -0
  467. package/lib/assets/docs/article/getting-start-tdd/scala/01-todo-list-and-first-test.md +9 -0
  468. package/lib/assets/docs/article/getting-start-tdd/scala/02-fake-it-and-triangulation.md +9 -0
  469. package/lib/assets/docs/article/getting-start-tdd/scala/03-obvious-implementation-and-refactoring.md +9 -0
  470. package/lib/assets/docs/article/getting-start-tdd/scala/04-version-control-and-conventional-commits.md +9 -0
  471. package/lib/assets/docs/article/getting-start-tdd/scala/05-package-management-and-static-analysis.md +9 -0
  472. package/lib/assets/docs/article/getting-start-tdd/scala/06-task-runner-and-ci-cd.md +9 -0
  473. package/lib/assets/docs/article/getting-start-tdd/scala/07-case-classes-and-traits.md +9 -0
  474. package/lib/assets/docs/article/getting-start-tdd/scala/08-pattern-matching-and-sealed-traits.md +9 -0
  475. package/lib/assets/docs/article/getting-start-tdd/scala/09-packages-and-module-design.md +9 -0
  476. package/lib/assets/docs/article/getting-start-tdd/scala/10-higher-order-functions-and-composition.md +9 -0
  477. package/lib/assets/docs/article/getting-start-tdd/scala/11-collections-and-lazy-evaluation.md +9 -0
  478. package/lib/assets/docs/article/getting-start-tdd/scala/12-error-handling-and-type-safety.md +9 -0
  479. package/lib/assets/docs/article/grokking-concurrency/all/index.md +0 -1
  480. package/lib/assets/docs/article/grokking-concurrency/all/part-1-ch02-sequential.md +9 -0
  481. package/lib/assets/docs/article/grokking-concurrency/all/part-2-ch04-05-threads.md +9 -0
  482. package/lib/assets/docs/article/grokking-concurrency/all/part-3-ch06-multitasking.md +9 -0
  483. package/lib/assets/docs/article/grokking-concurrency/all/part-4-ch07-parallel-patterns.md +9 -0
  484. package/lib/assets/docs/article/grokking-concurrency/all/part-5-ch08-09-synchronization.md +9 -0
  485. package/lib/assets/docs/article/grokking-concurrency/all/part-6-ch10-11-nonblocking-io.md +9 -0
  486. package/lib/assets/docs/article/grokking-concurrency/all/part-7-ch12-async.md +9 -0
  487. package/lib/assets/docs/article/grokking-concurrency/all/part-8-ch13-mapreduce.md +9 -0
  488. package/lib/assets/docs/article/grokking-concurrency/clojure/index.md +0 -10
  489. package/lib/assets/docs/article/grokking-concurrency/clojure/part-1.md +6 -7
  490. package/lib/assets/docs/article/grokking-concurrency/clojure/part-2.md +6 -7
  491. package/lib/assets/docs/article/grokking-concurrency/clojure/part-3.md +6 -7
  492. package/lib/assets/docs/article/grokking-concurrency/clojure/part-4.md +6 -7
  493. package/lib/assets/docs/article/grokking-concurrency/clojure/part-5.md +6 -7
  494. package/lib/assets/docs/article/grokking-concurrency/clojure/part-6.md +6 -7
  495. package/lib/assets/docs/article/grokking-concurrency/clojure/part-7.md +6 -7
  496. package/lib/assets/docs/article/grokking-concurrency/clojure/part-8.md +6 -7
  497. package/lib/assets/docs/article/grokking-concurrency/csharp/index.md +0 -10
  498. package/lib/assets/docs/article/grokking-concurrency/csharp/part-1.md +6 -7
  499. package/lib/assets/docs/article/grokking-concurrency/csharp/part-2.md +6 -7
  500. package/lib/assets/docs/article/grokking-concurrency/csharp/part-3.md +6 -7
  501. package/lib/assets/docs/article/grokking-concurrency/csharp/part-4.md +6 -7
  502. package/lib/assets/docs/article/grokking-concurrency/csharp/part-5.md +6 -7
  503. package/lib/assets/docs/article/grokking-concurrency/csharp/part-6.md +6 -7
  504. package/lib/assets/docs/article/grokking-concurrency/csharp/part-7.md +6 -7
  505. package/lib/assets/docs/article/grokking-concurrency/csharp/part-8.md +6 -7
  506. package/lib/assets/docs/article/grokking-concurrency/fsharp/index.md +0 -10
  507. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-1.md +6 -7
  508. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-2.md +6 -7
  509. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-3.md +6 -7
  510. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-4.md +6 -7
  511. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-5.md +6 -7
  512. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-6.md +6 -7
  513. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-7.md +6 -7
  514. package/lib/assets/docs/article/grokking-concurrency/fsharp/part-8.md +6 -7
  515. package/lib/assets/docs/article/grokking-concurrency/haskell/index.md +0 -10
  516. package/lib/assets/docs/article/grokking-concurrency/haskell/part-1.md +6 -7
  517. package/lib/assets/docs/article/grokking-concurrency/haskell/part-2.md +6 -7
  518. package/lib/assets/docs/article/grokking-concurrency/haskell/part-3.md +6 -7
  519. package/lib/assets/docs/article/grokking-concurrency/haskell/part-4.md +6 -7
  520. package/lib/assets/docs/article/grokking-concurrency/haskell/part-5.md +6 -7
  521. package/lib/assets/docs/article/grokking-concurrency/haskell/part-6.md +6 -7
  522. package/lib/assets/docs/article/grokking-concurrency/haskell/part-7.md +6 -7
  523. package/lib/assets/docs/article/grokking-concurrency/haskell/part-8.md +6 -7
  524. package/lib/assets/docs/article/grokking-concurrency/java/index.md +0 -10
  525. package/lib/assets/docs/article/grokking-concurrency/java/part-1.md +8 -9
  526. package/lib/assets/docs/article/grokking-concurrency/java/part-2.md +8 -9
  527. package/lib/assets/docs/article/grokking-concurrency/java/part-3.md +7 -8
  528. package/lib/assets/docs/article/grokking-concurrency/java/part-4.md +8 -9
  529. package/lib/assets/docs/article/grokking-concurrency/java/part-5.md +7 -8
  530. package/lib/assets/docs/article/grokking-concurrency/java/part-6.md +6 -7
  531. package/lib/assets/docs/article/grokking-concurrency/java/part-7.md +6 -7
  532. package/lib/assets/docs/article/grokking-concurrency/java/part-8.md +6 -7
  533. package/lib/assets/docs/article/grokking-concurrency/python/index.md +0 -10
  534. package/lib/assets/docs/article/grokking-concurrency/python/part-1.md +7 -8
  535. package/lib/assets/docs/article/grokking-concurrency/python/part-2.md +10 -11
  536. package/lib/assets/docs/article/grokking-concurrency/python/part-3.md +8 -9
  537. package/lib/assets/docs/article/grokking-concurrency/python/part-4.md +8 -9
  538. package/lib/assets/docs/article/grokking-concurrency/python/part-5.md +9 -10
  539. package/lib/assets/docs/article/grokking-concurrency/python/part-6.md +9 -10
  540. package/lib/assets/docs/article/grokking-concurrency/python/part-7.md +9 -10
  541. package/lib/assets/docs/article/grokking-concurrency/python/part-8.md +8 -9
  542. package/lib/assets/docs/article/grokking-concurrency/rust/index.md +0 -10
  543. package/lib/assets/docs/article/grokking-concurrency/rust/part-1.md +6 -7
  544. package/lib/assets/docs/article/grokking-concurrency/rust/part-2.md +6 -7
  545. package/lib/assets/docs/article/grokking-concurrency/rust/part-3.md +6 -7
  546. package/lib/assets/docs/article/grokking-concurrency/rust/part-4.md +6 -7
  547. package/lib/assets/docs/article/grokking-concurrency/rust/part-5.md +6 -7
  548. package/lib/assets/docs/article/grokking-concurrency/rust/part-6.md +6 -7
  549. package/lib/assets/docs/article/grokking-concurrency/rust/part-7.md +6 -7
  550. package/lib/assets/docs/article/grokking-concurrency/rust/part-8.md +6 -7
  551. package/lib/assets/docs/article/grokking-concurrency/scala/index.md +0 -10
  552. package/lib/assets/docs/article/grokking-concurrency/scala/part-1.md +6 -7
  553. package/lib/assets/docs/article/grokking-concurrency/scala/part-2.md +6 -7
  554. package/lib/assets/docs/article/grokking-concurrency/scala/part-3.md +6 -7
  555. package/lib/assets/docs/article/grokking-concurrency/scala/part-4.md +6 -7
  556. package/lib/assets/docs/article/grokking-concurrency/scala/part-5.md +6 -7
  557. package/lib/assets/docs/article/grokking-concurrency/scala/part-6.md +6 -7
  558. package/lib/assets/docs/article/grokking-concurrency/scala/part-7.md +6 -7
  559. package/lib/assets/docs/article/grokking-concurrency/scala/part-8.md +6 -7
  560. package/lib/assets/docs/article/grokkingfp/all/part-1-ch01-fp-introduction.md +9 -0
  561. package/lib/assets/docs/article/grokkingfp/all/part-1-ch02-pure-functions.md +9 -0
  562. package/lib/assets/docs/article/grokkingfp/all/part-2-ch03-immutable-data.md +9 -0
  563. package/lib/assets/docs/article/grokkingfp/all/part-2-ch04-higher-order-functions.md +9 -0
  564. package/lib/assets/docs/article/grokkingfp/all/part-2-ch05-flatmap.md +9 -0
  565. package/lib/assets/docs/article/grokkingfp/all/part-3-ch06-option.md +9 -0
  566. package/lib/assets/docs/article/grokkingfp/all/part-3-ch07-either-adt.md +9 -0
  567. package/lib/assets/docs/article/grokkingfp/all/part-4-ch08-io-monad.md +9 -0
  568. package/lib/assets/docs/article/grokkingfp/all/part-4-ch09-streams.md +9 -0
  569. package/lib/assets/docs/article/grokkingfp/all/part-5-ch10-concurrency.md +9 -0
  570. package/lib/assets/docs/article/grokkingfp/all/part-6-ch11-application.md +9 -0
  571. package/lib/assets/docs/article/grokkingfp/all/part-6-ch12-testing.md +9 -0
  572. package/lib/assets/docs/article/grokkingfp/all/writing-plan.md +9 -0
  573. package/lib/assets/docs/article/grokkingfp/clojure/part-1.md +9 -0
  574. package/lib/assets/docs/article/grokkingfp/clojure/part-2.md +9 -0
  575. package/lib/assets/docs/article/grokkingfp/clojure/part-3.md +9 -0
  576. package/lib/assets/docs/article/grokkingfp/clojure/part-4.md +9 -0
  577. package/lib/assets/docs/article/grokkingfp/clojure/part-5.md +9 -0
  578. package/lib/assets/docs/article/grokkingfp/clojure/part-6.md +9 -0
  579. package/lib/assets/docs/article/grokkingfp/csharp/part-1.md +9 -0
  580. package/lib/assets/docs/article/grokkingfp/csharp/part-2.md +9 -0
  581. package/lib/assets/docs/article/grokkingfp/csharp/part-3.md +9 -0
  582. package/lib/assets/docs/article/grokkingfp/csharp/part-4.md +9 -0
  583. package/lib/assets/docs/article/grokkingfp/csharp/part-5.md +9 -0
  584. package/lib/assets/docs/article/grokkingfp/csharp/part-6.md +9 -0
  585. package/lib/assets/docs/article/grokkingfp/elixir/part-1.md +9 -0
  586. package/lib/assets/docs/article/grokkingfp/elixir/part-2.md +9 -0
  587. package/lib/assets/docs/article/grokkingfp/elixir/part-3.md +9 -0
  588. package/lib/assets/docs/article/grokkingfp/elixir/part-4.md +9 -0
  589. package/lib/assets/docs/article/grokkingfp/elixir/part-5.md +9 -0
  590. package/lib/assets/docs/article/grokkingfp/elixir/part-6.md +9 -0
  591. package/lib/assets/docs/article/grokkingfp/fsharp/part-1.md +9 -0
  592. package/lib/assets/docs/article/grokkingfp/fsharp/part-2.md +9 -0
  593. package/lib/assets/docs/article/grokkingfp/fsharp/part-3.md +9 -0
  594. package/lib/assets/docs/article/grokkingfp/fsharp/part-4.md +9 -0
  595. package/lib/assets/docs/article/grokkingfp/fsharp/part-5.md +9 -0
  596. package/lib/assets/docs/article/grokkingfp/fsharp/part-6.md +9 -0
  597. package/lib/assets/docs/article/grokkingfp/haskell/part-1.md +9 -0
  598. package/lib/assets/docs/article/grokkingfp/haskell/part-2.md +9 -0
  599. package/lib/assets/docs/article/grokkingfp/haskell/part-3.md +9 -0
  600. package/lib/assets/docs/article/grokkingfp/haskell/part-4.md +9 -0
  601. package/lib/assets/docs/article/grokkingfp/haskell/part-5.md +9 -0
  602. package/lib/assets/docs/article/grokkingfp/haskell/part-6.md +9 -0
  603. package/lib/assets/docs/article/grokkingfp/java/part-1.md +9 -0
  604. package/lib/assets/docs/article/grokkingfp/java/part-2.md +9 -0
  605. package/lib/assets/docs/article/grokkingfp/java/part-3.md +9 -0
  606. package/lib/assets/docs/article/grokkingfp/java/part-4.md +9 -0
  607. package/lib/assets/docs/article/grokkingfp/java/part-5.md +9 -0
  608. package/lib/assets/docs/article/grokkingfp/java/part-6.md +9 -0
  609. package/lib/assets/docs/article/grokkingfp/python/part-1.md +9 -0
  610. package/lib/assets/docs/article/grokkingfp/python/part-2.md +9 -0
  611. package/lib/assets/docs/article/grokkingfp/python/part-3.md +9 -0
  612. package/lib/assets/docs/article/grokkingfp/python/part-4.md +9 -0
  613. package/lib/assets/docs/article/grokkingfp/python/part-5.md +9 -0
  614. package/lib/assets/docs/article/grokkingfp/python/part-6.md +9 -0
  615. package/lib/assets/docs/article/grokkingfp/ruby/part-1.md +9 -0
  616. package/lib/assets/docs/article/grokkingfp/ruby/part-2.md +9 -0
  617. package/lib/assets/docs/article/grokkingfp/ruby/part-3.md +9 -0
  618. package/lib/assets/docs/article/grokkingfp/ruby/part-4.md +9 -0
  619. package/lib/assets/docs/article/grokkingfp/ruby/part-5.md +9 -0
  620. package/lib/assets/docs/article/grokkingfp/ruby/part-6.md +9 -0
  621. package/lib/assets/docs/article/grokkingfp/rust/part-1.md +9 -0
  622. package/lib/assets/docs/article/grokkingfp/rust/part-2.md +9 -0
  623. package/lib/assets/docs/article/grokkingfp/rust/part-3.md +9 -0
  624. package/lib/assets/docs/article/grokkingfp/rust/part-4.md +9 -0
  625. package/lib/assets/docs/article/grokkingfp/rust/part-5.md +9 -0
  626. package/lib/assets/docs/article/grokkingfp/rust/part-6.md +9 -0
  627. package/lib/assets/docs/article/grokkingfp/scala/part-1.md +9 -0
  628. package/lib/assets/docs/article/grokkingfp/scala/part-2.md +9 -0
  629. package/lib/assets/docs/article/grokkingfp/scala/part-3.md +9 -0
  630. package/lib/assets/docs/article/grokkingfp/scala/part-4.md +9 -0
  631. package/lib/assets/docs/article/grokkingfp/scala/part-5.md +9 -0
  632. package/lib/assets/docs/article/grokkingfp/scala/part-6.md +9 -0
  633. package/lib/assets/docs/article/grokkingfp/typescript/part-1.md +9 -0
  634. package/lib/assets/docs/article/grokkingfp/typescript/part-2.md +9 -0
  635. package/lib/assets/docs/article/grokkingfp/typescript/part-3.md +9 -0
  636. package/lib/assets/docs/article/grokkingfp/typescript/part-4.md +9 -0
  637. package/lib/assets/docs/article/grokkingfp/typescript/part-5.md +9 -0
  638. package/lib/assets/docs/article/grokkingfp/typescript/part-6.md +9 -0
  639. package/lib/assets/docs/article/practical-database-design/part1/chapter01.md +9 -0
  640. package/lib/assets/docs/article/practical-database-design/part1/chapter02.md +9 -0
  641. package/lib/assets/docs/article/practical-database-design/part1/chapter03.md +9 -0
  642. package/lib/assets/docs/article/practical-database-design/part2/chapter04.md +9 -0
  643. package/lib/assets/docs/article/practical-database-design/part2/chapter05.md +9 -0
  644. package/lib/assets/docs/article/practical-database-design/part2/chapter06.md +9 -0
  645. package/lib/assets/docs/article/practical-database-design/part2/chapter07.md +9 -0
  646. package/lib/assets/docs/article/practical-database-design/part2/chapter08.md +9 -0
  647. package/lib/assets/docs/article/practical-database-design/part2/chapter09.md +9 -0
  648. package/lib/assets/docs/article/practical-database-design/part2/chapter10.md +9 -0
  649. package/lib/assets/docs/article/practical-database-design/part2/chapter11.md +9 -0
  650. package/lib/assets/docs/article/practical-database-design/part2/chapter12.md +9 -0
  651. package/lib/assets/docs/article/practical-database-design/part2/chapter13.md +9 -0
  652. package/lib/assets/docs/article/practical-database-design/part3/chapter14.md +9 -0
  653. package/lib/assets/docs/article/practical-database-design/part3/chapter15.md +9 -0
  654. package/lib/assets/docs/article/practical-database-design/part3/chapter16.md +9 -0
  655. package/lib/assets/docs/article/practical-database-design/part3/chapter17.md +9 -0
  656. package/lib/assets/docs/article/practical-database-design/part3/chapter18.md +9 -0
  657. package/lib/assets/docs/article/practical-database-design/part3/chapter19.md +9 -0
  658. package/lib/assets/docs/article/practical-database-design/part3/chapter20.md +9 -0
  659. package/lib/assets/docs/article/practical-database-design/part3/chapter21.md +9 -0
  660. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter14-orm.md +9 -0
  661. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter15-orm.md +9 -0
  662. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter16-orm.md +9 -0
  663. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter17-orm.md +9 -0
  664. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter18-orm.md +9 -0
  665. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter19-orm.md +9 -0
  666. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter20-orm.md +9 -0
  667. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter21-orm.md +9 -0
  668. package/lib/assets/docs/article/practical-database-design/part3-orm/chapter22-orm.md +9 -0
  669. package/lib/assets/docs/article/practical-database-design/part4/chapter22.md +9 -0
  670. package/lib/assets/docs/article/practical-database-design/part4/chapter23.md +9 -0
  671. package/lib/assets/docs/article/practical-database-design/part4/chapter24.md +9 -0
  672. package/lib/assets/docs/article/practical-database-design/part4/chapter25.md +9 -0
  673. package/lib/assets/docs/article/practical-database-design/part4/chapter26.md +9 -0
  674. package/lib/assets/docs/article/practical-database-design/part4/chapter27.md +9 -0
  675. package/lib/assets/docs/article/practical-database-design/part4/chapter28.md +9 -0
  676. package/lib/assets/docs/article/practical-database-design/part4/chapter29.md +8 -0
  677. package/lib/assets/docs/article/practical-database-design/part4/chapter30.md +8 -0
  678. package/lib/assets/docs/article/practical-database-design/part4/chapter31.md +8 -0
  679. package/lib/assets/docs/article/practical-database-design/part4/chapter32.md +8 -0
  680. package/lib/assets/docs/article/practical-database-design/part5/chapter33.md +9 -0
  681. package/lib/assets/docs/article/practical-database-design/part5/chapter34.md +9 -0
  682. package/lib/assets/docs/article/practical-database-design/part5/chapter35.md +9 -0
  683. package/lib/assets/docs/article/practical-database-design/part5/chapter36.md +9 -0
  684. package/lib/assets/docs/article/practical-database-design/part5/chapter37.md +9 -0
  685. package/lib/assets/docs/article/practical-database-design/part5/chapter38.md +9 -0
  686. package/lib/assets/docs/article/practical-database-design/part5/chapter39.md +9 -0
  687. package/lib/assets/docs/article/practical-database-design/study/study2-1.md +9 -0
  688. package/lib/assets/docs/article/practical-database-design/study/study2-2.md +9 -0
  689. package/lib/assets/docs/article/practical-database-design/study/study2-3.md +9 -0
  690. package/lib/assets/docs/article/practical-database-design/study/study2-4.md +9 -0
  691. package/lib/assets/docs/article/practical-database-design/study/study2-5.md +9 -0
  692. package/lib/assets/docs/article/practical-database-design/study/study3-1.md +9 -0
  693. package/lib/assets/docs/article/practical-database-design/study/study3-2.md +9 -0
  694. package/lib/assets/docs/article/practical-database-design/study/study3-3.md +9 -0
  695. package/lib/assets/docs/article/practical-database-design/study/study3-4.md +9 -0
  696. package/lib/assets/docs/article/practical-database-design/study/study3-5.md +9 -0
  697. package/lib/assets/docs/article/practical-database-design/study/study4-1.md +9 -0
  698. package/lib/assets/docs/article/practical-database-design/study/study4-2.md +9 -0
  699. package/lib/assets/docs/article/practical-database-design/study/study4-3.md +9 -0
  700. package/lib/assets/docs/article/practical-database-design/study/study4-4.md +9 -0
  701. package/lib/assets/docs/article/practical-database-design/study/study4-5.md +9 -0
  702. package/lib/assets/docs/index.md +4 -0
  703. package/lib/assets/docs/log.md +5 -0
  704. package/lib/assets/docs/operation/index.md +15 -1
  705. 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 +13 -4
  706. 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 +10 -0
  707. 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 +11 -1
  708. 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 -0
  709. 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 +10 -0
  710. 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 +11 -1
  711. package/lib/assets/docs/reference/UI/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +10 -1
  712. 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 -168
  713. package/lib/assets/docs/reference/index.md +54 -53
  714. 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 +7 -8
  715. 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 +10 -1
  716. 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 +10 -1
  717. 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 +6 -7
  718. 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 +10 -1
  719. 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 +10 -1
  720. 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 +10 -1
  721. 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 +10 -1
  722. 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 +9 -0
  723. 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 +10 -1
  724. 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 +9 -0
  725. 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 +7 -8
  726. 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 +9 -0
  727. package/lib/assets/docs/reference//344/274/201/346/245/255/347/265/214/345/226/266/350/253/226.md +10 -1
  728. 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 +10 -0
  729. 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 +9 -0
  730. 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 +10 -1
  731. 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 +9 -0
  732. package/lib/assets/docs/reference//351/201/213/345/226/266/347/256/241/347/220/206.md +10 -1
  733. 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 +9 -0
  734. 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 +10 -1
  735. package/lib/assets/docs/reference//351/226/213/347/231/272/343/202/254/343/202/244/343/203/211.md +9 -0
  736. 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 +10 -1
  737. package/lib/assets/docs/template/ADR.md +9 -0
  738. 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 +9 -0
  739. 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 +9 -0
  740. package/lib/assets/docs/template/README.md +9 -0
  741. 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 +9 -0
  742. 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 +9 -0
  743. 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 +10 -1
  744. 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 +11 -2
  745. 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 +9 -0
  746. 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 +9 -0
  747. 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 +9 -0
  748. 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 -280
  749. package/lib/assets/docs/template//344/272/213/344/276/213/345/210/206/346/236/220.md +9 -0
  750. package/lib/assets/docs/template//344/274/201/346/245/255/345/210/206/346/236/220.md +9 -0
  751. 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 +7 -8
  752. package/lib/assets/docs/template//350/246/201/344/273/266/345/256/232/347/276/251.md +7 -8
  753. package/lib/assets/docs/template//350/250/255/350/250/210.md +10 -1
  754. 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 +9 -0
  755. package/lib/assets/gulpfile.js +4 -2
  756. package/lib/assets/ops/scripts/okf.js +272 -0
  757. package/lib/assets/package.json +2 -0
  758. package/package.json +1 -1
@@ -0,0 +1,469 @@
1
+ ---
2
+ type: Reference
3
+ title: リリースガイド
4
+ description: 品質ゲート → バージョンバンプ → CHANGELOG 生成 → git commit + tag を一貫して実行するリリースワークフローの手順。
5
+ tags: [release, changelog, versioning, quality-gate]
6
+ status: stable
7
+ ---
8
+
9
+ # リリースガイド
10
+
11
+ 本ドキュメントでは、アプリケーションのリリースワークフローについて説明します。
12
+
13
+ ## 概要
14
+
15
+ リリースは品質ゲート → バージョンバンプ → CHANGELOG 生成 → git commit + tag を一貫して実行するワークフローです。デプロイは既存のデプロイタスクと連携します。
16
+
17
+ ### リリースフロー全体像
18
+
19
+ ```plantuml
20
+ @startuml
21
+ title リリースワークフロー
22
+
23
+ start
24
+
25
+ :ドライラン;
26
+ note right
27
+ CHANGELOG プレビュー
28
+ バージョン計算
29
+ end note
30
+
31
+ :内容を確認;
32
+
33
+ if (リリースしてよいか?) then (はい)
34
+ else (いいえ)
35
+ stop
36
+ endif
37
+
38
+ :リリース種別を選択\npatch / minor / major;
39
+
40
+ partition "品質ゲート(preflight)" {
41
+ :working tree クリーンチェック;
42
+ :静的解析(lint);
43
+ :ユニットテスト;
44
+ :ビルド確認;
45
+ :E2E テスト;
46
+ }
47
+
48
+ if (全チェック通過?) then (はい)
49
+ else (いいえ)
50
+ :エラーを修正;
51
+ stop
52
+ endif
53
+
54
+ partition "リリース実行" {
55
+ :バージョンバンプ\n(対象パッケージを同期);
56
+ :CHANGELOG.md 生成;
57
+ :git commit + git tag;
58
+ :サマリー表示;
59
+ }
60
+
61
+ :git push && git push --tags;
62
+
63
+ :プルリクエスト作成;
64
+ note right
65
+ リリースブランチから
66
+ メインブランチへの PR を作成
67
+ CHANGELOG の差分をレビュー
68
+ end note
69
+
70
+ if (本番デプロイも行う?) then (はい)
71
+ :デプロイ実行;
72
+ else (いいえ)
73
+ endif
74
+
75
+ stop
76
+
77
+ @enduml
78
+ ```
79
+
80
+ ### 品質ゲート詳細
81
+
82
+ ```plantuml
83
+ @startuml
84
+ title 品質ゲート
85
+
86
+ start
87
+
88
+ :working tree クリーンチェック;
89
+ note right: git status --porcelain
90
+ if (working tree クリーン?) then (はい)
91
+ else (いいえ)
92
+ #pink:Error: Working tree is not clean;
93
+ stop
94
+ endif
95
+
96
+ :静的解析;
97
+ if (lint パス?) then (はい)
98
+ else (いいえ)
99
+ #pink:lint エラー;
100
+ stop
101
+ endif
102
+
103
+ :ユニットテスト;
104
+ if (テスト全パス?) then (はい)
105
+ else (いいえ)
106
+ #pink:テスト失敗;
107
+ stop
108
+ endif
109
+
110
+ :ビルド確認;
111
+ if (ビルド成功?) then (はい)
112
+ else (いいえ)
113
+ #pink:ビルドエラー;
114
+ stop
115
+ endif
116
+
117
+ :E2E テスト;
118
+ if (E2E テスト全パス?) then (はい)
119
+ else (いいえ)
120
+ #pink:E2E テスト失敗;
121
+ stop
122
+ endif
123
+
124
+ #palegreen:品質ゲート通過;
125
+ stop
126
+
127
+ @enduml
128
+ ```
129
+
130
+ ### リリースタスク実行詳細
131
+
132
+ ```plantuml
133
+ @startuml
134
+ title リリース実行フロー
135
+
136
+ start
137
+
138
+ partition "[1/4] バージョン更新" {
139
+ :対象パッケージのバージョンを\nセマンティックバージョニングに従って更新;
140
+ note right
141
+ モノレポの場合は
142
+ 全パッケージを同期
143
+ end note
144
+ }
145
+
146
+ partition "[2/4] CHANGELOG 生成" {
147
+ :直近タグを取得\ngit describe --tags;
148
+ :コミット一覧を取得\ngit log <tag>..HEAD;
149
+ :Conventional Commits で分類\nfeat / fix / docs / ...;
150
+ :CHANGELOG.md の先頭にエントリを追加;
151
+ }
152
+
153
+ partition "[3/4] git commit + tag" {
154
+ :変更ファイルをステージング;
155
+ :git commit -m "release: vX.X.X";
156
+ :git tag -a vX.X.X;
157
+ }
158
+
159
+ partition "[4/4] サマリー表示" {
160
+ :Version: old -> new\nTag: vX.X.X\nNext steps: push & deploy;
161
+ }
162
+
163
+ stop
164
+
165
+ @enduml
166
+ ```
167
+
168
+ ## 前提条件
169
+
170
+ - プロジェクトのビルドツール・パッケージマネージャーがセットアップ済みであること
171
+ - 依存関係がインストール済みであること
172
+ - Git の working tree がクリーンであること(未コミットの変更がないこと)
173
+ - テスト・ビルドがすべてパスすること
174
+
175
+ ## バージョニング規則
176
+
177
+ [Semantic Versioning](https://semver.org/) に従います。
178
+
179
+ | 種類 | 変更例 | バージョン変化 |
180
+ | :--- | :--- | :--- |
181
+ | `patch` | バグ修正、軽微な改善 | `0.1.0` → `0.1.1` |
182
+ | `minor` | 新機能追加(後方互換あり) | `0.1.0` → `0.2.0` |
183
+ | `major` | 破壊的変更 | `0.1.0` → `1.0.0` |
184
+
185
+ ### モノレポでのバージョン管理
186
+
187
+ モノレポ構成の場合、全パッケージのバージョンを同期管理します。
188
+
189
+ | ファイル | 説明 |
190
+ | :--- | :--- |
191
+ | `package.json` | ルートパッケージ |
192
+ | `apps/*/package.json` | 各アプリケーションパッケージ |
193
+ | `packages/*/package.json` | 共有ライブラリパッケージ |
194
+
195
+ シングルリポジトリの場合は、ルートの `package.json` のみを管理対象とします。
196
+
197
+ ---
198
+
199
+ ## リリースタスク一覧
200
+
201
+ ### リリースタスク
202
+
203
+ | タスク | 説明 | 備考 |
204
+ | :--- | :--- | :--- |
205
+ | `release:dry-run` | CHANGELOG プレビュー + バージョン計算 | 実際の変更は行わない |
206
+ | `release:patch` | パッチリリース | preflight → バージョンバンプ → CHANGELOG → commit + tag |
207
+ | `release:minor` | マイナーリリース | 同上 |
208
+ | `release:major` | メジャーリリース | 同上 |
209
+
210
+ ### リリース + デプロイタスク
211
+
212
+ | タスク | 説明 | 備考 |
213
+ | :--- | :--- | :--- |
214
+ | `release:deploy:patch` | パッチリリース + デプロイ | `release:patch` → デプロイ |
215
+ | `release:deploy:minor` | マイナーリリース + デプロイ | `release:minor` → デプロイ |
216
+ | `release:deploy:major` | メジャーリリース + デプロイ | `release:major` → デプロイ |
217
+
218
+ ### 品質ゲートタスク
219
+
220
+ | タスク | 説明 | 備考 |
221
+ | :--- | :--- | :--- |
222
+ | `release:preflight` | 品質ゲート(全チェック) | 以下 5 つを直列実行 |
223
+ | `release:preflight:clean` | working tree クリーンチェック | `git status --porcelain` |
224
+ | `release:preflight:lint` | 静的解析 | lint ツールを実行 |
225
+ | `release:preflight:test` | ユニットテスト | テストランナーを実行 |
226
+ | `release:preflight:build` | ビルド確認 | ビルドコマンドを実行 |
227
+ | `release:preflight:e2e` | E2E テスト | E2E テストランナーを実行 |
228
+
229
+ ---
230
+
231
+ ## 手順
232
+
233
+ ### 1. ドライラン(プレビュー)
234
+
235
+ リリース前に、バージョン計算と CHANGELOG プレビューを確認します。
236
+
237
+ ```bash
238
+ npm run release:dry-run
239
+ ```
240
+
241
+ 出力例:
242
+
243
+ ```
244
+ === Release Dry Run ===
245
+
246
+ Current version: 0.1.0
247
+
248
+ Version preview:
249
+ patch: 0.1.0 -> 0.1.1
250
+ minor: 0.1.0 -> 0.2.0
251
+ major: 0.1.0 -> 1.0.0
252
+
253
+ CHANGELOG preview:
254
+ ---
255
+ ## [0.1.1] - 2026-02-09
256
+
257
+ ### Features
258
+
259
+ - 新機能の説明 (abc1234)
260
+
261
+ ### Bug Fixes
262
+
263
+ - バグ修正の説明 (def5678)
264
+ ---
265
+ ```
266
+
267
+ ### 2. リリース実行
268
+
269
+ 適切なバージョン種別を選択してリリースを実行します。
270
+
271
+ ```bash
272
+ # パッチリリース(バグ修正)
273
+ npm run release:patch
274
+
275
+ # マイナーリリース(新機能)
276
+ npm run release:minor
277
+
278
+ # メジャーリリース(破壊的変更)
279
+ npm run release:major
280
+ ```
281
+
282
+ リリースタスクは以下のステップを自動実行します。
283
+
284
+ | ステップ | 内容 |
285
+ | :--- | :--- |
286
+ | preflight | working tree クリーンチェック → lint → test → build → e2e |
287
+ | [1/4] | 対象パッケージのバージョンを同期更新 |
288
+ | [2/4] | 直近タグから HEAD までのコミットを Conventional Commits で分類し CHANGELOG.md を生成 |
289
+ | [3/4] | 変更ファイルをステージング → `release: vX.X.X` でコミット → `vX.X.X` タグ作成 |
290
+ | [4/4] | リリースサマリーを表示 |
291
+
292
+ ### 3. リモートへプッシュ
293
+
294
+ リリースコミットとタグをリモートリポジトリにプッシュします。
295
+
296
+ ```bash
297
+ git push && git push --tags
298
+ ```
299
+
300
+ ### 4. プルリクエスト作成
301
+
302
+ リリースブランチからメインブランチへのプルリクエストを作成します。
303
+
304
+ ```bash
305
+ gh pr create --title "release: vX.X.X" --body "## リリース内容
306
+
307
+ CHANGELOG.md の差分を参照してください。"
308
+ ```
309
+
310
+ CHANGELOG の差分がレビュー対象となります。PR がマージされた後、デプロイを実行します。
311
+
312
+ ### 5. 本番デプロイ(必要に応じて)
313
+
314
+ リリースと同時にデプロイする場合:
315
+
316
+ ```bash
317
+ npm run release:deploy:patch
318
+ ```
319
+
320
+ デプロイのみを別途実行する場合:
321
+
322
+ ```bash
323
+ npm run deploy:prd
324
+ ```
325
+
326
+ > **注意**: 本番デプロイは実行前に確認プロンプトを表示することを推奨します。
327
+
328
+ ---
329
+
330
+ ## CHANGELOG 生成ルール
331
+
332
+ CHANGELOG は [Conventional Commits](https://www.conventionalcommits.org/) の規約に基づいて自動生成されます。
333
+
334
+ ### コミットメッセージの分類
335
+
336
+ | prefix | カテゴリ |
337
+ | :--- | :--- |
338
+ | `feat` | Features |
339
+ | `fix` | Bug Fixes |
340
+ | `docs` | Documentation |
341
+ | `refactor` | Refactoring |
342
+ | `test` | Tests |
343
+ | `chore` | Chores |
344
+ | `perf` | Performance |
345
+ | `ci` | CI |
346
+ | `style` | Styles |
347
+ | `build` | Build |
348
+ | その他 | Other |
349
+
350
+ ### 生成ルール
351
+
352
+ - 直近の git tag から HEAD までのコミットを対象とする
353
+ - タグが存在しない場合は全コミット履歴を対象とする
354
+ - `CHANGELOG.md` の先頭に新しいエントリを追加する(ファイルがなければ新規作成)
355
+
356
+ ### CHANGELOG エントリの形式
357
+
358
+ ```markdown
359
+ ## [0.2.0] - 2026-02-09
360
+
361
+ ### Features
362
+
363
+ - 新機能の説明 (abc1234)
364
+
365
+ ### Bug Fixes
366
+
367
+ - バグ修正の説明 (def5678)
368
+ ```
369
+
370
+ ---
371
+
372
+ ## トラブルシューティング
373
+
374
+ ### working tree がクリーンでない
375
+
376
+ ```
377
+ Error: Working tree is not clean. Commit or stash your changes first.
378
+ ```
379
+
380
+ 未コミットの変更がある場合、リリースは実行できません。先に変更をコミットまたはスタッシュしてください。
381
+
382
+ ```bash
383
+ # 変更をコミット
384
+ git add <files> && git commit -m "fix: 修正内容"
385
+
386
+ # または一時退避
387
+ git stash
388
+ npm run release:patch
389
+ git stash pop
390
+ ```
391
+
392
+ ### テストが失敗する
393
+
394
+ 品質ゲート(preflight)でテストが失敗した場合、リリースは中断されます。テストを修正してからリリースを再実行してください。
395
+
396
+ ```bash
397
+ # テストを個別に実行して問題を確認
398
+ npm run test
399
+ npm run test:e2e
400
+ ```
401
+
402
+ ### リリースを元に戻したい
403
+
404
+ リリースコミットとタグをリモートにプッシュする前であれば、ローカルで取り消せます。
405
+
406
+ ```bash
407
+ # コミットとタグを取り消し
408
+ git tag -d vX.X.X
409
+ git reset --hard HEAD~1
410
+ ```
411
+
412
+ > **重要**: リモートにプッシュ済みの場合は force push が必要になります。チームメンバーに影響がないことを確認してから実行してください。
413
+
414
+ ### 品質ゲートを個別に実行したい
415
+
416
+ 品質ゲートのみを実行してリリース可能な状態か確認できます。
417
+
418
+ ```bash
419
+ npm run release:preflight
420
+ ```
421
+
422
+ 個別のチェックも実行可能です。
423
+
424
+ ```bash
425
+ npm run release:preflight:clean # working tree チェック
426
+ npm run release:preflight:lint # lint
427
+ npm run release:preflight:test # ユニットテスト
428
+ npm run release:preflight:build # ビルド
429
+ npm run release:preflight:e2e # E2E テスト
430
+ ```
431
+
432
+ ---
433
+
434
+ ## プロジェクトへの導入
435
+
436
+ ### 必要な npm scripts
437
+
438
+ `package.json` に以下のスクリプトを定義します。
439
+
440
+ ```json
441
+ {
442
+ "scripts": {
443
+ "release:dry-run": "リリースドライラン実行コマンド",
444
+ "release:patch": "リリース実行コマンド patch",
445
+ "release:minor": "リリース実行コマンド minor",
446
+ "release:major": "リリース実行コマンド major",
447
+ "release:preflight": "品質ゲート実行コマンド",
448
+ "release:deploy:patch": "リリース + デプロイコマンド patch",
449
+ "release:deploy:minor": "リリース + デプロイコマンド minor",
450
+ "release:deploy:major": "リリース + デプロイコマンド major"
451
+ }
452
+ }
453
+ ```
454
+
455
+ ### 実装方法の選択肢
456
+
457
+ | 方法 | 説明 | 適用場面 |
458
+ | :--- | :--- | :--- |
459
+ | カスタムスクリプト | シェルスクリプトや Node.js スクリプトで実装 | 細かい制御が必要な場合 |
460
+ | タスクランナー | Gulp、Make 等で実装 | 既存のタスクランナーがある場合 |
461
+ | 専用ツール | standard-version、semantic-release 等を利用 | 設定ベースで素早く導入したい場合 |
462
+
463
+ ---
464
+
465
+ ## 関連ドキュメント
466
+
467
+ - [リリース・イテレーション計画ガイド](/reference/リリース・イテレーション計画ガイド.md)
468
+ - [コーディングとテストガイド](/reference/コーディングとテストガイド.md)
469
+ - [開発ガイド](/reference/開発ガイド.md)