@pennyfarthing/core 7.5.0 → 7.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (898) hide show
  1. package/LICENSE +14 -0
  2. package/README.md +301 -0
  3. package/package.json +31 -36
  4. package/packages/core/dist/bmad/context-reader.d.ts +71 -0
  5. package/packages/core/dist/bmad/context-reader.d.ts.map +1 -0
  6. package/packages/core/dist/bmad/context-reader.js +369 -0
  7. package/packages/core/dist/bmad/context-reader.js.map +1 -0
  8. package/packages/core/dist/bmad/context-reader.test.d.ts +71 -0
  9. package/packages/core/dist/bmad/context-reader.test.d.ts.map +1 -0
  10. package/packages/core/dist/bmad/context-reader.test.js +878 -0
  11. package/packages/core/dist/bmad/context-reader.test.js.map +1 -0
  12. package/packages/core/dist/bmad/epics-parser.d.ts +61 -0
  13. package/packages/core/dist/bmad/epics-parser.d.ts.map +1 -0
  14. package/packages/core/dist/bmad/epics-parser.js +331 -0
  15. package/packages/core/dist/bmad/epics-parser.js.map +1 -0
  16. package/packages/core/dist/bmad/epics-parser.test.d.ts +7 -0
  17. package/packages/core/dist/bmad/epics-parser.test.d.ts.map +1 -0
  18. package/packages/core/dist/bmad/epics-parser.test.js +449 -0
  19. package/packages/core/dist/bmad/epics-parser.test.js.map +1 -0
  20. package/packages/core/dist/bmad/index.d.ts +11 -0
  21. package/packages/core/dist/bmad/index.d.ts.map +1 -0
  22. package/packages/core/dist/bmad/index.js +24 -0
  23. package/packages/core/dist/bmad/index.js.map +1 -0
  24. package/packages/core/dist/bmad/status-sync.d.ts +173 -0
  25. package/packages/core/dist/bmad/status-sync.d.ts.map +1 -0
  26. package/packages/core/dist/bmad/status-sync.js +463 -0
  27. package/packages/core/dist/bmad/status-sync.js.map +1 -0
  28. package/packages/core/dist/bmad/status-sync.test.d.ts +7 -0
  29. package/packages/core/dist/bmad/status-sync.test.d.ts.map +1 -0
  30. package/packages/core/dist/bmad/status-sync.test.js +702 -0
  31. package/packages/core/dist/bmad/status-sync.test.js.map +1 -0
  32. package/packages/core/dist/bmad/story-exporter.d.ts +55 -0
  33. package/packages/core/dist/bmad/story-exporter.d.ts.map +1 -0
  34. package/packages/core/dist/bmad/story-exporter.js +170 -0
  35. package/packages/core/dist/bmad/story-exporter.js.map +1 -0
  36. package/packages/core/dist/bmad/story-exporter.test.d.ts +51 -0
  37. package/packages/core/dist/bmad/story-exporter.test.d.ts.map +1 -0
  38. package/packages/core/dist/bmad/story-exporter.test.js +603 -0
  39. package/packages/core/dist/bmad/story-exporter.test.js.map +1 -0
  40. package/packages/core/dist/bmad/story-parser.d.ts +44 -0
  41. package/packages/core/dist/bmad/story-parser.d.ts.map +1 -0
  42. package/packages/core/dist/bmad/story-parser.js +307 -0
  43. package/packages/core/dist/bmad/story-parser.js.map +1 -0
  44. package/packages/core/dist/bmad/story-parser.test.d.ts +44 -0
  45. package/packages/core/dist/bmad/story-parser.test.d.ts.map +1 -0
  46. package/packages/core/dist/bmad/story-parser.test.js +693 -0
  47. package/packages/core/dist/bmad/story-parser.test.js.map +1 -0
  48. package/packages/core/dist/cli/commands/command.d.ts +28 -0
  49. package/packages/core/dist/cli/commands/command.d.ts.map +1 -0
  50. package/packages/core/dist/cli/commands/command.js +399 -0
  51. package/packages/core/dist/cli/commands/command.js.map +1 -0
  52. package/packages/core/dist/cli/commands/cyclist.d.ts +46 -0
  53. package/packages/core/dist/cli/commands/cyclist.d.ts.map +1 -0
  54. package/packages/core/dist/cli/commands/cyclist.js +196 -0
  55. package/packages/core/dist/cli/commands/cyclist.js.map +1 -0
  56. package/packages/core/dist/cli/commands/cyclist.test.d.ts +13 -0
  57. package/packages/core/dist/cli/commands/cyclist.test.d.ts.map +1 -0
  58. package/packages/core/dist/cli/commands/cyclist.test.js +245 -0
  59. package/packages/core/dist/cli/commands/cyclist.test.js.map +1 -0
  60. package/packages/core/dist/cli/commands/doctor-legacy.test.d.ts +13 -0
  61. package/packages/core/dist/cli/commands/doctor-legacy.test.d.ts.map +1 -0
  62. package/packages/core/dist/cli/commands/doctor-legacy.test.js +207 -0
  63. package/packages/core/dist/cli/commands/doctor-legacy.test.js.map +1 -0
  64. package/packages/core/dist/cli/commands/doctor.d.ts +25 -0
  65. package/packages/core/dist/cli/commands/doctor.d.ts.map +1 -0
  66. package/packages/core/dist/cli/commands/doctor.js +780 -0
  67. package/packages/core/dist/cli/commands/doctor.js.map +1 -0
  68. package/packages/core/dist/cli/commands/init.d.ts +8 -0
  69. package/packages/core/dist/cli/commands/init.d.ts.map +1 -0
  70. package/packages/core/dist/cli/commands/init.js +515 -0
  71. package/packages/core/dist/cli/commands/init.js.map +1 -0
  72. package/packages/core/dist/cli/commands/skill.d.ts +28 -0
  73. package/packages/core/dist/cli/commands/skill.d.ts.map +1 -0
  74. package/packages/core/dist/cli/commands/skill.js +416 -0
  75. package/packages/core/dist/cli/commands/skill.js.map +1 -0
  76. package/packages/core/dist/cli/commands/theme.d.ts +21 -0
  77. package/packages/core/dist/cli/commands/theme.d.ts.map +1 -0
  78. package/packages/core/dist/cli/commands/theme.js +201 -0
  79. package/packages/core/dist/cli/commands/theme.js.map +1 -0
  80. package/packages/core/dist/cli/commands/uninstall.d.ts +8 -0
  81. package/packages/core/dist/cli/commands/uninstall.d.ts.map +1 -0
  82. package/packages/core/dist/cli/commands/uninstall.js +237 -0
  83. package/packages/core/dist/cli/commands/uninstall.js.map +1 -0
  84. package/packages/core/dist/cli/commands/update.d.ts +9 -0
  85. package/packages/core/dist/cli/commands/update.d.ts.map +1 -0
  86. package/packages/core/dist/cli/commands/update.js +390 -0
  87. package/packages/core/dist/cli/commands/update.js.map +1 -0
  88. package/packages/core/dist/cli/commands/version.d.ts +2 -0
  89. package/packages/core/dist/cli/commands/version.d.ts.map +1 -0
  90. package/packages/core/dist/cli/commands/version.js +28 -0
  91. package/packages/core/dist/cli/commands/version.js.map +1 -0
  92. package/packages/core/dist/cli/customization.test.d.ts +12 -0
  93. package/packages/core/dist/cli/customization.test.d.ts.map +1 -0
  94. package/packages/core/dist/cli/customization.test.js +84 -0
  95. package/packages/core/dist/cli/customization.test.js.map +1 -0
  96. package/packages/core/dist/cli/cyclist-migration.test.d.ts +16 -0
  97. package/packages/core/dist/cli/cyclist-migration.test.d.ts.map +1 -0
  98. package/packages/core/dist/cli/cyclist-migration.test.js +225 -0
  99. package/packages/core/dist/cli/cyclist-migration.test.js.map +1 -0
  100. package/packages/core/dist/cli/index.d.ts +3 -0
  101. package/packages/core/dist/cli/index.d.ts.map +1 -0
  102. package/packages/core/dist/cli/index.js +174 -0
  103. package/packages/core/dist/cli/index.js.map +1 -0
  104. package/packages/core/dist/cli/ocean-profiles.test.d.ts +13 -0
  105. package/packages/core/dist/cli/ocean-profiles.test.d.ts.map +1 -0
  106. package/packages/core/dist/cli/ocean-profiles.test.js +134 -0
  107. package/packages/core/dist/cli/ocean-profiles.test.js.map +1 -0
  108. package/packages/core/dist/cli/theme-maker.test.d.ts +11 -0
  109. package/packages/core/dist/cli/theme-maker.test.d.ts.map +1 -0
  110. package/packages/core/dist/cli/theme-maker.test.js +356 -0
  111. package/packages/core/dist/cli/theme-maker.test.js.map +1 -0
  112. package/packages/core/dist/cli/utils/constants.d.ts +66 -0
  113. package/packages/core/dist/cli/utils/constants.d.ts.map +1 -0
  114. package/packages/core/dist/cli/utils/constants.js +54 -0
  115. package/packages/core/dist/cli/utils/constants.js.map +1 -0
  116. package/{dist → packages/core/dist}/cli/utils/files.d.ts +1 -0
  117. package/packages/core/dist/cli/utils/files.d.ts.map +1 -0
  118. package/packages/core/dist/cli/utils/files.js +162 -0
  119. package/packages/core/dist/cli/utils/files.js.map +1 -0
  120. package/packages/core/dist/cli/utils/logger.d.ts +26 -0
  121. package/packages/core/dist/cli/utils/logger.d.ts.map +1 -0
  122. package/packages/core/dist/cli/utils/logger.js +88 -0
  123. package/packages/core/dist/cli/utils/logger.js.map +1 -0
  124. package/{dist → packages/core/dist}/cli/utils/manifest.d.ts +1 -0
  125. package/packages/core/dist/cli/utils/manifest.d.ts.map +1 -0
  126. package/packages/core/dist/cli/utils/manifest.js +90 -0
  127. package/packages/core/dist/cli/utils/manifest.js.map +1 -0
  128. package/packages/core/dist/cli/utils/node-modules.d.ts +6 -0
  129. package/packages/core/dist/cli/utils/node-modules.d.ts.map +1 -0
  130. package/packages/core/dist/cli/utils/node-modules.js +32 -0
  131. package/packages/core/dist/cli/utils/node-modules.js.map +1 -0
  132. package/packages/core/dist/cli/utils/prompts.d.ts +34 -0
  133. package/packages/core/dist/cli/utils/prompts.d.ts.map +1 -0
  134. package/packages/core/dist/cli/utils/prompts.js +93 -0
  135. package/packages/core/dist/cli/utils/prompts.js.map +1 -0
  136. package/packages/core/dist/cli/utils/symlinks.d.ts +44 -0
  137. package/packages/core/dist/cli/utils/symlinks.d.ts.map +1 -0
  138. package/packages/core/dist/cli/utils/symlinks.js +327 -0
  139. package/packages/core/dist/cli/utils/symlinks.js.map +1 -0
  140. package/packages/core/dist/cli/utils/themes.d.ts +101 -0
  141. package/packages/core/dist/cli/utils/themes.d.ts.map +1 -0
  142. package/packages/core/dist/cli/utils/themes.js +382 -0
  143. package/packages/core/dist/cli/utils/themes.js.map +1 -0
  144. package/packages/core/dist/cli/utils/themes.test.d.ts +12 -0
  145. package/packages/core/dist/cli/utils/themes.test.d.ts.map +1 -0
  146. package/packages/core/dist/cli/utils/themes.test.js +147 -0
  147. package/packages/core/dist/cli/utils/themes.test.js.map +1 -0
  148. package/{dist → packages/core/dist}/cli/utils/version.d.ts +1 -0
  149. package/packages/core/dist/cli/utils/version.d.ts.map +1 -0
  150. package/packages/core/dist/cli/utils/version.js +64 -0
  151. package/packages/core/dist/cli/utils/version.js.map +1 -0
  152. package/packages/core/dist/cli/workspace.test.d.ts +8 -0
  153. package/packages/core/dist/cli/workspace.test.d.ts.map +1 -0
  154. package/packages/core/dist/cli/workspace.test.js +156 -0
  155. package/packages/core/dist/cli/workspace.test.js.map +1 -0
  156. package/{dist → packages/core/dist}/index.d.ts +1 -0
  157. package/packages/core/dist/index.d.ts.map +1 -0
  158. package/packages/core/dist/index.js +20 -0
  159. package/packages/core/dist/index.js.map +1 -0
  160. package/packages/core/dist/jira/jira-epic-creation.d.ts +109 -0
  161. package/packages/core/dist/jira/jira-epic-creation.d.ts.map +1 -0
  162. package/packages/core/dist/jira/jira-epic-creation.js +253 -0
  163. package/packages/core/dist/jira/jira-epic-creation.js.map +1 -0
  164. package/packages/core/dist/jira/jira-epic-creation.test.d.ts +16 -0
  165. package/packages/core/dist/jira/jira-epic-creation.test.d.ts.map +1 -0
  166. package/packages/core/dist/jira/jira-epic-creation.test.js +387 -0
  167. package/packages/core/dist/jira/jira-epic-creation.test.js.map +1 -0
  168. package/packages/core/dist/jira/jira-sprint-sync.d.ts +247 -0
  169. package/packages/core/dist/jira/jira-sprint-sync.d.ts.map +1 -0
  170. package/packages/core/dist/jira/jira-sprint-sync.js +670 -0
  171. package/packages/core/dist/jira/jira-sprint-sync.js.map +1 -0
  172. package/packages/core/dist/jira/jira-sprint-sync.test.d.ts +16 -0
  173. package/packages/core/dist/jira/jira-sprint-sync.test.d.ts.map +1 -0
  174. package/packages/core/dist/jira/jira-sprint-sync.test.js +845 -0
  175. package/packages/core/dist/jira/jira-sprint-sync.test.js.map +1 -0
  176. package/{dist → packages/core/dist}/permissions/index.d.ts +1 -0
  177. package/packages/core/dist/permissions/index.d.ts.map +1 -0
  178. package/packages/core/dist/permissions/index.js +13 -0
  179. package/packages/core/dist/permissions/index.js.map +1 -0
  180. package/{dist → packages/core/dist}/permissions/permission-schema.d.ts +1 -0
  181. package/packages/core/dist/permissions/permission-schema.d.ts.map +1 -0
  182. package/{dist → packages/core/dist}/permissions/permission-schema.js +9 -13
  183. package/packages/core/dist/permissions/permission-schema.js.map +1 -0
  184. package/packages/core/dist/permissions/permission-schema.test.d.ts +40 -0
  185. package/packages/core/dist/permissions/permission-schema.test.d.ts.map +1 -0
  186. package/packages/core/dist/permissions/permission-schema.test.js +367 -0
  187. package/packages/core/dist/permissions/permission-schema.test.js.map +1 -0
  188. package/packages/core/dist/scripts/add-ocean-profiles.d.ts +9 -0
  189. package/packages/core/dist/scripts/add-ocean-profiles.d.ts.map +1 -0
  190. package/packages/core/dist/scripts/add-ocean-profiles.js +695 -0
  191. package/packages/core/dist/scripts/add-ocean-profiles.js.map +1 -0
  192. package/packages/core/dist/scripts/benchmark-integration.d.ts +182 -0
  193. package/packages/core/dist/scripts/benchmark-integration.d.ts.map +1 -0
  194. package/packages/core/dist/scripts/benchmark-integration.js +691 -0
  195. package/packages/core/dist/scripts/benchmark-integration.js.map +1 -0
  196. package/packages/core/dist/scripts/benchmark-integration.test.d.ts +13 -0
  197. package/packages/core/dist/scripts/benchmark-integration.test.d.ts.map +1 -0
  198. package/packages/core/dist/scripts/benchmark-integration.test.js +680 -0
  199. package/packages/core/dist/scripts/benchmark-integration.test.js.map +1 -0
  200. package/packages/core/dist/scripts/debugging-scenarios.test.d.ts +18 -0
  201. package/packages/core/dist/scripts/debugging-scenarios.test.d.ts.map +1 -0
  202. package/packages/core/dist/scripts/debugging-scenarios.test.js +317 -0
  203. package/packages/core/dist/scripts/debugging-scenarios.test.js.map +1 -0
  204. package/packages/core/dist/scripts/generate-all-spiders.d.ts +10 -0
  205. package/packages/core/dist/scripts/generate-all-spiders.d.ts.map +1 -0
  206. package/packages/core/dist/scripts/generate-all-spiders.js +306 -0
  207. package/packages/core/dist/scripts/generate-all-spiders.js.map +1 -0
  208. package/packages/core/dist/scripts/generate-report.d.ts +65 -0
  209. package/packages/core/dist/scripts/generate-report.d.ts.map +1 -0
  210. package/packages/core/dist/scripts/generate-report.js +378 -0
  211. package/packages/core/dist/scripts/generate-report.js.map +1 -0
  212. package/packages/core/dist/scripts/generate-report.test.d.ts +13 -0
  213. package/packages/core/dist/scripts/generate-report.test.d.ts.map +1 -0
  214. package/packages/core/dist/scripts/generate-report.test.js +363 -0
  215. package/packages/core/dist/scripts/generate-report.test.js.map +1 -0
  216. package/packages/core/dist/scripts/generate-spider-report.d.ts +65 -0
  217. package/packages/core/dist/scripts/generate-spider-report.d.ts.map +1 -0
  218. package/packages/core/dist/scripts/generate-spider-report.js +366 -0
  219. package/packages/core/dist/scripts/generate-spider-report.js.map +1 -0
  220. package/packages/core/dist/scripts/generate-spider-report.test.d.ts +13 -0
  221. package/packages/core/dist/scripts/generate-spider-report.test.d.ts.map +1 -0
  222. package/packages/core/dist/scripts/generate-spider-report.test.js +367 -0
  223. package/packages/core/dist/scripts/generate-spider-report.test.js.map +1 -0
  224. package/packages/core/dist/scripts/generate-spider.d.ts +47 -0
  225. package/packages/core/dist/scripts/generate-spider.d.ts.map +1 -0
  226. package/packages/core/dist/scripts/generate-spider.js +338 -0
  227. package/packages/core/dist/scripts/generate-spider.js.map +1 -0
  228. package/packages/core/dist/scripts/generate-spider.test.d.ts +14 -0
  229. package/packages/core/dist/scripts/generate-spider.test.d.ts.map +1 -0
  230. package/packages/core/dist/scripts/generate-spider.test.js +271 -0
  231. package/packages/core/dist/scripts/generate-spider.test.js.map +1 -0
  232. package/{dist → packages/core/dist}/scripts/job-fair-aggregator.d.ts +1 -0
  233. package/packages/core/dist/scripts/job-fair-aggregator.d.ts.map +1 -0
  234. package/packages/core/dist/scripts/job-fair-aggregator.js +547 -0
  235. package/packages/core/dist/scripts/job-fair-aggregator.js.map +1 -0
  236. package/packages/core/dist/scripts/job-fair-aggregator.test.d.ts +14 -0
  237. package/packages/core/dist/scripts/job-fair-aggregator.test.d.ts.map +1 -0
  238. package/packages/core/dist/scripts/job-fair-aggregator.test.js +616 -0
  239. package/packages/core/dist/scripts/job-fair-aggregator.test.js.map +1 -0
  240. package/packages/core/dist/scripts/run-ci.test.d.ts +20 -0
  241. package/packages/core/dist/scripts/run-ci.test.d.ts.map +1 -0
  242. package/packages/core/dist/scripts/run-ci.test.js +127 -0
  243. package/packages/core/dist/scripts/run-ci.test.js.map +1 -0
  244. package/packages/core/dist/scripts/theme-detail.test.d.ts +10 -0
  245. package/packages/core/dist/scripts/theme-detail.test.d.ts.map +1 -0
  246. package/packages/core/dist/scripts/theme-detail.test.js +199 -0
  247. package/packages/core/dist/scripts/theme-detail.test.js.map +1 -0
  248. package/packages/core/dist/scripts/validate-ocean-profiles.d.ts +9 -0
  249. package/packages/core/dist/scripts/validate-ocean-profiles.d.ts.map +1 -0
  250. package/packages/core/dist/scripts/validate-ocean-profiles.js +130 -0
  251. package/packages/core/dist/scripts/validate-ocean-profiles.js.map +1 -0
  252. package/packages/core/dist/workflow/gate-handler.d.ts +94 -0
  253. package/packages/core/dist/workflow/gate-handler.d.ts.map +1 -0
  254. package/packages/core/dist/workflow/gate-handler.js +189 -0
  255. package/packages/core/dist/workflow/gate-handler.js.map +1 -0
  256. package/packages/core/dist/workflow/gate-handler.test.d.ts +14 -0
  257. package/packages/core/dist/workflow/gate-handler.test.d.ts.map +1 -0
  258. package/packages/core/dist/workflow/gate-handler.test.js +543 -0
  259. package/packages/core/dist/workflow/gate-handler.test.js.map +1 -0
  260. package/packages/core/dist/workflow/generic-sm-finish.d.ts +89 -0
  261. package/packages/core/dist/workflow/generic-sm-finish.d.ts.map +1 -0
  262. package/packages/core/dist/workflow/generic-sm-finish.js +157 -0
  263. package/packages/core/dist/workflow/generic-sm-finish.js.map +1 -0
  264. package/packages/core/dist/workflow/generic-sm-setup.d.ts +138 -0
  265. package/packages/core/dist/workflow/generic-sm-setup.d.ts.map +1 -0
  266. package/packages/core/dist/workflow/generic-sm-setup.js +382 -0
  267. package/packages/core/dist/workflow/generic-sm-setup.js.map +1 -0
  268. package/packages/core/dist/workflow/handoff.d.ts +281 -0
  269. package/packages/core/dist/workflow/handoff.d.ts.map +1 -0
  270. package/packages/core/dist/workflow/handoff.js +411 -0
  271. package/packages/core/dist/workflow/handoff.js.map +1 -0
  272. package/packages/core/dist/workflow/handoff.test.d.ts +21 -0
  273. package/packages/core/dist/workflow/handoff.test.d.ts.map +1 -0
  274. package/packages/core/dist/workflow/handoff.test.js +499 -0
  275. package/packages/core/dist/workflow/handoff.test.js.map +1 -0
  276. package/{dist → packages/core/dist}/workflow/index.d.ts +1 -0
  277. package/packages/core/dist/workflow/index.d.ts.map +1 -0
  278. package/packages/core/dist/workflow/index.js +24 -0
  279. package/packages/core/dist/workflow/index.js.map +1 -0
  280. package/packages/core/dist/workflow/session-state.d.ts +92 -0
  281. package/packages/core/dist/workflow/session-state.d.ts.map +1 -0
  282. package/packages/core/dist/workflow/session-state.js +198 -0
  283. package/packages/core/dist/workflow/session-state.js.map +1 -0
  284. package/packages/core/dist/workflow/session-state.test.d.ts +8 -0
  285. package/packages/core/dist/workflow/session-state.test.d.ts.map +1 -0
  286. package/packages/core/dist/workflow/session-state.test.js +551 -0
  287. package/packages/core/dist/workflow/session-state.test.js.map +1 -0
  288. package/packages/core/dist/workflow/sm-subagents.test.d.ts +23 -0
  289. package/packages/core/dist/workflow/sm-subagents.test.d.ts.map +1 -0
  290. package/packages/core/dist/workflow/sm-subagents.test.js +727 -0
  291. package/packages/core/dist/workflow/sm-subagents.test.js.map +1 -0
  292. package/packages/core/dist/workflow/step-parser.d.ts +45 -0
  293. package/packages/core/dist/workflow/step-parser.d.ts.map +1 -0
  294. package/packages/core/dist/workflow/step-parser.js +147 -0
  295. package/packages/core/dist/workflow/step-parser.js.map +1 -0
  296. package/packages/core/dist/workflow/step-parser.test.d.ts +14 -0
  297. package/packages/core/dist/workflow/step-parser.test.d.ts.map +1 -0
  298. package/packages/core/dist/workflow/step-parser.test.js +470 -0
  299. package/packages/core/dist/workflow/step-parser.test.js.map +1 -0
  300. package/packages/core/dist/workflow/story-workflow-routing.test.d.ts +17 -0
  301. package/packages/core/dist/workflow/story-workflow-routing.test.d.ts.map +1 -0
  302. package/packages/core/dist/workflow/story-workflow-routing.test.js +559 -0
  303. package/packages/core/dist/workflow/story-workflow-routing.test.js.map +1 -0
  304. package/packages/core/dist/workflow/test-cache.d.ts +131 -0
  305. package/packages/core/dist/workflow/test-cache.d.ts.map +1 -0
  306. package/packages/core/dist/workflow/test-cache.js +226 -0
  307. package/packages/core/dist/workflow/test-cache.js.map +1 -0
  308. package/packages/core/dist/workflow/test-cache.test.d.ts +17 -0
  309. package/packages/core/dist/workflow/test-cache.test.d.ts.map +1 -0
  310. package/packages/core/dist/workflow/test-cache.test.js +438 -0
  311. package/packages/core/dist/workflow/test-cache.test.js.map +1 -0
  312. package/packages/core/dist/workflow/trimodal.d.ts +86 -0
  313. package/packages/core/dist/workflow/trimodal.d.ts.map +1 -0
  314. package/packages/core/dist/workflow/trimodal.js +118 -0
  315. package/packages/core/dist/workflow/trimodal.js.map +1 -0
  316. package/packages/core/dist/workflow/trimodal.test.d.ts +11 -0
  317. package/packages/core/dist/workflow/trimodal.test.d.ts.map +1 -0
  318. package/packages/core/dist/workflow/trimodal.test.js +395 -0
  319. package/packages/core/dist/workflow/trimodal.test.js.map +1 -0
  320. package/packages/core/dist/workflow/variable-resolver.d.ts +67 -0
  321. package/packages/core/dist/workflow/variable-resolver.d.ts.map +1 -0
  322. package/packages/core/dist/workflow/variable-resolver.js +156 -0
  323. package/packages/core/dist/workflow/variable-resolver.js.map +1 -0
  324. package/packages/core/dist/workflow/variable-resolver.test.d.ts +14 -0
  325. package/packages/core/dist/workflow/variable-resolver.test.d.ts.map +1 -0
  326. package/packages/core/dist/workflow/variable-resolver.test.js +400 -0
  327. package/packages/core/dist/workflow/variable-resolver.test.js.map +1 -0
  328. package/packages/core/dist/workflow/workflow-executor.d.ts +163 -0
  329. package/packages/core/dist/workflow/workflow-executor.d.ts.map +1 -0
  330. package/packages/core/dist/workflow/workflow-executor.js +197 -0
  331. package/packages/core/dist/workflow/workflow-executor.js.map +1 -0
  332. package/packages/core/dist/workflow/workflow-executor.test.d.ts +8 -0
  333. package/packages/core/dist/workflow/workflow-executor.test.d.ts.map +1 -0
  334. package/packages/core/dist/workflow/workflow-executor.test.js +444 -0
  335. package/packages/core/dist/workflow/workflow-executor.test.js.map +1 -0
  336. package/{dist → packages/core/dist}/workflow/workflow-loader.d.ts +1 -0
  337. package/packages/core/dist/workflow/workflow-loader.d.ts.map +1 -0
  338. package/{dist → packages/core/dist}/workflow/workflow-loader.js +34 -40
  339. package/packages/core/dist/workflow/workflow-loader.js.map +1 -0
  340. package/packages/core/dist/workflow/workflow-loader.test.d.ts +15 -0
  341. package/packages/core/dist/workflow/workflow-loader.test.d.ts.map +1 -0
  342. package/packages/core/dist/workflow/workflow-loader.test.js +354 -0
  343. package/packages/core/dist/workflow/workflow-loader.test.js.map +1 -0
  344. package/packages/core/dist/workflow/workflow-migration.test.d.ts +17 -0
  345. package/packages/core/dist/workflow/workflow-migration.test.d.ts.map +1 -0
  346. package/packages/core/dist/workflow/workflow-migration.test.js +371 -0
  347. package/packages/core/dist/workflow/workflow-migration.test.js.map +1 -0
  348. package/{dist → packages/core/dist}/workflow/workflow-permissions.d.ts +1 -0
  349. package/packages/core/dist/workflow/workflow-permissions.d.ts.map +1 -0
  350. package/{dist → packages/core/dist}/workflow/workflow-permissions.js +8 -14
  351. package/packages/core/dist/workflow/workflow-permissions.js.map +1 -0
  352. package/packages/core/dist/workflow/workflow-permissions.test.d.ts +15 -0
  353. package/packages/core/dist/workflow/workflow-permissions.test.d.ts.map +1 -0
  354. package/packages/core/dist/workflow/workflow-permissions.test.js +301 -0
  355. package/packages/core/dist/workflow/workflow-permissions.test.js.map +1 -0
  356. package/{dist → packages/core/dist}/workflow/workflow-router.d.ts +1 -0
  357. package/packages/core/dist/workflow/workflow-router.d.ts.map +1 -0
  358. package/{dist → packages/core/dist}/workflow/workflow-router.js +51 -70
  359. package/packages/core/dist/workflow/workflow-router.js.map +1 -0
  360. package/packages/core/dist/workflow/workflow-router.test.d.ts +20 -0
  361. package/packages/core/dist/workflow/workflow-router.test.d.ts.map +1 -0
  362. package/packages/core/dist/workflow/workflow-router.test.js +607 -0
  363. package/packages/core/dist/workflow/workflow-router.test.js.map +1 -0
  364. package/{dist → packages/core/dist}/workflow/workflow-schema.d.ts +1 -0
  365. package/packages/core/dist/workflow/workflow-schema.d.ts.map +1 -0
  366. package/{dist → packages/core/dist}/workflow/workflow-schema.js +59 -62
  367. package/packages/core/dist/workflow/workflow-schema.js.map +1 -0
  368. package/packages/core/dist/workflow/workflow-schema.test.d.ts +45 -0
  369. package/packages/core/dist/workflow/workflow-schema.test.d.ts.map +1 -0
  370. package/packages/core/dist/workflow/workflow-schema.test.js +512 -0
  371. package/packages/core/dist/workflow/workflow-schema.test.js.map +1 -0
  372. package/packages/core/dist/workflow/workflow-stepped-schema.test.d.ts +18 -0
  373. package/packages/core/dist/workflow/workflow-stepped-schema.test.d.ts.map +1 -0
  374. package/packages/core/dist/workflow/workflow-stepped-schema.test.js +608 -0
  375. package/packages/core/dist/workflow/workflow-stepped-schema.test.js.map +1 -0
  376. package/pennyfarthing-dist/agents/README.md +340 -0
  377. package/pennyfarthing-dist/agents/architect.md +193 -0
  378. package/pennyfarthing-dist/agents/dev.md +259 -0
  379. package/pennyfarthing-dist/agents/devops.md +206 -0
  380. package/pennyfarthing-dist/agents/handoff.md +212 -0
  381. package/pennyfarthing-dist/agents/orchestrator.md +355 -0
  382. package/pennyfarthing-dist/agents/pm.md +169 -0
  383. package/pennyfarthing-dist/agents/reviewer-preflight.md +96 -0
  384. package/pennyfarthing-dist/agents/reviewer.md +377 -0
  385. package/pennyfarthing-dist/agents/sm-file-summary.md +58 -0
  386. package/pennyfarthing-dist/agents/sm-finish.md +61 -0
  387. package/pennyfarthing-dist/agents/sm-handoff.md +122 -0
  388. package/pennyfarthing-dist/agents/sm-setup.md +174 -0
  389. package/pennyfarthing-dist/agents/sm.md +649 -0
  390. package/pennyfarthing-dist/agents/tea.md +230 -0
  391. package/pennyfarthing-dist/agents/tech-writer.md +216 -0
  392. package/pennyfarthing-dist/agents/testing-runner.md +141 -0
  393. package/pennyfarthing-dist/agents/ux-designer.md +231 -0
  394. package/pennyfarthing-dist/agents/workflow-status-check.md +68 -0
  395. package/pennyfarthing-dist/commands/architect.md +7 -0
  396. package/pennyfarthing-dist/commands/benchmark-control.md +69 -0
  397. package/pennyfarthing-dist/commands/benchmark.md +467 -0
  398. package/pennyfarthing-dist/commands/brainstorming.md +91 -0
  399. package/pennyfarthing-dist/commands/check.md +156 -0
  400. package/pennyfarthing-dist/commands/chore.md +178 -0
  401. package/pennyfarthing-dist/commands/close-epic.md +139 -0
  402. package/pennyfarthing-dist/commands/continue-session.md +184 -0
  403. package/pennyfarthing-dist/commands/create-branches-from-story.md +358 -0
  404. package/pennyfarthing-dist/commands/create-theme.md +29 -0
  405. package/pennyfarthing-dist/commands/dev.md +7 -0
  406. package/pennyfarthing-dist/commands/devops.md +7 -0
  407. package/pennyfarthing-dist/commands/git-cleanup.md +340 -0
  408. package/pennyfarthing-dist/commands/health-check.md +141 -0
  409. package/pennyfarthing-dist/commands/help.md +264 -0
  410. package/pennyfarthing-dist/commands/job-fair.md +102 -0
  411. package/pennyfarthing-dist/commands/list-themes.md +21 -0
  412. package/pennyfarthing-dist/commands/orchestrator.md +7 -0
  413. package/pennyfarthing-dist/commands/parallel-work.md +71 -0
  414. package/pennyfarthing-dist/commands/party-mode.md +67 -0
  415. package/pennyfarthing-dist/commands/permissions.md +193 -0
  416. package/pennyfarthing-dist/commands/pm.md +7 -0
  417. package/pennyfarthing-dist/commands/prime.md +140 -0
  418. package/pennyfarthing-dist/commands/release.md +58 -0
  419. package/pennyfarthing-dist/commands/repo-status.md +49 -0
  420. package/pennyfarthing-dist/commands/retro.md +200 -0
  421. package/pennyfarthing-dist/commands/reviewer.md +7 -0
  422. package/pennyfarthing-dist/commands/run-ci.md +116 -0
  423. package/pennyfarthing-dist/commands/set-theme.md +56 -0
  424. package/pennyfarthing-dist/commands/show-theme.md +21 -0
  425. package/pennyfarthing-dist/commands/sm.md +7 -0
  426. package/pennyfarthing-dist/commands/solo.md +411 -0
  427. package/pennyfarthing-dist/commands/sprint-planning.md +109 -0
  428. package/pennyfarthing-dist/commands/sprint.md +133 -0
  429. package/pennyfarthing-dist/commands/standalone.md +194 -0
  430. package/pennyfarthing-dist/commands/start-epic.md +168 -0
  431. package/pennyfarthing-dist/commands/sync-epic-to-jira.md +184 -0
  432. package/pennyfarthing-dist/commands/sync-work-with-sprint.md +373 -0
  433. package/pennyfarthing-dist/commands/tea.md +7 -0
  434. package/pennyfarthing-dist/commands/tech-writer.md +7 -0
  435. package/pennyfarthing-dist/commands/theme-maker.md +676 -0
  436. package/pennyfarthing-dist/commands/update-domain-docs.md +83 -0
  437. package/pennyfarthing-dist/commands/ux-designer.md +7 -0
  438. package/pennyfarthing-dist/commands/work.md +122 -0
  439. package/pennyfarthing-dist/commands/workflow.md +21 -0
  440. package/pennyfarthing-dist/guides/AGENT-COORDINATION.md +480 -0
  441. package/pennyfarthing-dist/guides/HOOKS.md +230 -0
  442. package/pennyfarthing-dist/guides/PROMPT-PATTERNS.md +338 -0
  443. package/pennyfarthing-dist/guides/SESSION-ARTIFACTS.md +193 -0
  444. package/pennyfarthing-dist/guides/XML-TAGS.md +156 -0
  445. package/pennyfarthing-dist/guides/agent-behavior.md +264 -0
  446. package/pennyfarthing-dist/guides/agent-template-strategic.md +148 -0
  447. package/pennyfarthing-dist/guides/agent-template-tactical.md +162 -0
  448. package/pennyfarthing-dist/guides/measurement-framework.md +210 -0
  449. package/pennyfarthing-dist/guides/patterns/approval-gates-pattern.md +746 -0
  450. package/pennyfarthing-dist/guides/patterns/fan-out-fan-in-pattern.md +574 -0
  451. package/pennyfarthing-dist/guides/patterns/helper-delegation-pattern.md +488 -0
  452. package/pennyfarthing-dist/guides/patterns/tdd-flow-pattern.md +402 -0
  453. package/pennyfarthing-dist/guides/permission-protocol.md +188 -0
  454. package/pennyfarthing-dist/guides/persona-loading.md +46 -0
  455. package/pennyfarthing-dist/guides/workflow-schema.md +257 -0
  456. package/pennyfarthing-dist/guides/worktree-mode.md +113 -0
  457. package/pennyfarthing-dist/output-styles/teaching.md +33 -0
  458. package/pennyfarthing-dist/output-styles/terse.md +20 -0
  459. package/pennyfarthing-dist/output-styles/verbose.md +28 -0
  460. package/pennyfarthing-dist/personas/themes/1984.yaml +312 -0
  461. package/pennyfarthing-dist/personas/themes/a-team.yaml +337 -0
  462. package/pennyfarthing-dist/personas/themes/agatha-christie.yaml +300 -0
  463. package/pennyfarthing-dist/personas/themes/alice-in-wonderland.yaml +330 -0
  464. package/pennyfarthing-dist/personas/themes/all-stars.yaml +332 -0
  465. package/pennyfarthing-dist/personas/themes/ancient-philosophers.yaml +320 -0
  466. package/pennyfarthing-dist/personas/themes/ancient-strategists.yaml +306 -0
  467. package/pennyfarthing-dist/personas/themes/arcane.yaml +288 -0
  468. package/pennyfarthing-dist/personas/themes/arthurian-mythos.yaml +331 -0
  469. package/pennyfarthing-dist/personas/themes/avatar-the-last-airbender.yaml +288 -0
  470. package/pennyfarthing-dist/personas/themes/babylon-5.yaml +288 -0
  471. package/pennyfarthing-dist/personas/themes/battlestar-galactica.yaml +288 -0
  472. package/pennyfarthing-dist/personas/themes/better-call-saul.yaml +288 -0
  473. package/pennyfarthing-dist/personas/themes/big-lebowski.yaml +300 -0
  474. package/pennyfarthing-dist/personas/themes/black-sails.yaml +300 -0
  475. package/pennyfarthing-dist/personas/themes/blade-runner.yaml +295 -0
  476. package/pennyfarthing-dist/personas/themes/bobiverse.yaml +288 -0
  477. package/pennyfarthing-dist/personas/themes/breaking-bad.yaml +327 -0
  478. package/pennyfarthing-dist/personas/themes/catch-22.yaml +316 -0
  479. package/pennyfarthing-dist/personas/themes/classical-composers.yaml +310 -0
  480. package/pennyfarthing-dist/personas/themes/control.yaml +197 -0
  481. package/pennyfarthing-dist/personas/themes/count-of-monte-cristo.yaml +320 -0
  482. package/pennyfarthing-dist/personas/themes/cowboy-bebop.yaml +323 -0
  483. package/pennyfarthing-dist/personas/themes/deadwood.yaml +300 -0
  484. package/pennyfarthing-dist/personas/themes/dickens.yaml +320 -0
  485. package/pennyfarthing-dist/personas/themes/discworld.yaml +332 -0
  486. package/pennyfarthing-dist/personas/themes/doctor-who.yaml +290 -0
  487. package/pennyfarthing-dist/personas/themes/don-quixote.yaml +320 -0
  488. package/pennyfarthing-dist/personas/themes/dune.yaml +307 -0
  489. package/pennyfarthing-dist/personas/themes/enlightenment-thinkers.yaml +320 -0
  490. package/pennyfarthing-dist/personas/themes/expeditionary-force.yaml +288 -0
  491. package/pennyfarthing-dist/personas/themes/fargo.yaml +330 -0
  492. package/pennyfarthing-dist/personas/themes/film-auteurs.yaml +312 -0
  493. package/pennyfarthing-dist/personas/themes/firefly.yaml +328 -0
  494. package/pennyfarthing-dist/personas/themes/foundation.yaml +290 -0
  495. package/pennyfarthing-dist/personas/themes/futurama.yaml +321 -0
  496. package/pennyfarthing-dist/personas/themes/game-of-thrones.yaml +290 -0
  497. package/pennyfarthing-dist/personas/themes/gilligans-island.yaml +373 -0
  498. package/pennyfarthing-dist/personas/themes/gothic-literature.yaml +308 -0
  499. package/pennyfarthing-dist/personas/themes/great-gatsby.yaml +308 -0
  500. package/pennyfarthing-dist/personas/themes/greek-mythology.yaml +330 -0
  501. package/pennyfarthing-dist/personas/themes/hannibal.yaml +300 -0
  502. package/pennyfarthing-dist/personas/themes/harry-potter.yaml +324 -0
  503. package/pennyfarthing-dist/personas/themes/his-dark-materials.yaml +291 -0
  504. package/pennyfarthing-dist/personas/themes/historical-figures.yaml +288 -0
  505. package/pennyfarthing-dist/personas/themes/hitchhikers-guide.yaml +331 -0
  506. package/pennyfarthing-dist/personas/themes/house-md.yaml +321 -0
  507. package/pennyfarthing-dist/personas/themes/imperial-radch.yaml +289 -0
  508. package/pennyfarthing-dist/personas/themes/inspector-morse.yaml +300 -0
  509. package/pennyfarthing-dist/personas/themes/jane-austen.yaml +287 -0
  510. package/pennyfarthing-dist/personas/themes/jazz-legends.yaml +320 -0
  511. package/pennyfarthing-dist/personas/themes/justified.yaml +300 -0
  512. package/pennyfarthing-dist/personas/themes/legion-of-doom.yaml +349 -0
  513. package/pennyfarthing-dist/personas/themes/les-miserables.yaml +299 -0
  514. package/pennyfarthing-dist/personas/themes/lord-of-the-rings.yaml +334 -0
  515. package/pennyfarthing-dist/personas/themes/lovecraft-mythos.yaml +334 -0
  516. package/pennyfarthing-dist/personas/themes/mad-max.yaml +355 -0
  517. package/pennyfarthing-dist/personas/themes/mad-men.yaml +289 -0
  518. package/pennyfarthing-dist/personas/themes/marvel-mcu.yaml +300 -0
  519. package/pennyfarthing-dist/personas/themes/mash.yaml +337 -0
  520. package/pennyfarthing-dist/personas/themes/mass-effect.yaml +289 -0
  521. package/pennyfarthing-dist/personas/themes/military-commanders.yaml +306 -0
  522. package/pennyfarthing-dist/personas/themes/moby-dick.yaml +320 -0
  523. package/pennyfarthing-dist/personas/themes/monty-python.yaml +303 -0
  524. package/pennyfarthing-dist/personas/themes/neuromancer.yaml +300 -0
  525. package/pennyfarthing-dist/personas/themes/norse-mythology.yaml +329 -0
  526. package/pennyfarthing-dist/personas/themes/parks-and-rec.yaml +372 -0
  527. package/pennyfarthing-dist/personas/themes/peaky-blinders.yaml +298 -0
  528. package/pennyfarthing-dist/personas/themes/princess-bride.yaml +350 -0
  529. package/pennyfarthing-dist/personas/themes/renaissance-masters.yaml +320 -0
  530. package/pennyfarthing-dist/personas/themes/rome.yaml +300 -0
  531. package/pennyfarthing-dist/personas/themes/russian-masters.yaml +318 -0
  532. package/pennyfarthing-dist/personas/themes/sandman.yaml +288 -0
  533. package/pennyfarthing-dist/personas/themes/scientific-revolutionaries.yaml +320 -0
  534. package/pennyfarthing-dist/personas/themes/shakespeare.yaml +301 -0
  535. package/pennyfarthing-dist/personas/themes/sherlock-holmes.yaml +289 -0
  536. package/pennyfarthing-dist/personas/themes/snow-crash.yaml +288 -0
  537. package/pennyfarthing-dist/personas/themes/software-pioneers.yaml +300 -0
  538. package/pennyfarthing-dist/personas/themes/star-trek-tng.yaml +366 -0
  539. package/pennyfarthing-dist/personas/themes/star-trek-tos.yaml +334 -0
  540. package/pennyfarthing-dist/personas/themes/star-wars.yaml +303 -0
  541. package/pennyfarthing-dist/personas/themes/succession.yaml +300 -0
  542. package/pennyfarthing-dist/personas/themes/superfriends.yaml +338 -0
  543. package/pennyfarthing-dist/personas/themes/ted-lasso.yaml +366 -0
  544. package/pennyfarthing-dist/personas/themes/the-americans.yaml +300 -0
  545. package/pennyfarthing-dist/personas/themes/the-crown.yaml +300 -0
  546. package/pennyfarthing-dist/personas/themes/the-expanse.yaml +343 -0
  547. package/pennyfarthing-dist/personas/themes/the-good-place.yaml +322 -0
  548. package/pennyfarthing-dist/personas/themes/the-matrix.yaml +353 -0
  549. package/pennyfarthing-dist/personas/themes/the-odyssey.yaml +300 -0
  550. package/pennyfarthing-dist/personas/themes/the-office.yaml +330 -0
  551. package/pennyfarthing-dist/personas/themes/the-simpsons.yaml +308 -0
  552. package/pennyfarthing-dist/personas/themes/the-sopranos.yaml +300 -0
  553. package/pennyfarthing-dist/personas/themes/the-wire.yaml +311 -0
  554. package/pennyfarthing-dist/personas/themes/the-witcher.yaml +300 -0
  555. package/pennyfarthing-dist/personas/themes/twin-peaks.yaml +302 -0
  556. package/pennyfarthing-dist/personas/themes/vorkosigan-saga.yaml +300 -0
  557. package/pennyfarthing-dist/personas/themes/watchmen.yaml +291 -0
  558. package/pennyfarthing-dist/personas/themes/west-wing.yaml +291 -0
  559. package/pennyfarthing-dist/personas/themes/world-explorers.yaml +320 -0
  560. package/pennyfarthing-dist/personas/themes/wwii-leaders.yaml +307 -0
  561. package/pennyfarthing-dist/personas/themes/x-files.yaml +302 -0
  562. package/pennyfarthing-dist/scripts/README.md +68 -0
  563. package/pennyfarthing-dist/scripts/core/README.md +26 -0
  564. package/pennyfarthing-dist/scripts/core/agent-session.sh +378 -0
  565. package/pennyfarthing-dist/scripts/core/check-context.sh +260 -0
  566. package/pennyfarthing-dist/scripts/core/handoff-marker.sh +90 -0
  567. package/pennyfarthing-dist/scripts/core/phase-check-start.sh +95 -0
  568. package/pennyfarthing-dist/scripts/core/prime.sh +136 -0
  569. package/pennyfarthing-dist/scripts/core/run.sh +75 -0
  570. package/pennyfarthing-dist/scripts/cyclist/is-cyclist.sh +21 -0
  571. package/pennyfarthing-dist/scripts/git/README.md +25 -0
  572. package/pennyfarthing-dist/scripts/git/create-feature-branches.sh +226 -0
  573. package/pennyfarthing-dist/scripts/git/git-status-all.sh +127 -0
  574. package/pennyfarthing-dist/scripts/git/install-git-hooks.sh +91 -0
  575. package/pennyfarthing-dist/scripts/git/release.sh +199 -0
  576. package/pennyfarthing-dist/scripts/git/worktree-manager.sh +494 -0
  577. package/pennyfarthing-dist/scripts/health/drift-detection.sh +162 -0
  578. package/pennyfarthing-dist/scripts/hooks/README.md +32 -0
  579. package/pennyfarthing-dist/scripts/hooks/bell-mode-hook.sh +87 -0
  580. package/pennyfarthing-dist/scripts/hooks/context-circuit-breaker.sh +60 -0
  581. package/pennyfarthing-dist/scripts/hooks/context-warning.sh +65 -0
  582. package/pennyfarthing-dist/scripts/hooks/otel-auto-config.sh +35 -0
  583. package/pennyfarthing-dist/scripts/hooks/post-merge.sh +166 -0
  584. package/pennyfarthing-dist/scripts/hooks/pre-commit.sh +50 -0
  585. package/pennyfarthing-dist/scripts/hooks/pre-edit-check.sh +71 -0
  586. package/pennyfarthing-dist/scripts/hooks/pre-push.sh +54 -0
  587. package/pennyfarthing-dist/scripts/hooks/session-start.sh +97 -0
  588. package/pennyfarthing-dist/scripts/hooks/session-stop.sh +58 -0
  589. package/pennyfarthing-dist/scripts/jira/README.md +33 -0
  590. package/pennyfarthing-dist/scripts/jira/create-jira-epic.sh +101 -0
  591. package/pennyfarthing-dist/scripts/jira/create-jira-story.sh +97 -0
  592. package/pennyfarthing-dist/scripts/jira/jira-bidirectional-sync.mjs +327 -0
  593. package/pennyfarthing-dist/scripts/jira/jira-bidirectional-sync.test.mjs +503 -0
  594. package/pennyfarthing-dist/scripts/jira/jira-claim-story.sh +164 -0
  595. package/pennyfarthing-dist/scripts/jira/jira-lib.mjs +443 -0
  596. package/pennyfarthing-dist/scripts/jira/jira-lib.sh +464 -0
  597. package/pennyfarthing-dist/scripts/jira/jira-reconcile.sh +266 -0
  598. package/pennyfarthing-dist/scripts/jira/jira-sync-story.mjs +208 -0
  599. package/pennyfarthing-dist/scripts/jira/jira-sync-story.sh +8 -0
  600. package/pennyfarthing-dist/scripts/jira/jira-sync.mjs +198 -0
  601. package/pennyfarthing-dist/scripts/jira/jira-sync.sh +8 -0
  602. package/pennyfarthing-dist/scripts/jira/sync-epic-jira.sh +104 -0
  603. package/pennyfarthing-dist/scripts/jira/sync-epic-to-jira.sh +16 -0
  604. package/pennyfarthing-dist/scripts/lib/README.md +29 -0
  605. package/pennyfarthing-dist/scripts/lib/background-tasks.sh +177 -0
  606. package/pennyfarthing-dist/scripts/lib/checkpoint.sh +136 -0
  607. package/pennyfarthing-dist/scripts/lib/common.sh +157 -0
  608. package/pennyfarthing-dist/scripts/lib/file-lock.sh +269 -0
  609. package/pennyfarthing-dist/scripts/lib/find-root.sh +35 -0
  610. package/pennyfarthing-dist/scripts/lib/logging.sh +186 -0
  611. package/pennyfarthing-dist/scripts/lib/retry.sh +76 -0
  612. package/pennyfarthing-dist/scripts/misc/README.md +44 -0
  613. package/pennyfarthing-dist/scripts/misc/add-short-names.mjs +264 -0
  614. package/pennyfarthing-dist/scripts/misc/backlog.sh +91 -0
  615. package/pennyfarthing-dist/scripts/misc/check-status.sh +247 -0
  616. package/pennyfarthing-dist/scripts/misc/deploy.sh +284 -0
  617. package/pennyfarthing-dist/scripts/misc/doctor-dogfood.sh +392 -0
  618. package/pennyfarthing-dist/scripts/misc/find-related-work.sh +231 -0
  619. package/pennyfarthing-dist/scripts/misc/generate-skill-docs.sh +110 -0
  620. package/pennyfarthing-dist/scripts/misc/log-skill-usage.sh +74 -0
  621. package/pennyfarthing-dist/scripts/misc/migrate-bmad-workflow.mjs +474 -0
  622. package/pennyfarthing-dist/scripts/misc/migrate-bmad-workflow.sh +9 -0
  623. package/pennyfarthing-dist/scripts/misc/repo-scan.sh +141 -0
  624. package/pennyfarthing-dist/scripts/misc/repo-utils.sh +778 -0
  625. package/pennyfarthing-dist/scripts/misc/run-ci.sh +219 -0
  626. package/pennyfarthing-dist/scripts/misc/run-timestamp.sh +7 -0
  627. package/pennyfarthing-dist/scripts/misc/session-cleanup.sh +319 -0
  628. package/pennyfarthing-dist/scripts/misc/skill-usage-report.sh +193 -0
  629. package/pennyfarthing-dist/scripts/misc/statusline.sh +252 -0
  630. package/pennyfarthing-dist/scripts/misc/uninstall.sh +270 -0
  631. package/pennyfarthing-dist/scripts/misc/validate-subagent-frontmatter.sh +160 -0
  632. package/pennyfarthing-dist/scripts/sprint/README.md +29 -0
  633. package/pennyfarthing-dist/scripts/sprint/archive-story.sh +135 -0
  634. package/pennyfarthing-dist/scripts/sprint/available-stories.sh +97 -0
  635. package/pennyfarthing-dist/scripts/sprint/check-story.sh +164 -0
  636. package/pennyfarthing-dist/scripts/sprint/get-epic-field.sh +58 -0
  637. package/pennyfarthing-dist/scripts/sprint/get-story-field.sh +69 -0
  638. package/pennyfarthing-dist/scripts/sprint/import-epic-to-future.mjs +377 -0
  639. package/pennyfarthing-dist/scripts/sprint/import-epic-to-future.sh +9 -0
  640. package/pennyfarthing-dist/scripts/sprint/list-future.sh +151 -0
  641. package/pennyfarthing-dist/scripts/sprint/new-sprint.sh +116 -0
  642. package/pennyfarthing-dist/scripts/sprint/promote-epic.sh +164 -0
  643. package/pennyfarthing-dist/scripts/sprint/sprint-common.sh +421 -0
  644. package/pennyfarthing-dist/scripts/sprint/sprint-info.sh +39 -0
  645. package/pennyfarthing-dist/scripts/sprint/sprint-metrics.sh +241 -0
  646. package/pennyfarthing-dist/scripts/sprint/sprint-status.sh +134 -0
  647. package/pennyfarthing-dist/scripts/story/README.md +23 -0
  648. package/pennyfarthing-dist/scripts/story/create-story.sh +159 -0
  649. package/pennyfarthing-dist/scripts/story/size-story.sh +198 -0
  650. package/pennyfarthing-dist/scripts/story/story-template.sh +162 -0
  651. package/pennyfarthing-dist/scripts/test/README.md +23 -0
  652. package/pennyfarthing-dist/scripts/test/ground-truth-judge.py +289 -0
  653. package/pennyfarthing-dist/scripts/test/swebench-judge.py +400 -0
  654. package/pennyfarthing-dist/scripts/test/test-cache.sh +165 -0
  655. package/pennyfarthing-dist/scripts/test/test-setup.sh +337 -0
  656. package/pennyfarthing-dist/scripts/tests/check.test.sh +582 -0
  657. package/pennyfarthing-dist/scripts/tests/dev-story-workflow-import.test.sh +515 -0
  658. package/pennyfarthing-dist/scripts/tests/epics-and-stories-workflow-import.test.sh +599 -0
  659. package/pennyfarthing-dist/scripts/tests/handoff-phase-update.test.sh +332 -0
  660. package/pennyfarthing-dist/scripts/tests/implementation-readiness-workflow-import.test.sh +573 -0
  661. package/pennyfarthing-dist/scripts/tests/migrate-bmad-workflow.test.sh +859 -0
  662. package/pennyfarthing-dist/scripts/tests/prd-workflow-import.test.sh +662 -0
  663. package/pennyfarthing-dist/scripts/tests/project-context-workflow-import.test.sh +589 -0
  664. package/pennyfarthing-dist/scripts/tests/test-character-voice.sh +105 -0
  665. package/pennyfarthing-dist/scripts/tests/test-drift-detection.sh +597 -0
  666. package/pennyfarthing-dist/scripts/tests/test-post-merge-hook.sh +514 -0
  667. package/pennyfarthing-dist/scripts/tests/test-session-checkpoint.sh +517 -0
  668. package/pennyfarthing-dist/scripts/tests/test-solo-command.sh +331 -0
  669. package/pennyfarthing-dist/scripts/tests/ux-design-workflow-import.test.sh +647 -0
  670. package/pennyfarthing-dist/scripts/theme/README.md +22 -0
  671. package/pennyfarthing-dist/scripts/theme/compute-theme-tiers.js +492 -0
  672. package/pennyfarthing-dist/scripts/theme/compute-theme-tiers.sh +11 -0
  673. package/pennyfarthing-dist/scripts/theme/list-themes.sh +73 -0
  674. package/pennyfarthing-dist/scripts/theme/update-theme-tiers.sh +97 -0
  675. package/pennyfarthing-dist/scripts/workflow/README.md +28 -0
  676. package/pennyfarthing-dist/scripts/workflow/check.sh +497 -0
  677. package/pennyfarthing-dist/scripts/workflow/finish-story.sh +159 -0
  678. package/pennyfarthing-dist/scripts/workflow/fix-session-phase.sh +228 -0
  679. package/pennyfarthing-dist/scripts/workflow/list-workflows.sh +124 -0
  680. package/pennyfarthing-dist/scripts/workflow/phase-owner.sh +40 -0
  681. package/pennyfarthing-dist/scripts/workflow/resume-workflow.sh +163 -0
  682. package/pennyfarthing-dist/scripts/workflow/show-workflow.sh +138 -0
  683. package/pennyfarthing-dist/scripts/workflow/start-workflow.sh +256 -0
  684. package/pennyfarthing-dist/scripts/workflow/workflow-status.sh +167 -0
  685. package/pennyfarthing-dist/skills/agentic-patterns/SKILL.md +242 -0
  686. package/pennyfarthing-dist/skills/changelog/SKILL.md +367 -0
  687. package/pennyfarthing-dist/skills/code-review/SKILL.md +168 -0
  688. package/pennyfarthing-dist/skills/context-engineering/SKILL.md +274 -0
  689. package/pennyfarthing-dist/skills/cyclist/SKILL.md +88 -0
  690. package/pennyfarthing-dist/skills/dev-patterns/SKILL.md +437 -0
  691. package/pennyfarthing-dist/skills/finalize-run/SKILL.md +258 -0
  692. package/pennyfarthing-dist/skills/jira/SKILL.md +484 -0
  693. package/pennyfarthing-dist/skills/judge/SKILL.md +579 -0
  694. package/pennyfarthing-dist/skills/just/SKILL.md +403 -0
  695. package/pennyfarthing-dist/skills/mermaid/SKILL.md +240 -0
  696. package/pennyfarthing-dist/skills/otel/skill.md +223 -0
  697. package/pennyfarthing-dist/skills/permissions/skill.md +172 -0
  698. package/pennyfarthing-dist/skills/persona-benchmark/SKILL.md +178 -0
  699. package/pennyfarthing-dist/skills/skill-registry.schema.json +107 -0
  700. package/pennyfarthing-dist/skills/skill-registry.yaml +357 -0
  701. package/pennyfarthing-dist/skills/sprint/scripts/archive-story.sh +101 -0
  702. package/pennyfarthing-dist/skills/sprint/scripts/available-stories.sh +97 -0
  703. package/pennyfarthing-dist/skills/sprint/scripts/check-story.sh +164 -0
  704. package/pennyfarthing-dist/skills/sprint/scripts/create-jira-epic.sh +101 -0
  705. package/pennyfarthing-dist/skills/sprint/scripts/new-sprint.sh +116 -0
  706. package/pennyfarthing-dist/skills/sprint/scripts/promote-epic.sh +164 -0
  707. package/pennyfarthing-dist/skills/sprint/scripts/sprint-info.sh +39 -0
  708. package/pennyfarthing-dist/skills/sprint/scripts/sprint-status.sh +147 -0
  709. package/pennyfarthing-dist/skills/sprint/scripts/sync-epic-jira.sh +104 -0
  710. package/pennyfarthing-dist/skills/sprint/skill.md +465 -0
  711. package/pennyfarthing-dist/skills/story/scripts/create-story.sh +159 -0
  712. package/pennyfarthing-dist/skills/story/scripts/size-story.sh +198 -0
  713. package/pennyfarthing-dist/skills/story/scripts/story-template.sh +162 -0
  714. package/pennyfarthing-dist/skills/story/skill.md +219 -0
  715. package/pennyfarthing-dist/skills/systematic-debugging/SKILL.md +390 -0
  716. package/pennyfarthing-dist/skills/testing/SKILL.md +99 -0
  717. package/pennyfarthing-dist/skills/testing/references/troubleshooting.md +124 -0
  718. package/pennyfarthing-dist/skills/theme/skill.md +129 -0
  719. package/pennyfarthing-dist/skills/theme-creation/SKILL.md +174 -0
  720. package/pennyfarthing-dist/skills/workflow/scripts/list-workflows.sh +91 -0
  721. package/pennyfarthing-dist/skills/workflow/scripts/resume-workflow.sh +163 -0
  722. package/pennyfarthing-dist/skills/workflow/scripts/show-workflow.sh +138 -0
  723. package/pennyfarthing-dist/skills/workflow/scripts/start-workflow.sh +273 -0
  724. package/pennyfarthing-dist/skills/workflow/scripts/workflow-status.sh +167 -0
  725. package/pennyfarthing-dist/skills/workflow/skill.md +337 -0
  726. package/pennyfarthing-dist/skills/yq/SKILL.md +264 -0
  727. package/pennyfarthing-dist/templates/LEADERBOARD.schema.yaml +187 -0
  728. package/pennyfarthing-dist/templates/LEADERBOARD.template.md +59 -0
  729. package/pennyfarthing-dist/templates/agent-scopes.yaml.template +276 -0
  730. package/pennyfarthing-dist/templates/pennyfarthing-settings.yaml.template +61 -0
  731. package/pennyfarthing-dist/templates/persona-config.yaml.template +22 -0
  732. package/pennyfarthing-dist/templates/preferences.yaml.template +15 -0
  733. package/pennyfarthing-dist/templates/settings.local.json.template +90 -0
  734. package/pennyfarthing-dist/templates/setup-env.sh.template +18 -0
  735. package/pennyfarthing-dist/templates/shared-context.md.template +70 -0
  736. package/pennyfarthing-dist/templates/sidecar/decisions.md.template +40 -0
  737. package/pennyfarthing-dist/templates/sidecar/gotchas.md.template +37 -0
  738. package/pennyfarthing-dist/templates/sidecar/patterns.md.template +34 -0
  739. package/pennyfarthing-dist/workflows/agent-docs.yaml +70 -0
  740. package/pennyfarthing-dist/workflows/architecture/steps/step-01-initialize.md +101 -0
  741. package/pennyfarthing-dist/workflows/architecture/steps/step-01b-continue.md +93 -0
  742. package/pennyfarthing-dist/workflows/architecture/steps/step-02-context.md +115 -0
  743. package/pennyfarthing-dist/workflows/architecture/steps/step-03-patterns.md +133 -0
  744. package/pennyfarthing-dist/workflows/architecture/steps/step-04-components.md +138 -0
  745. package/pennyfarthing-dist/workflows/architecture/steps/step-05-interfaces.md +133 -0
  746. package/pennyfarthing-dist/workflows/architecture/steps/step-06-risks.md +142 -0
  747. package/pennyfarthing-dist/workflows/architecture/steps/step-07-document.md +160 -0
  748. package/pennyfarthing-dist/workflows/architecture/templates/architecture-decision.md +102 -0
  749. package/pennyfarthing-dist/workflows/architecture.yaml +65 -0
  750. package/pennyfarthing-dist/workflows/bdd.yaml +60 -0
  751. package/pennyfarthing-dist/workflows/brainstorming/brain-methods.csv +62 -0
  752. package/pennyfarthing-dist/workflows/brainstorming/checklist.md +44 -0
  753. package/pennyfarthing-dist/workflows/brainstorming/instructions.md +736 -0
  754. package/pennyfarthing-dist/workflows/brainstorming/workflow.yaml +49 -0
  755. package/pennyfarthing-dist/workflows/code-review/checklist.md +23 -0
  756. package/pennyfarthing-dist/workflows/code-review/instructions.md +234 -0
  757. package/pennyfarthing-dist/workflows/code-review/workflow.yaml +51 -0
  758. package/pennyfarthing-dist/workflows/dev-story/checklist.md +80 -0
  759. package/pennyfarthing-dist/workflows/dev-story/instructions.xml +410 -0
  760. package/pennyfarthing-dist/workflows/dev-story/workflow.yaml +50 -0
  761. package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-01-validate-prerequisites.md +256 -0
  762. package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-02-design-epics.md +233 -0
  763. package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-03-create-stories.md +272 -0
  764. package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-04-final-validation.md +153 -0
  765. package/pennyfarthing-dist/workflows/epics-and-stories/steps/step-05-import-to-future.md +122 -0
  766. package/pennyfarthing-dist/workflows/epics-and-stories/templates/epics-template.md +57 -0
  767. package/pennyfarthing-dist/workflows/epics-and-stories/workflow.yaml +28 -0
  768. package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-01-document-discovery.md +190 -0
  769. package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-02-prd-analysis.md +178 -0
  770. package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-03-epic-coverage-validation.md +179 -0
  771. package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-04-ux-alignment.md +139 -0
  772. package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-05-epic-quality-review.md +252 -0
  773. package/pennyfarthing-dist/workflows/implementation-readiness/steps/step-06-final-assessment.md +133 -0
  774. package/pennyfarthing-dist/workflows/implementation-readiness/templates/readiness-report-template.md +4 -0
  775. package/pennyfarthing-dist/workflows/implementation-readiness/workflow.yaml +40 -0
  776. package/pennyfarthing-dist/workflows/prd/data/domain-complexity.csv +13 -0
  777. package/pennyfarthing-dist/workflows/prd/data/prd-purpose.md +197 -0
  778. package/pennyfarthing-dist/workflows/prd/data/project-types.csv +11 -0
  779. package/pennyfarthing-dist/workflows/prd/steps-c/step-01-init.md +191 -0
  780. package/pennyfarthing-dist/workflows/prd/steps-c/step-01b-continue.md +153 -0
  781. package/pennyfarthing-dist/workflows/prd/steps-c/step-02-discovery.md +224 -0
  782. package/pennyfarthing-dist/workflows/prd/steps-c/step-03-success.md +226 -0
  783. package/pennyfarthing-dist/workflows/prd/steps-c/step-04-journeys.md +213 -0
  784. package/pennyfarthing-dist/workflows/prd/steps-c/step-05-domain.md +207 -0
  785. package/pennyfarthing-dist/workflows/prd/steps-c/step-06-innovation.md +226 -0
  786. package/pennyfarthing-dist/workflows/prd/steps-c/step-07-project-type.md +237 -0
  787. package/pennyfarthing-dist/workflows/prd/steps-c/step-08-scoping.md +228 -0
  788. package/pennyfarthing-dist/workflows/prd/steps-c/step-09-functional.md +231 -0
  789. package/pennyfarthing-dist/workflows/prd/steps-c/step-10-nonfunctional.md +242 -0
  790. package/pennyfarthing-dist/workflows/prd/steps-c/step-11-polish.md +217 -0
  791. package/pennyfarthing-dist/workflows/prd/steps-c/step-12-complete.md +180 -0
  792. package/pennyfarthing-dist/workflows/prd/steps-e/step-e-01-discovery.md +247 -0
  793. package/pennyfarthing-dist/workflows/prd/steps-e/step-e-01b-legacy-conversion.md +208 -0
  794. package/pennyfarthing-dist/workflows/prd/steps-e/step-e-02-review.md +249 -0
  795. package/pennyfarthing-dist/workflows/prd/steps-e/step-e-03-edit.md +253 -0
  796. package/pennyfarthing-dist/workflows/prd/steps-e/step-e-04-complete.md +168 -0
  797. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-01-discovery.md +218 -0
  798. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-02-format-detection.md +191 -0
  799. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-02b-parity-check.md +209 -0
  800. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-03-density-validation.md +174 -0
  801. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-04-brief-coverage-validation.md +214 -0
  802. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-05-measurability-validation.md +228 -0
  803. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-06-traceability-validation.md +217 -0
  804. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-07-implementation-leakage-validation.md +205 -0
  805. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-08-domain-compliance-validation.md +243 -0
  806. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-09-project-type-validation.md +263 -0
  807. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-10-smart-validation.md +209 -0
  808. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-11-holistic-quality-validation.md +264 -0
  809. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-12-completeness-validation.md +242 -0
  810. package/pennyfarthing-dist/workflows/prd/steps-v/step-v-13-report-complete.md +232 -0
  811. package/pennyfarthing-dist/workflows/prd/templates/prd-template.md +10 -0
  812. package/pennyfarthing-dist/workflows/prd/workflow.yaml +42 -0
  813. package/pennyfarthing-dist/workflows/product-brief/steps/step-01-init.md +177 -0
  814. package/pennyfarthing-dist/workflows/product-brief/steps/step-01b-continue.md +161 -0
  815. package/pennyfarthing-dist/workflows/product-brief/steps/step-02-vision.md +199 -0
  816. package/pennyfarthing-dist/workflows/product-brief/steps/step-03-users.md +202 -0
  817. package/pennyfarthing-dist/workflows/product-brief/steps/step-04-metrics.md +205 -0
  818. package/pennyfarthing-dist/workflows/product-brief/steps/step-05-scope.md +219 -0
  819. package/pennyfarthing-dist/workflows/product-brief/steps/step-06-complete.md +194 -0
  820. package/pennyfarthing-dist/workflows/product-brief/templates/product-brief.template.md +10 -0
  821. package/pennyfarthing-dist/workflows/product-brief/workflow.yaml +31 -0
  822. package/pennyfarthing-dist/workflows/project-context/project-context-template.md +21 -0
  823. package/pennyfarthing-dist/workflows/project-context/steps/step-01-discover.md +184 -0
  824. package/pennyfarthing-dist/workflows/project-context/steps/step-02-generate.md +318 -0
  825. package/pennyfarthing-dist/workflows/project-context/steps/step-03-complete.md +278 -0
  826. package/pennyfarthing-dist/workflows/project-context/workflow.yaml +27 -0
  827. package/pennyfarthing-dist/workflows/quick-dev/steps/step-01-mode-detection.md +156 -0
  828. package/pennyfarthing-dist/workflows/quick-dev/steps/step-02-context-gathering.md +120 -0
  829. package/pennyfarthing-dist/workflows/quick-dev/steps/step-03-execute.md +113 -0
  830. package/pennyfarthing-dist/workflows/quick-dev/steps/step-04-self-check.md +113 -0
  831. package/pennyfarthing-dist/workflows/quick-dev/steps/step-05-adversarial-review.md +106 -0
  832. package/pennyfarthing-dist/workflows/quick-dev/steps/step-06-resolve-findings.md +140 -0
  833. package/pennyfarthing-dist/workflows/quick-dev/workflow.yaml +27 -0
  834. package/pennyfarthing-dist/workflows/quick-spec/steps/step-01-understand.md +189 -0
  835. package/pennyfarthing-dist/workflows/quick-spec/steps/step-02-investigate.md +144 -0
  836. package/pennyfarthing-dist/workflows/quick-spec/steps/step-03-generate.md +128 -0
  837. package/pennyfarthing-dist/workflows/quick-spec/steps/step-04-review.md +191 -0
  838. package/pennyfarthing-dist/workflows/quick-spec/tech-spec-template.md +74 -0
  839. package/pennyfarthing-dist/workflows/quick-spec/workflow.yaml +27 -0
  840. package/pennyfarthing-dist/workflows/research/steps-domain/step-01-init.md +137 -0
  841. package/pennyfarthing-dist/workflows/research/steps-domain/step-02-domain-analysis.md +229 -0
  842. package/pennyfarthing-dist/workflows/research/steps-domain/step-03-competitive-landscape.md +238 -0
  843. package/pennyfarthing-dist/workflows/research/steps-domain/step-04-regulatory-focus.md +206 -0
  844. package/pennyfarthing-dist/workflows/research/steps-domain/step-05-technical-trends.md +234 -0
  845. package/pennyfarthing-dist/workflows/research/steps-domain/step-06-research-synthesis.md +443 -0
  846. package/pennyfarthing-dist/workflows/research/steps-market/step-01-init.md +182 -0
  847. package/pennyfarthing-dist/workflows/research/steps-market/step-02-customer-behavior.md +237 -0
  848. package/pennyfarthing-dist/workflows/research/steps-market/step-02-customer-insights.md +200 -0
  849. package/pennyfarthing-dist/workflows/research/steps-market/step-03-customer-pain-points.md +249 -0
  850. package/pennyfarthing-dist/workflows/research/steps-market/step-04-customer-decisions.md +259 -0
  851. package/pennyfarthing-dist/workflows/research/steps-market/step-05-competitive-analysis.md +177 -0
  852. package/pennyfarthing-dist/workflows/research/steps-market/step-06-research-completion.md +475 -0
  853. package/pennyfarthing-dist/workflows/research/steps-technical/step-01-init.md +137 -0
  854. package/pennyfarthing-dist/workflows/research/steps-technical/step-02-technical-overview.md +239 -0
  855. package/pennyfarthing-dist/workflows/research/steps-technical/step-03-integration-patterns.md +248 -0
  856. package/pennyfarthing-dist/workflows/research/steps-technical/step-04-architectural-patterns.md +202 -0
  857. package/pennyfarthing-dist/workflows/research/steps-technical/step-05-implementation-research.md +239 -0
  858. package/pennyfarthing-dist/workflows/research/steps-technical/step-06-research-synthesis.md +486 -0
  859. package/pennyfarthing-dist/workflows/research/templates/research.template.md +29 -0
  860. package/pennyfarthing-dist/workflows/research/workflow.yaml +45 -0
  861. package/pennyfarthing-dist/workflows/retrospective/checklist.md +31 -0
  862. package/pennyfarthing-dist/workflows/retrospective/instructions.md +1443 -0
  863. package/pennyfarthing-dist/workflows/retrospective/workflow.yaml +50 -0
  864. package/pennyfarthing-dist/workflows/sprint-planning/checklist.md +33 -0
  865. package/pennyfarthing-dist/workflows/sprint-planning/sprint-status-template.yaml +55 -0
  866. package/pennyfarthing-dist/workflows/sprint-planning/steps/step-01-parse-epic-files.md +54 -0
  867. package/pennyfarthing-dist/workflows/sprint-planning/steps/step-02-build-sprint-status.md +44 -0
  868. package/pennyfarthing-dist/workflows/sprint-planning/steps/step-03-status-detection.md +64 -0
  869. package/pennyfarthing-dist/workflows/sprint-planning/steps/step-04-generate-status-file.md +73 -0
  870. package/pennyfarthing-dist/workflows/sprint-planning/steps/step-05-validate-and-report.md +56 -0
  871. package/pennyfarthing-dist/workflows/sprint-planning/workflow.yaml +34 -0
  872. package/pennyfarthing-dist/workflows/tdd.yaml +50 -0
  873. package/pennyfarthing-dist/workflows/trivial.yaml +40 -0
  874. package/pennyfarthing-dist/workflows/ux-design/steps/step-01-init.md +135 -0
  875. package/pennyfarthing-dist/workflows/ux-design/steps/step-01b-continue.md +127 -0
  876. package/pennyfarthing-dist/workflows/ux-design/steps/step-02-discovery.md +190 -0
  877. package/pennyfarthing-dist/workflows/ux-design/steps/step-03-core-experience.md +216 -0
  878. package/pennyfarthing-dist/workflows/ux-design/steps/step-04-emotional-response.md +219 -0
  879. package/pennyfarthing-dist/workflows/ux-design/steps/step-05-inspiration.md +234 -0
  880. package/pennyfarthing-dist/workflows/ux-design/steps/step-06-design-system.md +252 -0
  881. package/pennyfarthing-dist/workflows/ux-design/steps/step-07-defining-experience.md +254 -0
  882. package/pennyfarthing-dist/workflows/ux-design/steps/step-08-visual-foundation.md +224 -0
  883. package/pennyfarthing-dist/workflows/ux-design/steps/step-09-design-directions.md +224 -0
  884. package/pennyfarthing-dist/workflows/ux-design/steps/step-10-user-journeys.md +241 -0
  885. package/pennyfarthing-dist/workflows/ux-design/steps/step-11-component-strategy.md +248 -0
  886. package/pennyfarthing-dist/workflows/ux-design/steps/step-12-ux-patterns.md +237 -0
  887. package/pennyfarthing-dist/workflows/ux-design/steps/step-13-responsive-accessibility.md +264 -0
  888. package/pennyfarthing-dist/workflows/ux-design/steps/step-14-complete.md +228 -0
  889. package/pennyfarthing-dist/workflows/ux-design/ux-design-template.md +13 -0
  890. package/pennyfarthing-dist/workflows/ux-design/workflow.yaml +41 -0
  891. package/dist/cli/utils/files.js +0 -179
  892. package/dist/cli/utils/manifest.js +0 -93
  893. package/dist/cli/utils/version.js +0 -70
  894. package/dist/index.js +0 -48
  895. package/dist/permissions/index.js +0 -16
  896. package/dist/scripts/job-fair-aggregator.js +0 -690
  897. package/dist/workflow/index.js +0 -31
  898. /package/{bin → packages/core/bin}/pennyfarthing.js +0 -0
@@ -0,0 +1,191 @@
1
+ ---
2
+ name: 'step-04-review'
3
+ description: 'Review and finalize the tech-spec'
4
+
5
+ workflow_path: '{project_root}/_bmad/bmm/workflows/bmad-quick-flow/quick-spec'
6
+ wipFile: '{implementation_artifacts}/tech-spec-wip.md'
7
+ ---
8
+
9
+ # Step 4: Review & Finalize
10
+
11
+ **Progress: Step 4 of 4** - Final Step
12
+
13
+ ## RULES:
14
+
15
+ - MUST NOT skip steps.
16
+ - MUST NOT optimize sequence.
17
+ - MUST follow exact instructions.
18
+ - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
19
+
20
+ ## CONTEXT:
21
+
22
+ - Requires `{wipFile}` from Step 3.
23
+ - MUST present COMPLETE spec content. Iterate until user is satisfied.
24
+ - **Criteria**: The spec MUST meet the **READY FOR DEVELOPMENT** standard defined in `workflow.md`.
25
+
26
+ ## SEQUENCE OF INSTRUCTIONS
27
+
28
+ ### 1. Load and Present Complete Spec
29
+
30
+ **Read `{wipFile}` completely and extract `slug` from frontmatter for later use.**
31
+
32
+ **Present to user:**
33
+
34
+ "Here's your complete tech-spec. Please review:"
35
+
36
+ [Display the complete spec content - all sections]
37
+
38
+ "**Quick Summary:**
39
+
40
+ - {task_count} tasks to implement
41
+ - {ac_count} acceptance criteria to verify
42
+ - {files_count} files to modify"
43
+
44
+ **Present review menu:**
45
+
46
+ ```
47
+ [y] Approve - finalize the spec
48
+ [c] Changes - request modifications
49
+ [q] Questions - ask about any section
50
+ [a] Advanced Elicitation - dig deeper before approving
51
+ [p] Party Mode - get expert feedback before approving
52
+ ```
53
+
54
+ **HALT and wait for user selection.**
55
+
56
+ #### Menu Handling:
57
+
58
+ - **[y]**: Proceed to Section 3 (Finalize the Spec)
59
+ - **[c]**: Proceed to Section 2 (Handle Review Feedback), then return here and redisplay menu
60
+ - **[q]**: Answer questions, then redisplay this menu
61
+ - **[a]**: Load and execute `{advanced_elicitation}`, then return here and redisplay menu
62
+ - **[p]**: Load and execute `{party_mode_exec}`, then return here and redisplay menu
63
+
64
+ ### 2. Handle Review Feedback
65
+
66
+ a) **If user requests changes:**
67
+
68
+ - Make the requested edits to `{wipFile}`
69
+ - Re-present the affected sections
70
+ - Ask if there are more changes
71
+ - Loop until user is satisfied
72
+
73
+ b) **If the spec does NOT meet the "Ready for Development" standard:**
74
+
75
+ - Point out the missing/weak sections (e.g., non-actionable tasks, missing ACs).
76
+ - Propose specific improvements to reach the standard.
77
+ - Make the edits once the user agrees.
78
+
79
+ c) **If user has questions:**
80
+
81
+ - Answer questions about the spec
82
+ - Clarify any confusing sections
83
+ - Make clarifying edits if needed
84
+
85
+ ### 3. Finalize the Spec
86
+
87
+ **When user confirms the spec is good AND it meets the "Ready for Development" standard:**
88
+
89
+ a) Update `{wipFile}` frontmatter:
90
+
91
+ ```yaml
92
+ ---
93
+ # ... existing values ...
94
+ status: 'ready-for-dev'
95
+ stepsCompleted: [1, 2, 3, 4]
96
+ ---
97
+ ```
98
+
99
+ b) **Rename WIP file to final filename:**
100
+ - Using the `slug` extracted in Section 1
101
+ - Rename `{wipFile}` → `{implementation_artifacts}/tech-spec-{slug}.md`
102
+ - Store this as `finalFile` for use in menus below
103
+
104
+ ### 4. Present Final Menu
105
+
106
+ a) **Display completion message and menu:**
107
+
108
+ ```
109
+ **Tech-Spec Complete!**
110
+
111
+ Saved to: {finalFile}
112
+
113
+ ---
114
+
115
+ **Next Steps:**
116
+
117
+ [a] Advanced Elicitation - refine further
118
+ [r] Adversarial Review - critique of the spec (highly recommended)
119
+ [b] Begin Development - start implementing now (not recommended)
120
+ [d] Done - exit workflow
121
+ [p] Party Mode - get expert feedback before dev
122
+
123
+ ---
124
+
125
+ Once you are fully satisfied with the spec (ideally after **Adversarial Review** and maybe a few rounds of **Advanced Elicitation**), it is recommended to run implementation in a FRESH CONTEXT for best results.
126
+
127
+ Copy this prompt to start dev:
128
+
129
+ \`\`\`
130
+ quick-dev {finalFile}
131
+ \`\`\`
132
+
133
+ This ensures the dev agent has clean context focused solely on implementation.
134
+ ```
135
+
136
+ b) **HALT and wait for user selection.**
137
+
138
+ #### Menu Handling:
139
+
140
+ - **[a]**: Load and execute `{advanced_elicitation}`, then return here and redisplay menu
141
+ - **[b]**: Load and execute `{quick_dev_workflow}` with the final spec file (warn: fresh context is better)
142
+ - **[d]**: Exit workflow - display final confirmation and path to spec
143
+ - **[p]**: Load and execute `{party_mode_exec}`, then return here and redisplay menu
144
+ - **[r]**: Execute Adversarial Review:
145
+ 1. **Invoke Adversarial Review Task**:
146
+ > With `{finalFile}` constructed, invoke the review task. If possible, use information asymmetry: run this task, and only it, in a separate subagent or process with read access to the project, but no context except the `{finalFile}`.
147
+ <invoke-task>Review {finalFile} using {project_root}/_bmad/core/tasks/review-adversarial-general.xml</invoke-task>
148
+ > **Platform fallback:** If task invocation not available, load the task file and execute its instructions inline, passing `{finalFile}` as the content.
149
+ > The task should: review `{finalFile}` and return a list of findings.
150
+
151
+ 2. **Process Findings**:
152
+ > Capture the findings from the task output.
153
+ > **If zero findings:** HALT - this is suspicious. Re-analyze or request user guidance.
154
+ > Evaluate severity (Critical, High, Medium, Low) and validity (real, noise, undecided).
155
+ > DO NOT exclude findings based on severity or validity unless explicitly asked to do so.
156
+ > Order findings by severity.
157
+ > Number the ordered findings (F1, F2, F3, etc.).
158
+ > If TodoWrite or similar tool is available, turn each finding into a TODO, include ID, severity, validity, and description in the TODO; otherwise present findings as a table with columns: ID, Severity, Validity, Description
159
+
160
+ 3. Return here and redisplay menu.
161
+
162
+ ### 5. Exit Workflow
163
+
164
+ **When user selects [d]:**
165
+
166
+ "**All done!** Your tech-spec is ready at:
167
+
168
+ `{finalFile}`
169
+
170
+ When you're ready to implement, run:
171
+
172
+ ```
173
+ quick-dev {finalFile}
174
+ ```
175
+
176
+ Ship it!"
177
+
178
+ ---
179
+
180
+ ## REQUIRED OUTPUTS:
181
+
182
+ - MUST update status to 'ready-for-dev'.
183
+ - MUST rename file to `tech-spec-{slug}.md`.
184
+ - MUST provide clear next-step guidance and recommend fresh context for dev.
185
+
186
+ ## VERIFICATION CHECKLIST:
187
+
188
+ - [ ] Complete spec presented for review.
189
+ - [ ] Requested changes implemented.
190
+ - [ ] Spec verified against **READY FOR DEVELOPMENT** standard.
191
+ - [ ] `stepsCompleted: [1, 2, 3, 4]` set and file renamed.
@@ -0,0 +1,74 @@
1
+ ---
2
+ title: '{title}'
3
+ slug: '{slug}'
4
+ created: '{date}'
5
+ status: 'in-progress'
6
+ stepsCompleted: []
7
+ tech_stack: []
8
+ files_to_modify: []
9
+ code_patterns: []
10
+ test_patterns: []
11
+ ---
12
+
13
+ # Tech-Spec: {title}
14
+
15
+ **Created:** {date}
16
+
17
+ ## Overview
18
+
19
+ ### Problem Statement
20
+
21
+ {problem_statement}
22
+
23
+ ### Solution
24
+
25
+ {solution}
26
+
27
+ ### Scope
28
+
29
+ **In Scope:**
30
+ {in_scope}
31
+
32
+ **Out of Scope:**
33
+ {out_of_scope}
34
+
35
+ ## Context for Development
36
+
37
+ ### Codebase Patterns
38
+
39
+ {codebase_patterns}
40
+
41
+ ### Files to Reference
42
+
43
+ | File | Purpose |
44
+ | ---- | ------- |
45
+
46
+ {files_table}
47
+
48
+ ### Technical Decisions
49
+
50
+ {technical_decisions}
51
+
52
+ ## Implementation Plan
53
+
54
+ ### Tasks
55
+
56
+ {tasks}
57
+
58
+ ### Acceptance Criteria
59
+
60
+ {acceptance_criteria}
61
+
62
+ ## Additional Context
63
+
64
+ ### Dependencies
65
+
66
+ {dependencies}
67
+
68
+ ### Testing Strategy
69
+
70
+ {testing_strategy}
71
+
72
+ ### Notes
73
+
74
+ {notes}
@@ -0,0 +1,27 @@
1
+ # quick-spec Workflow - Migrated from BMAD format
2
+ # Generated by migrate-bmad-workflow.mjs
3
+
4
+ workflow:
5
+ name: quick-spec
6
+ description: Conversational spec engineering - ask questions, investigate code, produce implementation-ready tech-spec.
7
+ version: "1.0.0"
8
+ type: stepped
9
+
10
+ # Step configuration
11
+ steps:
12
+ path: ./steps/
13
+ pattern: step-*.md
14
+
15
+ # Variables available in step files
16
+ variables:
17
+ project_root: .
18
+ planning_artifacts: ./artifacts
19
+ output_file: artifacts/quick-spec.md
20
+
21
+ # Agent assignment (customize as needed)
22
+ agent: architect
23
+
24
+ # Triggers - when to suggest this workflow
25
+ triggers:
26
+ types: [quick-spec]
27
+ tags: [quick-spec, stepped]
@@ -0,0 +1,137 @@
1
+ # Domain Research Step 1: Domain Research Scope Confirmation
2
+
3
+ ## MANDATORY EXECUTION RULES (READ FIRST):
4
+
5
+ - 🛑 NEVER generate content without user confirmation
6
+
7
+ - 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions
8
+ - 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding
9
+ - ✅ FOCUS EXCLUSIVELY on confirming domain research scope and approach
10
+ - 📋 YOU ARE A DOMAIN RESEARCH PLANNER, not content generator
11
+ - 💬 ACKNOWLEDGE and CONFIRM understanding of domain research goals
12
+ - 🔍 This is SCOPE CONFIRMATION ONLY - no web research yet
13
+ - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
14
+
15
+ ## EXECUTION PROTOCOLS:
16
+
17
+ - 🎯 Show your analysis before taking any action
18
+ - ⚠️ Present [C] continue option after scope confirmation
19
+ - 💾 ONLY proceed when user chooses C (Continue)
20
+ - 📖 Update frontmatter `stepsCompleted: [1]` before loading next step
21
+ - 🚫 FORBIDDEN to load next step until C is selected
22
+
23
+ ## CONTEXT BOUNDARIES:
24
+
25
+ - Research type = "domain" is already set
26
+ - **Research topic = "{{research_topic}}"** - discovered from initial discussion
27
+ - **Research goals = "{{research_goals}}"** - captured from initial discussion
28
+ - Focus on industry/domain analysis with web research
29
+ - Web search is required to verify and supplement your knowledge with current facts
30
+
31
+ ## YOUR TASK:
32
+
33
+ Confirm domain research scope and approach for **{{research_topic}}** with the user's goals in mind.
34
+
35
+ ## DOMAIN SCOPE CONFIRMATION:
36
+
37
+ ### 1. Begin Scope Confirmation
38
+
39
+ Start with domain scope understanding:
40
+ "I understand you want to conduct **domain research** for **{{research_topic}}** with these goals: {{research_goals}}
41
+
42
+ **Domain Research Scope:**
43
+
44
+ - **Industry Analysis**: Industry structure, market dynamics, and competitive landscape
45
+ - **Regulatory Environment**: Compliance requirements, regulations, and standards
46
+ - **Technology Patterns**: Innovation trends, technology adoption, and digital transformation
47
+ - **Economic Factors**: Market size, growth trends, and economic impact
48
+ - **Supply Chain**: Value chain analysis and ecosystem relationships
49
+
50
+ **Research Approach:**
51
+
52
+ - All claims verified against current public sources
53
+ - Multi-source validation for critical domain claims
54
+ - Confidence levels for uncertain domain information
55
+ - Comprehensive domain coverage with industry-specific insights
56
+
57
+ ### 2. Scope Confirmation
58
+
59
+ Present clear scope confirmation:
60
+ "**Domain Research Scope Confirmation:**
61
+
62
+ For **{{research_topic}}**, I will research:
63
+
64
+ ✅ **Industry Analysis** - market structure, key players, competitive dynamics
65
+ ✅ **Regulatory Requirements** - compliance standards, legal frameworks
66
+ ✅ **Technology Trends** - innovation patterns, digital transformation
67
+ ✅ **Economic Factors** - market size, growth projections, economic impact
68
+ ✅ **Supply Chain Analysis** - value chain, ecosystem, partnerships
69
+
70
+ **All claims verified against current public sources.**
71
+
72
+ **Does this domain research scope and approach align with your goals?**
73
+ [C] Continue - Begin domain research with this scope
74
+
75
+ ### 3. Handle Continue Selection
76
+
77
+ #### If 'C' (Continue):
78
+
79
+ - Document scope confirmation in research file
80
+ - Update frontmatter: `stepsCompleted: [1]`
81
+ - Load: `./step-02-domain-analysis.md`
82
+
83
+ ## APPEND TO DOCUMENT:
84
+
85
+ When user selects 'C', append scope confirmation:
86
+
87
+ ```markdown
88
+ ## Domain Research Scope Confirmation
89
+
90
+ **Research Topic:** {{research_topic}}
91
+ **Research Goals:** {{research_goals}}
92
+
93
+ **Domain Research Scope:**
94
+
95
+ - Industry Analysis - market structure, competitive landscape
96
+ - Regulatory Environment - compliance requirements, legal frameworks
97
+ - Technology Trends - innovation patterns, digital transformation
98
+ - Economic Factors - market size, growth projections
99
+ - Supply Chain Analysis - value chain, ecosystem relationships
100
+
101
+ **Research Methodology:**
102
+
103
+ - All claims verified against current public sources
104
+ - Multi-source validation for critical domain claims
105
+ - Confidence level framework for uncertain information
106
+ - Comprehensive domain coverage with industry-specific insights
107
+
108
+ **Scope Confirmed:** {{date}}
109
+ ```
110
+
111
+ ## SUCCESS METRICS:
112
+
113
+ ✅ Domain research scope clearly confirmed with user
114
+ ✅ All domain analysis areas identified and explained
115
+ ✅ Research methodology emphasized
116
+ ✅ [C] continue option presented and handled correctly
117
+ ✅ Scope confirmation documented when user proceeds
118
+ ✅ Proper routing to next domain research step
119
+
120
+ ## FAILURE MODES:
121
+
122
+ ❌ Not clearly confirming domain research scope with user
123
+ ❌ Missing critical domain analysis areas
124
+ ❌ Not explaining that web search is required for current facts
125
+ ❌ Not presenting [C] continue option
126
+ ❌ Proceeding without user scope confirmation
127
+ ❌ Not routing to next domain research step
128
+
129
+ ❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions
130
+ ❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file
131
+ ❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols
132
+
133
+ ## NEXT STEP:
134
+
135
+ After user selects 'C', load `./step-02-domain-analysis.md` to begin industry analysis.
136
+
137
+ Remember: This is SCOPE CONFIRMATION ONLY - no actual domain research yet, just confirming the research approach and scope!
@@ -0,0 +1,229 @@
1
+ # Domain Research Step 2: Industry Analysis
2
+
3
+ ## MANDATORY EXECUTION RULES (READ FIRST):
4
+
5
+ - 🛑 NEVER generate content without web search verification
6
+
7
+ - 📖 CRITICAL: ALWAYS read the complete step file before taking any action - partial understanding leads to incomplete decisions
8
+ - 🔄 CRITICAL: When loading next step with 'C', ensure the entire file is read and understood before proceeding
9
+ - ✅ Search the web to verify and supplement your knowledge with current facts
10
+ - 📋 YOU ARE AN INDUSTRY ANALYST, not content generator
11
+ - 💬 FOCUS on market size, growth, and industry dynamics
12
+ - 🔍 WEB SEARCH REQUIRED - verify current facts against live sources
13
+ - 📝 WRITE CONTENT IMMEDIATELY TO DOCUMENT
14
+ - ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
15
+
16
+ ## EXECUTION PROTOCOLS:
17
+
18
+ - 🎯 Show web search analysis before presenting findings
19
+ - ⚠️ Present [C] continue option after industry analysis content generation
20
+ - 📝 WRITE INDUSTRY ANALYSIS TO DOCUMENT IMMEDIATELY
21
+ - 💾 ONLY proceed when user chooses C (Continue)
22
+ - 📖 Update frontmatter `stepsCompleted: [1, 2]` before loading next step
23
+ - 🚫 FORBIDDEN to load next step until C is selected
24
+
25
+ ## CONTEXT BOUNDARIES:
26
+
27
+ - Current document and frontmatter from step-01 are available
28
+ - **Research topic = "{{research_topic}}"** - established from initial discussion
29
+ - **Research goals = "{{research_goals}}"** - established from initial discussion
30
+ - Focus on market size, growth, and industry dynamics
31
+ - Web search capabilities with source verification are enabled
32
+
33
+ ## YOUR TASK:
34
+
35
+ Conduct industry analysis focusing on market size, growth, and industry dynamics. Search the web to verify and supplement current facts.
36
+
37
+ ## INDUSTRY ANALYSIS SEQUENCE:
38
+
39
+ ### 1. Begin Industry Analysis
40
+
41
+ **UTILIZE SUBPROCESSES AND SUBAGENTS**: Use research subagents, subprocesses or parallel processing if available to thoroughly analyze different industry areas simultaneously and thoroughly.
42
+
43
+ Start with industry research approach:
44
+ "Now I'll conduct **industry analysis** for **{{research_topic}}** to understand market dynamics.
45
+
46
+ **Industry Analysis Focus:**
47
+
48
+ - Market size and valuation metrics
49
+ - Growth rates and market dynamics
50
+ - Market segmentation and structure
51
+ - Industry trends and evolution patterns
52
+ - Economic impact and value creation
53
+
54
+ **Let me search for current industry insights.**"
55
+
56
+ ### 2. Parallel Industry Research Execution
57
+
58
+ **Execute multiple web searches simultaneously:**
59
+
60
+ Search the web: "{{research_topic}} market size value"
61
+ Search the web: "{{research_topic}} market growth rate dynamics"
62
+ Search the web: "{{research_topic}} market segmentation structure"
63
+ Search the web: "{{research_topic}} industry trends evolution"
64
+
65
+ **Analysis approach:**
66
+
67
+ - Look for recent market research reports and industry analyses
68
+ - Search for authoritative sources (market research firms, industry associations)
69
+ - Identify market size, growth rates, and segmentation data
70
+ - Research industry trends and evolution patterns
71
+ - Analyze economic impact and value creation metrics
72
+
73
+ ### 3. Analyze and Aggregate Results
74
+
75
+ **Collect and analyze findings from all parallel searches:**
76
+
77
+ "After executing comprehensive parallel web searches, let me analyze and aggregate industry findings:
78
+
79
+ **Research Coverage:**
80
+
81
+ - Market size and valuation analysis
82
+ - Growth rates and market dynamics
83
+ - Market segmentation and structure
84
+ - Industry trends and evolution patterns
85
+
86
+ **Cross-Industry Analysis:**
87
+ [Identify patterns connecting market dynamics, segmentation, and trends]
88
+
89
+ **Quality Assessment:**
90
+ [Overall confidence levels and research gaps identified]"
91
+
92
+ ### 4. Generate Industry Analysis Content
93
+
94
+ **WRITE IMMEDIATELY TO DOCUMENT**
95
+
96
+ Prepare industry analysis with web search citations:
97
+
98
+ #### Content Structure:
99
+
100
+ When saving to document, append these Level 2 and Level 3 sections:
101
+
102
+ ```markdown
103
+ ## Industry Analysis
104
+
105
+ ### Market Size and Valuation
106
+
107
+ [Market size analysis with source citations]
108
+ _Total Market Size: [Current market valuation]_
109
+ _Growth Rate: [CAGR and market growth projections]_
110
+ _Market Segments: [Size and value of key market segments]_
111
+ _Economic Impact: [Economic contribution and value creation]_
112
+ _Source: [URL]_
113
+
114
+ ### Market Dynamics and Growth
115
+
116
+ [Market dynamics analysis with source citations]
117
+ _Growth Drivers: [Key factors driving market growth]_
118
+ _Growth Barriers: [Factors limiting market expansion]_
119
+ _Cyclical Patterns: [Industry seasonality and cycles]_
120
+ _Market Maturity: [Life cycle stage and development phase]_
121
+ _Source: [URL]_
122
+
123
+ ### Market Structure and Segmentation
124
+
125
+ [Market structure analysis with source citations]
126
+ _Primary Segments: [Key market segments and their characteristics]_
127
+ _Sub-segment Analysis: [Detailed breakdown of market sub-segments]_
128
+ _Geographic Distribution: [Regional market variations and concentrations]_
129
+ _Vertical Integration: [Supply chain and value chain structure]_
130
+ _Source: [URL]_
131
+
132
+ ### Industry Trends and Evolution
133
+
134
+ [Industry trends analysis with source citations]
135
+ _Emerging Trends: [Current industry developments and transformations]_
136
+ _Historical Evolution: [Industry development over recent years]_
137
+ _Technology Integration: [How technology is changing the industry]_
138
+ _Future Outlook: [Projected industry developments and changes]_
139
+ _Source: [URL]_
140
+
141
+ ### Competitive Dynamics
142
+
143
+ [Competitive dynamics analysis with source citations]
144
+ _Market Concentration: [Level of market consolidation and competition]_
145
+ _Competitive Intensity: [Degree of competition and rivalry]_
146
+ _Barriers to Entry: [Obstacles for new market entrants]_
147
+ _Innovation Pressure: [Rate of innovation and change]_
148
+ _Source: [URL]_
149
+ ```
150
+
151
+ ### 5. Present Analysis and Continue Option
152
+
153
+ **Show analysis and present continue option:**
154
+
155
+ "I've completed **industry analysis** for {{research_topic}}.
156
+
157
+ **Key Industry Findings:**
158
+
159
+ - Market size and valuation thoroughly analyzed
160
+ - Growth dynamics and market structure documented
161
+ - Industry trends and evolution patterns identified
162
+ - Competitive dynamics clearly mapped
163
+ - Multiple sources verified for critical insights
164
+
165
+ **Ready to proceed to competitive landscape analysis?**
166
+ [C] Continue - Save this to document and proceed to competitive landscape
167
+
168
+ ### 6. Handle Continue Selection
169
+
170
+ #### If 'C' (Continue):
171
+
172
+ - **CONTENT ALREADY WRITTEN TO DOCUMENT**
173
+ - Update frontmatter: `stepsCompleted: [1, 2]`
174
+ - Load: `./step-03-competitive-landscape.md`
175
+
176
+ ## APPEND TO DOCUMENT:
177
+
178
+ Content is already written to document when generated in step 4. No additional append needed.
179
+
180
+ ## SUCCESS METRICS:
181
+
182
+ ✅ Market size and valuation thoroughly analyzed
183
+ ✅ Growth dynamics and market structure documented
184
+ ✅ Industry trends and evolution patterns identified
185
+ ✅ Competitive dynamics clearly mapped
186
+ ✅ Multiple sources verified for critical insights
187
+ ✅ Content written immediately to document
188
+ ✅ [C] continue option presented and handled correctly
189
+ ✅ Proper routing to next step (competitive landscape)
190
+ ✅ Research goals alignment maintained
191
+
192
+ ## FAILURE MODES:
193
+
194
+ ❌ Relying on training data instead of web search for current facts
195
+ ❌ Missing critical market size or growth data
196
+ ❌ Incomplete market structure analysis
197
+ ❌ Not identifying key industry trends
198
+ ❌ Not writing content immediately to document
199
+ ❌ Not presenting [C] continue option after content generation
200
+ ❌ Not routing to competitive landscape step
201
+
202
+ ❌ **CRITICAL**: Reading only partial step file - leads to incomplete understanding and poor decisions
203
+ ❌ **CRITICAL**: Proceeding with 'C' without fully reading and understanding the next step file
204
+ ❌ **CRITICAL**: Making decisions without complete understanding of step requirements and protocols
205
+
206
+ ## INDUSTRY RESEARCH PROTOCOLS:
207
+
208
+ - Research market research reports and industry analyses
209
+ - Use authoritative sources (market research firms, industry associations)
210
+ - Analyze market size, growth rates, and segmentation data
211
+ - Study industry trends and evolution patterns
212
+ - Search the web to verify facts
213
+ - Present conflicting information when sources disagree
214
+ - Apply confidence levels appropriately
215
+
216
+ ## INDUSTRY ANALYSIS STANDARDS:
217
+
218
+ - Always cite URLs for web search results
219
+ - Use authoritative industry research sources
220
+ - Note data currency and potential limitations
221
+ - Present multiple perspectives when sources conflict
222
+ - Apply confidence levels to uncertain data
223
+ - Focus on actionable industry insights
224
+
225
+ ## NEXT STEP:
226
+
227
+ After user selects 'C', load `./step-03-competitive-landscape.md` to analyze competitive landscape, key players, and ecosystem analysis for {{research_topic}}.
228
+
229
+ Remember: Always write research content to document immediately and search the web to verify facts!