oh-my-claude-sisyphus 3.8.9 → 3.8.10

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 (445) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/README.md +1 -1
  4. package/agents/architect.md +78 -0
  5. package/agents/explore.md +15 -0
  6. package/agents/qa-tester.md +159 -1
  7. package/agents/writer.md +20 -0
  8. package/commands/help.md +1 -1
  9. package/commands/omc-setup.md +1 -1
  10. package/dist/__tests__/agent-registry.test.d.ts +2 -0
  11. package/dist/__tests__/agent-registry.test.d.ts.map +1 -0
  12. package/dist/__tests__/agent-registry.test.js +39 -0
  13. package/dist/__tests__/agent-registry.test.js.map +1 -0
  14. package/dist/__tests__/load-agent-prompt.test.d.ts +2 -0
  15. package/dist/__tests__/load-agent-prompt.test.d.ts.map +1 -0
  16. package/dist/__tests__/load-agent-prompt.test.js +68 -0
  17. package/dist/__tests__/load-agent-prompt.test.js.map +1 -0
  18. package/dist/__tests__/model-routing.test.js +5 -34
  19. package/dist/__tests__/model-routing.test.js.map +1 -1
  20. package/dist/agents/analyst.d.ts.map +1 -1
  21. package/dist/agents/analyst.js +2 -77
  22. package/dist/agents/analyst.js.map +1 -1
  23. package/dist/agents/architect.d.ts.map +1 -1
  24. package/dist/agents/architect.js +3 -148
  25. package/dist/agents/architect.js.map +1 -1
  26. package/dist/agents/coordinator-deprecated.d.ts +18 -0
  27. package/dist/agents/coordinator-deprecated.d.ts.map +1 -0
  28. package/dist/agents/coordinator-deprecated.js +34 -0
  29. package/dist/agents/coordinator-deprecated.js.map +1 -0
  30. package/dist/agents/critic.d.ts.map +1 -1
  31. package/dist/agents/critic.js +2 -90
  32. package/dist/agents/critic.js.map +1 -1
  33. package/dist/agents/definitions.d.ts +2 -0
  34. package/dist/agents/definitions.d.ts.map +1 -1
  35. package/dist/agents/definitions.js +3 -32
  36. package/dist/agents/definitions.js.map +1 -1
  37. package/dist/agents/designer.d.ts.map +1 -1
  38. package/dist/agents/designer.js +2 -73
  39. package/dist/agents/designer.js.map +1 -1
  40. package/dist/agents/executor.d.ts +1 -0
  41. package/dist/agents/executor.d.ts.map +1 -1
  42. package/dist/agents/executor.js +3 -56
  43. package/dist/agents/executor.js.map +1 -1
  44. package/dist/agents/explore.d.ts.map +1 -1
  45. package/dist/agents/explore.js +2 -64
  46. package/dist/agents/explore.js.map +1 -1
  47. package/dist/agents/index.d.ts +4 -3
  48. package/dist/agents/index.d.ts.map +1 -1
  49. package/dist/agents/index.js +6 -3
  50. package/dist/agents/index.js.map +1 -1
  51. package/dist/agents/planner.d.ts.map +1 -1
  52. package/dist/agents/planner.js +2 -157
  53. package/dist/agents/planner.js.map +1 -1
  54. package/dist/agents/qa-tester.d.ts.map +1 -1
  55. package/dist/agents/qa-tester.js +2 -324
  56. package/dist/agents/qa-tester.js.map +1 -1
  57. package/dist/agents/researcher.d.ts.map +1 -1
  58. package/dist/agents/researcher.js +2 -65
  59. package/dist/agents/researcher.js.map +1 -1
  60. package/dist/agents/scientist.d.ts.map +1 -1
  61. package/dist/agents/scientist.js +2 -293
  62. package/dist/agents/scientist.js.map +1 -1
  63. package/dist/agents/utils.d.ts +7 -0
  64. package/dist/agents/utils.d.ts.map +1 -1
  65. package/dist/agents/utils.js +50 -0
  66. package/dist/agents/utils.js.map +1 -1
  67. package/dist/agents/vision.d.ts.map +1 -1
  68. package/dist/agents/vision.js +2 -32
  69. package/dist/agents/vision.js.map +1 -1
  70. package/dist/agents/writer.d.ts.map +1 -1
  71. package/dist/agents/writer.js +2 -171
  72. package/dist/agents/writer.js.map +1 -1
  73. package/dist/cli/analytics.js +0 -0
  74. package/dist/cli/index.js +0 -0
  75. package/dist/features/model-routing/index.d.ts +1 -1
  76. package/dist/features/model-routing/index.d.ts.map +1 -1
  77. package/dist/features/model-routing/index.js +1 -1
  78. package/dist/features/model-routing/index.js.map +1 -1
  79. package/dist/features/model-routing/router.d.ts +1 -15
  80. package/dist/features/model-routing/router.d.ts.map +1 -1
  81. package/dist/features/model-routing/router.js +2 -33
  82. package/dist/features/model-routing/router.js.map +1 -1
  83. package/dist/features/model-routing/rules.d.ts.map +1 -1
  84. package/dist/features/model-routing/rules.js +0 -8
  85. package/dist/features/model-routing/rules.js.map +1 -1
  86. package/dist/features/model-routing/types.d.ts +1 -2
  87. package/dist/features/model-routing/types.d.ts.map +1 -1
  88. package/dist/features/model-routing/types.js +2 -6
  89. package/dist/features/model-routing/types.js.map +1 -1
  90. package/dist/features/task-decomposer/index.d.ts +1 -1
  91. package/dist/features/task-decomposer/index.d.ts.map +1 -1
  92. package/dist/features/task-decomposer/index.js +5 -8
  93. package/dist/features/task-decomposer/index.js.map +1 -1
  94. package/dist/features/task-decomposer/types.d.ts +4 -4
  95. package/dist/features/task-decomposer/types.d.ts.map +1 -1
  96. package/dist/hooks/ultrapilot/decomposer.d.ts +1 -1
  97. package/dist/hooks/ultrapilot/decomposer.js +2 -2
  98. package/dist/index.d.ts +1 -1
  99. package/dist/index.d.ts.map +1 -1
  100. package/dist/index.js +4 -2
  101. package/dist/index.js.map +1 -1
  102. package/docs/CLAUDE.md +44 -4
  103. package/docs/FEATURES.md +1 -1
  104. package/docs/MIGRATION.md +5 -5
  105. package/docs/REFERENCE.md +6 -2
  106. package/package.json +1 -1
  107. package/skills/help/SKILL.md +1 -1
  108. package/skills/omc-setup/SKILL.md +1 -1
  109. package/dist/__tests__/analytics/analytics-summary.test.d.ts +0 -2
  110. package/dist/__tests__/analytics/analytics-summary.test.d.ts.map +0 -1
  111. package/dist/__tests__/analytics/analytics-summary.test.js +0 -267
  112. package/dist/__tests__/analytics/analytics-summary.test.js.map +0 -1
  113. package/dist/__tests__/analytics/cost-estimator.test.d.ts +0 -2
  114. package/dist/__tests__/analytics/cost-estimator.test.d.ts.map +0 -1
  115. package/dist/__tests__/analytics/cost-estimator.test.js +0 -212
  116. package/dist/__tests__/analytics/cost-estimator.test.js.map +0 -1
  117. package/dist/__tests__/hooks/auto-slash-command/executor.test.d.ts +0 -7
  118. package/dist/__tests__/hooks/auto-slash-command/executor.test.d.ts.map +0 -1
  119. package/dist/__tests__/hooks/auto-slash-command/executor.test.js +0 -374
  120. package/dist/__tests__/hooks/auto-slash-command/executor.test.js.map +0 -1
  121. package/dist/__tests__/hud/auto-tracking.integration.test.d.ts +0 -2
  122. package/dist/__tests__/hud/auto-tracking.integration.test.d.ts.map +0 -1
  123. package/dist/__tests__/hud/auto-tracking.integration.test.js +0 -12
  124. package/dist/__tests__/hud/auto-tracking.integration.test.js.map +0 -1
  125. package/dist/__tests__/learned-skills/config.test.d.ts +0 -2
  126. package/dist/__tests__/learned-skills/config.test.d.ts.map +0 -1
  127. package/dist/__tests__/learned-skills/config.test.js +0 -37
  128. package/dist/__tests__/learned-skills/config.test.js.map +0 -1
  129. package/dist/__tests__/learned-skills/detector.test.d.ts +0 -2
  130. package/dist/__tests__/learned-skills/detector.test.d.ts.map +0 -1
  131. package/dist/__tests__/learned-skills/detector.test.js +0 -99
  132. package/dist/__tests__/learned-skills/detector.test.js.map +0 -1
  133. package/dist/__tests__/learned-skills/finder.test.d.ts +0 -2
  134. package/dist/__tests__/learned-skills/finder.test.d.ts.map +0 -1
  135. package/dist/__tests__/learned-skills/finder.test.js +0 -59
  136. package/dist/__tests__/learned-skills/finder.test.js.map +0 -1
  137. package/dist/__tests__/learned-skills/loader.test.d.ts +0 -2
  138. package/dist/__tests__/learned-skills/loader.test.d.ts.map +0 -1
  139. package/dist/__tests__/learned-skills/loader.test.js +0 -69
  140. package/dist/__tests__/learned-skills/loader.test.js.map +0 -1
  141. package/dist/__tests__/learned-skills/parser.test.d.ts +0 -2
  142. package/dist/__tests__/learned-skills/parser.test.d.ts.map +0 -1
  143. package/dist/__tests__/learned-skills/parser.test.js +0 -81
  144. package/dist/__tests__/learned-skills/parser.test.js.map +0 -1
  145. package/dist/__tests__/learned-skills/validator.test.d.ts +0 -2
  146. package/dist/__tests__/learned-skills/validator.test.d.ts.map +0 -1
  147. package/dist/__tests__/learned-skills/validator.test.js +0 -85
  148. package/dist/__tests__/learned-skills/validator.test.js.map +0 -1
  149. package/dist/agents/codex-agents.d.ts +0 -20
  150. package/dist/agents/codex-agents.d.ts.map +0 -1
  151. package/dist/agents/codex-agents.js +0 -36
  152. package/dist/agents/codex-agents.js.map +0 -1
  153. package/dist/agents/coordinator.d.ts +0 -11
  154. package/dist/agents/coordinator.d.ts.map +0 -1
  155. package/dist/agents/coordinator.js +0 -115
  156. package/dist/agents/coordinator.js.map +0 -1
  157. package/dist/agents/document-writer.d.ts +0 -11
  158. package/dist/agents/document-writer.d.ts.map +0 -1
  159. package/dist/agents/document-writer.js +0 -209
  160. package/dist/agents/document-writer.js.map +0 -1
  161. package/dist/agents/frontend-engineer.d.ts +0 -11
  162. package/dist/agents/frontend-engineer.d.ts.map +0 -1
  163. package/dist/agents/frontend-engineer.js +0 -115
  164. package/dist/agents/frontend-engineer.js.map +0 -1
  165. package/dist/agents/librarian.d.ts +0 -12
  166. package/dist/agents/librarian.d.ts.map +0 -1
  167. package/dist/agents/librarian.js +0 -103
  168. package/dist/agents/librarian.js.map +0 -1
  169. package/dist/agents/metis.d.ts +0 -12
  170. package/dist/agents/metis.d.ts.map +0 -1
  171. package/dist/agents/metis.js +0 -117
  172. package/dist/agents/metis.js.map +0 -1
  173. package/dist/agents/momus.d.ts +0 -12
  174. package/dist/agents/momus.d.ts.map +0 -1
  175. package/dist/agents/momus.js +0 -128
  176. package/dist/agents/momus.js.map +0 -1
  177. package/dist/agents/multimodal-looker.d.ts +0 -11
  178. package/dist/agents/multimodal-looker.d.ts.map +0 -1
  179. package/dist/agents/multimodal-looker.js +0 -70
  180. package/dist/agents/multimodal-looker.js.map +0 -1
  181. package/dist/agents/oracle.d.ts +0 -13
  182. package/dist/agents/oracle.d.ts.map +0 -1
  183. package/dist/agents/oracle.js +0 -191
  184. package/dist/agents/oracle.js.map +0 -1
  185. package/dist/agents/orchestrator-sisyphus.d.ts +0 -11
  186. package/dist/agents/orchestrator-sisyphus.d.ts.map +0 -1
  187. package/dist/agents/orchestrator-sisyphus.js +0 -115
  188. package/dist/agents/orchestrator-sisyphus.js.map +0 -1
  189. package/dist/agents/prometheus.d.ts +0 -12
  190. package/dist/agents/prometheus.d.ts.map +0 -1
  191. package/dist/agents/prometheus.js +0 -195
  192. package/dist/agents/prometheus.js.map +0 -1
  193. package/dist/agents/sisyphus-junior.d.ts +0 -12
  194. package/dist/agents/sisyphus-junior.d.ts.map +0 -1
  195. package/dist/agents/sisyphus-junior.js +0 -93
  196. package/dist/agents/sisyphus-junior.js.map +0 -1
  197. package/dist/cli/components/CostDashboard.d.ts +0 -15
  198. package/dist/cli/components/CostDashboard.d.ts.map +0 -1
  199. package/dist/cli/components/CostDashboard.js +0 -15
  200. package/dist/cli/components/CostDashboard.js.map +0 -1
  201. package/dist/cli/components/LiveStats.d.ts +0 -16
  202. package/dist/cli/components/LiveStats.d.ts.map +0 -1
  203. package/dist/cli/components/LiveStats.js +0 -16
  204. package/dist/cli/components/LiveStats.js.map +0 -1
  205. package/dist/cli/components/SessionBrowser.d.ts +0 -14
  206. package/dist/cli/components/SessionBrowser.d.ts.map +0 -1
  207. package/dist/cli/components/SessionBrowser.js +0 -14
  208. package/dist/cli/components/SessionBrowser.js.map +0 -1
  209. package/dist/cli/tui.d.ts +0 -21
  210. package/dist/cli/tui.d.ts.map +0 -1
  211. package/dist/cli/tui.js +0 -21
  212. package/dist/cli/tui.js.map +0 -1
  213. package/dist/hooks/autopilot/signals.d.ts +0 -20
  214. package/dist/hooks/autopilot/signals.d.ts.map +0 -1
  215. package/dist/hooks/autopilot/signals.js +0 -75
  216. package/dist/hooks/autopilot/signals.js.map +0 -1
  217. package/dist/hooks/autopilot/summary.d.ts +0 -27
  218. package/dist/hooks/autopilot/summary.d.ts.map +0 -1
  219. package/dist/hooks/autopilot/summary.js +0 -160
  220. package/dist/hooks/autopilot/summary.js.map +0 -1
  221. package/dist/hooks/autopilot/transition.d.ts +0 -39
  222. package/dist/hooks/autopilot/transition.d.ts.map +0 -1
  223. package/dist/hooks/autopilot/transition.js +0 -216
  224. package/dist/hooks/autopilot/transition.js.map +0 -1
  225. package/dist/hooks/context-window-limit-recovery/constants.d.ts +0 -28
  226. package/dist/hooks/context-window-limit-recovery/constants.d.ts.map +0 -1
  227. package/dist/hooks/context-window-limit-recovery/constants.js +0 -85
  228. package/dist/hooks/context-window-limit-recovery/constants.js.map +0 -1
  229. package/dist/hooks/context-window-limit-recovery/index.d.ts +0 -62
  230. package/dist/hooks/context-window-limit-recovery/index.d.ts.map +0 -1
  231. package/dist/hooks/context-window-limit-recovery/index.js +0 -201
  232. package/dist/hooks/context-window-limit-recovery/index.js.map +0 -1
  233. package/dist/hooks/context-window-limit-recovery/parser.d.ts +0 -31
  234. package/dist/hooks/context-window-limit-recovery/parser.d.ts.map +0 -1
  235. package/dist/hooks/context-window-limit-recovery/parser.js +0 -241
  236. package/dist/hooks/context-window-limit-recovery/parser.js.map +0 -1
  237. package/dist/hooks/context-window-limit-recovery/types.d.ts +0 -84
  238. package/dist/hooks/context-window-limit-recovery/types.d.ts.map +0 -1
  239. package/dist/hooks/context-window-limit-recovery/types.js +0 -34
  240. package/dist/hooks/context-window-limit-recovery/types.js.map +0 -1
  241. package/dist/hooks/edit-error-recovery/index.d.ts +0 -62
  242. package/dist/hooks/edit-error-recovery/index.d.ts.map +0 -1
  243. package/dist/hooks/edit-error-recovery/index.js +0 -89
  244. package/dist/hooks/edit-error-recovery/index.js.map +0 -1
  245. package/dist/hooks/github-auto-responder/classifier.d.ts +0 -43
  246. package/dist/hooks/github-auto-responder/classifier.d.ts.map +0 -1
  247. package/dist/hooks/github-auto-responder/classifier.js +0 -150
  248. package/dist/hooks/github-auto-responder/classifier.js.map +0 -1
  249. package/dist/hooks/github-auto-responder/config.d.ts +0 -109
  250. package/dist/hooks/github-auto-responder/config.d.ts.map +0 -1
  251. package/dist/hooks/github-auto-responder/config.js +0 -69
  252. package/dist/hooks/github-auto-responder/config.js.map +0 -1
  253. package/dist/hooks/github-auto-responder/constants.d.ts +0 -45
  254. package/dist/hooks/github-auto-responder/constants.d.ts.map +0 -1
  255. package/dist/hooks/github-auto-responder/constants.js +0 -60
  256. package/dist/hooks/github-auto-responder/constants.js.map +0 -1
  257. package/dist/hooks/github-auto-responder/filters.d.ts +0 -95
  258. package/dist/hooks/github-auto-responder/filters.d.ts.map +0 -1
  259. package/dist/hooks/github-auto-responder/filters.js +0 -174
  260. package/dist/hooks/github-auto-responder/filters.js.map +0 -1
  261. package/dist/hooks/github-auto-responder/github-client.d.ts +0 -65
  262. package/dist/hooks/github-auto-responder/github-client.d.ts.map +0 -1
  263. package/dist/hooks/github-auto-responder/github-client.js +0 -128
  264. package/dist/hooks/github-auto-responder/github-client.js.map +0 -1
  265. package/dist/hooks/github-auto-responder/idempotency.d.ts +0 -68
  266. package/dist/hooks/github-auto-responder/idempotency.d.ts.map +0 -1
  267. package/dist/hooks/github-auto-responder/idempotency.js +0 -147
  268. package/dist/hooks/github-auto-responder/idempotency.js.map +0 -1
  269. package/dist/hooks/github-auto-responder/index.d.ts +0 -140
  270. package/dist/hooks/github-auto-responder/index.d.ts.map +0 -1
  271. package/dist/hooks/github-auto-responder/index.js +0 -145
  272. package/dist/hooks/github-auto-responder/index.js.map +0 -1
  273. package/dist/hooks/github-auto-responder/persona.d.ts +0 -40
  274. package/dist/hooks/github-auto-responder/persona.d.ts.map +0 -1
  275. package/dist/hooks/github-auto-responder/persona.js +0 -99
  276. package/dist/hooks/github-auto-responder/persona.js.map +0 -1
  277. package/dist/hooks/github-auto-responder/responder.d.ts +0 -122
  278. package/dist/hooks/github-auto-responder/responder.d.ts.map +0 -1
  279. package/dist/hooks/github-auto-responder/responder.js +0 -264
  280. package/dist/hooks/github-auto-responder/responder.js.map +0 -1
  281. package/dist/hooks/github-auto-responder/server.d.ts +0 -140
  282. package/dist/hooks/github-auto-responder/server.d.ts.map +0 -1
  283. package/dist/hooks/github-auto-responder/server.js +0 -301
  284. package/dist/hooks/github-auto-responder/server.js.map +0 -1
  285. package/dist/hooks/github-auto-responder/signature.d.ts +0 -34
  286. package/dist/hooks/github-auto-responder/signature.d.ts.map +0 -1
  287. package/dist/hooks/github-auto-responder/signature.js +0 -79
  288. package/dist/hooks/github-auto-responder/signature.js.map +0 -1
  289. package/dist/hooks/github-auto-responder/templates.d.ts +0 -16
  290. package/dist/hooks/github-auto-responder/templates.d.ts.map +0 -1
  291. package/dist/hooks/github-auto-responder/templates.js +0 -93
  292. package/dist/hooks/github-auto-responder/templates.js.map +0 -1
  293. package/dist/hooks/github-auto-responder/types.d.ts +0 -246
  294. package/dist/hooks/github-auto-responder/types.d.ts.map +0 -1
  295. package/dist/hooks/github-auto-responder/types.js +0 -7
  296. package/dist/hooks/github-auto-responder/types.js.map +0 -1
  297. package/dist/hooks/learned-skills/config.d.ts +0 -53
  298. package/dist/hooks/learned-skills/config.d.ts.map +0 -1
  299. package/dist/hooks/learned-skills/config.js +0 -103
  300. package/dist/hooks/learned-skills/config.js.map +0 -1
  301. package/dist/hooks/learned-skills/constants.d.ts +0 -24
  302. package/dist/hooks/learned-skills/constants.d.ts.map +0 -1
  303. package/dist/hooks/learned-skills/constants.js +0 -26
  304. package/dist/hooks/learned-skills/constants.js.map +0 -1
  305. package/dist/hooks/learned-skills/detection-hook.d.ts +0 -39
  306. package/dist/hooks/learned-skills/detection-hook.d.ts.map +0 -1
  307. package/dist/hooks/learned-skills/detection-hook.js +0 -83
  308. package/dist/hooks/learned-skills/detection-hook.js.map +0 -1
  309. package/dist/hooks/learned-skills/detector.d.ts +0 -30
  310. package/dist/hooks/learned-skills/detector.d.ts.map +0 -1
  311. package/dist/hooks/learned-skills/detector.js +0 -150
  312. package/dist/hooks/learned-skills/detector.js.map +0 -1
  313. package/dist/hooks/learned-skills/finder.d.ts +0 -21
  314. package/dist/hooks/learned-skills/finder.d.ts.map +0 -1
  315. package/dist/hooks/learned-skills/finder.js +0 -117
  316. package/dist/hooks/learned-skills/finder.js.map +0 -1
  317. package/dist/hooks/learned-skills/index.d.ts +0 -62
  318. package/dist/hooks/learned-skills/index.d.ts.map +0 -1
  319. package/dist/hooks/learned-skills/index.js +0 -137
  320. package/dist/hooks/learned-skills/index.js.map +0 -1
  321. package/dist/hooks/learned-skills/loader.d.ts +0 -20
  322. package/dist/hooks/learned-skills/loader.d.ts.map +0 -1
  323. package/dist/hooks/learned-skills/loader.js +0 -107
  324. package/dist/hooks/learned-skills/loader.js.map +0 -1
  325. package/dist/hooks/learned-skills/parser.d.ts +0 -21
  326. package/dist/hooks/learned-skills/parser.d.ts.map +0 -1
  327. package/dist/hooks/learned-skills/parser.js +0 -190
  328. package/dist/hooks/learned-skills/parser.js.map +0 -1
  329. package/dist/hooks/learned-skills/promotion.d.ts +0 -29
  330. package/dist/hooks/learned-skills/promotion.d.ts.map +0 -1
  331. package/dist/hooks/learned-skills/promotion.js +0 -87
  332. package/dist/hooks/learned-skills/promotion.js.map +0 -1
  333. package/dist/hooks/learned-skills/types.d.ts +0 -109
  334. package/dist/hooks/learned-skills/types.d.ts.map +0 -1
  335. package/dist/hooks/learned-skills/types.js +0 -8
  336. package/dist/hooks/learned-skills/types.js.map +0 -1
  337. package/dist/hooks/learned-skills/validator.d.ts +0 -15
  338. package/dist/hooks/learned-skills/validator.d.ts.map +0 -1
  339. package/dist/hooks/learned-skills/validator.js +0 -87
  340. package/dist/hooks/learned-skills/validator.js.map +0 -1
  341. package/dist/hooks/learned-skills/writer.d.ts +0 -27
  342. package/dist/hooks/learned-skills/writer.d.ts.map +0 -1
  343. package/dist/hooks/learned-skills/writer.js +0 -126
  344. package/dist/hooks/learned-skills/writer.js.map +0 -1
  345. package/dist/hooks/mnemosyne/config.d.ts +0 -53
  346. package/dist/hooks/mnemosyne/config.d.ts.map +0 -1
  347. package/dist/hooks/mnemosyne/config.js +0 -103
  348. package/dist/hooks/mnemosyne/config.js.map +0 -1
  349. package/dist/hooks/mnemosyne/constants.d.ts +0 -24
  350. package/dist/hooks/mnemosyne/constants.d.ts.map +0 -1
  351. package/dist/hooks/mnemosyne/constants.js +0 -26
  352. package/dist/hooks/mnemosyne/constants.js.map +0 -1
  353. package/dist/hooks/mnemosyne/detection-hook.d.ts +0 -39
  354. package/dist/hooks/mnemosyne/detection-hook.d.ts.map +0 -1
  355. package/dist/hooks/mnemosyne/detection-hook.js +0 -83
  356. package/dist/hooks/mnemosyne/detection-hook.js.map +0 -1
  357. package/dist/hooks/mnemosyne/detector.d.ts +0 -30
  358. package/dist/hooks/mnemosyne/detector.d.ts.map +0 -1
  359. package/dist/hooks/mnemosyne/detector.js +0 -150
  360. package/dist/hooks/mnemosyne/detector.js.map +0 -1
  361. package/dist/hooks/mnemosyne/finder.d.ts +0 -21
  362. package/dist/hooks/mnemosyne/finder.d.ts.map +0 -1
  363. package/dist/hooks/mnemosyne/finder.js +0 -117
  364. package/dist/hooks/mnemosyne/finder.js.map +0 -1
  365. package/dist/hooks/mnemosyne/index.d.ts +0 -62
  366. package/dist/hooks/mnemosyne/index.d.ts.map +0 -1
  367. package/dist/hooks/mnemosyne/index.js +0 -137
  368. package/dist/hooks/mnemosyne/index.js.map +0 -1
  369. package/dist/hooks/mnemosyne/loader.d.ts +0 -20
  370. package/dist/hooks/mnemosyne/loader.d.ts.map +0 -1
  371. package/dist/hooks/mnemosyne/loader.js +0 -113
  372. package/dist/hooks/mnemosyne/loader.js.map +0 -1
  373. package/dist/hooks/mnemosyne/parser.d.ts +0 -21
  374. package/dist/hooks/mnemosyne/parser.d.ts.map +0 -1
  375. package/dist/hooks/mnemosyne/parser.js +0 -190
  376. package/dist/hooks/mnemosyne/parser.js.map +0 -1
  377. package/dist/hooks/mnemosyne/promotion.d.ts +0 -29
  378. package/dist/hooks/mnemosyne/promotion.d.ts.map +0 -1
  379. package/dist/hooks/mnemosyne/promotion.js +0 -87
  380. package/dist/hooks/mnemosyne/promotion.js.map +0 -1
  381. package/dist/hooks/mnemosyne/types.d.ts +0 -109
  382. package/dist/hooks/mnemosyne/types.d.ts.map +0 -1
  383. package/dist/hooks/mnemosyne/types.js +0 -8
  384. package/dist/hooks/mnemosyne/types.js.map +0 -1
  385. package/dist/hooks/mnemosyne/validator.d.ts +0 -15
  386. package/dist/hooks/mnemosyne/validator.d.ts.map +0 -1
  387. package/dist/hooks/mnemosyne/validator.js +0 -87
  388. package/dist/hooks/mnemosyne/validator.js.map +0 -1
  389. package/dist/hooks/mnemosyne/writer.d.ts +0 -27
  390. package/dist/hooks/mnemosyne/writer.d.ts.map +0 -1
  391. package/dist/hooks/mnemosyne/writer.js +0 -126
  392. package/dist/hooks/mnemosyne/writer.js.map +0 -1
  393. package/dist/hooks/ralph-loop/index.d.ts +0 -116
  394. package/dist/hooks/ralph-loop/index.d.ts.map +0 -1
  395. package/dist/hooks/ralph-loop/index.js +0 -322
  396. package/dist/hooks/ralph-loop/index.js.map +0 -1
  397. package/dist/hooks/ralph-prd/index.d.ts +0 -130
  398. package/dist/hooks/ralph-prd/index.d.ts.map +0 -1
  399. package/dist/hooks/ralph-prd/index.js +0 -310
  400. package/dist/hooks/ralph-prd/index.js.map +0 -1
  401. package/dist/hooks/ralph-progress/index.d.ts +0 -102
  402. package/dist/hooks/ralph-progress/index.d.ts.map +0 -1
  403. package/dist/hooks/ralph-progress/index.js +0 -408
  404. package/dist/hooks/ralph-progress/index.js.map +0 -1
  405. package/dist/hooks/ralph-verifier/index.d.ts +0 -72
  406. package/dist/hooks/ralph-verifier/index.d.ts.map +0 -1
  407. package/dist/hooks/ralph-verifier/index.js +0 -223
  408. package/dist/hooks/ralph-verifier/index.js.map +0 -1
  409. package/dist/hooks/session-recovery/constants.d.ts +0 -56
  410. package/dist/hooks/session-recovery/constants.d.ts.map +0 -1
  411. package/dist/hooks/session-recovery/constants.js +0 -78
  412. package/dist/hooks/session-recovery/constants.js.map +0 -1
  413. package/dist/hooks/session-recovery/index.d.ts +0 -53
  414. package/dist/hooks/session-recovery/index.d.ts.map +0 -1
  415. package/dist/hooks/session-recovery/index.js +0 -321
  416. package/dist/hooks/session-recovery/index.js.map +0 -1
  417. package/dist/hooks/session-recovery/storage.d.ts +0 -76
  418. package/dist/hooks/session-recovery/storage.d.ts.map +0 -1
  419. package/dist/hooks/session-recovery/storage.js +0 -383
  420. package/dist/hooks/session-recovery/storage.js.map +0 -1
  421. package/dist/hooks/session-recovery/types.d.ts +0 -145
  422. package/dist/hooks/session-recovery/types.d.ts.map +0 -1
  423. package/dist/hooks/session-recovery/types.js +0 -8
  424. package/dist/hooks/session-recovery/types.js.map +0 -1
  425. package/dist/hooks/sisyphus-orchestrator/constants.d.ts +0 -23
  426. package/dist/hooks/sisyphus-orchestrator/constants.d.ts.map +0 -1
  427. package/dist/hooks/sisyphus-orchestrator/constants.js +0 -142
  428. package/dist/hooks/sisyphus-orchestrator/constants.js.map +0 -1
  429. package/dist/hooks/sisyphus-orchestrator/index.d.ts +0 -113
  430. package/dist/hooks/sisyphus-orchestrator/index.d.ts.map +0 -1
  431. package/dist/hooks/sisyphus-orchestrator/index.js +0 -309
  432. package/dist/hooks/sisyphus-orchestrator/index.js.map +0 -1
  433. package/dist/hooks/ultraqa-loop/index.d.ts +0 -94
  434. package/dist/hooks/ultraqa-loop/index.d.ts.map +0 -1
  435. package/dist/hooks/ultraqa-loop/index.js +0 -216
  436. package/dist/hooks/ultraqa-loop/index.js.map +0 -1
  437. package/dist/hooks/ultrawork-state/index.d.ts +0 -62
  438. package/dist/hooks/ultrawork-state/index.d.ts.map +0 -1
  439. package/dist/hooks/ultrawork-state/index.js +0 -208
  440. package/dist/hooks/ultrawork-state/index.js.map +0 -1
  441. package/dist/hud/sisyphus-state.d.ts +0 -31
  442. package/dist/hud/sisyphus-state.d.ts.map +0 -1
  443. package/dist/hud/sisyphus-state.js +0 -163
  444. package/dist/hud/sisyphus-state.js.map +0 -1
  445. package/dist/mcp/standalone-server.cjs +0 -19135
@@ -1,321 +0,0 @@
1
- /**
2
- * Session Recovery Hook
3
- *
4
- * Helps recover session state when Claude Code restarts or crashes.
5
- * Detects and fixes various error conditions that can cause session failures.
6
- *
7
- * Adapted from oh-my-opencode's session-recovery hook for Claude Code's
8
- * shell hook system.
9
- *
10
- * Recovery Strategies:
11
- * 1. Tool Result Missing: Inject cancelled tool results for orphaned tool_use
12
- * 2. Thinking Block Order: Fix messages where thinking isn't first
13
- * 3. Thinking Disabled: Strip thinking blocks when model doesn't support them
14
- * 4. Empty Content: Add placeholder text to empty messages
15
- */
16
- import { appendFileSync } from "node:fs";
17
- import { findEmptyMessages, findEmptyMessageByIndex, findMessageByIndexNeedingThinking, findMessagesWithEmptyTextParts, findMessagesWithOrphanThinking, findMessagesWithThinkingBlocks, findMessagesWithThinkingOnly, injectTextPart, prependThinkingPart, readParts, replaceEmptyTextParts, stripThinkingParts, } from "./storage.js";
18
- import { DEBUG, DEBUG_LOG_PATH, PLACEHOLDER_TEXT, RECOVERY_MESSAGES, } from "./constants.js";
19
- /**
20
- * Debug logging utility
21
- */
22
- function debugLog(...args) {
23
- if (DEBUG) {
24
- const msg = `[${new Date().toISOString()}] [session-recovery] ${args
25
- .map((a) => (typeof a === "object" ? JSON.stringify(a, null, 2) : String(a)))
26
- .join(" ")}\n`;
27
- appendFileSync(DEBUG_LOG_PATH, msg);
28
- }
29
- }
30
- /**
31
- * Extract error message from various error formats
32
- */
33
- function getErrorMessage(error) {
34
- if (!error)
35
- return "";
36
- if (typeof error === "string")
37
- return error.toLowerCase();
38
- const errorObj = error;
39
- const paths = [
40
- errorObj.data,
41
- errorObj.error,
42
- errorObj,
43
- errorObj.data?.error,
44
- ];
45
- for (const obj of paths) {
46
- if (obj && typeof obj === "object") {
47
- const msg = obj.message;
48
- if (typeof msg === "string" && msg.length > 0) {
49
- return msg.toLowerCase();
50
- }
51
- }
52
- }
53
- try {
54
- return JSON.stringify(error).toLowerCase();
55
- }
56
- catch {
57
- return "";
58
- }
59
- }
60
- /**
61
- * Extract message index from error (e.g., "messages.5")
62
- */
63
- function extractMessageIndex(error) {
64
- const message = getErrorMessage(error);
65
- const match = message.match(/messages\.(\d+)/);
66
- return match ? parseInt(match[1], 10) : null;
67
- }
68
- /**
69
- * Detect the type of recoverable error
70
- */
71
- export function detectErrorType(error) {
72
- const message = getErrorMessage(error);
73
- if (message.includes("tool_use") && message.includes("tool_result")) {
74
- return "tool_result_missing";
75
- }
76
- if (message.includes("thinking") &&
77
- (message.includes("first block") ||
78
- message.includes("must start with") ||
79
- message.includes("preceeding") ||
80
- message.includes("final block") ||
81
- message.includes("cannot be thinking") ||
82
- (message.includes("expected") && message.includes("found")))) {
83
- return "thinking_block_order";
84
- }
85
- if (message.includes("thinking is disabled") && message.includes("cannot contain")) {
86
- return "thinking_disabled_violation";
87
- }
88
- if (message.includes("empty") &&
89
- (message.includes("content") || message.includes("message"))) {
90
- return "empty_content";
91
- }
92
- return null;
93
- }
94
- /**
95
- * Check if an error is recoverable
96
- */
97
- export function isRecoverableError(error) {
98
- return detectErrorType(error) !== null;
99
- }
100
- /**
101
- * Extract tool_use IDs from message parts
102
- */
103
- function extractToolUseIds(parts) {
104
- return parts
105
- .filter((p) => p.type === "tool_use" && !!p.id)
106
- .map((p) => p.id);
107
- }
108
- /**
109
- * Recover from missing tool results
110
- */
111
- async function recoverToolResultMissing(sessionID, failedAssistantMsg) {
112
- debugLog("recoverToolResultMissing", { sessionID, msgId: failedAssistantMsg.info?.id });
113
- // Try API parts first, fallback to filesystem if empty
114
- let parts = failedAssistantMsg.parts || [];
115
- if (parts.length === 0 && failedAssistantMsg.info?.id) {
116
- const storedParts = readParts(failedAssistantMsg.info.id);
117
- parts = storedParts.map((p) => ({
118
- type: p.type === "tool" ? "tool_use" : p.type,
119
- id: "callID" in p ? p.callID : p.id,
120
- name: "tool" in p ? p.tool : undefined,
121
- input: "state" in p
122
- ? p.state?.input
123
- : undefined,
124
- }));
125
- }
126
- const toolUseIds = extractToolUseIds(parts);
127
- if (toolUseIds.length === 0) {
128
- debugLog("No tool_use IDs found");
129
- return false;
130
- }
131
- debugLog("Found tool_use IDs to inject results for", toolUseIds);
132
- // Note: In Claude Code's simplified architecture, we would need to
133
- // integrate with the actual session/tool system to inject tool results.
134
- // This is a placeholder showing the recovery intent.
135
- // A full implementation would require access to the SDK client.
136
- return true; // Indicate recovery was attempted
137
- }
138
- /**
139
- * Recover from thinking block order errors
140
- */
141
- async function recoverThinkingBlockOrder(sessionID, _failedAssistantMsg, error) {
142
- debugLog("recoverThinkingBlockOrder", { sessionID });
143
- const targetIndex = extractMessageIndex(error);
144
- if (targetIndex !== null) {
145
- const targetMessageID = findMessageByIndexNeedingThinking(sessionID, targetIndex);
146
- if (targetMessageID) {
147
- debugLog("Found target message by index", { targetIndex, targetMessageID });
148
- return prependThinkingPart(sessionID, targetMessageID);
149
- }
150
- }
151
- const orphanMessages = findMessagesWithOrphanThinking(sessionID);
152
- if (orphanMessages.length === 0) {
153
- debugLog("No orphan thinking messages found");
154
- return false;
155
- }
156
- debugLog("Found orphan thinking messages", orphanMessages);
157
- let anySuccess = false;
158
- for (const messageID of orphanMessages) {
159
- if (prependThinkingPart(sessionID, messageID)) {
160
- anySuccess = true;
161
- }
162
- }
163
- return anySuccess;
164
- }
165
- /**
166
- * Recover from thinking disabled violations
167
- */
168
- async function recoverThinkingDisabledViolation(sessionID, _failedAssistantMsg) {
169
- debugLog("recoverThinkingDisabledViolation", { sessionID });
170
- const messagesWithThinking = findMessagesWithThinkingBlocks(sessionID);
171
- if (messagesWithThinking.length === 0) {
172
- debugLog("No messages with thinking blocks found");
173
- return false;
174
- }
175
- debugLog("Found messages with thinking blocks", messagesWithThinking);
176
- let anySuccess = false;
177
- for (const messageID of messagesWithThinking) {
178
- if (stripThinkingParts(messageID)) {
179
- anySuccess = true;
180
- }
181
- }
182
- return anySuccess;
183
- }
184
- /**
185
- * Recover from empty content messages
186
- */
187
- async function recoverEmptyContentMessage(sessionID, failedAssistantMsg, error) {
188
- debugLog("recoverEmptyContentMessage", { sessionID });
189
- const targetIndex = extractMessageIndex(error);
190
- const failedID = failedAssistantMsg.info?.id;
191
- let anySuccess = false;
192
- // Fix messages with empty text parts
193
- const messagesWithEmptyText = findMessagesWithEmptyTextParts(sessionID);
194
- for (const messageID of messagesWithEmptyText) {
195
- if (replaceEmptyTextParts(messageID, PLACEHOLDER_TEXT)) {
196
- anySuccess = true;
197
- }
198
- }
199
- // Fix messages with only thinking
200
- const thinkingOnlyIDs = findMessagesWithThinkingOnly(sessionID);
201
- for (const messageID of thinkingOnlyIDs) {
202
- if (injectTextPart(sessionID, messageID, PLACEHOLDER_TEXT)) {
203
- anySuccess = true;
204
- }
205
- }
206
- // Try target index if provided
207
- if (targetIndex !== null) {
208
- const targetMessageID = findEmptyMessageByIndex(sessionID, targetIndex);
209
- if (targetMessageID) {
210
- if (replaceEmptyTextParts(targetMessageID, PLACEHOLDER_TEXT)) {
211
- return true;
212
- }
213
- if (injectTextPart(sessionID, targetMessageID, PLACEHOLDER_TEXT)) {
214
- return true;
215
- }
216
- }
217
- }
218
- // Try failed message ID
219
- if (failedID) {
220
- if (replaceEmptyTextParts(failedID, PLACEHOLDER_TEXT)) {
221
- return true;
222
- }
223
- if (injectTextPart(sessionID, failedID, PLACEHOLDER_TEXT)) {
224
- return true;
225
- }
226
- }
227
- // Fix all empty messages as last resort
228
- const emptyMessageIDs = findEmptyMessages(sessionID);
229
- for (const messageID of emptyMessageIDs) {
230
- if (replaceEmptyTextParts(messageID, PLACEHOLDER_TEXT)) {
231
- anySuccess = true;
232
- }
233
- if (injectTextPart(sessionID, messageID, PLACEHOLDER_TEXT)) {
234
- anySuccess = true;
235
- }
236
- }
237
- return anySuccess;
238
- }
239
- /**
240
- * Main recovery handler
241
- */
242
- export async function handleSessionRecovery(sessionID, error, failedMessage, config) {
243
- debugLog("handleSessionRecovery", { sessionID, error });
244
- const errorType = detectErrorType(error);
245
- if (!errorType) {
246
- debugLog("Not a recoverable error");
247
- return {
248
- attempted: false,
249
- success: false,
250
- };
251
- }
252
- debugLog("Detected recoverable error type", errorType);
253
- try {
254
- let success = false;
255
- const failedMsg = failedMessage || { info: {}, parts: [] };
256
- switch (errorType) {
257
- case "tool_result_missing":
258
- success = await recoverToolResultMissing(sessionID, failedMsg);
259
- break;
260
- case "thinking_block_order":
261
- success = await recoverThinkingBlockOrder(sessionID, failedMsg, error);
262
- break;
263
- case "thinking_disabled_violation":
264
- success = await recoverThinkingDisabledViolation(sessionID, failedMsg);
265
- break;
266
- case "empty_content":
267
- success = await recoverEmptyContentMessage(sessionID, failedMsg, error);
268
- break;
269
- }
270
- debugLog("Recovery result", { errorType, success });
271
- const recoveryMessage = config?.customMessages?.[errorType] ||
272
- RECOVERY_MESSAGES[errorType]?.message ||
273
- `Session recovery attempted for ${errorType}`;
274
- return {
275
- attempted: true,
276
- success,
277
- message: success ? recoveryMessage : undefined,
278
- errorType,
279
- };
280
- }
281
- catch (err) {
282
- debugLog("Recovery failed with error", err);
283
- return {
284
- attempted: true,
285
- success: false,
286
- errorType,
287
- };
288
- }
289
- }
290
- /**
291
- * Create session recovery hook for Claude Code
292
- */
293
- export function createSessionRecoveryHook(config) {
294
- debugLog("createSessionRecoveryHook", { config });
295
- return {
296
- /**
297
- * Check for errors during tool execution or message processing
298
- */
299
- onError: async (input) => {
300
- return handleSessionRecovery(input.session_id, input.error, input.message, config);
301
- },
302
- /**
303
- * Check if an error is recoverable
304
- */
305
- isRecoverable: (error) => {
306
- return isRecoverableError(error);
307
- },
308
- /**
309
- * Get recovery message for an error type
310
- */
311
- getRecoveryMessage: (errorType) => {
312
- if (!errorType)
313
- return undefined;
314
- return config?.customMessages?.[errorType] ||
315
- RECOVERY_MESSAGES[errorType]?.message;
316
- },
317
- };
318
- }
319
- export { RECOVERY_MESSAGES, PLACEHOLDER_TEXT, } from "./constants.js";
320
- export { findEmptyMessages, findMessagesWithThinkingBlocks, findMessagesWithOrphanThinking, readMessages, readParts, } from "./storage.js";
321
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/session-recovery/index.ts"],"names":[],"mappings":"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"}
@@ -1,76 +0,0 @@
1
- /**
2
- * Session Recovery Storage Operations
3
- *
4
- * Functions for reading and manipulating stored session data.
5
- * Adapted from oh-my-opencode's session-recovery hook.
6
- */
7
- import type { StoredMessageMeta, StoredPart } from "./types.js";
8
- /**
9
- * Generate a unique part ID
10
- */
11
- export declare function generatePartId(): string;
12
- /**
13
- * Get the directory containing messages for a session
14
- */
15
- export declare function getMessageDir(sessionID: string): string;
16
- /**
17
- * Read all messages for a session
18
- */
19
- export declare function readMessages(sessionID: string): StoredMessageMeta[];
20
- /**
21
- * Read all parts for a message
22
- */
23
- export declare function readParts(messageID: string): StoredPart[];
24
- /**
25
- * Check if a part has content (not thinking/meta)
26
- */
27
- export declare function hasContent(part: StoredPart): boolean;
28
- /**
29
- * Check if a message has content
30
- */
31
- export declare function messageHasContent(messageID: string): boolean;
32
- /**
33
- * Inject a text part into a message
34
- */
35
- export declare function injectTextPart(sessionID: string, messageID: string, text: string): boolean;
36
- /**
37
- * Find all messages with empty content
38
- */
39
- export declare function findEmptyMessages(sessionID: string): string[];
40
- /**
41
- * Find empty message by index (with fuzzy matching)
42
- */
43
- export declare function findEmptyMessageByIndex(sessionID: string, targetIndex: number): string | null;
44
- /**
45
- * Find messages that have thinking blocks
46
- */
47
- export declare function findMessagesWithThinkingBlocks(sessionID: string): string[];
48
- /**
49
- * Find messages that have thinking but no content
50
- */
51
- export declare function findMessagesWithThinkingOnly(sessionID: string): string[];
52
- /**
53
- * Find messages with orphan thinking (thinking not first)
54
- */
55
- export declare function findMessagesWithOrphanThinking(sessionID: string): string[];
56
- /**
57
- * Prepend a thinking part to a message
58
- */
59
- export declare function prependThinkingPart(sessionID: string, messageID: string): boolean;
60
- /**
61
- * Strip all thinking parts from a message
62
- */
63
- export declare function stripThinkingParts(messageID: string): boolean;
64
- /**
65
- * Replace empty text parts with placeholder text
66
- */
67
- export declare function replaceEmptyTextParts(messageID: string, replacementText?: string): boolean;
68
- /**
69
- * Find messages with empty text parts
70
- */
71
- export declare function findMessagesWithEmptyTextParts(sessionID: string): string[];
72
- /**
73
- * Find message by index that needs thinking block
74
- */
75
- export declare function findMessageByIndexNeedingThinking(sessionID: string, targetIndex: number): string | null;
76
- //# sourceMappingURL=storage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/hooks/session-recovery/storage.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,OAAO,KAAK,EACV,iBAAiB,EACjB,UAAU,EAEX,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAIvC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAgBvD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAqBnE;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,EAAE,CAgBzD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAkBpD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAG5D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,GACX,OAAO,CAuBT;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAW7D;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAClB,MAAM,GAAG,IAAI,CA0Bf;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAe1E;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAmBxE;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAqB1E;AAkCD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAyBT;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAqB7D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,eAAe,GAAE,MAAyB,GACzC,OAAO,CA2BT;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAkB1E;AAED;;GAEG;AACH,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAClB,MAAM,GAAG,IAAI,CAoBf"}