edsger 0.77.0 → 0.79.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 (877) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +95 -210
  3. package/assets/LICENSE +21 -0
  4. package/assets/README.md +104 -0
  5. package/assets/benchmark/base.yaml +286 -0
  6. package/assets/benchmark/csharp.yaml +68 -0
  7. package/assets/benchmark/dart.yaml +70 -0
  8. package/assets/benchmark/go.yaml +71 -0
  9. package/assets/benchmark/java.yaml +68 -0
  10. package/assets/benchmark/python.yaml +72 -0
  11. package/assets/benchmark/typescript.yaml +71 -0
  12. package/assets/languages.yaml +35 -0
  13. package/assets/manifest.yaml +39 -0
  14. package/assets/review/base.yaml +111 -0
  15. package/assets/review/csharp.yaml +38 -0
  16. package/assets/review/dart.yaml +40 -0
  17. package/assets/review/go.yaml +40 -0
  18. package/assets/review/java.yaml +40 -0
  19. package/assets/review/python.yaml +41 -0
  20. package/assets/review/typescript.yaml +40 -0
  21. package/assets/schema/benchmark.schema.json +87 -0
  22. package/assets/schema/review.schema.json +73 -0
  23. package/assets/skills/benchmark/SKILL.md +66 -0
  24. package/assets/skills/pr-resolve/SKILL.md +58 -0
  25. package/assets/skills/pr-review/SKILL.md +66 -0
  26. package/dist/index.js +1348 -1247
  27. package/dist/index.js.map +1 -0
  28. package/package.json +58 -53
  29. package/dist/api/adr.d.ts +0 -48
  30. package/dist/api/adr.js +0 -139
  31. package/dist/api/app-store-iap.d.ts +0 -60
  32. package/dist/api/app-store-iap.js +0 -145
  33. package/dist/api/app-store.d.ts +0 -93
  34. package/dist/api/app-store.js +0 -206
  35. package/dist/api/chat.d.ts +0 -72
  36. package/dist/api/chat.js +0 -272
  37. package/dist/api/cross-product.d.ts +0 -33
  38. package/dist/api/cross-product.js +0 -127
  39. package/dist/api/financing.d.ts +0 -47
  40. package/dist/api/financing.js +0 -37
  41. package/dist/api/github.d.ts +0 -86
  42. package/dist/api/github.js +0 -203
  43. package/dist/api/growth.d.ts +0 -81
  44. package/dist/api/growth.js +0 -75
  45. package/dist/api/intelligence-normalize.d.ts +0 -25
  46. package/dist/api/intelligence-normalize.js +0 -103
  47. package/dist/api/intelligence.d.ts +0 -187
  48. package/dist/api/intelligence.js +0 -402
  49. package/dist/api/issues/approval-checker.d.ts +0 -22
  50. package/dist/api/issues/approval-checker.js +0 -141
  51. package/dist/api/issues/batch-operations.d.ts +0 -17
  52. package/dist/api/issues/batch-operations.js +0 -100
  53. package/dist/api/issues/get-issue.d.ts +0 -5
  54. package/dist/api/issues/get-issue.js +0 -47
  55. package/dist/api/issues/index.d.ts +0 -8
  56. package/dist/api/issues/index.js +0 -10
  57. package/dist/api/issues/issue-utils.d.ts +0 -25
  58. package/dist/api/issues/issue-utils.js +0 -133
  59. package/dist/api/issues/status-updater.d.ts +0 -68
  60. package/dist/api/issues/status-updater.js +0 -190
  61. package/dist/api/issues/test-cases.d.ts +0 -29
  62. package/dist/api/issues/test-cases.js +0 -185
  63. package/dist/api/issues/update-issue.d.ts +0 -25
  64. package/dist/api/issues/update-issue.js +0 -127
  65. package/dist/api/issues/user-stories.d.ts +0 -21
  66. package/dist/api/issues/user-stories.js +0 -163
  67. package/dist/api/mcp-client.d.ts +0 -22
  68. package/dist/api/mcp-client.js +0 -75
  69. package/dist/api/products/test-cases.d.ts +0 -18
  70. package/dist/api/products/test-cases.js +0 -51
  71. package/dist/api/products.d.ts +0 -15
  72. package/dist/api/products.js +0 -45
  73. package/dist/api/release-test-cases.d.ts +0 -7
  74. package/dist/api/release-test-cases.js +0 -59
  75. package/dist/api/releases.d.ts +0 -41
  76. package/dist/api/releases.js +0 -117
  77. package/dist/api/run-sheets.d.ts +0 -22
  78. package/dist/api/run-sheets.js +0 -13
  79. package/dist/api/storage.d.ts +0 -13
  80. package/dist/api/storage.js +0 -29
  81. package/dist/api/tasks.d.ts +0 -26
  82. package/dist/api/tasks.js +0 -81
  83. package/dist/api/test-reports.d.ts +0 -9
  84. package/dist/api/test-reports.js +0 -43
  85. package/dist/api/user-psychology.d.ts +0 -101
  86. package/dist/api/user-psychology.js +0 -143
  87. package/dist/api/web-deploy.d.ts +0 -67
  88. package/dist/api/web-deploy.js +0 -199
  89. package/dist/auth/auth-store.d.ts +0 -98
  90. package/dist/auth/auth-store.js +0 -194
  91. package/dist/auth/env-store.d.ts +0 -41
  92. package/dist/auth/env-store.js +0 -127
  93. package/dist/auth/login.d.ts +0 -18
  94. package/dist/auth/login.js +0 -179
  95. package/dist/commands/adr/index.d.ts +0 -13
  96. package/dist/commands/adr/index.js +0 -31
  97. package/dist/commands/agent-workflow/chat-worker.d.ts +0 -16
  98. package/dist/commands/agent-workflow/chat-worker.js +0 -465
  99. package/dist/commands/agent-workflow/index.d.ts +0 -13
  100. package/dist/commands/agent-workflow/index.js +0 -107
  101. package/dist/commands/agent-workflow/issue-worker.d.ts +0 -14
  102. package/dist/commands/agent-workflow/issue-worker.js +0 -65
  103. package/dist/commands/agent-workflow/processor.d.ts +0 -95
  104. package/dist/commands/agent-workflow/processor.js +0 -519
  105. package/dist/commands/analyze-logs/index.d.ts +0 -7
  106. package/dist/commands/analyze-logs/index.js +0 -34
  107. package/dist/commands/api-docs/index.d.ts +0 -18
  108. package/dist/commands/api-docs/index.js +0 -41
  109. package/dist/commands/app-store/index.d.ts +0 -12
  110. package/dist/commands/app-store/index.js +0 -69
  111. package/dist/commands/architecture-diagram/index.d.ts +0 -8
  112. package/dist/commands/architecture-diagram/index.js +0 -10
  113. package/dist/commands/build/detect-project.d.ts +0 -52
  114. package/dist/commands/build/detect-project.js +0 -277
  115. package/dist/commands/build/index.d.ts +0 -66
  116. package/dist/commands/build/index.js +0 -544
  117. package/dist/commands/chat-serve/chat-server.d.ts +0 -114
  118. package/dist/commands/chat-serve/chat-server.js +0 -339
  119. package/dist/commands/chat-serve/index.d.ts +0 -20
  120. package/dist/commands/chat-serve/index.js +0 -58
  121. package/dist/commands/checklists/index.d.ts +0 -16
  122. package/dist/commands/checklists/index.js +0 -187
  123. package/dist/commands/checklists/tools.d.ts +0 -17
  124. package/dist/commands/checklists/tools.js +0 -19
  125. package/dist/commands/class-diagram/index.d.ts +0 -7
  126. package/dist/commands/class-diagram/index.js +0 -9
  127. package/dist/commands/code-review/index.d.ts +0 -2
  128. package/dist/commands/code-review/index.js +0 -37
  129. package/dist/commands/code-review/reviewer.d.ts +0 -3
  130. package/dist/commands/code-review/reviewer.js +0 -205
  131. package/dist/commands/config/index.d.ts +0 -16
  132. package/dist/commands/config/index.js +0 -60
  133. package/dist/commands/data-flow/index.d.ts +0 -19
  134. package/dist/commands/data-flow/index.js +0 -55
  135. package/dist/commands/diagram-shared/index.d.ts +0 -21
  136. package/dist/commands/diagram-shared/index.js +0 -37
  137. package/dist/commands/discover/index.d.ts +0 -14
  138. package/dist/commands/discover/index.js +0 -29
  139. package/dist/commands/er-diagram/index.d.ts +0 -19
  140. package/dist/commands/er-diagram/index.js +0 -55
  141. package/dist/commands/features/index.d.ts +0 -15
  142. package/dist/commands/features/index.js +0 -34
  143. package/dist/commands/financing-deck/index.d.ts +0 -8
  144. package/dist/commands/financing-deck/index.js +0 -66
  145. package/dist/commands/find-architecture/index.d.ts +0 -15
  146. package/dist/commands/find-architecture/index.js +0 -50
  147. package/dist/commands/find-bugs/index.d.ts +0 -13
  148. package/dist/commands/find-bugs/index.js +0 -48
  149. package/dist/commands/find-features/index.d.ts +0 -14
  150. package/dist/commands/find-features/index.js +0 -42
  151. package/dist/commands/find-smells/index.d.ts +0 -23
  152. package/dist/commands/find-smells/index.js +0 -74
  153. package/dist/commands/flowchart/index.d.ts +0 -8
  154. package/dist/commands/flowchart/index.js +0 -10
  155. package/dist/commands/growth-analysis/index.d.ts +0 -7
  156. package/dist/commands/growth-analysis/index.js +0 -89
  157. package/dist/commands/init/index.d.ts +0 -5
  158. package/dist/commands/init/index.js +0 -152
  159. package/dist/commands/init/prompts.d.ts +0 -9
  160. package/dist/commands/init/prompts.js +0 -128
  161. package/dist/commands/init/templates.d.ts +0 -9
  162. package/dist/commands/init/templates.js +0 -264
  163. package/dist/commands/intelligence/index.d.ts +0 -15
  164. package/dist/commands/intelligence/index.js +0 -138
  165. package/dist/commands/issue-analysis/index.d.ts +0 -5
  166. package/dist/commands/issue-analysis/index.js +0 -9
  167. package/dist/commands/pr-resolve/index.d.ts +0 -13
  168. package/dist/commands/pr-resolve/index.js +0 -50
  169. package/dist/commands/pr-review/index.d.ts +0 -12
  170. package/dist/commands/pr-review/index.js +0 -47
  171. package/dist/commands/product-techniques/index.d.ts +0 -15
  172. package/dist/commands/product-techniques/index.js +0 -37
  173. package/dist/commands/product-test-cases/index.d.ts +0 -12
  174. package/dist/commands/product-test-cases/index.js +0 -40
  175. package/dist/commands/quality-benchmark/index.d.ts +0 -45
  176. package/dist/commands/quality-benchmark/index.js +0 -247
  177. package/dist/commands/recipes/index.d.ts +0 -17
  178. package/dist/commands/recipes/index.js +0 -40
  179. package/dist/commands/refactor/refactor.d.ts +0 -2
  180. package/dist/commands/refactor/refactor.js +0 -134
  181. package/dist/commands/release-sync/index.d.ts +0 -5
  182. package/dist/commands/release-sync/index.js +0 -38
  183. package/dist/commands/run-sheet/index.d.ts +0 -6
  184. package/dist/commands/run-sheet/index.js +0 -48
  185. package/dist/commands/screen-flow/index.d.ts +0 -18
  186. package/dist/commands/screen-flow/index.js +0 -54
  187. package/dist/commands/sequence-diagram/index.d.ts +0 -19
  188. package/dist/commands/sequence-diagram/index.js +0 -55
  189. package/dist/commands/session-serve/index.d.ts +0 -32
  190. package/dist/commands/session-serve/index.js +0 -100
  191. package/dist/commands/session-turn/index.d.ts +0 -73
  192. package/dist/commands/session-turn/index.js +0 -254
  193. package/dist/commands/smoke-test/index.d.ts +0 -5
  194. package/dist/commands/smoke-test/index.js +0 -40
  195. package/dist/commands/state-diagram/index.d.ts +0 -7
  196. package/dist/commands/state-diagram/index.js +0 -9
  197. package/dist/commands/sync-aws/index.d.ts +0 -16
  198. package/dist/commands/sync-aws/index.js +0 -214
  199. package/dist/commands/sync-datadog/index.d.ts +0 -16
  200. package/dist/commands/sync-datadog/index.js +0 -236
  201. package/dist/commands/sync-github-issues/index.d.ts +0 -11
  202. package/dist/commands/sync-github-issues/index.js +0 -42
  203. package/dist/commands/sync-github-pull-requests/index.d.ts +0 -11
  204. package/dist/commands/sync-github-pull-requests/index.js +0 -42
  205. package/dist/commands/sync-org-repos/index.d.ts +0 -12
  206. package/dist/commands/sync-org-repos/index.js +0 -60
  207. package/dist/commands/sync-sentry-issues/index.d.ts +0 -14
  208. package/dist/commands/sync-sentry-issues/index.js +0 -73
  209. package/dist/commands/sync-terraform/index.d.ts +0 -16
  210. package/dist/commands/sync-terraform/index.js +0 -248
  211. package/dist/commands/task-worker/index.d.ts +0 -8
  212. package/dist/commands/task-worker/index.js +0 -34
  213. package/dist/commands/task-worker/processor.d.ts +0 -23
  214. package/dist/commands/task-worker/processor.js +0 -84
  215. package/dist/commands/technical-design/index.d.ts +0 -5
  216. package/dist/commands/technical-design/index.js +0 -9
  217. package/dist/commands/test-cases-analysis/index.d.ts +0 -5
  218. package/dist/commands/test-cases-analysis/index.js +0 -9
  219. package/dist/commands/user-psychology/index.d.ts +0 -7
  220. package/dist/commands/user-psychology/index.js +0 -51
  221. package/dist/commands/user-stories-analysis/index.d.ts +0 -5
  222. package/dist/commands/user-stories-analysis/index.js +0 -9
  223. package/dist/commands/workflow/config/phase-configs.d.ts +0 -5
  224. package/dist/commands/workflow/config/phase-configs.js +0 -132
  225. package/dist/commands/workflow/core/index.d.ts +0 -8
  226. package/dist/commands/workflow/core/index.js +0 -12
  227. package/dist/commands/workflow/core/issue-filter.d.ts +0 -16
  228. package/dist/commands/workflow/core/issue-filter.js +0 -47
  229. package/dist/commands/workflow/core/pipeline-evaluator.d.ts +0 -24
  230. package/dist/commands/workflow/core/pipeline-evaluator.js +0 -32
  231. package/dist/commands/workflow/core/state-manager.d.ts +0 -24
  232. package/dist/commands/workflow/core/state-manager.js +0 -42
  233. package/dist/commands/workflow/core/workflow-logger.d.ts +0 -23
  234. package/dist/commands/workflow/core/workflow-logger.js +0 -77
  235. package/dist/commands/workflow/executors/phase-executor.d.ts +0 -8
  236. package/dist/commands/workflow/executors/phase-executor.js +0 -338
  237. package/dist/commands/workflow/index.d.ts +0 -2
  238. package/dist/commands/workflow/index.js +0 -34
  239. package/dist/commands/workflow/issue-coordinator.d.ts +0 -18
  240. package/dist/commands/workflow/issue-coordinator.js +0 -161
  241. package/dist/commands/workflow/phase-orchestrator.d.ts +0 -26
  242. package/dist/commands/workflow/phase-orchestrator.js +0 -699
  243. package/dist/commands/workflow/processor.d.ts +0 -47
  244. package/dist/commands/workflow/processor.js +0 -149
  245. package/dist/config/issue-status.d.ts +0 -29
  246. package/dist/config/issue-status.js +0 -44
  247. package/dist/config.d.ts +0 -3
  248. package/dist/config.js +0 -79
  249. package/dist/constants.d.ts +0 -10
  250. package/dist/constants.js +0 -36
  251. package/dist/errors/index.d.ts +0 -68
  252. package/dist/errors/index.js +0 -129
  253. package/dist/index.d.ts +0 -4
  254. package/dist/phases/adr-generation/agent.d.ts +0 -6
  255. package/dist/phases/adr-generation/agent.js +0 -69
  256. package/dist/phases/adr-generation/index.d.ts +0 -15
  257. package/dist/phases/adr-generation/index.js +0 -66
  258. package/dist/phases/adr-generation/parse.d.ts +0 -12
  259. package/dist/phases/adr-generation/parse.js +0 -123
  260. package/dist/phases/adr-generation/prompts.d.ts +0 -8
  261. package/dist/phases/adr-generation/prompts.js +0 -35
  262. package/dist/phases/analyze-logs/agent.d.ts +0 -11
  263. package/dist/phases/analyze-logs/agent.js +0 -66
  264. package/dist/phases/analyze-logs/index.d.ts +0 -23
  265. package/dist/phases/analyze-logs/index.js +0 -152
  266. package/dist/phases/analyze-logs/prompts.d.ts +0 -3
  267. package/dist/phases/analyze-logs/prompts.js +0 -27
  268. package/dist/phases/api-docs/index.d.ts +0 -47
  269. package/dist/phases/api-docs/index.js +0 -254
  270. package/dist/phases/api-docs/mcp-server.d.ts +0 -25
  271. package/dist/phases/api-docs/mcp-server.js +0 -82
  272. package/dist/phases/api-docs/prompts.d.ts +0 -16
  273. package/dist/phases/api-docs/prompts.js +0 -65
  274. package/dist/phases/api-docs/types.d.ts +0 -22
  275. package/dist/phases/api-docs/types.js +0 -10
  276. package/dist/phases/app-store-generation/agent.d.ts +0 -2
  277. package/dist/phases/app-store-generation/agent.js +0 -177
  278. package/dist/phases/app-store-generation/assets/inter-latin-ext.woff2 +0 -0
  279. package/dist/phases/app-store-generation/assets/inter-latin.woff2 +0 -0
  280. package/dist/phases/app-store-generation/context.d.ts +0 -21
  281. package/dist/phases/app-store-generation/context.js +0 -78
  282. package/dist/phases/app-store-generation/index.d.ts +0 -20
  283. package/dist/phases/app-store-generation/index.js +0 -157
  284. package/dist/phases/app-store-generation/inter-font.d.ts +0 -20
  285. package/dist/phases/app-store-generation/inter-font.js +0 -49
  286. package/dist/phases/app-store-generation/prompts.d.ts +0 -43
  287. package/dist/phases/app-store-generation/prompts.js +0 -73
  288. package/dist/phases/app-store-generation/screenshot-composer.d.ts +0 -41
  289. package/dist/phases/app-store-generation/screenshot-composer.js +0 -516
  290. package/dist/phases/app-store-generation/uploader.d.ts +0 -19
  291. package/dist/phases/app-store-generation/uploader.js +0 -150
  292. package/dist/phases/architecture-diagram/index.d.ts +0 -15
  293. package/dist/phases/architecture-diagram/index.js +0 -51
  294. package/dist/phases/autonomous/index.d.ts +0 -32
  295. package/dist/phases/autonomous/index.js +0 -412
  296. package/dist/phases/autonomous/prompts.d.ts +0 -5
  297. package/dist/phases/autonomous/prompts.js +0 -31
  298. package/dist/phases/branch-planning/context.d.ts +0 -14
  299. package/dist/phases/branch-planning/context.js +0 -43
  300. package/dist/phases/branch-planning/index.d.ts +0 -25
  301. package/dist/phases/branch-planning/index.js +0 -404
  302. package/dist/phases/branch-planning/outcome.d.ts +0 -28
  303. package/dist/phases/branch-planning/outcome.js +0 -115
  304. package/dist/phases/branch-planning/prompts.d.ts +0 -41
  305. package/dist/phases/branch-planning/prompts.js +0 -157
  306. package/dist/phases/bug-fixing/analyzer.d.ts +0 -17
  307. package/dist/phases/bug-fixing/analyzer.js +0 -247
  308. package/dist/phases/bug-fixing/context-fetcher.d.ts +0 -22
  309. package/dist/phases/bug-fixing/context-fetcher.js +0 -137
  310. package/dist/phases/bug-fixing/index.d.ts +0 -7
  311. package/dist/phases/bug-fixing/index.js +0 -7
  312. package/dist/phases/bug-fixing/mcp-server.d.ts +0 -18
  313. package/dist/phases/bug-fixing/mcp-server.js +0 -19
  314. package/dist/phases/bug-fixing/prompts.d.ts +0 -2
  315. package/dist/phases/bug-fixing/prompts.js +0 -9
  316. package/dist/phases/chat-processor/context.d.ts +0 -38
  317. package/dist/phases/chat-processor/context.js +0 -91
  318. package/dist/phases/chat-processor/index.d.ts +0 -49
  319. package/dist/phases/chat-processor/index.js +0 -482
  320. package/dist/phases/chat-processor/product-context.d.ts +0 -36
  321. package/dist/phases/chat-processor/product-context.js +0 -113
  322. package/dist/phases/chat-processor/product-prompts.d.ts +0 -4
  323. package/dist/phases/chat-processor/product-prompts.js +0 -65
  324. package/dist/phases/chat-processor/product-tools.d.ts +0 -8
  325. package/dist/phases/chat-processor/product-tools.js +0 -11
  326. package/dist/phases/chat-processor/prompts.d.ts +0 -35
  327. package/dist/phases/chat-processor/prompts.js +0 -213
  328. package/dist/phases/chat-processor/tools.d.ts +0 -8
  329. package/dist/phases/chat-processor/tools.js +0 -11
  330. package/dist/phases/class-diagram/index.d.ts +0 -14
  331. package/dist/phases/class-diagram/index.js +0 -76
  332. package/dist/phases/code-implementation/branch-pr-creator.d.ts +0 -31
  333. package/dist/phases/code-implementation/branch-pr-creator.js +0 -172
  334. package/dist/phases/code-implementation/context.d.ts +0 -17
  335. package/dist/phases/code-implementation/context.js +0 -88
  336. package/dist/phases/code-implementation/index.d.ts +0 -33
  337. package/dist/phases/code-implementation/index.js +0 -926
  338. package/dist/phases/code-implementation/outcome.d.ts +0 -47
  339. package/dist/phases/code-implementation/outcome.js +0 -53
  340. package/dist/phases/code-implementation/prompts.d.ts +0 -8
  341. package/dist/phases/code-implementation/prompts.js +0 -166
  342. package/dist/phases/code-implementation-verification/agent.d.ts +0 -32
  343. package/dist/phases/code-implementation-verification/agent.js +0 -225
  344. package/dist/phases/code-implementation-verification/index.d.ts +0 -27
  345. package/dist/phases/code-implementation-verification/index.js +0 -121
  346. package/dist/phases/code-implementation-verification/prompts.d.ts +0 -10
  347. package/dist/phases/code-implementation-verification/prompts.js +0 -90
  348. package/dist/phases/code-refine/context.d.ts +0 -99
  349. package/dist/phases/code-refine/context.js +0 -457
  350. package/dist/phases/code-refine/index.d.ts +0 -59
  351. package/dist/phases/code-refine/index.js +0 -348
  352. package/dist/phases/code-refine/prompts.d.ts +0 -5
  353. package/dist/phases/code-refine/prompts.js +0 -162
  354. package/dist/phases/code-refine/refine-iteration.d.ts +0 -33
  355. package/dist/phases/code-refine/refine-iteration.js +0 -166
  356. package/dist/phases/code-refine/retry-handler.d.ts +0 -17
  357. package/dist/phases/code-refine/retry-handler.js +0 -87
  358. package/dist/phases/code-refine-verification/github.d.ts +0 -54
  359. package/dist/phases/code-refine-verification/github.js +0 -328
  360. package/dist/phases/code-refine-verification/index.d.ts +0 -11
  361. package/dist/phases/code-refine-verification/index.js +0 -260
  362. package/dist/phases/code-refine-verification/llm-analyzer.d.ts +0 -22
  363. package/dist/phases/code-refine-verification/llm-analyzer.js +0 -152
  364. package/dist/phases/code-refine-verification/prompts.d.ts +0 -5
  365. package/dist/phases/code-refine-verification/prompts.js +0 -119
  366. package/dist/phases/code-refine-verification/types.d.ts +0 -74
  367. package/dist/phases/code-refine-verification/types.js +0 -4
  368. package/dist/phases/code-review/context.d.ts +0 -96
  369. package/dist/phases/code-review/context.js +0 -278
  370. package/dist/phases/code-review/diff-utils.d.ts +0 -36
  371. package/dist/phases/code-review/diff-utils.js +0 -100
  372. package/dist/phases/code-review/index.d.ts +0 -40
  373. package/dist/phases/code-review/index.js +0 -627
  374. package/dist/phases/code-testing/analyzer.d.ts +0 -19
  375. package/dist/phases/code-testing/analyzer.js +0 -215
  376. package/dist/phases/code-testing/context-fetcher.d.ts +0 -16
  377. package/dist/phases/code-testing/context-fetcher.js +0 -83
  378. package/dist/phases/code-testing/index.d.ts +0 -2
  379. package/dist/phases/code-testing/index.js +0 -2
  380. package/dist/phases/code-testing/prompts.d.ts +0 -3
  381. package/dist/phases/code-testing/prompts.js +0 -63
  382. package/dist/phases/data-flow/index.d.ts +0 -28
  383. package/dist/phases/data-flow/index.js +0 -286
  384. package/dist/phases/data-flow/mcp-server.d.ts +0 -85
  385. package/dist/phases/data-flow/mcp-server.js +0 -140
  386. package/dist/phases/data-flow/prompts.d.ts +0 -14
  387. package/dist/phases/data-flow/prompts.js +0 -36
  388. package/dist/phases/data-flow/types.d.ts +0 -71
  389. package/dist/phases/data-flow/types.js +0 -86
  390. package/dist/phases/diagram-shared/clone-repos.d.ts +0 -63
  391. package/dist/phases/diagram-shared/clone-repos.js +0 -153
  392. package/dist/phases/diagram-shared/generate.d.ts +0 -42
  393. package/dist/phases/diagram-shared/generate.js +0 -162
  394. package/dist/phases/diagram-shared/graph.d.ts +0 -62
  395. package/dist/phases/diagram-shared/graph.js +0 -169
  396. package/dist/phases/diagram-shared/mcp.d.ts +0 -35
  397. package/dist/phases/diagram-shared/mcp.js +0 -68
  398. package/dist/phases/diagram-shared/prompts.d.ts +0 -23
  399. package/dist/phases/diagram-shared/prompts.js +0 -35
  400. package/dist/phases/discover-services/index.d.ts +0 -29
  401. package/dist/phases/discover-services/index.js +0 -528
  402. package/dist/phases/er-diagram/index.d.ts +0 -28
  403. package/dist/phases/er-diagram/index.js +0 -290
  404. package/dist/phases/er-diagram/mcp-server.d.ts +0 -77
  405. package/dist/phases/er-diagram/mcp-server.js +0 -144
  406. package/dist/phases/er-diagram/prompts.d.ts +0 -14
  407. package/dist/phases/er-diagram/prompts.js +0 -36
  408. package/dist/phases/er-diagram/types.d.ts +0 -76
  409. package/dist/phases/er-diagram/types.js +0 -84
  410. package/dist/phases/features/index.d.ts +0 -65
  411. package/dist/phases/features/index.js +0 -292
  412. package/dist/phases/features/mcp-server.d.ts +0 -61
  413. package/dist/phases/features/mcp-server.js +0 -165
  414. package/dist/phases/features/prompts.d.ts +0 -32
  415. package/dist/phases/features/prompts.js +0 -92
  416. package/dist/phases/features/types.d.ts +0 -34
  417. package/dist/phases/features/types.js +0 -15
  418. package/dist/phases/financing-deck/agent.d.ts +0 -1
  419. package/dist/phases/financing-deck/agent.js +0 -96
  420. package/dist/phases/financing-deck/context.d.ts +0 -13
  421. package/dist/phases/financing-deck/context.js +0 -69
  422. package/dist/phases/financing-deck/index.d.ts +0 -15
  423. package/dist/phases/financing-deck/index.js +0 -89
  424. package/dist/phases/financing-deck/prompts.d.ts +0 -2
  425. package/dist/phases/financing-deck/prompts.js +0 -94
  426. package/dist/phases/find-architecture/index.d.ts +0 -47
  427. package/dist/phases/find-architecture/index.js +0 -268
  428. package/dist/phases/find-architecture/prompts.d.ts +0 -32
  429. package/dist/phases/find-architecture/prompts.js +0 -129
  430. package/dist/phases/find-architecture/state.d.ts +0 -21
  431. package/dist/phases/find-architecture/state.js +0 -17
  432. package/dist/phases/find-architecture/types.d.ts +0 -55
  433. package/dist/phases/find-architecture/types.js +0 -69
  434. package/dist/phases/find-bugs/index.d.ts +0 -33
  435. package/dist/phases/find-bugs/index.js +0 -238
  436. package/dist/phases/find-bugs/prompts.d.ts +0 -22
  437. package/dist/phases/find-bugs/prompts.js +0 -101
  438. package/dist/phases/find-bugs/state.d.ts +0 -19
  439. package/dist/phases/find-bugs/state.js +0 -13
  440. package/dist/phases/find-bugs/types.d.ts +0 -21
  441. package/dist/phases/find-bugs/types.js +0 -16
  442. package/dist/phases/find-features/index.d.ts +0 -40
  443. package/dist/phases/find-features/index.js +0 -328
  444. package/dist/phases/find-features/prompts.d.ts +0 -43
  445. package/dist/phases/find-features/prompts.js +0 -138
  446. package/dist/phases/find-features/state.d.ts +0 -25
  447. package/dist/phases/find-features/state.js +0 -22
  448. package/dist/phases/find-features/types.d.ts +0 -27
  449. package/dist/phases/find-features/types.js +0 -16
  450. package/dist/phases/find-shared/baseline.d.ts +0 -45
  451. package/dist/phases/find-shared/baseline.js +0 -56
  452. package/dist/phases/find-shared/custom-rules.d.ts +0 -39
  453. package/dist/phases/find-shared/custom-rules.js +0 -75
  454. package/dist/phases/find-shared/detect-context.d.ts +0 -40
  455. package/dist/phases/find-shared/detect-context.js +0 -247
  456. package/dist/phases/find-shared/git.d.ts +0 -24
  457. package/dist/phases/find-shared/git.js +0 -60
  458. package/dist/phases/find-shared/mcp.d.ts +0 -54
  459. package/dist/phases/find-shared/mcp.js +0 -127
  460. package/dist/phases/find-shared/rule-config.d.ts +0 -37
  461. package/dist/phases/find-shared/rule-config.js +0 -67
  462. package/dist/phases/find-shared/rule-packs.d.ts +0 -65
  463. package/dist/phases/find-shared/rule-packs.js +0 -124
  464. package/dist/phases/find-shared/scan-state.d.ts +0 -33
  465. package/dist/phases/find-shared/scan-state.js +0 -112
  466. package/dist/phases/find-shared/scoped-read.d.ts +0 -12
  467. package/dist/phases/find-shared/scoped-read.js +0 -33
  468. package/dist/phases/find-smells/index.d.ts +0 -50
  469. package/dist/phases/find-smells/index.js +0 -305
  470. package/dist/phases/find-smells/prompts.d.ts +0 -31
  471. package/dist/phases/find-smells/prompts.js +0 -130
  472. package/dist/phases/find-smells/state.d.ts +0 -21
  473. package/dist/phases/find-smells/state.js +0 -17
  474. package/dist/phases/find-smells/types.d.ts +0 -51
  475. package/dist/phases/find-smells/types.js +0 -64
  476. package/dist/phases/flow-shared/clone-repos.d.ts +0 -63
  477. package/dist/phases/flow-shared/clone-repos.js +0 -153
  478. package/dist/phases/flowchart/index.d.ts +0 -15
  479. package/dist/phases/flowchart/index.js +0 -50
  480. package/dist/phases/functional-testing/analyzer.d.ts +0 -46
  481. package/dist/phases/functional-testing/analyzer.js +0 -622
  482. package/dist/phases/functional-testing/context-fetcher.d.ts +0 -16
  483. package/dist/phases/functional-testing/context-fetcher.js +0 -83
  484. package/dist/phases/functional-testing/http-fallback.d.ts +0 -10
  485. package/dist/phases/functional-testing/http-fallback.js +0 -156
  486. package/dist/phases/functional-testing/index.d.ts +0 -4
  487. package/dist/phases/functional-testing/index.js +0 -4
  488. package/dist/phases/functional-testing/mcp-server.d.ts +0 -9
  489. package/dist/phases/functional-testing/mcp-server.js +0 -13
  490. package/dist/phases/functional-testing/prompts.d.ts +0 -2
  491. package/dist/phases/functional-testing/prompts.js +0 -58
  492. package/dist/phases/functional-testing/test-report-creator.d.ts +0 -68
  493. package/dist/phases/functional-testing/test-report-creator.js +0 -306
  494. package/dist/phases/functional-testing/test-retry-handler.d.ts +0 -16
  495. package/dist/phases/functional-testing/test-retry-handler.js +0 -70
  496. package/dist/phases/growth-analysis/agent.d.ts +0 -2
  497. package/dist/phases/growth-analysis/agent.js +0 -107
  498. package/dist/phases/growth-analysis/context.d.ts +0 -23
  499. package/dist/phases/growth-analysis/context.js +0 -137
  500. package/dist/phases/growth-analysis/index.d.ts +0 -32
  501. package/dist/phases/growth-analysis/index.js +0 -226
  502. package/dist/phases/growth-analysis/prompts.d.ts +0 -2
  503. package/dist/phases/growth-analysis/prompts.js +0 -45
  504. package/dist/phases/intelligence-analysis/agent.d.ts +0 -2
  505. package/dist/phases/intelligence-analysis/agent.js +0 -338
  506. package/dist/phases/intelligence-analysis/context.d.ts +0 -23
  507. package/dist/phases/intelligence-analysis/context.js +0 -142
  508. package/dist/phases/intelligence-analysis/index.d.ts +0 -58
  509. package/dist/phases/intelligence-analysis/index.js +0 -244
  510. package/dist/phases/intelligence-analysis/prompts.d.ts +0 -2
  511. package/dist/phases/intelligence-analysis/prompts.js +0 -62
  512. package/dist/phases/issue-analysis/agent.d.ts +0 -21
  513. package/dist/phases/issue-analysis/agent.js +0 -153
  514. package/dist/phases/issue-analysis/context.d.ts +0 -20
  515. package/dist/phases/issue-analysis/context.js +0 -93
  516. package/dist/phases/issue-analysis/index.d.ts +0 -8
  517. package/dist/phases/issue-analysis/index.js +0 -147
  518. package/dist/phases/issue-analysis/outcome.d.ts +0 -10
  519. package/dist/phases/issue-analysis/outcome.js +0 -42
  520. package/dist/phases/issue-analysis/prompts.d.ts +0 -8
  521. package/dist/phases/issue-analysis/prompts.js +0 -99
  522. package/dist/phases/issue-analysis-verification/agent.d.ts +0 -33
  523. package/dist/phases/issue-analysis-verification/agent.js +0 -124
  524. package/dist/phases/issue-analysis-verification/index.d.ts +0 -27
  525. package/dist/phases/issue-analysis-verification/index.js +0 -79
  526. package/dist/phases/issue-analysis-verification/prompts.d.ts +0 -9
  527. package/dist/phases/issue-analysis-verification/prompts.js +0 -75
  528. package/dist/phases/output-contracts.d.ts +0 -7
  529. package/dist/phases/output-contracts.js +0 -1201
  530. package/dist/phases/pr-execution/context.d.ts +0 -32
  531. package/dist/phases/pr-execution/context.js +0 -246
  532. package/dist/phases/pr-execution/file-assigner.d.ts +0 -57
  533. package/dist/phases/pr-execution/file-assigner.js +0 -287
  534. package/dist/phases/pr-execution/index.d.ts +0 -22
  535. package/dist/phases/pr-execution/index.js +0 -401
  536. package/dist/phases/pr-execution/outcome.d.ts +0 -24
  537. package/dist/phases/pr-execution/outcome.js +0 -34
  538. package/dist/phases/pr-execution/pr-executor.d.ts +0 -42
  539. package/dist/phases/pr-execution/pr-executor.js +0 -78
  540. package/dist/phases/pr-execution/prompts.d.ts +0 -27
  541. package/dist/phases/pr-execution/prompts.js +0 -131
  542. package/dist/phases/pr-resolve/checklist-learner.d.ts +0 -28
  543. package/dist/phases/pr-resolve/checklist-learner.js +0 -153
  544. package/dist/phases/pr-resolve/github-reply.d.ts +0 -16
  545. package/dist/phases/pr-resolve/github-reply.js +0 -75
  546. package/dist/phases/pr-resolve/index.d.ts +0 -33
  547. package/dist/phases/pr-resolve/index.js +0 -272
  548. package/dist/phases/pr-resolve/prompts.d.ts +0 -17
  549. package/dist/phases/pr-resolve/prompts.js +0 -107
  550. package/dist/phases/pr-resolve/types.d.ts +0 -18
  551. package/dist/phases/pr-resolve/types.js +0 -14
  552. package/dist/phases/pr-resolve/workspace.d.ts +0 -45
  553. package/dist/phases/pr-resolve/workspace.js +0 -174
  554. package/dist/phases/pr-review/index.d.ts +0 -27
  555. package/dist/phases/pr-review/index.js +0 -209
  556. package/dist/phases/pr-review/prompts.d.ts +0 -5
  557. package/dist/phases/pr-review/prompts.js +0 -87
  558. package/dist/phases/pr-shared/agent-utils.d.ts +0 -47
  559. package/dist/phases/pr-shared/agent-utils.js +0 -112
  560. package/dist/phases/pr-shared/context.d.ts +0 -24
  561. package/dist/phases/pr-shared/context.js +0 -78
  562. package/dist/phases/pr-shared/status.d.ts +0 -18
  563. package/dist/phases/pr-shared/status.js +0 -37
  564. package/dist/phases/pr-splitting/context.d.ts +0 -28
  565. package/dist/phases/pr-splitting/context.js +0 -182
  566. package/dist/phases/pr-splitting/import-dep-validator.d.ts +0 -67
  567. package/dist/phases/pr-splitting/import-dep-validator.js +0 -255
  568. package/dist/phases/pr-splitting/index.d.ts +0 -36
  569. package/dist/phases/pr-splitting/index.js +0 -413
  570. package/dist/phases/pr-splitting/outcome.d.ts +0 -24
  571. package/dist/phases/pr-splitting/outcome.js +0 -114
  572. package/dist/phases/pr-splitting/prompts.d.ts +0 -43
  573. package/dist/phases/pr-splitting/prompts.js +0 -154
  574. package/dist/phases/product-techniques/index.d.ts +0 -52
  575. package/dist/phases/product-techniques/index.js +0 -268
  576. package/dist/phases/product-techniques/mcp-server.d.ts +0 -41
  577. package/dist/phases/product-techniques/mcp-server.js +0 -96
  578. package/dist/phases/product-techniques/prompts.d.ts +0 -19
  579. package/dist/phases/product-techniques/prompts.js +0 -66
  580. package/dist/phases/product-techniques/types.d.ts +0 -13
  581. package/dist/phases/product-techniques/types.js +0 -13
  582. package/dist/phases/product-test-cases/index.d.ts +0 -25
  583. package/dist/phases/product-test-cases/index.js +0 -174
  584. package/dist/phases/product-test-cases/prompts.d.ts +0 -24
  585. package/dist/phases/product-test-cases/prompts.js +0 -80
  586. package/dist/phases/product-test-cases/types.d.ts +0 -17
  587. package/dist/phases/product-test-cases/types.js +0 -27
  588. package/dist/phases/pull-request/creator.d.ts +0 -30
  589. package/dist/phases/pull-request/creator.js +0 -319
  590. package/dist/phases/pull-request/handler.d.ts +0 -15
  591. package/dist/phases/pull-request/handler.js +0 -92
  592. package/dist/phases/quality-benchmark/gate.d.ts +0 -50
  593. package/dist/phases/quality-benchmark/gate.js +0 -91
  594. package/dist/phases/quality-benchmark/index.d.ts +0 -65
  595. package/dist/phases/quality-benchmark/index.js +0 -208
  596. package/dist/phases/quality-benchmark/mcp-server.d.ts +0 -46
  597. package/dist/phases/quality-benchmark/mcp-server.js +0 -252
  598. package/dist/phases/quality-benchmark/parsers.d.ts +0 -45
  599. package/dist/phases/quality-benchmark/parsers.js +0 -1311
  600. package/dist/phases/quality-benchmark/prompts.d.ts +0 -31
  601. package/dist/phases/quality-benchmark/prompts.js +0 -154
  602. package/dist/phases/quality-benchmark/rubric.md +0 -1211
  603. package/dist/phases/quality-benchmark/tool-catalog.d.ts +0 -33
  604. package/dist/phases/quality-benchmark/tool-catalog.js +0 -693
  605. package/dist/phases/quality-benchmark/tool-runner.d.ts +0 -69
  606. package/dist/phases/quality-benchmark/tool-runner.js +0 -399
  607. package/dist/phases/quality-benchmark/types.d.ts +0 -319
  608. package/dist/phases/quality-benchmark/types.js +0 -23
  609. package/dist/phases/quality-benchmark/workspace.d.ts +0 -31
  610. package/dist/phases/quality-benchmark/workspace.js +0 -110
  611. package/dist/phases/recipes/index.d.ts +0 -63
  612. package/dist/phases/recipes/index.js +0 -358
  613. package/dist/phases/recipes/mcp-server.d.ts +0 -66
  614. package/dist/phases/recipes/mcp-server.js +0 -229
  615. package/dist/phases/recipes/prompts.d.ts +0 -35
  616. package/dist/phases/recipes/prompts.js +0 -105
  617. package/dist/phases/recipes/types.d.ts +0 -42
  618. package/dist/phases/recipes/types.js +0 -16
  619. package/dist/phases/release-sync/github.d.ts +0 -66
  620. package/dist/phases/release-sync/github.js +0 -140
  621. package/dist/phases/release-sync/index.d.ts +0 -24
  622. package/dist/phases/release-sync/index.js +0 -156
  623. package/dist/phases/release-sync/snapshot.d.ts +0 -27
  624. package/dist/phases/release-sync/snapshot.js +0 -158
  625. package/dist/phases/run-sheet/agent.d.ts +0 -49
  626. package/dist/phases/run-sheet/agent.js +0 -156
  627. package/dist/phases/run-sheet/index.d.ts +0 -57
  628. package/dist/phases/run-sheet/index.js +0 -392
  629. package/dist/phases/screen-flow/index.d.ts +0 -26
  630. package/dist/phases/screen-flow/index.js +0 -349
  631. package/dist/phases/screen-flow/mcp-server.d.ts +0 -201
  632. package/dist/phases/screen-flow/mcp-server.js +0 -272
  633. package/dist/phases/screen-flow/prompts.d.ts +0 -19
  634. package/dist/phases/screen-flow/prompts.js +0 -43
  635. package/dist/phases/screen-flow/theme.d.ts +0 -19
  636. package/dist/phases/screen-flow/theme.js +0 -193
  637. package/dist/phases/screen-flow/types.d.ts +0 -137
  638. package/dist/phases/screen-flow/types.js +0 -81
  639. package/dist/phases/sequence-diagram/index.d.ts +0 -30
  640. package/dist/phases/sequence-diagram/index.js +0 -290
  641. package/dist/phases/sequence-diagram/mcp-server.d.ts +0 -64
  642. package/dist/phases/sequence-diagram/mcp-server.js +0 -134
  643. package/dist/phases/sequence-diagram/prompts.d.ts +0 -14
  644. package/dist/phases/sequence-diagram/prompts.js +0 -36
  645. package/dist/phases/sequence-diagram/types.d.ts +0 -52
  646. package/dist/phases/sequence-diagram/types.js +0 -93
  647. package/dist/phases/smoke-test/agent.d.ts +0 -12
  648. package/dist/phases/smoke-test/agent.js +0 -93
  649. package/dist/phases/smoke-test/index.d.ts +0 -22
  650. package/dist/phases/smoke-test/index.js +0 -241
  651. package/dist/phases/smoke-test/prompts.d.ts +0 -15
  652. package/dist/phases/smoke-test/prompts.js +0 -35
  653. package/dist/phases/state-diagram/index.d.ts +0 -15
  654. package/dist/phases/state-diagram/index.js +0 -53
  655. package/dist/phases/sync-github-issues/index.d.ts +0 -41
  656. package/dist/phases/sync-github-issues/index.js +0 -187
  657. package/dist/phases/sync-github-issues/state.d.ts +0 -26
  658. package/dist/phases/sync-github-issues/state.js +0 -18
  659. package/dist/phases/sync-github-issues/types.d.ts +0 -35
  660. package/dist/phases/sync-github-issues/types.js +0 -6
  661. package/dist/phases/sync-github-pull-requests/index.d.ts +0 -23
  662. package/dist/phases/sync-github-pull-requests/index.js +0 -210
  663. package/dist/phases/sync-github-pull-requests/state.d.ts +0 -24
  664. package/dist/phases/sync-github-pull-requests/state.js +0 -16
  665. package/dist/phases/sync-github-pull-requests/types.d.ts +0 -22
  666. package/dist/phases/sync-github-pull-requests/types.js +0 -1
  667. package/dist/phases/sync-org-repos/index.d.ts +0 -28
  668. package/dist/phases/sync-org-repos/index.js +0 -133
  669. package/dist/phases/sync-sentry-issues/index.d.ts +0 -29
  670. package/dist/phases/sync-sentry-issues/index.js +0 -153
  671. package/dist/phases/sync-sentry-issues/sentry-client.d.ts +0 -66
  672. package/dist/phases/sync-sentry-issues/sentry-client.js +0 -221
  673. package/dist/phases/sync-sentry-issues/state.d.ts +0 -23
  674. package/dist/phases/sync-sentry-issues/state.js +0 -18
  675. package/dist/phases/sync-sentry-issues/types.d.ts +0 -46
  676. package/dist/phases/sync-sentry-issues/types.js +0 -6
  677. package/dist/phases/sync-shared/mcp.d.ts +0 -81
  678. package/dist/phases/sync-shared/mcp.js +0 -111
  679. package/dist/phases/task/agent.d.ts +0 -10
  680. package/dist/phases/task/agent.js +0 -83
  681. package/dist/phases/task/context.d.ts +0 -16
  682. package/dist/phases/task/context.js +0 -50
  683. package/dist/phases/task/index.d.ts +0 -17
  684. package/dist/phases/task/index.js +0 -54
  685. package/dist/phases/task/prompts.d.ts +0 -9
  686. package/dist/phases/task/prompts.js +0 -21
  687. package/dist/phases/technical-design/context.d.ts +0 -12
  688. package/dist/phases/technical-design/context.js +0 -39
  689. package/dist/phases/technical-design/index.d.ts +0 -21
  690. package/dist/phases/technical-design/index.js +0 -456
  691. package/dist/phases/technical-design/outcome.d.ts +0 -25
  692. package/dist/phases/technical-design/outcome.js +0 -41
  693. package/dist/phases/technical-design/prompts.d.ts +0 -8
  694. package/dist/phases/technical-design/prompts.js +0 -210
  695. package/dist/phases/technical-design-verification/agent.d.ts +0 -53
  696. package/dist/phases/technical-design-verification/agent.js +0 -186
  697. package/dist/phases/technical-design-verification/index.d.ts +0 -38
  698. package/dist/phases/technical-design-verification/index.js +0 -152
  699. package/dist/phases/technical-design-verification/prompts.d.ts +0 -12
  700. package/dist/phases/technical-design-verification/prompts.js +0 -143
  701. package/dist/phases/test-cases-analysis/agent.d.ts +0 -9
  702. package/dist/phases/test-cases-analysis/agent.js +0 -105
  703. package/dist/phases/test-cases-analysis/context.d.ts +0 -15
  704. package/dist/phases/test-cases-analysis/context.js +0 -86
  705. package/dist/phases/test-cases-analysis/formatters.d.ts +0 -6
  706. package/dist/phases/test-cases-analysis/formatters.js +0 -35
  707. package/dist/phases/test-cases-analysis/index.d.ts +0 -9
  708. package/dist/phases/test-cases-analysis/index.js +0 -175
  709. package/dist/phases/test-cases-analysis/outcome.d.ts +0 -27
  710. package/dist/phases/test-cases-analysis/outcome.js +0 -146
  711. package/dist/phases/test-cases-analysis/prompts.d.ts +0 -7
  712. package/dist/phases/test-cases-analysis/prompts.js +0 -171
  713. package/dist/phases/user-psychology/agent.d.ts +0 -16
  714. package/dist/phases/user-psychology/agent.js +0 -105
  715. package/dist/phases/user-psychology/context.d.ts +0 -10
  716. package/dist/phases/user-psychology/context.js +0 -65
  717. package/dist/phases/user-psychology/index.d.ts +0 -18
  718. package/dist/phases/user-psychology/index.js +0 -96
  719. package/dist/phases/user-psychology/prompts.d.ts +0 -2
  720. package/dist/phases/user-psychology/prompts.js +0 -41
  721. package/dist/phases/user-stories-analysis/agent.d.ts +0 -9
  722. package/dist/phases/user-stories-analysis/agent.js +0 -105
  723. package/dist/phases/user-stories-analysis/context.d.ts +0 -15
  724. package/dist/phases/user-stories-analysis/context.js +0 -86
  725. package/dist/phases/user-stories-analysis/formatters.d.ts +0 -6
  726. package/dist/phases/user-stories-analysis/formatters.js +0 -32
  727. package/dist/phases/user-stories-analysis/index.d.ts +0 -9
  728. package/dist/phases/user-stories-analysis/index.js +0 -175
  729. package/dist/phases/user-stories-analysis/outcome.d.ts +0 -27
  730. package/dist/phases/user-stories-analysis/outcome.js +0 -146
  731. package/dist/phases/user-stories-analysis/prompts.d.ts +0 -7
  732. package/dist/phases/user-stories-analysis/prompts.js +0 -194
  733. package/dist/services/audit-logs.d.ts +0 -73
  734. package/dist/services/audit-logs.js +0 -174
  735. package/dist/services/branches.d.ts +0 -103
  736. package/dist/services/branches.js +0 -391
  737. package/dist/services/checklist.d.ts +0 -100
  738. package/dist/services/checklist.js +0 -259
  739. package/dist/services/coaching/coaching-agent.d.ts +0 -39
  740. package/dist/services/coaching/coaching-agent.js +0 -308
  741. package/dist/services/coaching/coaching-loop.d.ts +0 -62
  742. package/dist/services/coaching/coaching-loop.js +0 -265
  743. package/dist/services/coaching/index.d.ts +0 -8
  744. package/dist/services/coaching/index.js +0 -8
  745. package/dist/services/coaching/phase-coaching.d.ts +0 -47
  746. package/dist/services/coaching/phase-coaching.js +0 -60
  747. package/dist/services/coaching/self-rating.d.ts +0 -26
  748. package/dist/services/coaching/self-rating.js +0 -153
  749. package/dist/services/feedbacks.d.ts +0 -57
  750. package/dist/services/feedbacks.js +0 -264
  751. package/dist/services/phase-hooks/bindings-fetcher.d.ts +0 -21
  752. package/dist/services/phase-hooks/bindings-fetcher.js +0 -53
  753. package/dist/services/phase-hooks/hook-executor.d.ts +0 -36
  754. package/dist/services/phase-hooks/hook-executor.js +0 -167
  755. package/dist/services/phase-hooks/hook-logging.d.ts +0 -14
  756. package/dist/services/phase-hooks/hook-logging.js +0 -41
  757. package/dist/services/phase-hooks/hook-runner.d.ts +0 -19
  758. package/dist/services/phase-hooks/hook-runner.js +0 -83
  759. package/dist/services/phase-hooks/index.d.ts +0 -10
  760. package/dist/services/phase-hooks/index.js +0 -9
  761. package/dist/services/phase-hooks/plugin-loader.d.ts +0 -31
  762. package/dist/services/phase-hooks/plugin-loader.js +0 -207
  763. package/dist/services/phase-hooks/types.d.ts +0 -69
  764. package/dist/services/phase-hooks/types.js +0 -8
  765. package/dist/services/phase-ratings.d.ts +0 -70
  766. package/dist/services/phase-ratings.js +0 -143
  767. package/dist/services/product-logs.d.ts +0 -31
  768. package/dist/services/product-logs.js +0 -94
  769. package/dist/services/pull-requests.d.ts +0 -57
  770. package/dist/services/pull-requests.js +0 -186
  771. package/dist/services/quality-reports.d.ts +0 -45
  772. package/dist/services/quality-reports.js +0 -93
  773. package/dist/services/repo-config.d.ts +0 -17
  774. package/dist/services/repo-config.js +0 -50
  775. package/dist/services/skill-resolver.d.ts +0 -46
  776. package/dist/services/skill-resolver.js +0 -123
  777. package/dist/services/video/device-frames.d.ts +0 -34
  778. package/dist/services/video/device-frames.js +0 -513
  779. package/dist/services/video/index.d.ts +0 -66
  780. package/dist/services/video/index.js +0 -238
  781. package/dist/services/video/retry.d.ts +0 -20
  782. package/dist/services/video/retry.js +0 -76
  783. package/dist/services/video/screenshot-generator.d.ts +0 -69
  784. package/dist/services/video/screenshot-generator.js +0 -259
  785. package/dist/services/video/tts-generator.d.ts +0 -40
  786. package/dist/services/video/tts-generator.js +0 -121
  787. package/dist/services/video/video-assembler.d.ts +0 -45
  788. package/dist/services/video/video-assembler.js +0 -351
  789. package/dist/services/video/video-uploader.d.ts +0 -28
  790. package/dist/services/video/video-uploader.js +0 -108
  791. package/dist/skills/phase/adr-generation/SKILL.md +0 -51
  792. package/dist/skills/phase/analyze-logs/SKILL.md +0 -24
  793. package/dist/skills/phase/app-store-generation/SKILL.md +0 -60
  794. package/dist/skills/phase/architecture-diagram/SKILL.md +0 -41
  795. package/dist/skills/phase/autonomous/SKILL.md +0 -52
  796. package/dist/skills/phase/branch-planning/SKILL.md +0 -55
  797. package/dist/skills/phase/bug-fixing/SKILL.md +0 -47
  798. package/dist/skills/phase/class-diagram/SKILL.md +0 -44
  799. package/dist/skills/phase/code-implementation/SKILL.md +0 -68
  800. package/dist/skills/phase/code-implementation-verification/SKILL.md +0 -76
  801. package/dist/skills/phase/code-refine/SKILL.md +0 -62
  802. package/dist/skills/phase/code-testing/SKILL.md +0 -78
  803. package/dist/skills/phase/data-flow/SKILL.md +0 -82
  804. package/dist/skills/phase/er-diagram/SKILL.md +0 -71
  805. package/dist/skills/phase/flowchart/SKILL.md +0 -38
  806. package/dist/skills/phase/functional-testing/SKILL.md +0 -62
  807. package/dist/skills/phase/growth-analysis/SKILL.md +0 -97
  808. package/dist/skills/phase/incremental-sync/SKILL.md +0 -59
  809. package/dist/skills/phase/intelligence-analysis/SKILL.md +0 -52
  810. package/dist/skills/phase/issue-analysis/SKILL.md +0 -73
  811. package/dist/skills/phase/issue-analysis-verification/SKILL.md +0 -61
  812. package/dist/skills/phase/pr-execution/SKILL.md +0 -69
  813. package/dist/skills/phase/pr-splitting/SKILL.md +0 -78
  814. package/dist/skills/phase/screen-flow/SKILL.md +0 -78
  815. package/dist/skills/phase/sequence-diagram/SKILL.md +0 -67
  816. package/dist/skills/phase/smoke-test/SKILL.md +0 -80
  817. package/dist/skills/phase/state-diagram/SKILL.md +0 -38
  818. package/dist/skills/phase/task/SKILL.md +0 -19
  819. package/dist/skills/phase/technical-design/SKILL.md +0 -75
  820. package/dist/skills/phase/technical-design-verification/SKILL.md +0 -43
  821. package/dist/skills/phase/test-cases-analysis/SKILL.md +0 -88
  822. package/dist/skills/phase/user-psychology/SKILL.md +0 -135
  823. package/dist/skills/phase/user-stories-analysis/SKILL.md +0 -118
  824. package/dist/supabase/client.d.ts +0 -34
  825. package/dist/supabase/client.js +0 -123
  826. package/dist/system/session-manager.d.ts +0 -67
  827. package/dist/system/session-manager.js +0 -300
  828. package/dist/system/sleep-notification.d.ts +0 -15
  829. package/dist/system/sleep-notification.js +0 -108
  830. package/dist/system/sleep-prevention.d.ts +0 -20
  831. package/dist/system/sleep-prevention.js +0 -112
  832. package/dist/tools/bootstrap.d.ts +0 -45
  833. package/dist/tools/bootstrap.js +0 -50
  834. package/dist/types/external-sources.d.ts +0 -22
  835. package/dist/types/external-sources.js +0 -23
  836. package/dist/types/index.d.ts +0 -206
  837. package/dist/types/index.js +0 -1
  838. package/dist/types/issues.d.ts +0 -37
  839. package/dist/types/issues.js +0 -1
  840. package/dist/types/llm-responses.d.ts +0 -114
  841. package/dist/types/llm-responses.js +0 -9
  842. package/dist/types/pipeline.d.ts +0 -28
  843. package/dist/types/pipeline.js +0 -4
  844. package/dist/updater/auto-updater.d.ts +0 -39
  845. package/dist/updater/auto-updater.js +0 -134
  846. package/dist/utils/conflict-resolver.d.ts +0 -49
  847. package/dist/utils/conflict-resolver.js +0 -201
  848. package/dist/utils/formatters.d.ts +0 -42
  849. package/dist/utils/formatters.js +0 -166
  850. package/dist/utils/git-branch-manager-async.d.ts +0 -127
  851. package/dist/utils/git-branch-manager-async.js +0 -425
  852. package/dist/utils/git-branch-manager.d.ts +0 -160
  853. package/dist/utils/git-branch-manager.js +0 -613
  854. package/dist/utils/git-push.d.ts +0 -43
  855. package/dist/utils/git-push.js +0 -136
  856. package/dist/utils/github-repo-info.d.ts +0 -26
  857. package/dist/utils/github-repo-info.js +0 -45
  858. package/dist/utils/image-downloader.d.ts +0 -32
  859. package/dist/utils/image-downloader.js +0 -152
  860. package/dist/utils/issue-phase-cli.d.ts +0 -26
  861. package/dist/utils/issue-phase-cli.js +0 -44
  862. package/dist/utils/json-extract.d.ts +0 -6
  863. package/dist/utils/json-extract.js +0 -44
  864. package/dist/utils/json-extractor.d.ts +0 -27
  865. package/dist/utils/json-extractor.js +0 -102
  866. package/dist/utils/logger.d.ts +0 -35
  867. package/dist/utils/logger.js +0 -167
  868. package/dist/utils/pipeline-logger.d.ts +0 -8
  869. package/dist/utils/pipeline-logger.js +0 -38
  870. package/dist/utils/validation.d.ts +0 -68
  871. package/dist/utils/validation.js +0 -229
  872. package/dist/utils/workflow-utils.d.ts +0 -22
  873. package/dist/utils/workflow-utils.js +0 -48
  874. package/dist/workspace/session-workspace.d.ts +0 -43
  875. package/dist/workspace/session-workspace.js +0 -90
  876. package/dist/workspace/workspace-manager.d.ts +0 -105
  877. package/dist/workspace/workspace-manager.js +0 -280
@@ -1,268 +0,0 @@
1
- /**
2
- * Find-architecture phase: clone the product's repo, ask Claude to audit the
3
- * codebase for architectural problems and improvement opportunities, and file
4
- * each new finding as an issue. Subsequent runs are incremental, scoped to
5
- * commits since the previous successful scan.
6
- *
7
- * Companion to find-bugs (real defects), find-features (missing user
8
- * capability), and find-smells (local code-level improvements). All four
9
- * phases share the same workspace + state pattern.
10
- */
11
- import { query } from '@anthropic-ai/claude-agent-sdk';
12
- import { DEFAULT_MODEL } from '../../constants.js';
13
- import { logError, logInfo, logSuccess, logWarning, } from '../../utils/logger.js';
14
- import { cleanupIssueRepo, cloneIssueRepo, ensureWorkspaceDir, syncRepoToRef, } from '../../workspace/workspace-manager.js';
15
- import { resolveScanBase } from '../find-shared/baseline.js';
16
- import { resolveCustomRules } from '../find-shared/custom-rules.js';
17
- import { detectDefaultBranch, gitRevParse, isAncestor, listChangedPaths, } from '../find-shared/git.js';
18
- import { createIssue, fetchOpenIssues, fetchOpenIssuesByRepo, fetchProductBasics, fetchRepositoryBasics, } from '../find-shared/mcp.js';
19
- import { resolveStackRulePacks } from '../find-shared/rule-config.js';
20
- import { createPromptGenerator, extractTextFromContent, tryExtractResult, } from '../pr-shared/agent-utils.js';
21
- import { createFindArchitectureSystemPrompt, createFindArchitectureUserPrompt, } from './prompts.js';
22
- import { acquireFindArchitectureLock, loadFindArchitectureState, updateFindArchitectureState, } from './state.js';
23
- import { isScanResult, } from './types.js';
24
- const WORKSPACE_KEY = 'find-architecture';
25
- /** Single source of truth — referenced by the CLI help string too. */
26
- export const DEFAULT_MAX_FILES = 200;
27
- /**
28
- * Upper bound on turns for the in-CLI Claude session. Architectural audits
29
- * traverse imports and follow boundaries across the repo, so they need at
30
- * least as much headroom as find-bugs / find-smells.
31
- */
32
- const MAX_TURNS = 200;
33
- /**
34
- * Scan a product's repository for architectural concerns and file each new
35
- * finding as an issue.
36
- */
37
- // eslint-disable-next-line complexity
38
- export async function scanForArchitecture(options) {
39
- const { productId, repoId, githubToken, owner, repo, full, maxFiles, verbose, } = options;
40
- // State/lock/workspace are keyed by an opaque scope id so product and repo
41
- // scans never collide; repo keys are prefixed to namespace them clearly.
42
- const scopeId = productId ?? `repo-${repoId}`;
43
- const scopeLabel = productId ? `product ${productId}` : `repository ${repoId}`;
44
- logInfo(`Starting architecture scan for ${scopeLabel} (${owner}/${repo})`);
45
- const lock = acquireFindArchitectureLock(scopeId);
46
- if (!lock) {
47
- logWarning(`Another architecture scan is already in progress for ${scopeLabel}; skipping.`);
48
- return {
49
- status: 'error',
50
- message: 'Another architecture scan is already in progress for this scope',
51
- };
52
- }
53
- let repoPath;
54
- let scanSucceeded = false;
55
- try {
56
- updateFindArchitectureState(scopeId, {
57
- lastAttemptedAt: new Date().toISOString(),
58
- });
59
- const workspaceRoot = ensureWorkspaceDir();
60
- const repoKey = `${WORKSPACE_KEY}-${scopeId}`;
61
- ({ repoPath } = cloneIssueRepo(workspaceRoot, repoKey, owner, repo, githubToken));
62
- const branch = options.branch ?? detectDefaultBranch(repoPath);
63
- logInfo(`Syncing ${owner}/${repo} to branch ${branch}`);
64
- syncRepoToRef(repoPath, { branch }, githubToken);
65
- const headSha = gitRevParse(repoPath, 'HEAD');
66
- const state = loadFindArchitectureState(scopeId);
67
- const baseSha = await resolveScanBase({ productId, repoId }, { full, lastScannedSha: state.lastScannedCommitSha });
68
- let scope = 'full';
69
- let changedPaths;
70
- if (baseSha && baseSha !== headSha) {
71
- const sameTree = isAncestor(repoPath, baseSha, headSha);
72
- if (sameTree) {
73
- scope = 'incremental';
74
- changedPaths = listChangedPaths(repoPath, baseSha, headSha);
75
- logInfo(`Incremental scan: ${changedPaths.length} files changed since ${baseSha.slice(0, 8)}`);
76
- if (changedPaths.length === 0) {
77
- logSuccess('No code changes since last scan; nothing to do.');
78
- updateFindArchitectureState(scopeId, {
79
- lastScannedCommitSha: headSha,
80
- lastScannedAt: new Date().toISOString(),
81
- lastError: undefined,
82
- });
83
- scanSucceeded = true;
84
- return {
85
- status: 'success',
86
- message: 'No changes since last scan',
87
- scannedCommitSha: headSha,
88
- findingsFound: 0,
89
- issuesCreated: 0,
90
- };
91
- }
92
- }
93
- else {
94
- logWarning(`Last scanned sha ${baseSha.slice(0, 8)} not reachable from HEAD; falling back to full scan.`);
95
- }
96
- }
97
- else if (baseSha === headSha) {
98
- logSuccess('HEAD unchanged since last scan; nothing to do.');
99
- updateFindArchitectureState(scopeId, {
100
- lastScannedAt: new Date().toISOString(),
101
- lastError: undefined,
102
- });
103
- scanSucceeded = true;
104
- return {
105
- status: 'success',
106
- message: 'HEAD unchanged since last scan',
107
- scannedCommitSha: headSha,
108
- findingsFound: 0,
109
- issuesCreated: 0,
110
- };
111
- }
112
- const product = productId
113
- ? await fetchProductBasics(productId)
114
- : await fetchRepositoryBasics(repoId);
115
- const existingIssues = productId
116
- ? await fetchOpenIssues(productId)
117
- : await fetchOpenIssuesByRepo(repoId);
118
- logInfo(`Loaded ${existingIssues.length} existing issues for dedup context`);
119
- const rulePacks = await resolveStackRulePacks(repoPath, {
120
- productId,
121
- repoId,
122
- });
123
- const customRules = await resolveCustomRules({ productId, repoId }, 'architecture');
124
- const systemPrompt = createFindArchitectureSystemPrompt(rulePacks, customRules);
125
- const userPrompt = createFindArchitectureUserPrompt({
126
- productName: product.name,
127
- productDescription: product.description,
128
- scope,
129
- baseSha,
130
- headSha,
131
- changedPaths,
132
- maxFiles: maxFiles ?? DEFAULT_MAX_FILES,
133
- existingIssues: existingIssues.map((i) => ({
134
- id: i.id,
135
- name: i.name,
136
- description: i.description,
137
- })),
138
- });
139
- let lastAssistantResponse = '';
140
- let scanResult = null;
141
- logInfo('Running Claude architecture audit...');
142
- for await (const message of query({
143
- prompt: createPromptGenerator(userPrompt),
144
- options: {
145
- systemPrompt: {
146
- type: 'preset',
147
- preset: 'claude_code',
148
- append: systemPrompt,
149
- },
150
- model: DEFAULT_MODEL,
151
- maxTurns: MAX_TURNS,
152
- permissionMode: 'bypassPermissions',
153
- cwd: repoPath,
154
- },
155
- })) {
156
- if (message.type === 'assistant') {
157
- lastAssistantResponse += extractTextFromContent(message.message?.content ?? [], verbose);
158
- continue;
159
- }
160
- if (message.type !== 'result') {
161
- continue;
162
- }
163
- const responseText = message.subtype === 'success'
164
- ? message.result || lastAssistantResponse
165
- : lastAssistantResponse;
166
- const parsed = tryExtractResult(responseText, 'scan_result');
167
- if (isScanResult(parsed)) {
168
- scanResult = parsed;
169
- }
170
- else if (message.subtype !== 'success') {
171
- logError(`Audit incomplete: ${message.subtype}`);
172
- }
173
- }
174
- if (!scanResult) {
175
- const msg = 'Audit failed: could not parse a scan_result from the agent';
176
- updateFindArchitectureState(scopeId, { lastError: msg });
177
- return {
178
- status: 'error',
179
- message: msg,
180
- };
181
- }
182
- const { summary, findings } = scanResult;
183
- logInfo(`Audit produced ${findings.length} candidate findings. ${summary}`);
184
- const deferredBugs = scanResult.deferred_to_bugs ?? [];
185
- const deferredFeatures = scanResult.deferred_to_features ?? [];
186
- const deferredSmells = scanResult.deferred_to_smells ?? [];
187
- // CLI suggestion argument: a productId positional, or the --repo-id flag.
188
- const scopeArg = productId ?? `--repo-id ${repoId}`;
189
- logDeferred(deferredBugs, 'find-bugs', scopeArg);
190
- logDeferred(deferredFeatures, 'find-features', scopeArg);
191
- logDeferred(deferredSmells, 'find-smells', scopeArg);
192
- let created = 0;
193
- for (const finding of findings) {
194
- const issueId = await createIssueForFinding({ productId, repoId }, finding);
195
- if (issueId) {
196
- created++;
197
- logSuccess(`Filed issue ${issueId}: ${finding.title}`);
198
- }
199
- }
200
- updateFindArchitectureState(scopeId, {
201
- lastScannedCommitSha: headSha,
202
- lastScannedAt: new Date().toISOString(),
203
- lastError: undefined,
204
- });
205
- scanSucceeded = true;
206
- return {
207
- status: 'success',
208
- message: `Filed ${created} of ${findings.length} candidate architecture findings (${deferredBugs.length} deferred to bugs, ${deferredFeatures.length} to features, ${deferredSmells.length} to smells)`,
209
- scannedCommitSha: headSha,
210
- findingsFound: findings.length,
211
- issuesCreated: created,
212
- deferredToBugs: deferredBugs.length,
213
- deferredToFeatures: deferredFeatures.length,
214
- deferredToSmells: deferredSmells.length,
215
- summary,
216
- };
217
- }
218
- catch (error) {
219
- const errorMessage = error instanceof Error ? error.message : String(error);
220
- logError(`Architecture scan failed: ${errorMessage}`);
221
- updateFindArchitectureState(scopeId, { lastError: errorMessage });
222
- return {
223
- status: 'error',
224
- message: `Architecture scan failed: ${errorMessage}`,
225
- };
226
- }
227
- finally {
228
- if (scanSucceeded) {
229
- cleanupIssueRepo(repoPath);
230
- }
231
- lock.release();
232
- }
233
- }
234
- function logDeferred(deferred, siblingPhase, scopeArg) {
235
- if (deferred.length === 0) {
236
- return;
237
- }
238
- logInfo(`${deferred.length} finding(s) deferred to ${siblingPhase} — run \`edsger ${siblingPhase} ${scopeArg}\` to pick them up:`);
239
- for (const d of deferred) {
240
- const loc = d.file ? ` (${d.file}${d.line ? `:${d.line}` : ''})` : '';
241
- logInfo(` • ${d.title}${loc} — ${d.reason}`);
242
- }
243
- }
244
- async function createIssueForFinding(scope, finding) {
245
- return createIssue({
246
- productId: scope.productId,
247
- repoId: scope.repoId,
248
- title: finding.title,
249
- description: formatIssueDescription(finding),
250
- source: 'quality',
251
- });
252
- }
253
- function formatIssueDescription(finding) {
254
- const location = finding.line
255
- ? `${finding.file}:${finding.line}`
256
- : finding.file;
257
- const lines = [
258
- `**Severity**: ${finding.severity}`,
259
- `**Concern**: ${finding.concern}`,
260
- `**Location**: \`${location}\``,
261
- ];
262
- if (finding.related_files && finding.related_files.length > 0) {
263
- lines.push(`**Related**: ${finding.related_files.map((f) => `\`${f}\``).join(', ')}`);
264
- }
265
- lines.push('', finding.description, '', '---');
266
- lines.push('_Filed automatically by `edsger find-architecture`._');
267
- return lines.join('\n');
268
- }
@@ -1,32 +0,0 @@
1
- /**
2
- * Prompts for the find-architecture phase. The agent runs with cwd=repo
3
- * checkout and has Read/Grep/Glob/Bash available — it explores the code
4
- * itself rather than receiving a pre-baked diff.
5
- *
6
- * Boundary against neighbouring phases:
7
- * - find-bugs handles real defects (security, correctness, races, etc.)
8
- * - find-features handles missing user-facing capability
9
- * - find-smells handles local code-level improvements (refactor, dead code,
10
- * readability, perf cliffs, type-safety gaps in a single function/file)
11
- * - find-architecture (this phase) handles structural problems that span
12
- * multiple files: module boundaries, layering, coupling, cycles, missing
13
- * or duplicated abstractions, responsibility creep, cross-cutting concerns.
14
- */
15
- import { type RulePack } from '../find-shared/rule-packs.js';
16
- export declare function createFindArchitectureSystemPrompt(packs?: RulePack[], customRules?: string): string;
17
- export interface FindArchitectureUserPromptParams {
18
- productName: string;
19
- productDescription?: string;
20
- scope: 'full' | 'incremental';
21
- baseSha?: string;
22
- headSha: string;
23
- changedPaths?: string[];
24
- existingIssues: {
25
- id: string;
26
- name: string;
27
- description?: string;
28
- }[];
29
- /** Upper bound on files the auditor may Read. Keeps token cost predictable. */
30
- maxFiles?: number;
31
- }
32
- export declare function createFindArchitectureUserPrompt(params: FindArchitectureUserPromptParams): string;
@@ -1,129 +0,0 @@
1
- /**
2
- * Prompts for the find-architecture phase. The agent runs with cwd=repo
3
- * checkout and has Read/Grep/Glob/Bash available — it explores the code
4
- * itself rather than receiving a pre-baked diff.
5
- *
6
- * Boundary against neighbouring phases:
7
- * - find-bugs handles real defects (security, correctness, races, etc.)
8
- * - find-features handles missing user-facing capability
9
- * - find-smells handles local code-level improvements (refactor, dead code,
10
- * readability, perf cliffs, type-safety gaps in a single function/file)
11
- * - find-architecture (this phase) handles structural problems that span
12
- * multiple files: module boundaries, layering, coupling, cycles, missing
13
- * or duplicated abstractions, responsibility creep, cross-cutting concerns.
14
- */
15
- import { renderRulePacks } from '../find-shared/rule-packs.js';
16
- export function createFindArchitectureSystemPrompt(packs = [], customRules = '') {
17
- return `You are a senior staff engineer auditing a codebase for **architectural problems and improvement opportunities**. You have read-only access via Read/Grep/Glob and may run shallow Bash queries (e.g. \`git log\`, \`wc -l\`, \`grep\`) to navigate.
18
-
19
- **What counts as an architectural finding worth filing**:
20
- 1. **Layering violations**: lower layers reaching into upper layers, UI directly hitting persistence, infrastructure leaking into domain
21
- 2. **Coupling**: modules that know too much about each other's internals, leaky abstractions, pervasive shared mutable state
22
- 3. **Cohesion**: modules that mix unrelated responsibilities; "god" files/services that have grown into multiple things
23
- 4. **Cyclic dependencies**: import cycles between modules / packages
24
- 5. **Boundary problems**: unclear public API surfaces, internal-only types exported, missing seams that make testing hard
25
- 6. **Duplicated abstractions**: two parallel implementations of the same concept (two HTTP clients, two auth flows, two cache layers)
26
- 7. **Missing abstraction**: same orchestration pattern hand-rolled in N call sites, no shared helper / interface
27
- 8. **Responsibility creep**: a service / component that started focused and now does five things
28
- 9. **Cross-cutting concerns**: logging, auth, retries, error handling implemented inconsistently across modules
29
- 10. **Inconsistency**: same problem solved different ways in different parts of the codebase, drifting conventions
30
- 11. **Scalability shape**: data-flow / control-flow patterns that won't survive the next obvious axis of growth${renderRulePacks(packs, 'architecture')}${customRules}
31
-
32
- **What does NOT count** (skip these — wrong tool):
33
- - Real bugs (security holes, logic errors, races, data corruption) — those belong in \`edsger find-bugs\`. **Don't drop them silently — list them in \`deferred_to_bugs\`.**
34
- - Missing user-facing features or workflows — those belong in \`edsger find-features\`. **List them in \`deferred_to_features\`.**
35
- - Local code smells confined to a single function/file (refactor candidates, dead code, type-safety gaps, readability issues) — those belong in \`edsger find-smells\`. **List them in \`deferred_to_smells\`.**
36
- - Pure style / formatting / lint issues
37
- - Hypothetical future-scaling concerns with no current evidence
38
- - "Could be more idiomatic" rewrites with no concrete benefit
39
-
40
- **Discipline**:
41
- - Be concrete: cite the exact files, modules, or import paths involved. If you flag a cycle, name every file in the cycle. If you flag a layering violation, quote the offending import line.
42
- - Architectural findings span multiple files almost by definition — use \`related_files\` to enumerate them. The \`file\` field should be the most useful single anchor for a reader.
43
- - Be conservative: if you can't articulate the *concrete cost* of the current shape (testability blocked, change-amplification, repeated bugs in the same area, slow onboarding), skip it.
44
- - Severity rubric:
45
- - high = actively blocking work (cycles preventing builds, coupling causing repeated regressions, missing seams blocking testing the team is clearly trying to do)
46
- - medium = clear structural improvement that pays back across many future changes
47
- - low = directional nudge; only file if the fix is small and obvious
48
- - **Deduplication**: you will be given the list of existing open issues. Skip any finding that overlaps. Better to under-report than spam duplicates.
49
-
50
- **CRITICAL — Output Format**:
51
- End your response with a single JSON code block in this exact shape:
52
-
53
- \`\`\`json
54
- {
55
- "scan_result": {
56
- "summary": "Reviewed N files / M modules in <scope>; found X architectural findings (Y high, Z medium).",
57
- "scanned_commit_sha": "<the HEAD sha you scanned>",
58
- "findings": [
59
- {
60
- "title": "Short, action-oriented title (under 80 chars)",
61
- "description": "## What\\nWhat the architectural problem is, with the offending imports/snippets quoted.\\n\\n## Why it matters\\nConcrete cost of the current shape (testability, change-amplification, regression history, onboarding friction).\\n\\n## Suggested change\\nA specific structural change — extracted module, inverted dependency, new boundary, etc.",
62
- "file": "relative/path/from/repo/root.ts",
63
- "line": 42,
64
- "related_files": ["other/file/in/the/cycle.ts", "another/layer/violator.ts"],
65
- "severity": "medium",
66
- "concern": "layering",
67
- "dedup_signature": "ui-layer-imports-db-client"
68
- }
69
- ],
70
- "deferred_to_bugs": [
71
- { "title": "...", "reason": "...", "file": "...", "line": 100 }
72
- ],
73
- "deferred_to_features": [
74
- { "title": "...", "reason": "...", "file": "..." }
75
- ],
76
- "deferred_to_smells": [
77
- { "title": "...", "reason": "...", "file": "..." }
78
- ]
79
- }
80
- }
81
- \`\`\`
82
-
83
- If you find nothing worth filing, still emit the JSON with an empty \`findings\` array. The \`deferred_to_*\` arrays are optional — omit them or send \`[]\` if there's nothing to hand off.`;
84
- }
85
- export function createFindArchitectureUserPrompt(params) {
86
- const { productName, productDescription, scope, baseSha, headSha, changedPaths, existingIssues, maxFiles, } = params;
87
- const productBlock = productDescription
88
- ? `**Product**: ${productName}\n${productDescription}`
89
- : `**Product**: ${productName}`;
90
- const scopeBlock = scope === 'incremental' && baseSha
91
- ? `**Scope**: incremental scan focused on changes between ${baseSha} and ${headSha}, but architectural findings are inherently structural — feel free to follow imports out of the diff to confirm boundaries / cycles. Use \`git diff --name-only ${baseSha}..${headSha}\` to enumerate the entry points.`
92
- : `**Scope**: full repository scan at ${headSha}. Use Glob to enumerate source modules. Skip vendored code, build output, generated files, lockfiles, and \`node_modules\`. Map out the top-level module structure first, then drill into suspected hotspots.`;
93
- const filesHint = changedPaths && changedPaths.length > 0
94
- ? `\n**Changed files in this range** (${changedPaths.length}):\n${changedPaths
95
- .slice(0, 200)
96
- .map((p) => `- ${p}`)
97
- .join('\n')}${changedPaths.length > 200 ? `\n…and ${changedPaths.length - 200} more.` : ''}`
98
- : '';
99
- const issuesBlock = existingIssues.length === 0
100
- ? 'No existing open issues for this product — every finding is new.'
101
- : `**Existing open issues** (${existingIssues.length}) — skip findings that overlap with any of these:\n${existingIssues
102
- .map((i) => `- [${i.id}] ${i.name}${i.description ? `\n ${truncate(i.description, 200)}` : ''}`)
103
- .join('\n')}`;
104
- const budgetBlock = typeof maxFiles === 'number' && maxFiles > 0
105
- ? `\n**Budget**: Read at most ${maxFiles} files. Prioritise top-level module entry points, package boundaries, shared infrastructure (clients, services, framework glue), and files most-imported by the rest of the repo. If the scope is larger than the budget, stop when you hit it and report truncation in \`summary\`.`
106
- : '';
107
- return `${productBlock}
108
-
109
- ${scopeBlock}${filesHint}${budgetBlock}
110
-
111
- ${issuesBlock}
112
-
113
- ## How to work
114
-
115
- 1. Map the top-level module structure first (\`ls\`, \`Glob\` on top-level dirs). Identify the natural layers / boundaries the codebase is trying to maintain.
116
- 2. For each suspected concern (layering violation, cycle, coupling hotspot, duplicated abstraction, responsibility creep), follow imports / call sites with Grep + Read to confirm before filing.
117
- 3. When you suspect a structural issue, articulate the *concrete cost* of the current shape. If you can't name the cost, drop it.
118
- 4. If something looks like a real bug, a missing user feature, or a local code smell — drop it from this scan and route it via the appropriate \`deferred_to_*\` array.
119
- 5. Cross-check every candidate against the existing issues list. Drop overlaps.
120
- 6. Produce the final JSON described in the system prompt.
121
-
122
- Begin.`;
123
- }
124
- function truncate(s, n) {
125
- if (s.length <= n) {
126
- return s;
127
- }
128
- return `${s.slice(0, n)}…`;
129
- }
@@ -1,21 +0,0 @@
1
- /**
2
- * Per-product scan state for find-architecture. Storage at
3
- * `~/.edsger/find-architecture-state/<productId>.json`.
4
- *
5
- * Same schema shape as find-smells / find-bugs (incremental sha tracking) —
6
- * file/lock machinery shared via createScanStateModule. Kept as a sibling
7
- * state file so an architecture scan can run alongside other find-* scans
8
- * without contending on the same lock.
9
- */
10
- import { type LockHandle } from '../find-shared/scan-state.js';
11
- export type { LockHandle };
12
- export interface FindArchitectureState {
13
- lastScannedCommitSha?: string;
14
- lastScannedAt?: string;
15
- lastAttemptedAt?: string;
16
- lastError?: string;
17
- }
18
- export declare const loadFindArchitectureState: (productId: string) => FindArchitectureState;
19
- export declare const saveFindArchitectureState: (productId: string, state: FindArchitectureState) => void;
20
- export declare const updateFindArchitectureState: (productId: string, patch: Partial<FindArchitectureState>) => FindArchitectureState;
21
- export declare const acquireFindArchitectureLock: (productId: string, staleAfterMs?: number) => LockHandle | null;
@@ -1,17 +0,0 @@
1
- /**
2
- * Per-product scan state for find-architecture. Storage at
3
- * `~/.edsger/find-architecture-state/<productId>.json`.
4
- *
5
- * Same schema shape as find-smells / find-bugs (incremental sha tracking) —
6
- * file/lock machinery shared via createScanStateModule. Kept as a sibling
7
- * state file so an architecture scan can run alongside other find-* scans
8
- * without contending on the same lock.
9
- */
10
- import { createScanStateModule, } from '../find-shared/scan-state.js';
11
- const m = createScanStateModule({
12
- dirName: 'find-architecture-state',
13
- });
14
- export const loadFindArchitectureState = m.load;
15
- export const saveFindArchitectureState = m.save;
16
- export const updateFindArchitectureState = m.update;
17
- export const acquireFindArchitectureLock = m.acquireLock;
@@ -1,55 +0,0 @@
1
- /**
2
- * Types for the find-architecture phase.
3
- *
4
- * Where find-smells covers local "the code would be better if changed" findings
5
- * (refactor candidates, dead code, perf cliffs, etc.), this phase zooms out to
6
- * **architectural** problems and improvements — module boundaries, layering,
7
- * coupling, dependency direction, responsibility creep, missing or duplicated
8
- * abstractions, cross-cutting concerns. Findings span multiple files by nature.
9
- */
10
- export type ArchitectureSeverity = 'high' | 'medium' | 'low';
11
- /**
12
- * Authoritative list of allowed concern types. Kept as a `const` array so the
13
- * type and the runtime whitelist can never drift apart.
14
- */
15
- export declare const ARCHITECTURE_CONCERNS: readonly ["layering", "coupling", "cohesion", "cyclic_dependency", "boundary", "duplication", "missing_abstraction", "responsibility_creep", "cross_cutting", "inconsistency", "scalability", "other"];
16
- export type ArchitectureConcern = (typeof ARCHITECTURE_CONCERNS)[number];
17
- export declare function isArchitectureConcern(value: unknown): value is ArchitectureConcern;
18
- export interface ArchitectureFinding {
19
- title: string;
20
- description: string;
21
- /** Primary anchor file or module path. */
22
- file: string;
23
- /** Optional line in the primary file. */
24
- line?: number;
25
- /** Other files involved in the finding (cycle members, layer crossers, etc.). */
26
- related_files?: string[];
27
- severity: ArchitectureSeverity;
28
- concern: ArchitectureConcern;
29
- /** Stable signature for log/audit; not used for storage dedup. */
30
- dedup_signature?: string;
31
- }
32
- /**
33
- * A finding the agent saw but is handing off to a sibling phase rather than
34
- * filing as an architecture issue. Surfaced in the run log so the user knows
35
- * the work wasn't silently lost.
36
- */
37
- export interface DeferredFinding {
38
- title: string;
39
- reason: string;
40
- file?: string;
41
- line?: number;
42
- }
43
- export declare function isDeferredFinding(value: unknown): value is DeferredFinding;
44
- export interface ScanResult {
45
- summary: string;
46
- scanned_commit_sha?: string;
47
- findings: ArchitectureFinding[];
48
- /** Findings the agent thinks belong in `edsger find-bugs`. */
49
- deferred_to_bugs?: DeferredFinding[];
50
- /** Findings the agent thinks belong in `edsger find-features`. */
51
- deferred_to_features?: DeferredFinding[];
52
- /** Findings the agent thinks belong in `edsger find-smells`. */
53
- deferred_to_smells?: DeferredFinding[];
54
- }
55
- export declare function isScanResult(value: unknown): value is ScanResult;
@@ -1,69 +0,0 @@
1
- /**
2
- * Types for the find-architecture phase.
3
- *
4
- * Where find-smells covers local "the code would be better if changed" findings
5
- * (refactor candidates, dead code, perf cliffs, etc.), this phase zooms out to
6
- * **architectural** problems and improvements — module boundaries, layering,
7
- * coupling, dependency direction, responsibility creep, missing or duplicated
8
- * abstractions, cross-cutting concerns. Findings span multiple files by nature.
9
- */
10
- /**
11
- * Authoritative list of allowed concern types. Kept as a `const` array so the
12
- * type and the runtime whitelist can never drift apart.
13
- */
14
- export const ARCHITECTURE_CONCERNS = [
15
- 'layering',
16
- 'coupling',
17
- 'cohesion',
18
- 'cyclic_dependency',
19
- 'boundary',
20
- 'duplication',
21
- 'missing_abstraction',
22
- 'responsibility_creep',
23
- 'cross_cutting',
24
- 'inconsistency',
25
- 'scalability',
26
- 'other',
27
- ];
28
- export function isArchitectureConcern(value) {
29
- return (typeof value === 'string' &&
30
- ARCHITECTURE_CONCERNS.includes(value));
31
- }
32
- export function isDeferredFinding(value) {
33
- if (!value || typeof value !== 'object') {
34
- return false;
35
- }
36
- const v = value;
37
- return typeof v.title === 'string' && typeof v.reason === 'string';
38
- }
39
- export function isScanResult(value) {
40
- if (!value || typeof value !== 'object') {
41
- return false;
42
- }
43
- const v = value;
44
- if (typeof v.summary !== 'string' || !Array.isArray(v.findings)) {
45
- return false;
46
- }
47
- const findingsOk = v.findings.every((f) => f &&
48
- typeof f === 'object' &&
49
- typeof f.title === 'string' &&
50
- typeof f.description === 'string' &&
51
- typeof f.file === 'string');
52
- if (!findingsOk) {
53
- return false;
54
- }
55
- for (const key of [
56
- 'deferred_to_bugs',
57
- 'deferred_to_features',
58
- 'deferred_to_smells',
59
- ]) {
60
- const arr = v[key];
61
- if (arr === undefined) {
62
- continue;
63
- }
64
- if (!Array.isArray(arr) || !arr.every(isDeferredFinding)) {
65
- return false;
66
- }
67
- }
68
- return true;
69
- }
@@ -1,33 +0,0 @@
1
- /**
2
- * Find-bugs phase: clone the product's repo, ask Claude to audit code for
3
- * real bugs, and file each new finding as an issue. Subsequent runs are
4
- * incremental, scoped to commits since the previous successful scan.
5
- */
6
- export interface FindBugsOptions {
7
- /** Product scope. Provide this OR repoId (repo-scoped scan). */
8
- productId?: string;
9
- /** Repository scope: scan a bare `repositories` row with no product. */
10
- repoId?: string;
11
- githubToken: string;
12
- owner: string;
13
- repo: string;
14
- /** Force a full scan even if previous-scan state exists. */
15
- full?: boolean;
16
- /** Branch to scan; defaults to the repo's default branch. */
17
- branch?: string;
18
- /** Upper bound on files the auditor may Read. Keeps token cost predictable. */
19
- maxFiles?: number;
20
- verbose?: boolean;
21
- }
22
- export interface FindBugsResult {
23
- status: 'success' | 'error';
24
- message: string;
25
- scannedCommitSha?: string;
26
- bugsFound?: number;
27
- issuesCreated?: number;
28
- summary?: string;
29
- }
30
- /**
31
- * Scan a product's repository for bugs and file each new finding as an issue.
32
- */
33
- export declare function scanForBugs(options: FindBugsOptions): Promise<FindBugsResult>;