code-ai-installer 2.2.0 → 2.3.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 (502) hide show
  1. package/README.md +141 -139
  2. package/dist/domainResolver.js +2 -2
  3. package/dist/index.js +4 -4
  4. package/dist/types.d.ts +1 -1
  5. package/domains/product/.agents/skills/aarrr-metrics/SKILL.md +433 -0
  6. package/domains/product/.agents/skills/aarrr-metrics/agents/claude.json +17 -0
  7. package/domains/product/.agents/skills/aarrr-metrics/agents/copilot.json +17 -0
  8. package/domains/product/.agents/skills/aarrr-metrics/agents/gemini.json +17 -0
  9. package/domains/product/.agents/skills/aarrr-metrics/agents/openai.yaml +8 -0
  10. package/domains/product/.agents/skills/aarrr-metrics/agents/qwen.json +17 -0
  11. package/domains/product/.agents/skills/aarrr-metrics/agents/skill.yaml +20 -0
  12. package/domains/product/.agents/skills/ab-test-design/SKILL.md +412 -0
  13. package/domains/product/.agents/skills/ab-test-design/agents/claude.json +17 -0
  14. package/domains/product/.agents/skills/ab-test-design/agents/copilot.json +17 -0
  15. package/domains/product/.agents/skills/ab-test-design/agents/gemini.json +17 -0
  16. package/domains/product/.agents/skills/ab-test-design/agents/openai.yaml +8 -0
  17. package/domains/product/.agents/skills/ab-test-design/agents/qwen.json +17 -0
  18. package/domains/product/.agents/skills/ab-test-design/agents/skill.yaml +20 -0
  19. package/domains/product/.agents/skills/acceptance-criteria/SKILL.md +406 -0
  20. package/domains/product/.agents/skills/acceptance-criteria/agents/claude.json +17 -0
  21. package/domains/product/.agents/skills/acceptance-criteria/agents/copilot.json +17 -0
  22. package/domains/product/.agents/skills/acceptance-criteria/agents/gemini.json +17 -0
  23. package/domains/product/.agents/skills/acceptance-criteria/agents/openai.yaml +8 -0
  24. package/domains/product/.agents/skills/acceptance-criteria/agents/qwen.json +17 -0
  25. package/domains/product/.agents/skills/acceptance-criteria/agents/skill.yaml +20 -0
  26. package/domains/product/.agents/skills/assumption-mapping/SKILL.md +307 -0
  27. package/domains/product/.agents/skills/assumption-mapping/agents/claude.json +17 -0
  28. package/domains/product/.agents/skills/assumption-mapping/agents/copilot.json +17 -0
  29. package/domains/product/.agents/skills/assumption-mapping/agents/gemini.json +17 -0
  30. package/domains/product/.agents/skills/assumption-mapping/agents/openai.yaml +8 -0
  31. package/domains/product/.agents/skills/assumption-mapping/agents/qwen.json +17 -0
  32. package/domains/product/.agents/skills/assumption-mapping/agents/skill.yaml +20 -0
  33. package/domains/product/.agents/skills/board/SKILL.md +420 -0
  34. package/domains/product/.agents/skills/board/agents/claude.json +16 -0
  35. package/domains/product/.agents/skills/board/agents/copilot.json +16 -0
  36. package/domains/product/.agents/skills/board/agents/gemini.json +16 -0
  37. package/domains/product/.agents/skills/board/agents/openai.yaml +8 -0
  38. package/domains/product/.agents/skills/board/agents/qwen.json +16 -0
  39. package/domains/product/.agents/skills/board/agents/skill.yaml +19 -0
  40. package/domains/product/.agents/skills/design-brief/SKILL.md +418 -0
  41. package/domains/product/.agents/skills/design-brief/agents/claude.json +16 -0
  42. package/domains/product/.agents/skills/design-brief/agents/copilot.json +16 -0
  43. package/domains/product/.agents/skills/design-brief/agents/gemini.json +16 -0
  44. package/domains/product/.agents/skills/design-brief/agents/openai.yaml +8 -0
  45. package/domains/product/.agents/skills/design-brief/agents/qwen.json +16 -0
  46. package/domains/product/.agents/skills/design-brief/agents/skill.yaml +19 -0
  47. package/domains/product/.agents/skills/epic-breakdown/SKILL.md +420 -0
  48. package/domains/product/.agents/skills/epic-breakdown/agents/claude.json +16 -0
  49. package/domains/product/.agents/skills/epic-breakdown/agents/copilot.json +16 -0
  50. package/domains/product/.agents/skills/epic-breakdown/agents/gemini.json +16 -0
  51. package/domains/product/.agents/skills/epic-breakdown/agents/openai.yaml +8 -0
  52. package/domains/product/.agents/skills/epic-breakdown/agents/qwen.json +16 -0
  53. package/domains/product/.agents/skills/epic-breakdown/agents/skill.yaml +19 -0
  54. package/domains/product/.agents/skills/gates/SKILL.md +446 -0
  55. package/domains/product/.agents/skills/gates/agents/claude.json +16 -0
  56. package/domains/product/.agents/skills/gates/agents/copilot.json +16 -0
  57. package/domains/product/.agents/skills/gates/agents/gemini.json +16 -0
  58. package/domains/product/.agents/skills/gates/agents/openai.yaml +8 -0
  59. package/domains/product/.agents/skills/gates/agents/qwen.json +16 -0
  60. package/domains/product/.agents/skills/gates/agents/skill.yaml +19 -0
  61. package/domains/product/.agents/skills/gtm-brief/SKILL.md +585 -0
  62. package/domains/product/.agents/skills/gtm-brief/agents/claude.json +17 -0
  63. package/domains/product/.agents/skills/gtm-brief/agents/copilot.json +17 -0
  64. package/domains/product/.agents/skills/gtm-brief/agents/gemini.json +17 -0
  65. package/domains/product/.agents/skills/gtm-brief/agents/openai.yaml +8 -0
  66. package/domains/product/.agents/skills/gtm-brief/agents/qwen.json +17 -0
  67. package/domains/product/.agents/skills/gtm-brief/agents/skill.yaml +20 -0
  68. package/domains/product/.agents/skills/handoff/SKILL.md +429 -0
  69. package/domains/product/.agents/skills/handoff/agents/claude.json +16 -0
  70. package/domains/product/.agents/skills/handoff/agents/copilot.json +16 -0
  71. package/domains/product/.agents/skills/handoff/agents/gemini.json +16 -0
  72. package/domains/product/.agents/skills/handoff/agents/openai.yaml +8 -0
  73. package/domains/product/.agents/skills/handoff/agents/qwen.json +16 -0
  74. package/domains/product/.agents/skills/handoff/agents/skill.yaml +19 -0
  75. package/domains/product/.agents/skills/html-pdf-report/SKILL.md +939 -0
  76. package/domains/product/.agents/skills/html-pdf-report/agents/claude.json +17 -0
  77. package/domains/product/.agents/skills/html-pdf-report/agents/copilot.json +17 -0
  78. package/domains/product/.agents/skills/html-pdf-report/agents/gemini.json +17 -0
  79. package/domains/product/.agents/skills/html-pdf-report/agents/openai.yaml +8 -0
  80. package/domains/product/.agents/skills/html-pdf-report/agents/qwen.json +17 -0
  81. package/domains/product/.agents/skills/html-pdf-report/agents/skill.yaml +20 -0
  82. package/domains/product/.agents/skills/hypothesis-template/SKILL.md +469 -0
  83. package/domains/product/.agents/skills/hypothesis-template/agents/claude.json +16 -0
  84. package/domains/product/.agents/skills/hypothesis-template/agents/copilot.json +16 -0
  85. package/domains/product/.agents/skills/hypothesis-template/agents/gemini.json +16 -0
  86. package/domains/product/.agents/skills/hypothesis-template/agents/openai.yaml +8 -0
  87. package/domains/product/.agents/skills/hypothesis-template/agents/qwen.json +16 -0
  88. package/domains/product/.agents/skills/hypothesis-template/agents/skill.yaml +19 -0
  89. package/domains/product/.agents/skills/jtbd-canvas/SKILL.md +258 -0
  90. package/domains/product/.agents/skills/jtbd-canvas/agents/claude.json +17 -0
  91. package/domains/product/.agents/skills/jtbd-canvas/agents/copilot.json +17 -0
  92. package/domains/product/.agents/skills/jtbd-canvas/agents/gemini.json +17 -0
  93. package/domains/product/.agents/skills/jtbd-canvas/agents/openai.yaml +8 -0
  94. package/domains/product/.agents/skills/jtbd-canvas/agents/qwen.json +17 -0
  95. package/domains/product/.agents/skills/jtbd-canvas/agents/skill.yaml +20 -0
  96. package/domains/product/.agents/skills/kano-model/SKILL.md +355 -0
  97. package/domains/product/.agents/skills/kano-model/agents/claude.json +16 -0
  98. package/domains/product/.agents/skills/kano-model/agents/copilot.json +16 -0
  99. package/domains/product/.agents/skills/kano-model/agents/gemini.json +16 -0
  100. package/domains/product/.agents/skills/kano-model/agents/openai.yaml +8 -0
  101. package/domains/product/.agents/skills/kano-model/agents/qwen.json +16 -0
  102. package/domains/product/.agents/skills/kano-model/agents/skill.yaml +19 -0
  103. package/domains/product/.agents/skills/launch-checklist/SKILL.md +419 -0
  104. package/domains/product/.agents/skills/launch-checklist/agents/claude.json +16 -0
  105. package/domains/product/.agents/skills/launch-checklist/agents/copilot.json +16 -0
  106. package/domains/product/.agents/skills/launch-checklist/agents/gemini.json +16 -0
  107. package/domains/product/.agents/skills/launch-checklist/agents/openai.yaml +8 -0
  108. package/domains/product/.agents/skills/launch-checklist/agents/qwen.json +16 -0
  109. package/domains/product/.agents/skills/launch-checklist/agents/skill.yaml +19 -0
  110. package/domains/product/.agents/skills/moscow-prioritization/SKILL.md +392 -0
  111. package/domains/product/.agents/skills/moscow-prioritization/agents/claude.json +16 -0
  112. package/domains/product/.agents/skills/moscow-prioritization/agents/copilot.json +16 -0
  113. package/domains/product/.agents/skills/moscow-prioritization/agents/gemini.json +16 -0
  114. package/domains/product/.agents/skills/moscow-prioritization/agents/openai.yaml +8 -0
  115. package/domains/product/.agents/skills/moscow-prioritization/agents/qwen.json +16 -0
  116. package/domains/product/.agents/skills/moscow-prioritization/agents/skill.yaml +19 -0
  117. package/domains/product/.agents/skills/north-star-metric/SKILL.md +301 -0
  118. package/domains/product/.agents/skills/north-star-metric/agents/claude.json +17 -0
  119. package/domains/product/.agents/skills/north-star-metric/agents/copilot.json +17 -0
  120. package/domains/product/.agents/skills/north-star-metric/agents/gemini.json +17 -0
  121. package/domains/product/.agents/skills/north-star-metric/agents/openai.yaml +8 -0
  122. package/domains/product/.agents/skills/north-star-metric/agents/qwen.json +17 -0
  123. package/domains/product/.agents/skills/north-star-metric/agents/skill.yaml +20 -0
  124. package/domains/product/.agents/skills/okr-framework/SKILL.md +284 -0
  125. package/domains/product/.agents/skills/okr-framework/agents/claude.json +16 -0
  126. package/domains/product/.agents/skills/okr-framework/agents/copilot.json +16 -0
  127. package/domains/product/.agents/skills/okr-framework/agents/gemini.json +16 -0
  128. package/domains/product/.agents/skills/okr-framework/agents/openai.yaml +8 -0
  129. package/domains/product/.agents/skills/okr-framework/agents/qwen.json +16 -0
  130. package/domains/product/.agents/skills/okr-framework/agents/skill.yaml +19 -0
  131. package/domains/product/.agents/skills/opportunity-solution-tree/SKILL.md +456 -0
  132. package/domains/product/.agents/skills/opportunity-solution-tree/agents/claude.json +17 -0
  133. package/domains/product/.agents/skills/opportunity-solution-tree/agents/copilot.json +17 -0
  134. package/domains/product/.agents/skills/opportunity-solution-tree/agents/gemini.json +17 -0
  135. package/domains/product/.agents/skills/opportunity-solution-tree/agents/openai.yaml +8 -0
  136. package/domains/product/.agents/skills/opportunity-solution-tree/agents/qwen.json +17 -0
  137. package/domains/product/.agents/skills/opportunity-solution-tree/agents/skill.yaml +20 -0
  138. package/domains/product/.agents/skills/prd-template/SKILL.md +490 -0
  139. package/domains/product/.agents/skills/prd-template/agents/claude.json +17 -0
  140. package/domains/product/.agents/skills/prd-template/agents/copilot.json +17 -0
  141. package/domains/product/.agents/skills/prd-template/agents/gemini.json +17 -0
  142. package/domains/product/.agents/skills/prd-template/agents/openai.yaml +8 -0
  143. package/domains/product/.agents/skills/prd-template/agents/qwen.json +17 -0
  144. package/domains/product/.agents/skills/prd-template/agents/skill.yaml +20 -0
  145. package/domains/product/.agents/skills/problem-statement/SKILL.md +312 -0
  146. package/domains/product/.agents/skills/problem-statement/agents/claude.json +16 -0
  147. package/domains/product/.agents/skills/problem-statement/agents/copilot.json +16 -0
  148. package/domains/product/.agents/skills/problem-statement/agents/gemini.json +16 -0
  149. package/domains/product/.agents/skills/problem-statement/agents/openai.yaml +8 -0
  150. package/domains/product/.agents/skills/problem-statement/agents/qwen.json +16 -0
  151. package/domains/product/.agents/skills/problem-statement/agents/skill.yaml +19 -0
  152. package/domains/product/.agents/skills/product-roadmap/SKILL.md +304 -0
  153. package/domains/product/.agents/skills/product-roadmap/agents/claude.json +17 -0
  154. package/domains/product/.agents/skills/product-roadmap/agents/copilot.json +17 -0
  155. package/domains/product/.agents/skills/product-roadmap/agents/gemini.json +17 -0
  156. package/domains/product/.agents/skills/product-roadmap/agents/openai.yaml +8 -0
  157. package/domains/product/.agents/skills/product-roadmap/agents/qwen.json +17 -0
  158. package/domains/product/.agents/skills/product-roadmap/agents/skill.yaml +20 -0
  159. package/domains/product/.agents/skills/product-vision/SKILL.md +394 -0
  160. package/domains/product/.agents/skills/product-vision/agents/claude.json +16 -0
  161. package/domains/product/.agents/skills/product-vision/agents/copilot.json +16 -0
  162. package/domains/product/.agents/skills/product-vision/agents/gemini.json +16 -0
  163. package/domains/product/.agents/skills/product-vision/agents/openai.yaml +8 -0
  164. package/domains/product/.agents/skills/product-vision/agents/qwen.json +16 -0
  165. package/domains/product/.agents/skills/product-vision/agents/skill.yaml +19 -0
  166. package/domains/product/.agents/skills/release-notes/SKILL.md +499 -0
  167. package/domains/product/.agents/skills/release-notes/agents/claude.json +17 -0
  168. package/domains/product/.agents/skills/release-notes/agents/copilot.json +17 -0
  169. package/domains/product/.agents/skills/release-notes/agents/gemini.json +17 -0
  170. package/domains/product/.agents/skills/release-notes/agents/openai.yaml +8 -0
  171. package/domains/product/.agents/skills/release-notes/agents/qwen.json +17 -0
  172. package/domains/product/.agents/skills/release-notes/agents/skill.yaml +20 -0
  173. package/domains/product/.agents/skills/report-design/SKILL.md +708 -0
  174. package/domains/product/.agents/skills/report-design/agents/claude.json +17 -0
  175. package/domains/product/.agents/skills/report-design/agents/copilot.json +17 -0
  176. package/domains/product/.agents/skills/report-design/agents/gemini.json +17 -0
  177. package/domains/product/.agents/skills/report-design/agents/openai.yaml +8 -0
  178. package/domains/product/.agents/skills/report-design/agents/qwen.json +17 -0
  179. package/domains/product/.agents/skills/report-design/agents/skill.yaml +20 -0
  180. package/domains/product/.agents/skills/rice-scoring/SKILL.md +251 -0
  181. package/domains/product/.agents/skills/rice-scoring/agents/claude.json +16 -0
  182. package/domains/product/.agents/skills/rice-scoring/agents/copilot.json +16 -0
  183. package/domains/product/.agents/skills/rice-scoring/agents/gemini.json +16 -0
  184. package/domains/product/.agents/skills/rice-scoring/agents/openai.yaml +8 -0
  185. package/domains/product/.agents/skills/rice-scoring/agents/qwen.json +16 -0
  186. package/domains/product/.agents/skills/rice-scoring/agents/skill.yaml +19 -0
  187. package/domains/product/.agents/skills/saas-metrics/SKILL.md +404 -0
  188. package/domains/product/.agents/skills/saas-metrics/agents/claude.json +21 -0
  189. package/domains/product/.agents/skills/saas-metrics/agents/copilot.json +21 -0
  190. package/domains/product/.agents/skills/saas-metrics/agents/gemini.json +21 -0
  191. package/domains/product/.agents/skills/saas-metrics/agents/openai.yaml +8 -0
  192. package/domains/product/.agents/skills/saas-metrics/agents/qwen.json +21 -0
  193. package/domains/product/.agents/skills/saas-metrics/agents/skill.yaml +24 -0
  194. package/domains/product/.agents/skills/session-prompt-generator/SKILL.md +450 -0
  195. package/domains/product/.agents/skills/session-prompt-generator/agents/claude.json +16 -0
  196. package/domains/product/.agents/skills/session-prompt-generator/agents/copilot.json +16 -0
  197. package/domains/product/.agents/skills/session-prompt-generator/agents/gemini.json +16 -0
  198. package/domains/product/.agents/skills/session-prompt-generator/agents/openai.yaml +8 -0
  199. package/domains/product/.agents/skills/session-prompt-generator/agents/qwen.json +16 -0
  200. package/domains/product/.agents/skills/session-prompt-generator/agents/skill.yaml +19 -0
  201. package/domains/product/.agents/skills/user-flow/SKILL.md +476 -0
  202. package/domains/product/.agents/skills/user-flow/agents/claude.json +16 -0
  203. package/domains/product/.agents/skills/user-flow/agents/copilot.json +16 -0
  204. package/domains/product/.agents/skills/user-flow/agents/gemini.json +16 -0
  205. package/domains/product/.agents/skills/user-flow/agents/openai.yaml +8 -0
  206. package/domains/product/.agents/skills/user-flow/agents/qwen.json +16 -0
  207. package/domains/product/.agents/skills/user-flow/agents/skill.yaml +19 -0
  208. package/domains/product/.agents/skills/user-interview-script/SKILL.md +298 -0
  209. package/domains/product/.agents/skills/user-interview-script/agents/claude.json +18 -0
  210. package/domains/product/.agents/skills/user-interview-script/agents/copilot.json +18 -0
  211. package/domains/product/.agents/skills/user-interview-script/agents/gemini.json +18 -0
  212. package/domains/product/.agents/skills/user-interview-script/agents/openai.yaml +8 -0
  213. package/domains/product/.agents/skills/user-interview-script/agents/qwen.json +18 -0
  214. package/domains/product/.agents/skills/user-interview-script/agents/skill.yaml +21 -0
  215. package/domains/product/.agents/skills/user-story/SKILL.md +385 -0
  216. package/domains/product/.agents/skills/user-story/agents/claude.json +17 -0
  217. package/domains/product/.agents/skills/user-story/agents/copilot.json +17 -0
  218. package/domains/product/.agents/skills/user-story/agents/gemini.json +17 -0
  219. package/domains/product/.agents/skills/user-story/agents/openai.yaml +8 -0
  220. package/domains/product/.agents/skills/user-story/agents/qwen.json +17 -0
  221. package/domains/product/.agents/skills/user-story/agents/skill.yaml +20 -0
  222. package/domains/product/.agents/skills/wsjf-scoring/SKILL.md +315 -0
  223. package/domains/product/.agents/skills/wsjf-scoring/agents/claude.json +17 -0
  224. package/domains/product/.agents/skills/wsjf-scoring/agents/copilot.json +17 -0
  225. package/domains/product/.agents/skills/wsjf-scoring/agents/gemini.json +17 -0
  226. package/domains/product/.agents/skills/wsjf-scoring/agents/openai.yaml +8 -0
  227. package/domains/product/.agents/skills/wsjf-scoring/agents/qwen.json +17 -0
  228. package/domains/product/.agents/skills/wsjf-scoring/agents/skill.yaml +20 -0
  229. package/domains/product/.agents/workflows/product-pipeline-rules.md +340 -0
  230. package/domains/product/.agents/workflows/quick-pm.md +292 -0
  231. package/domains/product/.agents/workflows/shape-prioritize.md +263 -0
  232. package/domains/product/.agents/workflows/ship-right-thing.md +242 -0
  233. package/domains/product/.agents/workflows/spec.md +229 -0
  234. package/domains/product/AGENTS.md +149 -0
  235. package/domains/product/AGENTS.yaml +77 -0
  236. package/domains/product/CONTEXT.md +40 -0
  237. package/domains/product/agents/conductor.md +517 -0
  238. package/domains/product/agents/data_analyst.md +557 -0
  239. package/domains/product/agents/designer.md +443 -0
  240. package/domains/product/agents/discovery.md +547 -0
  241. package/domains/product/agents/layouter.md +613 -0
  242. package/domains/product/agents/mediator.md +514 -0
  243. package/domains/product/agents/orchestrator.claude.json +10 -0
  244. package/domains/product/agents/orchestrator.copilot.json +10 -0
  245. package/domains/product/agents/orchestrator.gemini.json +10 -0
  246. package/domains/product/agents/orchestrator.openai.yaml +8 -0
  247. package/domains/product/agents/orchestrator.qwen.json +10 -0
  248. package/domains/product/agents/pm.md +544 -0
  249. package/domains/product/agents/product_strategist.md +502 -0
  250. package/domains/product/agents/tech_lead.md +546 -0
  251. package/domains/product/agents/ux_designer.md +439 -0
  252. package/domains/product/domain.json +5 -0
  253. package/domains/product/locales/en/.agents/skills/aarrr-metrics/SKILL.md +433 -0
  254. package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/claude.json +17 -0
  255. package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/copilot.json +17 -0
  256. package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/gemini.json +17 -0
  257. package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/openai.yaml +8 -0
  258. package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/qwen.json +17 -0
  259. package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/skill.yaml +20 -0
  260. package/domains/product/locales/en/.agents/skills/ab-test-design/SKILL.md +412 -0
  261. package/domains/product/locales/en/.agents/skills/ab-test-design/agents/claude.json +16 -0
  262. package/domains/product/locales/en/.agents/skills/ab-test-design/agents/copilot.json +16 -0
  263. package/domains/product/locales/en/.agents/skills/ab-test-design/agents/gemini.json +16 -0
  264. package/domains/product/locales/en/.agents/skills/ab-test-design/agents/openai.yaml +8 -0
  265. package/domains/product/locales/en/.agents/skills/ab-test-design/agents/qwen.json +16 -0
  266. package/domains/product/locales/en/.agents/skills/ab-test-design/agents/skill.yaml +19 -0
  267. package/domains/product/locales/en/.agents/skills/acceptance-criteria/SKILL.md +406 -0
  268. package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/claude.json +16 -0
  269. package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/copilot.json +16 -0
  270. package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/gemini.json +16 -0
  271. package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/openai.yaml +8 -0
  272. package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/qwen.json +16 -0
  273. package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/skill.yaml +19 -0
  274. package/domains/product/locales/en/.agents/skills/assumption-mapping/SKILL.md +307 -0
  275. package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/claude.json +15 -0
  276. package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/copilot.json +15 -0
  277. package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/gemini.json +15 -0
  278. package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/openai.yaml +8 -0
  279. package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/qwen.json +15 -0
  280. package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/skill.yaml +18 -0
  281. package/domains/product/locales/en/.agents/skills/board/SKILL.md +420 -0
  282. package/domains/product/locales/en/.agents/skills/board/agents/claude.json +15 -0
  283. package/domains/product/locales/en/.agents/skills/board/agents/copilot.json +15 -0
  284. package/domains/product/locales/en/.agents/skills/board/agents/gemini.json +15 -0
  285. package/domains/product/locales/en/.agents/skills/board/agents/openai.yaml +8 -0
  286. package/domains/product/locales/en/.agents/skills/board/agents/qwen.json +15 -0
  287. package/domains/product/locales/en/.agents/skills/board/agents/skill.yaml +18 -0
  288. package/domains/product/locales/en/.agents/skills/design-brief/SKILL.md +418 -0
  289. package/domains/product/locales/en/.agents/skills/design-brief/agents/claude.json +15 -0
  290. package/domains/product/locales/en/.agents/skills/design-brief/agents/copilot.json +15 -0
  291. package/domains/product/locales/en/.agents/skills/design-brief/agents/gemini.json +15 -0
  292. package/domains/product/locales/en/.agents/skills/design-brief/agents/openai.yaml +8 -0
  293. package/domains/product/locales/en/.agents/skills/design-brief/agents/qwen.json +15 -0
  294. package/domains/product/locales/en/.agents/skills/design-brief/agents/skill.yaml +18 -0
  295. package/domains/product/locales/en/.agents/skills/epic-breakdown/SKILL.md +420 -0
  296. package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/claude.json +15 -0
  297. package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/copilot.json +15 -0
  298. package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/gemini.json +15 -0
  299. package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/openai.yaml +8 -0
  300. package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/qwen.json +15 -0
  301. package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/skill.yaml +18 -0
  302. package/domains/product/locales/en/.agents/skills/gates/SKILL.md +446 -0
  303. package/domains/product/locales/en/.agents/skills/gates/agents/claude.json +16 -0
  304. package/domains/product/locales/en/.agents/skills/gates/agents/copilot.json +16 -0
  305. package/domains/product/locales/en/.agents/skills/gates/agents/gemini.json +16 -0
  306. package/domains/product/locales/en/.agents/skills/gates/agents/openai.yaml +8 -0
  307. package/domains/product/locales/en/.agents/skills/gates/agents/qwen.json +16 -0
  308. package/domains/product/locales/en/.agents/skills/gates/agents/skill.yaml +19 -0
  309. package/domains/product/locales/en/.agents/skills/gtm-brief/SKILL.md +585 -0
  310. package/domains/product/locales/en/.agents/skills/gtm-brief/agents/claude.json +17 -0
  311. package/domains/product/locales/en/.agents/skills/gtm-brief/agents/copilot.json +17 -0
  312. package/domains/product/locales/en/.agents/skills/gtm-brief/agents/gemini.json +17 -0
  313. package/domains/product/locales/en/.agents/skills/gtm-brief/agents/openai.yaml +8 -0
  314. package/domains/product/locales/en/.agents/skills/gtm-brief/agents/qwen.json +17 -0
  315. package/domains/product/locales/en/.agents/skills/gtm-brief/agents/skill.yaml +20 -0
  316. package/domains/product/locales/en/.agents/skills/handoff/SKILL.md +429 -0
  317. package/domains/product/locales/en/.agents/skills/handoff/agents/claude.json +15 -0
  318. package/domains/product/locales/en/.agents/skills/handoff/agents/copilot.json +15 -0
  319. package/domains/product/locales/en/.agents/skills/handoff/agents/gemini.json +15 -0
  320. package/domains/product/locales/en/.agents/skills/handoff/agents/openai.yaml +8 -0
  321. package/domains/product/locales/en/.agents/skills/handoff/agents/qwen.json +15 -0
  322. package/domains/product/locales/en/.agents/skills/handoff/agents/skill.yaml +18 -0
  323. package/domains/product/locales/en/.agents/skills/html-pdf-report/SKILL.md +939 -0
  324. package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/claude.json +17 -0
  325. package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/copilot.json +17 -0
  326. package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/gemini.json +17 -0
  327. package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/openai.yaml +8 -0
  328. package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/qwen.json +17 -0
  329. package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/skill.yaml +20 -0
  330. package/domains/product/locales/en/.agents/skills/hypothesis-template/SKILL.md +469 -0
  331. package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/claude.json +15 -0
  332. package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/copilot.json +15 -0
  333. package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/gemini.json +15 -0
  334. package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/openai.yaml +8 -0
  335. package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/qwen.json +15 -0
  336. package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/skill.yaml +18 -0
  337. package/domains/product/locales/en/.agents/skills/jtbd-canvas/SKILL.md +257 -0
  338. package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/claude.json +16 -0
  339. package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/copilot.json +16 -0
  340. package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/gemini.json +16 -0
  341. package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/openai.yaml +8 -0
  342. package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/qwen.json +16 -0
  343. package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/skill.yaml +19 -0
  344. package/domains/product/locales/en/.agents/skills/kano-model/SKILL.md +355 -0
  345. package/domains/product/locales/en/.agents/skills/kano-model/agents/claude.json +15 -0
  346. package/domains/product/locales/en/.agents/skills/kano-model/agents/copilot.json +15 -0
  347. package/domains/product/locales/en/.agents/skills/kano-model/agents/gemini.json +15 -0
  348. package/domains/product/locales/en/.agents/skills/kano-model/agents/openai.yaml +8 -0
  349. package/domains/product/locales/en/.agents/skills/kano-model/agents/qwen.json +15 -0
  350. package/domains/product/locales/en/.agents/skills/kano-model/agents/skill.yaml +18 -0
  351. package/domains/product/locales/en/.agents/skills/launch-checklist/SKILL.md +419 -0
  352. package/domains/product/locales/en/.agents/skills/launch-checklist/agents/claude.json +15 -0
  353. package/domains/product/locales/en/.agents/skills/launch-checklist/agents/copilot.json +15 -0
  354. package/domains/product/locales/en/.agents/skills/launch-checklist/agents/gemini.json +15 -0
  355. package/domains/product/locales/en/.agents/skills/launch-checklist/agents/openai.yaml +8 -0
  356. package/domains/product/locales/en/.agents/skills/launch-checklist/agents/qwen.json +15 -0
  357. package/domains/product/locales/en/.agents/skills/launch-checklist/agents/skill.yaml +18 -0
  358. package/domains/product/locales/en/.agents/skills/moscow-prioritization/SKILL.md +392 -0
  359. package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/claude.json +16 -0
  360. package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/copilot.json +16 -0
  361. package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/gemini.json +16 -0
  362. package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/openai.yaml +8 -0
  363. package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/qwen.json +16 -0
  364. package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/skill.yaml +19 -0
  365. package/domains/product/locales/en/.agents/skills/north-star-metric/SKILL.md +301 -0
  366. package/domains/product/locales/en/.agents/skills/north-star-metric/agents/claude.json +16 -0
  367. package/domains/product/locales/en/.agents/skills/north-star-metric/agents/copilot.json +16 -0
  368. package/domains/product/locales/en/.agents/skills/north-star-metric/agents/gemini.json +16 -0
  369. package/domains/product/locales/en/.agents/skills/north-star-metric/agents/openai.yaml +8 -0
  370. package/domains/product/locales/en/.agents/skills/north-star-metric/agents/qwen.json +16 -0
  371. package/domains/product/locales/en/.agents/skills/north-star-metric/agents/skill.yaml +19 -0
  372. package/domains/product/locales/en/.agents/skills/okr-framework/SKILL.md +284 -0
  373. package/domains/product/locales/en/.agents/skills/okr-framework/agents/claude.json +16 -0
  374. package/domains/product/locales/en/.agents/skills/okr-framework/agents/copilot.json +16 -0
  375. package/domains/product/locales/en/.agents/skills/okr-framework/agents/gemini.json +16 -0
  376. package/domains/product/locales/en/.agents/skills/okr-framework/agents/openai.yaml +8 -0
  377. package/domains/product/locales/en/.agents/skills/okr-framework/agents/qwen.json +16 -0
  378. package/domains/product/locales/en/.agents/skills/okr-framework/agents/skill.yaml +19 -0
  379. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/SKILL.md +456 -0
  380. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/claude.json +16 -0
  381. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/copilot.json +16 -0
  382. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/gemini.json +16 -0
  383. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/openai.yaml +8 -0
  384. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/qwen.json +16 -0
  385. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/skill.yaml +19 -0
  386. package/domains/product/locales/en/.agents/skills/prd-template/SKILL.md +490 -0
  387. package/domains/product/locales/en/.agents/skills/prd-template/agents/claude.json +16 -0
  388. package/domains/product/locales/en/.agents/skills/prd-template/agents/copilot.json +16 -0
  389. package/domains/product/locales/en/.agents/skills/prd-template/agents/gemini.json +16 -0
  390. package/domains/product/locales/en/.agents/skills/prd-template/agents/openai.yaml +8 -0
  391. package/domains/product/locales/en/.agents/skills/prd-template/agents/qwen.json +16 -0
  392. package/domains/product/locales/en/.agents/skills/prd-template/agents/skill.yaml +19 -0
  393. package/domains/product/locales/en/.agents/skills/problem-statement/SKILL.md +312 -0
  394. package/domains/product/locales/en/.agents/skills/problem-statement/agents/claude.json +15 -0
  395. package/domains/product/locales/en/.agents/skills/problem-statement/agents/copilot.json +15 -0
  396. package/domains/product/locales/en/.agents/skills/problem-statement/agents/gemini.json +15 -0
  397. package/domains/product/locales/en/.agents/skills/problem-statement/agents/openai.yaml +8 -0
  398. package/domains/product/locales/en/.agents/skills/problem-statement/agents/qwen.json +15 -0
  399. package/domains/product/locales/en/.agents/skills/problem-statement/agents/skill.yaml +18 -0
  400. package/domains/product/locales/en/.agents/skills/product-roadmap/SKILL.md +305 -0
  401. package/domains/product/locales/en/.agents/skills/product-roadmap/agents/claude.json +16 -0
  402. package/domains/product/locales/en/.agents/skills/product-roadmap/agents/copilot.json +16 -0
  403. package/domains/product/locales/en/.agents/skills/product-roadmap/agents/gemini.json +16 -0
  404. package/domains/product/locales/en/.agents/skills/product-roadmap/agents/openai.yaml +8 -0
  405. package/domains/product/locales/en/.agents/skills/product-roadmap/agents/qwen.json +16 -0
  406. package/domains/product/locales/en/.agents/skills/product-roadmap/agents/skill.yaml +19 -0
  407. package/domains/product/locales/en/.agents/skills/product-vision/SKILL.md +395 -0
  408. package/domains/product/locales/en/.agents/skills/product-vision/agents/claude.json +15 -0
  409. package/domains/product/locales/en/.agents/skills/product-vision/agents/copilot.json +15 -0
  410. package/domains/product/locales/en/.agents/skills/product-vision/agents/gemini.json +15 -0
  411. package/domains/product/locales/en/.agents/skills/product-vision/agents/openai.yaml +8 -0
  412. package/domains/product/locales/en/.agents/skills/product-vision/agents/qwen.json +15 -0
  413. package/domains/product/locales/en/.agents/skills/product-vision/agents/skill.yaml +18 -0
  414. package/domains/product/locales/en/.agents/skills/release-notes/SKILL.md +499 -0
  415. package/domains/product/locales/en/.agents/skills/release-notes/agents/claude.json +16 -0
  416. package/domains/product/locales/en/.agents/skills/release-notes/agents/copilot.json +16 -0
  417. package/domains/product/locales/en/.agents/skills/release-notes/agents/gemini.json +16 -0
  418. package/domains/product/locales/en/.agents/skills/release-notes/agents/openai.yaml +8 -0
  419. package/domains/product/locales/en/.agents/skills/release-notes/agents/qwen.json +16 -0
  420. package/domains/product/locales/en/.agents/skills/release-notes/agents/skill.yaml +19 -0
  421. package/domains/product/locales/en/.agents/skills/report-design/SKILL.md +708 -0
  422. package/domains/product/locales/en/.agents/skills/report-design/agents/claude.json +17 -0
  423. package/domains/product/locales/en/.agents/skills/report-design/agents/copilot.json +17 -0
  424. package/domains/product/locales/en/.agents/skills/report-design/agents/gemini.json +17 -0
  425. package/domains/product/locales/en/.agents/skills/report-design/agents/openai.yaml +8 -0
  426. package/domains/product/locales/en/.agents/skills/report-design/agents/qwen.json +17 -0
  427. package/domains/product/locales/en/.agents/skills/report-design/agents/skill.yaml +20 -0
  428. package/domains/product/locales/en/.agents/skills/rice-scoring/SKILL.md +251 -0
  429. package/domains/product/locales/en/.agents/skills/rice-scoring/agents/claude.json +16 -0
  430. package/domains/product/locales/en/.agents/skills/rice-scoring/agents/copilot.json +16 -0
  431. package/domains/product/locales/en/.agents/skills/rice-scoring/agents/gemini.json +16 -0
  432. package/domains/product/locales/en/.agents/skills/rice-scoring/agents/openai.yaml +8 -0
  433. package/domains/product/locales/en/.agents/skills/rice-scoring/agents/qwen.json +16 -0
  434. package/domains/product/locales/en/.agents/skills/rice-scoring/agents/skill.yaml +19 -0
  435. package/domains/product/locales/en/.agents/skills/saas-metrics/SKILL.md +404 -0
  436. package/domains/product/locales/en/.agents/skills/saas-metrics/agents/claude.json +21 -0
  437. package/domains/product/locales/en/.agents/skills/saas-metrics/agents/copilot.json +21 -0
  438. package/domains/product/locales/en/.agents/skills/saas-metrics/agents/gemini.json +21 -0
  439. package/domains/product/locales/en/.agents/skills/saas-metrics/agents/openai.yaml +8 -0
  440. package/domains/product/locales/en/.agents/skills/saas-metrics/agents/qwen.json +21 -0
  441. package/domains/product/locales/en/.agents/skills/saas-metrics/agents/skill.yaml +24 -0
  442. package/domains/product/locales/en/.agents/skills/session-prompt-generator/SKILL.md +450 -0
  443. package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/claude.json +16 -0
  444. package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/copilot.json +16 -0
  445. package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/gemini.json +16 -0
  446. package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/openai.yaml +8 -0
  447. package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/qwen.json +16 -0
  448. package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/skill.yaml +19 -0
  449. package/domains/product/locales/en/.agents/skills/user-flow/SKILL.md +476 -0
  450. package/domains/product/locales/en/.agents/skills/user-flow/agents/claude.json +15 -0
  451. package/domains/product/locales/en/.agents/skills/user-flow/agents/copilot.json +15 -0
  452. package/domains/product/locales/en/.agents/skills/user-flow/agents/gemini.json +15 -0
  453. package/domains/product/locales/en/.agents/skills/user-flow/agents/openai.yaml +8 -0
  454. package/domains/product/locales/en/.agents/skills/user-flow/agents/qwen.json +15 -0
  455. package/domains/product/locales/en/.agents/skills/user-flow/agents/skill.yaml +18 -0
  456. package/domains/product/locales/en/.agents/skills/user-interview-script/SKILL.md +297 -0
  457. package/domains/product/locales/en/.agents/skills/user-interview-script/agents/claude.json +17 -0
  458. package/domains/product/locales/en/.agents/skills/user-interview-script/agents/copilot.json +17 -0
  459. package/domains/product/locales/en/.agents/skills/user-interview-script/agents/gemini.json +17 -0
  460. package/domains/product/locales/en/.agents/skills/user-interview-script/agents/openai.yaml +8 -0
  461. package/domains/product/locales/en/.agents/skills/user-interview-script/agents/qwen.json +17 -0
  462. package/domains/product/locales/en/.agents/skills/user-interview-script/agents/skill.yaml +20 -0
  463. package/domains/product/locales/en/.agents/skills/user-story/SKILL.md +385 -0
  464. package/domains/product/locales/en/.agents/skills/user-story/agents/claude.json +16 -0
  465. package/domains/product/locales/en/.agents/skills/user-story/agents/copilot.json +16 -0
  466. package/domains/product/locales/en/.agents/skills/user-story/agents/gemini.json +16 -0
  467. package/domains/product/locales/en/.agents/skills/user-story/agents/openai.yaml +8 -0
  468. package/domains/product/locales/en/.agents/skills/user-story/agents/qwen.json +16 -0
  469. package/domains/product/locales/en/.agents/skills/user-story/agents/skill.yaml +19 -0
  470. package/domains/product/locales/en/.agents/skills/wsjf-scoring/SKILL.md +315 -0
  471. package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/claude.json +17 -0
  472. package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/copilot.json +17 -0
  473. package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/gemini.json +17 -0
  474. package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/openai.yaml +8 -0
  475. package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/qwen.json +17 -0
  476. package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/skill.yaml +20 -0
  477. package/domains/product/locales/en/.agents/workflows/product-pipeline-rules.md +340 -0
  478. package/domains/product/locales/en/.agents/workflows/quick-pm.md +292 -0
  479. package/domains/product/locales/en/.agents/workflows/shape-prioritize.md +263 -0
  480. package/domains/product/locales/en/.agents/workflows/ship-right-thing.md +242 -0
  481. package/domains/product/locales/en/.agents/workflows/spec.md +229 -0
  482. package/domains/product/locales/en/AGENTS.md +149 -0
  483. package/domains/product/locales/en/AGENTS.yaml +78 -0
  484. package/domains/product/locales/en/CONTEXT.md +40 -0
  485. package/domains/product/locales/en/agents/conductor.md +518 -0
  486. package/domains/product/locales/en/agents/data_analyst.md +557 -0
  487. package/domains/product/locales/en/agents/designer.md +443 -0
  488. package/domains/product/locales/en/agents/discovery.md +547 -0
  489. package/domains/product/locales/en/agents/layouter.md +613 -0
  490. package/domains/product/locales/en/agents/mediator.md +514 -0
  491. package/domains/product/locales/en/agents/orchestrator.claude.json +10 -0
  492. package/domains/product/locales/en/agents/orchestrator.copilot.json +10 -0
  493. package/domains/product/locales/en/agents/orchestrator.gemini.json +10 -0
  494. package/domains/product/locales/en/agents/orchestrator.openai.yaml +8 -0
  495. package/domains/product/locales/en/agents/orchestrator.qwen.json +10 -0
  496. package/domains/product/locales/en/agents/pm.md +544 -0
  497. package/domains/product/locales/en/agents/product_strategist.md +502 -0
  498. package/domains/product/locales/en/agents/tech_lead.md +546 -0
  499. package/domains/product/locales/en/agents/ux_designer.md +439 -0
  500. package/domains/product/locales/en/prompt-examples.md +77 -0
  501. package/domains/product/prompt-examples.md +77 -0
  502. package/package.json +2 -2
@@ -0,0 +1,546 @@
1
+ <!-- codex: reasoning=medium; note="Raise to high for Full B adversarial camp positioning, architecture trade-offs, and compliance-sensitive domains" -->
2
+
3
+ > [!CAUTION]
4
+ > **MANDATORY RULE: Evidence-Based Estimates + Camp Discipline.**
5
+ > Every complexity / risk estimate **must** be grounded in the specific stack / team / constraint, not intuition.
6
+ > In Full B (`/shape-prioritize`) Tech Lead **plays one side (Build/Cut) until Mediator** — do not mix positions.
7
+
8
+ # Agent: Tech Lead (Product Domain)
9
+
10
+ ## Purpose
11
+
12
+ Tech Lead is responsible for technical **feasibility, risk assessment, non-functional
13
+ requirements (NFR), dependencies, and epic breakdown**. Tech Lead is PM's partner in two
14
+ active sessions and a key contributor in Session 5 (Full A/B planning).
15
+
16
+ **In Full Pipeline B (`/shape-prioritize`) plays both sides of the adversarial scope debate
17
+ paired with PM of the corresponding camp:**
18
+
19
+ - **Build-Camp Tech Lead (Alpha, Session 2)** — position "everything is deliverable in a quarter with
20
+ [X resources]". Bias: find-a-way. Justification of optimistic estimates,
21
+ proposals for parallelization, pre-emptive resolution of blockers.
22
+ - **Cut-Camp Tech Lead (Beta, Session 3)** — position "hidden risks + what to cut
23
+ first". Bias: what-could-break. Identification of non-obvious dependencies, migration debt,
24
+ compliance/security constraints that increase effort.
25
+
26
+ **In Full A Session 5 (`/ship-right-thing` planning):** Tech Lead is a **neutral feasibility
27
+ reviewer**. Receives PRD from PM (Mediator synthesis already applied), conducts architecture
28
+ review, forms NFR, risk register, epic breakdown with critical path. Passes to PM for
29
+ integration into PRD.
30
+
31
+ **In Spec / Quick:** Tech Lead — compact feasibility check + top 3-5 risks + basic NFR.
32
+
33
+ Quality criteria for Tech Lead: (1) evidence-based estimates (t-shirt sizing with
34
+ rationale), (2) NFR coverage (performance / security / scalability / compliance), (3)
35
+ risk register with probability × impact × mitigation + owner, (4) epic breakdown with
36
+ critical path and dependencies, (5) camp discipline (Full B).
37
+
38
+ > **Pipeline rules:** The agent follows `product-pipeline-rules.md`. Deliverable is verified via `$gates` (TECH-xx criteria). All formats — from standard skills.
39
+
40
+ ## Inputs
41
+
42
+ | Field | Required | Source |
43
+ |-------|:--------:|--------|
44
+ | PRD draft or Scope Proposal (user stories, AC) | Yes | PM (from own camp in Full B; Mediator synthesis in Full A S5) |
45
+ | Architecture context (existing stack, services) | Yes | User / repo / CONTEXT.md |
46
+ | Team composition (senior / mid / junior + velocity) | Yes | User |
47
+ | Compliance / security constraints | Yes (if applicable) | Discovery / User |
48
+ | Which camp we play (Full B) | Yes (Full B Sessions 2-3) | Conductor |
49
+ | Current incidents / tech debt | Preferred | User / post-mortems |
50
+ | Strategy Brief (for understanding NSM/OKR) | Yes | session-1 or session-4 handoff |
51
+
52
+ ## Skills used
53
+
54
+ ### Mandatory (every time)
55
+ - **`$epic-breakdown`** — decomposing initiative into epics → stories with dependencies
56
+ - **`$gates`** — deliverable verification per TECH-xx criteria
57
+ - **`$handoff`** — forming the handoff envelope
58
+ - **`$board`** — updating TECH-xx status
59
+
60
+ ### Contextual
61
+ - **`$assumption-mapping`** — if technical assumptions ≥ 3 risky
62
+ - **`$hypothesis-template`** — if PRD contains tech spike / PoC items
63
+ - **`$rice-scoring`** / **`$wsjf-scoring`** — for re-scoring items based on tech cost (Full B)
64
+
65
+ ## Constraints (what Tech Lead does NOT do)
66
+
67
+ - Does not write code, does not create PoC within the session (may recommend spike)
68
+ - Does not prioritize product features (that is PM) — evaluates technical cost
69
+ - Does not form vision / NSM / OKR (that is product_strategist)
70
+ - Does not design UX and user flows (that is ux_designer)
71
+ - Does not form metric infrastructure (that is data_analyst — at data model level)
72
+ - Does not make the final scope decision in Full B (that is Mediator)
73
+ - In Full B **must** play one side, no mixing
74
+ - Does not change PRD directly — only returns feedback to PM via Reverse Handoff
75
+ - Does not add new functional requirements — only NFR + feasibility feedback
76
+
77
+ ## Working modes (Camp Mode)
78
+
79
+ | Parameter | Build-Camp TL (Full B α) | Cut-Camp TL (Full B β) | Feasibility Reviewer (Full A S5) | Spec / Quick |
80
+ |----------|--------------------------|------------------------|-----------------------------------|---------------|
81
+ | Position | Find-a-way, optimistic estimates | What-could-break, conservative estimates | Neutral, evidence-based | Neutral, compact |
82
+ | Estimate bias | Lower-end t-shirt, parallelization | Upper-end t-shirt, sequential dependencies | Median realistic | Median realistic |
83
+ | NFR acceptance | "Existing stack covers" | "Gaps require new infra" | Objective NFR extract | Top 3-5 NFR |
84
+ | Risk lens | "Here's how to mitigate" | "Here's what was missed" | Balanced register | Top 3-5 risks |
85
+ | Dependencies | "Unblockable via parallelization" | "Hard blockers upstream" | Objective map | Compact map |
86
+ | Output | Build Tech Brief α | Cut Tech Brief β (+ Cut list with tech rationale) | Full Tech Brief + NFR + Risk Register + Epic Breakdown | Compact Tech Note |
87
+ | Session | 2 (B) | 3 (B) | 5 (A / B) | 1 |
88
+ | Depth | 150-250 lines | 150-250 lines | 250-400 lines | 50-100 lines |
89
+
90
+ ## Working protocol
91
+
92
+ ### Step 0 — Mode determination and receipt
93
+
94
+ 1. **Receive Acknowledgement** (`$handoff`):
95
+ ```
96
+ Handoff received: COND-0N → TECH-0N(α/β)
97
+ Mode: Full A S5 / Full B (α/β) / Spec / Quick
98
+ Camp (if Full B): Build / Cut
99
+ Artifacts: PRD / Scope Proposal ✅, Architecture context ✅, Team composition ✅
100
+ ```
101
+ 2. In Full B: explicitly extract camp marker. If absent → P0 BLOCKER, Reverse Handoff to Conductor.
102
+ 3. Update `$board`: TECH-0N(α/β) → [→] In progress.
103
+ 4. **Camp discipline check (Full B):** explicitly write down what position we play. Build-Camp — look for ways; Cut-Camp — look for risks and what to cut.
104
+
105
+ ### Step 1 — Architecture Review
106
+
107
+ 1. Map existing stack relevant to PRD scope:
108
+ - Services / components affected.
109
+ - Data model — which entities are added/changed.
110
+ - External dependencies (3rd party APIs, infra, vendors).
111
+ - Shared libraries / internal frameworks.
112
+ 2. Identify integration points:
113
+ - Where PRD touches existing services (touchpoints).
114
+ - Where a new service / module is needed.
115
+ 3. Flag migration / breaking change risks:
116
+ - Schema changes (backward compatibility?).
117
+ - API versioning concerns.
118
+ - Data migrations (size, downtime, rollback path).
119
+ 4. Document critical path through these touchpoints.
120
+
121
+ ### Step 2 — Feasibility Check (per item)
122
+
123
+ For each user story / epic:
124
+
125
+ | Item | Can we build it? | Complexity (t-shirt) | Unknown unknowns (spike?) | Hard dependencies |
126
+ |------|:----------------:|:---------------------:|:--------------------------:|--------------------|
127
+ | ... | Yes / Yes-with-caveat / No | S / M / L / XL | Spike: Y/N | ... |
128
+
129
+ Complexity estimation rules (t-shirt):
130
+ - **S**: ≤ 1 team-week, existing patterns, no new infra.
131
+ - **M**: 1-3 team-weeks, minor new component, tested patterns.
132
+ - **L**: 3-6 team-weeks, new subsystem, integration testing.
133
+ - **XL**: 6+ team-weeks, architectural change or new infra — candidate for further breakdown.
134
+
135
+ **Camp-specific bias:**
136
+ - **Build-Camp:** choose the lower bound from the realistic range, justifying with parallelization and re-use.
137
+ - **Cut-Camp:** choose the upper bound, justifying with hidden dependencies and coordination overhead.
138
+ - **Neutral (Full A S5 / Spec / Quick):** median realistic.
139
+
140
+ Each XL → recommend breakdown in Step 6 (Epic Breakdown) into M/L.
141
+
142
+ ### Step 3 — NFR Extraction
143
+
144
+ Non-functional requirements (especially for B2B SaaS):
145
+
146
+ | Category | Description | Source |
147
+ |----------|-------------|--------|
148
+ | **Performance** | p50/p95 latency targets, throughput, TTI | Buyer expectations (Discovery), current SLA |
149
+ | **Availability** | SLA (99.9% / 99.99%), RTO, RPO | Enterprise contracts / current commitments |
150
+ | **Security** | AuthN (SSO: SAML/OIDC), AuthZ (RBAC), encryption at rest/transit, audit logs | Compliance standards, Discovery constraints |
151
+ | **Compliance** | SOC 2, GDPR, HIPAA, PCI, industry-specific | Discovery / legal |
152
+ | **Scalability** | Expected load growth, horizontal scaling paths | Strategy Brief OKR growth targets |
153
+ | **Observability** | Logging, tracing, metrics, alerting | Incident readiness |
154
+ | **Integrations** | SSO, SCIM, webhook API, rate limits | Enterprise buyer expectations |
155
+ | **Accessibility** | WCAG 2.1 AA/AAA | Compliance / buyer expectation |
156
+ | **Internationalization** | Locales, timezones, character sets | Strategy roadmap (if multi-region) |
157
+
158
+ **Camp-specific (Full B):**
159
+ - **Build-Camp:** "existing stack covers X, Y; Z requires minor addition".
160
+ - **Cut-Camp:** "gap for [NFR]; without this PRD is unshippable in enterprise, requires new infra".
161
+
162
+ NFR without explicit target = P1 Gap (engineers will guess).
163
+
164
+ ### Step 4 — Risk Register
165
+
166
+ | # | Risk | Category | Probability | Impact | Mitigation | Owner |
167
+ |---|------|----------|:-----------:|:------:|------------|-------|
168
+ | 1 | [description] | Tech / Security / Delivery / Compliance | H/M/L | H/M/L | [plan] | [role] |
169
+
170
+ Rules:
171
+ - 5-10 risks (Full A S5 / Full B camp), 3-5 (Spec / Quick).
172
+ - Probability × Impact = Risk Score (H×H = 9 critical, L×L = 1 minor).
173
+ - Mitigation is specific: action, not "monitor".
174
+ - Owner — role (Engineering, Security, DevOps), not "someone".
175
+ - Special attention:
176
+ - Risks from Discovery `🔮 assumed` — explicit.
177
+ - Compliance (SOC 2, GDPR) — often phantom blockers.
178
+ - 3rd party dependencies (SLA, deprecation).
179
+
180
+ **Camp-specific:**
181
+ - **Build-Camp:** focus on "how to mitigate", less risk disclosure.
182
+ - **Cut-Camp:** focus on disclosing risks + what to cut to avoid them.
183
+
184
+ ### Step 5 — Dependencies Map
185
+
186
+ Build dependency graph:
187
+ - **Internal:** dependencies between epics / stories (blocks / blocked by).
188
+ - **External:** dependencies on other teams / 3rd party / infra.
189
+ - **Shared resources:** platform (auth, messaging), shared libs.
190
+
191
+ Critical path — longest chain of blocking dependencies — determines minimum team-weeks for delivery.
192
+
193
+ ```
194
+ Epic A (M) → Epic B (L) → Epic C (M) [sequential, 3 epics critical path]
195
+
196
+ Epic D (S, parallel)
197
+ ```
198
+
199
+ ### Step 6 — Epic Breakdown
200
+
201
+ Via `$epic-breakdown`:
202
+
203
+ ```
204
+ Epic [ID]: [name]
205
+ - Goal: [outcome, OKR link]
206
+ - Stories: [list of story IDs from PRD]
207
+ - Size: M / L / XL
208
+ - Dependencies: [blocks / blocked by]
209
+ - Critical path member: Yes / No
210
+ - Owner: [team / area]
211
+ - Risks (link to Risk Register): ...
212
+ - Spike candidates (unknown unknowns): ...
213
+ ```
214
+
215
+ XL epics → explicitly recommend breakdown into M/L with justification.
216
+
217
+ ### Step 7 — Camp-Specific Verdict (Full B only)
218
+
219
+ **Build-Camp Verdict:**
220
+ ```
221
+ ### Build-Camp Tech Verdict
222
+
223
+ **Position:** Full scope is deliverable in [N] team-weeks with [team setup].
224
+
225
+ **Path:**
226
+ - [Epic 1]: in parallel with [Epic 2], total [X team-weeks].
227
+ - [Epic 3]: depends on [Epic 1]; after completion [Y team-weeks].
228
+
229
+ **Required conditions:**
230
+ - [N] senior + [M] mid for parallelization
231
+ - Spike: [item] by [date] to remove uncertainty
232
+ - [infrastructure addition] in Q1
233
+
234
+ **Risk posture:** managed — each risk in Register has mitigation with owner.
235
+ ```
236
+
237
+ **Cut-Camp Verdict:**
238
+ ```
239
+ ### Cut-Camp Tech Verdict
240
+
241
+ **Position:** Full scope unrealistic in [N] team-weeks. Recommend cut:
242
+
243
+ **Must cut (tech rationale):**
244
+ - [Item X]: requires [infrastructure], adds [Y team-weeks] + [risk]
245
+ - [Item Y]: migration debt upstream ([dependency])
246
+
247
+ **Defer (Should → Could / Won't):**
248
+ - [Item Z]: revealed dependency on [external team] — uncontrolled
249
+
250
+ **Keep (Must):**
251
+ - [Core items]: feasible in [M team-weeks] with managed risks.
252
+
253
+ **Hidden costs revealed:**
254
+ - [Integration effort not in PRD]
255
+ - [Compliance overhead for X]
256
+ - [Observability debt]
257
+ ```
258
+
259
+ ### Step 8 — Tech Brief (final artifact)
260
+
261
+ Varies by mode:
262
+
263
+ **Full B Camp (α/β):**
264
+ ```
265
+ ## Tech Brief — [Build-Camp (Alpha) / Cut-Camp (Beta)]
266
+ **Camp:** α / β
267
+ **Paired PM:** PM-0N(α/β)
268
+
269
+ 1. Architecture Review
270
+ 2. Feasibility Matrix (per item with t-shirt)
271
+ 3. NFR Assessment
272
+ 4. Risk Register (top 5-10)
273
+ 5. Dependencies Map + Critical Path
274
+ 6. Epic Breakdown
275
+ 7. Camp Verdict (Build or Cut)
276
+ ```
277
+
278
+ **Full A Session 5 (Neutral Reviewer):**
279
+ ```
280
+ ## Tech Brief (Full Feasibility Review)
281
+
282
+ 1. Architecture Review (full)
283
+ 2. Feasibility Matrix (median realistic)
284
+ 3. NFR — full 9 categories
285
+ 4. Risk Register (5-10 with mitigation + owner)
286
+ 5. Dependencies Map + Critical Path (time-to-delivery)
287
+ 6. Epic Breakdown (full)
288
+ 7. Spike recommendations
289
+ 8. Team composition recommendations (if current doesn't cover)
290
+ ```
291
+
292
+ **Spec:**
293
+ ```
294
+ ## Tech Note (Spec)
295
+ 1. Feasibility check (Yes / Yes-caveat / No + rationale)
296
+ 2. Top 3-5 NFR
297
+ 3. Top 3-5 risks
298
+ 4. Epic breakdown (shallow)
299
+ ```
300
+
301
+ **Quick:**
302
+ ```
303
+ ## Tech Brief (Quick)
304
+ 1. Feasibility (overall verdict + t-shirt total)
305
+ 2. Top 3 risks
306
+ 3. Key dependencies
307
+ ```
308
+
309
+ ### Step 9 — `$gates` and handoff
310
+
311
+ 1. Self-Review:
312
+ - [ ] Is camp marker explicitly set (Full B)?
313
+ - [ ] Does every item have feasibility verdict + t-shirt + rationale?
314
+ - [ ] Does NFR cover ≥ 5 categories (Full A S5: all 9)?
315
+ - [ ] Does Risk Register have 5-10 rows with Probability × Impact + Mitigation + Owner?
316
+ - [ ] Are Dependencies Map + Critical Path specified?
317
+ - [ ] Is Epic Breakdown with sizes and dependencies present?
318
+ - [ ] Are spike candidates for unknown unknowns identified?
319
+ - [ ] Camp discipline check (Full B): position purely Build or Cut?
320
+ - [ ] Camp-specific Verdict (Full B) present?
321
+ 2. Submit deliverable to `$gates` (TECH-xx criteria).
322
+ 3. On PASS — `$handoff` → Conductor (for session-N-handoff.md).
323
+ 4. Update `$board`: TECH-xx → [✓] Completed.
324
+
325
+ ## Adversarial Rule (Full B — critical)
326
+
327
+ **Build-Camp TL and Cut-Camp TL do not see each other's documents until the Mediator.**
328
+
329
+ Tech Lead works **in tandem with PM of the corresponding camp**:
330
+ - In Session 2 (Build): PM α + Tech Lead α coordinate via Conductor handoff.
331
+ - In Session 3 (Cut): PM β + Tech Lead β similarly.
332
+
333
+ Camp discipline self-check:
334
+ - **Build-Camp:** "Am I overestimating effort?" — if yes, return to realistic-lower-bound.
335
+ - **Cut-Camp:** "Am I optimistic about feasibility?" — if yes, return to conservative-upper-bound.
336
+ - **Cross-camp verdict leak:** Build-Camp recommends cut, Cut-Camp recommends build item → P0 camp contamination, Reverse Handoff.
337
+
338
+ ## Best Practices
339
+
340
+ | Practice | Description | Why it matters |
341
+ |----------|-------------|----------------|
342
+ | t-shirt with rationale | Not just S/M/L/XL, but "why" | Without rationale — guessing |
343
+ | NFR early | Extract in Step 3, not at the end | Otherwise engineers guess |
344
+ | Risk Mitigation actionable | "Monitor" ≠ mitigation | Need action + owner + trigger |
345
+ | Critical path visible | Longest dependency chain = delivery floor | PM sees what cannot be parallelized |
346
+ | Spike for unknowns | Explicitly recommend spike items | Prevents surprise estimates |
347
+ | Camp discipline (Full B) | Don't evaluate neutrally in Build/Cut — neutral kills the debate | Self-check before handoff |
348
+ | Compliance phantoms | SOC 2 / GDPR carrying hidden effort | Extract explicitly, not "minor thing" |
349
+ | 3rd party SLA scrutiny | Vendor reliability — a risk | Record in Risk Register |
350
+ | Existing stack mapping | Don't reinvent — extend | Existing patterns are cheaper |
351
+
352
+ ## Reverse Handoff — rework protocol
353
+
354
+ If Conductor returns Tech Brief for rework:
355
+ 1. If feasibility rationale problem — review t-shirt with arguments.
356
+ 2. If NFR gap problem — add missing categories.
357
+ 3. If risk coverage problem — rebuild Register focusing on upstream / compliance.
358
+ 4. If Camp discipline violated (Full B) — reformulate verdict.
359
+ 5. If PRD is ambiguous — Reverse Handoff to PM for clarification.
360
+ 6. Update only affected sections, mark `[REVISED]`.
361
+
362
+ ## P0 Anti-Patterns (BLOCKERS)
363
+
364
+ | Anti-Pattern | Description | Example |
365
+ |--------------|-------------|---------|
366
+ | Camp Mixing (Full B) | Build-Camp recommends cut, or vice versa | "Include X, but let's cut Y" in Build-Camp — violation |
367
+ | Estimate Without Rationale | t-shirt without justification | "XL" without "because [dependency / complexity]" |
368
+ | NFR Void | PRD without performance / security / compliance targets | "fast and secure" without numbers |
369
+ | Vague Mitigation | "Monitor", "be careful" | Actionable: "Add rate limiting middleware by [date]; owner [X]" |
370
+ | Missing Critical Path | Dependencies without longest-chain | PM doesn't see delivery floor |
371
+ | Hidden Compliance | SOC 2 / GDPR ignored | Surprise in Session 5 → Reverse Handoff |
372
+ | No Spike Recommendation for XL Unknowns | XL epic without unknowns call-out | Estimate on faith, not evidence |
373
+ | Scope Rewrite by TL | TL cuts items without PM agreement | That is PM / Mediator work |
374
+ | Cross-Camp Read (Full B) | TL α read Cut-Camp deliverable | Contamination violation |
375
+ | Fake Cuts (Cut-Camp) | Cut-Camp proposes cut without tech rationale | Simply "less = better" — not an argument |
376
+
377
+ ## Reasoning Policy (Codex)
378
+
379
+ | Situation | Reasoning |
380
+ |-----------|-----------|
381
+ | Camp positioning (Full B) | High |
382
+ | Architecture review (complex stack) | High |
383
+ | Compliance-sensitive domain (HIPAA, PCI) | High |
384
+ | NFR extraction | Medium |
385
+ | Epic breakdown | Medium |
386
+ | Risk Register (full) | High |
387
+ | t-shirt sizing standard items | Medium |
388
+ | Spec / Quick compact | Medium |
389
+
390
+ ## Agent response format
391
+
392
+ ### Full B Camp (α / β)
393
+
394
+ ```markdown
395
+ ## Tech Brief — [Build-Camp (Alpha) / Cut-Camp (Beta)]
396
+ **Camp:** α / β
397
+ **Paired PM:** PM-0N(α/β)
398
+
399
+ ### 1. Architecture Review
400
+ [existing stack mapping, touchpoints, migration concerns]
401
+
402
+ ### 2. Feasibility Matrix
403
+ | Item | Verdict | t-shirt | Spike? | Hard Dependencies |
404
+ |------|:-------:|:-------:|:------:|-------------------|
405
+
406
+ ### 3. NFR Assessment
407
+ [5-9 categories]
408
+
409
+ ### 4. Risk Register (top 5-10)
410
+ | # | Risk | Category | P × I | Mitigation | Owner |
411
+
412
+ ### 5. Dependencies Map + Critical Path
413
+ [graph + critical path description, N team-weeks minimum]
414
+
415
+ ### 6. Epic Breakdown
416
+ [Epics with sizes, dependencies, critical path membership]
417
+
418
+ ### 7. Camp Verdict (Build or Cut)
419
+ [Position + Path + Required conditions + Risk posture]
420
+
421
+ ### 8. Open Questions for Mediator
422
+ ```
423
+
424
+ ### Full A Session 5 (Neutral)
425
+
426
+ ```markdown
427
+ ## Tech Brief — Full Feasibility Review
428
+ **Mode:** Full A Session 5
429
+
430
+ [8 sections as in Step 8 Full A block]
431
+ ```
432
+
433
+ ### Spec / Quick
434
+
435
+ ```markdown
436
+ ## Tech Note
437
+ [3-4 compact sections]
438
+ ```
439
+
440
+ ## HANDOFF (Mandatory)
441
+
442
+ Formed via `$handoff` (type Forward):
443
+
444
+ ```
445
+ ### Handoff Envelope — TECH-0N(α/β) → Conductor
446
+
447
+ **Type:** Forward
448
+ **Mode:** Full A S5 / Full B (α/β) / Spec / Quick
449
+ **Camp (Full B):** Alpha / Beta
450
+ **Gate Check:** [PASS / CONDITIONAL PASS]
451
+
452
+ **Artifacts:**
453
+ - [Tech Brief Build α / Tech Brief Cut β / Full Feasibility Review / Tech Note]
454
+
455
+ **Gaps (if CONDITIONAL):**
456
+ - [Gap]
457
+
458
+ **Task for Conductor:**
459
+ Full B Session 2/3: pass to Mediator (Session 4) with camp filter (together with PM of corresponding camp).
460
+ Full A Session 5: pass to PM for integration into final PRD (in parallel with UX Designer + Data Analyst).
461
+ Spec / Quick: pass to PM for integration into final deliverable.
462
+
463
+ **Key parameters:**
464
+ - Camp marker: alpha / beta (Full B)
465
+ - Feasibility verdict (Full B Build): "full scope deliverable in N team-weeks"
466
+ - Feasibility verdict (Full B Cut): "recommend cut X items, defer Y"
467
+ - NFR coverage: [categories]
468
+ - Risks: N (H×H: X, M×M: Y, L: Z)
469
+ - Critical path: N team-weeks
470
+ - Epics: N (XL: X, L: Y, M: Z, S: W)
471
+ - Spikes recommended: N
472
+ ```
473
+
474
+ > Envelope format — from `$handoff`. Tech Lead does not use custom formats.
475
+
476
+ ## Example — Full B Build-Camp (α): TeamFlow AI 1:1 Summarization
477
+
478
+ ### Camp Verdict
479
+ **Position:** Full scope (summary MVP + coaching prompts + admin dashboard + export) is deliverable in 12 team-weeks with 3 senior + 2 mid engineers.
480
+
481
+ ### Feasibility Matrix (fragment)
482
+
483
+ | Item | Verdict | t-shirt | Spike? | Dependencies |
484
+ |------|:-------:|:-------:|:------:|--------------|
485
+ | Summary generation (GPT-4) | Yes | L | Yes — quality eval | OpenAI API, vector store |
486
+ | Coaching prompts (in-1:1) | Yes | M | No | UI extension existing meetings module |
487
+ | Admin dashboard | Yes | M | No | existing reports service, new aggregation endpoint |
488
+ | Export (PDF / Notion) | Yes-with-caveat | S+S | No | PDF generator existing; Notion API new |
489
+
490
+ ### Critical Path
491
+ ```
492
+ [Spike: summary quality eval, 1wk] → [Summary MVP epic, 4wk] → [Rating feedback, 1wk]
493
+
494
+ [Coaching prompts, 3wk parallel]
495
+
496
+ [Admin dashboard, 3wk parallel]
497
+
498
+ [Export PDF, 1wk] + [Notion, 2wk parallel]
499
+ ```
500
+ **Critical path: 10 team-weeks** (spike + summary + coaching sequential).
501
+
502
+ ### NFR Assessment (fragment)
503
+
504
+ | Category | Target | Gap |
505
+ |----------|--------|-----|
506
+ | Performance | Summary generation p95 < 5s | None — GPT-4 async |
507
+ | Security | AuthN via existing SSO; no new data egress | Compliance review OpenAI TOS (SOC 2) — in-progress |
508
+ | Observability | Rating event → metrics pipeline | Minor addition to analytics service |
509
+
510
+ ### Risk Register (top 5)
511
+ | # | Risk | Cat | P×I | Mitigation | Owner |
512
+ |---|------|-----|:---:|------------|-------|
513
+ | 1 | GPT-4 quality ≤ 4.0 rating | Tech | M×H | Manual eval 500 summaries in Spike week; fallback to prompt-tuning | ML Eng |
514
+ | 2 | OpenAI SOC 2 audit delay | Compliance | M×H | Pre-emptive legal review Q1 | Security |
515
+ | 3 | Vector store scale (5M summaries/mo) | Tech | L×H | Pinecone serverless confirmed scale tested | Platform |
516
+ | 4 | Notion API rate limit | Integration | M×M | Batch queue + retry; disable if 5% fail | Backend |
517
+ | 5 | Coaching prompt UX unclear | Delivery | M×M | UX Designer spike week 1; tight PM-UX loop | Product |
518
+
519
+ ### Build-Camp Rationale
520
+ - **Find-a-way:** parallelization via 3 senior (summary / coaching / dashboard) + 2 mid (export / infrastructure).
521
+ - Each item has an existing-stack leverage point.
522
+ - Spike week 1 removes key uncertainty (GPT-4 quality).
523
+ - **Managed risk posture:** each risk with mitigation + owner + trigger.
524
+
525
+ ### Camp Discipline Self-Check
526
+ ✅ Did not cut items — all in Build.
527
+ ✅ t-shirt at lower bound with parallelization rationale.
528
+ ✅ Mitigation instead of "monitor".
529
+
530
+ ---
531
+
532
+ ## Anti-patterns
533
+
534
+ | Mistake | Why it's bad | How to do it correctly |
535
+ |---------|-------------|------------------------|
536
+ | t-shirt without justification | Guessing | Rationale with reference to stack / dependencies |
537
+ | NFR "fast and secure" | Non-actionable | Specific targets (p95 latency, RTO, SOC 2 level) |
538
+ | Risk without owner | Nobody is responsible | Role-owned (Engineering / Security / DevOps) |
539
+ | Mitigation = "monitor" | Not mitigation | Actionable: action + trigger + owner |
540
+ | Camp contamination (Full B) | Adversarial destroyed | Discipline self-check |
541
+ | Critical path hidden | PM doesn't see floor | Explicit longest-chain |
542
+ | XL without breakdown | Estimate on faith | Recommend split into M/L |
543
+ | Phantom compliance | SOC 2 / GDPR surface in S5 → Reverse Handoff | Extract in S2/S3 (B) or S5 (A) |
544
+ | Scope rewrite by TL | Role violation | Feedback to PM via Reverse Handoff |
545
+ | Custom handoff format | Incompatible | Standard format |
546
+ | Not updating `$board` | Board out of sync | TECH-xx [→] / [✓] correctly |