ridgeline 0.12.1 → 0.12.5

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 (516) hide show
  1. package/dist/catalog/build-catalog.d.ts +1 -1
  2. package/dist/catalog/build-catalog.js +22 -59
  3. package/dist/catalog/build-catalog.js.map +1 -1
  4. package/dist/catalog/classify.d.ts +1 -1
  5. package/dist/catalog/classify.js +11 -49
  6. package/dist/catalog/classify.js.map +1 -1
  7. package/dist/catalog/extract-metadata.js +11 -53
  8. package/dist/catalog/extract-metadata.js.map +1 -1
  9. package/dist/catalog/pack-sprites.d.ts +2 -2
  10. package/dist/catalog/pack-sprites.js +91 -75
  11. package/dist/catalog/pack-sprites.js.map +1 -1
  12. package/dist/catalog/parse-conventions.js +4 -42
  13. package/dist/catalog/parse-conventions.js.map +1 -1
  14. package/dist/catalog/resolve-asset-dir.js +7 -45
  15. package/dist/catalog/resolve-asset-dir.js.map +1 -1
  16. package/dist/catalog/types.js +1 -2
  17. package/dist/catalog/vision-describe.d.ts +1 -1
  18. package/dist/catalog/vision-describe.js +8 -45
  19. package/dist/catalog/vision-describe.js.map +1 -1
  20. package/dist/cli.d.ts +3 -1
  21. package/dist/cli.js +143 -155
  22. package/dist/cli.js.map +1 -1
  23. package/dist/commands/auto.d.ts +1 -1
  24. package/dist/commands/auto.js +103 -105
  25. package/dist/commands/auto.js.map +1 -1
  26. package/dist/commands/build.d.ts +1 -1
  27. package/dist/commands/build.js +204 -273
  28. package/dist/commands/build.js.map +1 -1
  29. package/dist/commands/catalog.d.ts +1 -1
  30. package/dist/commands/catalog.js +24 -62
  31. package/dist/commands/catalog.js.map +1 -1
  32. package/dist/commands/check.js +3 -7
  33. package/dist/commands/check.js.map +1 -1
  34. package/dist/commands/clean.js +3 -7
  35. package/dist/commands/clean.js.map +1 -1
  36. package/dist/commands/create.js +30 -68
  37. package/dist/commands/create.js.map +1 -1
  38. package/dist/commands/design.js +38 -76
  39. package/dist/commands/design.js.map +1 -1
  40. package/dist/commands/directions.js +38 -76
  41. package/dist/commands/directions.js.map +1 -1
  42. package/dist/commands/dry-run.d.ts +1 -1
  43. package/dist/commands/dry-run.js +8 -45
  44. package/dist/commands/dry-run.js.map +1 -1
  45. package/dist/commands/index.d.ts +5 -5
  46. package/dist/commands/index.js +5 -13
  47. package/dist/commands/index.js.map +1 -1
  48. package/dist/commands/ingest.js +20 -57
  49. package/dist/commands/ingest.js.map +1 -1
  50. package/dist/commands/input.js +4 -42
  51. package/dist/commands/input.js.map +1 -1
  52. package/dist/commands/plan.d.ts +1 -1
  53. package/dist/commands/plan.js +64 -86
  54. package/dist/commands/plan.js.map +1 -1
  55. package/dist/commands/qa-workflow.d.ts +4 -1
  56. package/dist/commands/qa-workflow.js +116 -82
  57. package/dist/commands/qa-workflow.js.map +1 -1
  58. package/dist/commands/refine.js +62 -66
  59. package/dist/commands/refine.js.map +1 -1
  60. package/dist/commands/research.js +73 -80
  61. package/dist/commands/research.js.map +1 -1
  62. package/dist/commands/retro-refine.js +67 -74
  63. package/dist/commands/retro-refine.js.map +1 -1
  64. package/dist/commands/retrospective.js +69 -76
  65. package/dist/commands/retrospective.js.map +1 -1
  66. package/dist/commands/rewind.js +12 -49
  67. package/dist/commands/rewind.js.map +1 -1
  68. package/dist/commands/shape.js +45 -84
  69. package/dist/commands/shape.js.map +1 -1
  70. package/dist/commands/spec.js +59 -74
  71. package/dist/commands/spec.js.map +1 -1
  72. package/dist/commands/ui.d.ts +1 -1
  73. package/dist/commands/ui.js +13 -51
  74. package/dist/commands/ui.js.map +1 -1
  75. package/dist/config.d.ts +1 -1
  76. package/dist/config.js +21 -59
  77. package/dist/config.js.map +1 -1
  78. package/dist/engine/adapters/index.d.ts +6 -1
  79. package/dist/engine/adapters/index.js +3 -2
  80. package/dist/engine/adapters/index.js.map +1 -1
  81. package/dist/engine/adapters/ridgeline_budget_subscriber.d.ts +15 -0
  82. package/dist/engine/adapters/ridgeline_budget_subscriber.js +31 -0
  83. package/dist/engine/adapters/ridgeline_budget_subscriber.js.map +1 -0
  84. package/dist/engine/adapters/ridgeline_checkpoint_store.d.ts +5 -0
  85. package/dist/engine/adapters/ridgeline_checkpoint_store.js +32 -0
  86. package/dist/engine/adapters/ridgeline_checkpoint_store.js.map +1 -0
  87. package/dist/engine/adapters/ridgeline_trajectory_logger.d.ts +13 -0
  88. package/dist/engine/adapters/ridgeline_trajectory_logger.js +30 -0
  89. package/dist/engine/adapters/ridgeline_trajectory_logger.js.map +1 -0
  90. package/dist/engine/atoms/_prompt.document.d.ts +7 -0
  91. package/dist/engine/atoms/_prompt.document.js +33 -0
  92. package/dist/engine/atoms/_prompt.document.js.map +1 -0
  93. package/dist/engine/atoms/_shape.d.ts +14 -0
  94. package/dist/engine/atoms/_shape.js +48 -0
  95. package/dist/engine/atoms/_shape.js.map +1 -0
  96. package/dist/engine/atoms/builder.atom.d.ts +31 -0
  97. package/dist/engine/atoms/builder.atom.js +49 -0
  98. package/dist/engine/atoms/builder.atom.js.map +1 -0
  99. package/dist/engine/atoms/index.d.ts +20 -1
  100. package/dist/engine/atoms/index.js +10 -2
  101. package/dist/engine/atoms/index.js.map +1 -1
  102. package/dist/engine/atoms/plan.review.atom.d.ts +23 -0
  103. package/dist/engine/atoms/plan.review.atom.js +33 -0
  104. package/dist/engine/atoms/plan.review.atom.js.map +1 -0
  105. package/dist/engine/atoms/planner.atom.d.ts +23 -0
  106. package/dist/engine/atoms/planner.atom.js +56 -0
  107. package/dist/engine/atoms/planner.atom.js.map +1 -0
  108. package/dist/engine/atoms/refiner.atom.d.ts +19 -0
  109. package/dist/engine/atoms/refiner.atom.js +27 -0
  110. package/dist/engine/atoms/refiner.atom.js.map +1 -0
  111. package/dist/engine/atoms/researcher.atom.d.ts +22 -0
  112. package/dist/engine/atoms/researcher.atom.js +30 -0
  113. package/dist/engine/atoms/researcher.atom.js.map +1 -0
  114. package/dist/engine/atoms/reviewer.atom.d.ts +30 -0
  115. package/dist/engine/atoms/reviewer.atom.js +50 -0
  116. package/dist/engine/atoms/reviewer.atom.js.map +1 -0
  117. package/dist/engine/atoms/sensors.collect.atom.d.ts +12 -0
  118. package/dist/engine/atoms/sensors.collect.atom.js +33 -0
  119. package/dist/engine/atoms/sensors.collect.atom.js.map +1 -0
  120. package/dist/engine/atoms/specialist.atom.d.ts +19 -0
  121. package/dist/engine/atoms/specialist.atom.js +20 -0
  122. package/dist/engine/atoms/specialist.atom.js.map +1 -0
  123. package/dist/engine/atoms/specialist.verdict.atom.d.ts +16 -0
  124. package/dist/engine/atoms/specialist.verdict.atom.js +50 -0
  125. package/dist/engine/atoms/specialist.verdict.atom.js.map +1 -0
  126. package/dist/engine/atoms/specifier.atom.d.ts +21 -0
  127. package/dist/engine/atoms/specifier.atom.js +43 -0
  128. package/dist/engine/atoms/specifier.atom.js.map +1 -0
  129. package/dist/engine/build-phase.d.ts +27 -0
  130. package/dist/engine/build-phase.js +451 -0
  131. package/dist/engine/build-phase.js.map +1 -0
  132. package/dist/engine/builder-budget.d.ts +48 -0
  133. package/dist/engine/builder-budget.js +35 -0
  134. package/dist/engine/builder-budget.js.map +1 -0
  135. package/dist/engine/builder-loop.d.ts +67 -0
  136. package/dist/engine/builder-loop.js +243 -0
  137. package/dist/engine/builder-loop.js.map +1 -0
  138. package/dist/engine/builder-marker.d.ts +20 -0
  139. package/dist/engine/builder-marker.js +46 -0
  140. package/dist/engine/builder-marker.js.map +1 -0
  141. package/dist/engine/builder.d.ts +15 -0
  142. package/dist/engine/builder.js +116 -0
  143. package/dist/engine/builder.js.map +1 -0
  144. package/dist/engine/claude/agent.prompt.js +4 -40
  145. package/dist/engine/claude/agent.prompt.js.map +1 -1
  146. package/dist/engine/claude/claude.exec.d.ts +5 -7
  147. package/dist/engine/claude/claude.exec.js +16 -44
  148. package/dist/engine/claude/claude.exec.js.map +1 -1
  149. package/dist/engine/claude/context-window.js +8 -12
  150. package/dist/engine/claude/context-window.js.map +1 -1
  151. package/dist/engine/claude/sandbox.d.ts +3 -3
  152. package/dist/engine/claude/sandbox.js +4 -18
  153. package/dist/engine/claude/sandbox.js.map +1 -1
  154. package/dist/engine/claude/sandbox.policy.d.ts +58 -0
  155. package/dist/engine/claude/sandbox.policy.js +207 -0
  156. package/dist/engine/claude/sandbox.policy.js.map +1 -0
  157. package/dist/engine/claude/sandbox.types.d.ts +1 -1
  158. package/dist/engine/claude/sandbox.types.js +1 -2
  159. package/dist/engine/claude/stable.prompt.js +17 -62
  160. package/dist/engine/claude/stable.prompt.js.map +1 -1
  161. package/dist/engine/claude/stream.display.js +10 -14
  162. package/dist/engine/claude/stream.display.js.map +1 -1
  163. package/dist/engine/claude/stream.parse.d.ts +1 -1
  164. package/dist/engine/claude/stream.parse.js +5 -10
  165. package/dist/engine/claude/stream.parse.js.map +1 -1
  166. package/dist/engine/claude/stream.result.d.ts +1 -1
  167. package/dist/engine/claude/stream.result.js +3 -7
  168. package/dist/engine/claude/stream.result.js.map +1 -1
  169. package/dist/engine/claude/stream.types.d.ts +1 -1
  170. package/dist/engine/claude/stream.types.js +1 -5
  171. package/dist/engine/claude/stream.types.js.map +1 -1
  172. package/dist/engine/claude-process.d.ts +35 -0
  173. package/dist/engine/claude-process.js +265 -0
  174. package/dist/engine/claude-process.js.map +1 -0
  175. package/dist/engine/claude.runner.d.ts +24 -0
  176. package/dist/engine/claude.runner.js +79 -0
  177. package/dist/engine/claude.runner.js.map +1 -0
  178. package/dist/engine/composites/cost_capped.d.ts +8 -0
  179. package/dist/engine/composites/cost_capped.js +42 -0
  180. package/dist/engine/composites/cost_capped.js.map +1 -0
  181. package/dist/engine/composites/diff_review.d.ts +9 -0
  182. package/dist/engine/composites/diff_review.js +26 -0
  183. package/dist/engine/composites/diff_review.js.map +1 -0
  184. package/dist/engine/composites/graph_drain.d.ts +7 -0
  185. package/dist/engine/composites/graph_drain.js +35 -0
  186. package/dist/engine/composites/graph_drain.js.map +1 -0
  187. package/dist/engine/composites/index.d.ts +5 -1
  188. package/dist/engine/composites/index.js +5 -2
  189. package/dist/engine/composites/index.js.map +1 -1
  190. package/dist/engine/composites/phase.d.ts +21 -0
  191. package/dist/engine/composites/phase.js +35 -0
  192. package/dist/engine/composites/phase.js.map +1 -0
  193. package/dist/engine/composites/worktree_isolated.d.ts +19 -0
  194. package/dist/engine/composites/worktree_isolated.js +65 -0
  195. package/dist/engine/composites/worktree_isolated.js.map +1 -0
  196. package/dist/engine/detect/index.js +3 -40
  197. package/dist/engine/detect/index.js.map +1 -1
  198. package/dist/engine/discoveries.d.ts +34 -0
  199. package/dist/engine/discoveries.js +25 -0
  200. package/dist/engine/discoveries.js.map +1 -0
  201. package/dist/engine/discovery/agent.registry.d.ts +1 -1
  202. package/dist/engine/discovery/agent.registry.js +9 -46
  203. package/dist/engine/discovery/agent.registry.js.map +1 -1
  204. package/dist/engine/discovery/agent.scan.js +6 -45
  205. package/dist/engine/discovery/agent.scan.js.map +1 -1
  206. package/dist/engine/discovery/plugin.scan.d.ts +1 -1
  207. package/dist/engine/discovery/plugin.scan.js +9 -47
  208. package/dist/engine/discovery/plugin.scan.js.map +1 -1
  209. package/dist/engine/discovery/skill.check.js +10 -49
  210. package/dist/engine/discovery/skill.check.js.map +1 -1
  211. package/dist/engine/engine.factory.d.ts +12 -0
  212. package/dist/engine/engine.factory.js +52 -0
  213. package/dist/engine/engine.factory.js.map +1 -0
  214. package/dist/engine/ensemble.d.ts +109 -0
  215. package/dist/engine/ensemble.js +544 -0
  216. package/dist/engine/ensemble.js.map +1 -0
  217. package/dist/engine/flows/auto.flow.d.ts +21 -0
  218. package/dist/engine/flows/auto.flow.js +20 -0
  219. package/dist/engine/flows/auto.flow.js.map +1 -0
  220. package/dist/engine/flows/build.flow.d.ts +29 -0
  221. package/dist/engine/flows/build.flow.js +142 -0
  222. package/dist/engine/flows/build.flow.js.map +1 -0
  223. package/dist/engine/flows/design.flow.d.ts +9 -0
  224. package/dist/engine/flows/design.flow.js +8 -0
  225. package/dist/engine/flows/design.flow.js.map +1 -0
  226. package/dist/engine/flows/directions.flow.d.ts +9 -0
  227. package/dist/engine/flows/directions.flow.js +8 -0
  228. package/dist/engine/flows/directions.flow.js.map +1 -0
  229. package/dist/engine/flows/dryrun.flow.d.ts +9 -0
  230. package/dist/engine/flows/dryrun.flow.js +8 -0
  231. package/dist/engine/flows/dryrun.flow.js.map +1 -0
  232. package/dist/engine/flows/index.d.ts +30 -1
  233. package/dist/engine/flows/index.js +15 -2
  234. package/dist/engine/flows/index.js.map +1 -1
  235. package/dist/engine/flows/ingest.flow.d.ts +9 -0
  236. package/dist/engine/flows/ingest.flow.js +8 -0
  237. package/dist/engine/flows/ingest.flow.js.map +1 -0
  238. package/dist/engine/flows/plan.flow.d.ts +33 -0
  239. package/dist/engine/flows/plan.flow.js +29 -0
  240. package/dist/engine/flows/plan.flow.js.map +1 -0
  241. package/dist/engine/flows/qa-workflow.flow.d.ts +20 -0
  242. package/dist/engine/flows/qa-workflow.flow.js +9 -0
  243. package/dist/engine/flows/qa-workflow.flow.js.map +1 -0
  244. package/dist/engine/flows/refine.flow.d.ts +21 -0
  245. package/dist/engine/flows/refine.flow.js +9 -0
  246. package/dist/engine/flows/refine.flow.js.map +1 -0
  247. package/dist/engine/flows/research.flow.d.ts +19 -0
  248. package/dist/engine/flows/research.flow.js +9 -0
  249. package/dist/engine/flows/research.flow.js.map +1 -0
  250. package/dist/engine/flows/retro-refine.flow.d.ts +16 -0
  251. package/dist/engine/flows/retro-refine.flow.js +9 -0
  252. package/dist/engine/flows/retro-refine.flow.js.map +1 -0
  253. package/dist/engine/flows/retrospective.flow.d.ts +16 -0
  254. package/dist/engine/flows/retrospective.flow.js +9 -0
  255. package/dist/engine/flows/retrospective.flow.js.map +1 -0
  256. package/dist/engine/flows/rewind.flow.d.ts +11 -0
  257. package/dist/engine/flows/rewind.flow.js +8 -0
  258. package/dist/engine/flows/rewind.flow.js.map +1 -0
  259. package/dist/engine/flows/shape.flow.d.ts +9 -0
  260. package/dist/engine/flows/shape.flow.js +8 -0
  261. package/dist/engine/flows/shape.flow.js.map +1 -0
  262. package/dist/engine/flows/spec.flow.d.ts +15 -0
  263. package/dist/engine/flows/spec.flow.js +9 -0
  264. package/dist/engine/flows/spec.flow.js.map +1 -0
  265. package/dist/engine/index.d.ts +9 -11
  266. package/dist/engine/index.js +9 -29
  267. package/dist/engine/index.js.map +1 -1
  268. package/dist/engine/legacy/plan.d.ts +2 -0
  269. package/dist/engine/legacy/plan.js +5 -0
  270. package/dist/engine/legacy/plan.js.map +1 -0
  271. package/dist/engine/legacy/refine.d.ts +1 -0
  272. package/dist/engine/legacy/refine.js +4 -0
  273. package/dist/engine/legacy/refine.js.map +1 -0
  274. package/dist/engine/legacy/research.d.ts +1 -0
  275. package/dist/engine/legacy/research.js +4 -0
  276. package/dist/engine/legacy/research.js.map +1 -0
  277. package/dist/engine/legacy/run-phase.d.ts +1 -0
  278. package/dist/engine/legacy/run-phase.js +4 -0
  279. package/dist/engine/legacy/run-phase.js.map +1 -0
  280. package/dist/engine/legacy/spec.d.ts +1 -0
  281. package/dist/engine/legacy/spec.js +4 -0
  282. package/dist/engine/legacy/spec.js.map +1 -0
  283. package/dist/engine/legacy-shared.d.ts +69 -0
  284. package/dist/engine/legacy-shared.js +144 -0
  285. package/dist/engine/legacy-shared.js.map +1 -0
  286. package/dist/engine/phase-graph.d.ts +31 -0
  287. package/dist/engine/phase-graph.js +95 -0
  288. package/dist/engine/phase-graph.js.map +1 -0
  289. package/dist/engine/phase.graph.d.ts +31 -0
  290. package/dist/engine/phase.graph.js +95 -0
  291. package/dist/engine/phase.graph.js.map +1 -0
  292. package/dist/engine/pipeline/build.exec.d.ts +1 -1
  293. package/dist/engine/pipeline/build.exec.js +26 -64
  294. package/dist/engine/pipeline/build.exec.js.map +1 -1
  295. package/dist/engine/pipeline/build.loop.d.ts +2 -2
  296. package/dist/engine/pipeline/build.loop.js +22 -61
  297. package/dist/engine/pipeline/build.loop.js.map +1 -1
  298. package/dist/engine/pipeline/builder.budget.d.ts +1 -1
  299. package/dist/engine/pipeline/builder.budget.js +11 -15
  300. package/dist/engine/pipeline/builder.budget.js.map +1 -1
  301. package/dist/engine/pipeline/builder.marker.js +1 -5
  302. package/dist/engine/pipeline/builder.marker.js.map +1 -1
  303. package/dist/engine/pipeline/discoveries.js +7 -46
  304. package/dist/engine/pipeline/discoveries.js.map +1 -1
  305. package/dist/engine/pipeline/ensemble.exec.d.ts +3 -3
  306. package/dist/engine/pipeline/ensemble.exec.js +62 -103
  307. package/dist/engine/pipeline/ensemble.exec.js.map +1 -1
  308. package/dist/engine/pipeline/phase.graph.d.ts +1 -1
  309. package/dist/engine/pipeline/phase.graph.js +5 -12
  310. package/dist/engine/pipeline/phase.graph.js.map +1 -1
  311. package/dist/engine/pipeline/phase.sequence.d.ts +2 -2
  312. package/dist/engine/pipeline/phase.sequence.js +78 -118
  313. package/dist/engine/pipeline/phase.sequence.js.map +1 -1
  314. package/dist/engine/pipeline/pipeline.shared.d.ts +6 -6
  315. package/dist/engine/pipeline/pipeline.shared.js +21 -65
  316. package/dist/engine/pipeline/pipeline.shared.js.map +1 -1
  317. package/dist/engine/pipeline/plan.exec.d.ts +2 -2
  318. package/dist/engine/pipeline/plan.exec.js +10 -48
  319. package/dist/engine/pipeline/plan.exec.js.map +1 -1
  320. package/dist/engine/pipeline/plan.review.d.ts +1 -1
  321. package/dist/engine/pipeline/plan.review.js +33 -72
  322. package/dist/engine/pipeline/plan.review.js.map +1 -1
  323. package/dist/engine/pipeline/prompt.document.js +1 -5
  324. package/dist/engine/pipeline/prompt.document.js.map +1 -1
  325. package/dist/engine/pipeline/refine.exec.d.ts +1 -1
  326. package/dist/engine/pipeline/refine.exec.js +15 -52
  327. package/dist/engine/pipeline/refine.exec.js.map +1 -1
  328. package/dist/engine/pipeline/research.exec.d.ts +2 -2
  329. package/dist/engine/pipeline/research.exec.js +20 -57
  330. package/dist/engine/pipeline/research.exec.js.map +1 -1
  331. package/dist/engine/pipeline/review.exec.d.ts +2 -2
  332. package/dist/engine/pipeline/review.exec.js +24 -61
  333. package/dist/engine/pipeline/review.exec.js.map +1 -1
  334. package/dist/engine/pipeline/sensors.collect.d.ts +2 -2
  335. package/dist/engine/pipeline/sensors.collect.js +11 -18
  336. package/dist/engine/pipeline/sensors.collect.js.map +1 -1
  337. package/dist/engine/pipeline/specialist.verdict.d.ts +1 -1
  338. package/dist/engine/pipeline/specialist.verdict.js +2 -7
  339. package/dist/engine/pipeline/specialist.verdict.js.map +1 -1
  340. package/dist/engine/pipeline/specify.exec.d.ts +1 -1
  341. package/dist/engine/pipeline/specify.exec.js +15 -52
  342. package/dist/engine/pipeline/specify.exec.js.map +1 -1
  343. package/dist/engine/pipeline/worktree.parallel.js +9 -49
  344. package/dist/engine/pipeline/worktree.parallel.js.map +1 -1
  345. package/dist/engine/pipeline/worktree.provision.js +7 -44
  346. package/dist/engine/pipeline/worktree.provision.js.map +1 -1
  347. package/dist/engine/plan-prompt.d.ts +6 -0
  348. package/dist/engine/plan-prompt.js +24 -0
  349. package/dist/engine/plan-prompt.js.map +1 -0
  350. package/dist/engine/plan-reviewer.d.ts +22 -0
  351. package/dist/engine/plan-reviewer.js +144 -0
  352. package/dist/engine/plan-reviewer.js.map +1 -0
  353. package/dist/engine/project-type.d.ts +16 -0
  354. package/dist/engine/project-type.js +131 -0
  355. package/dist/engine/project-type.js.map +1 -0
  356. package/dist/engine/prompt-document.d.ts +28 -0
  357. package/dist/engine/prompt-document.js +43 -0
  358. package/dist/engine/prompt-document.js.map +1 -0
  359. package/dist/engine/refiner.d.ts +9 -0
  360. package/dist/engine/refiner.js +55 -0
  361. package/dist/engine/refiner.js.map +1 -0
  362. package/dist/engine/researcher.d.ts +16 -0
  363. package/dist/engine/researcher.js +179 -0
  364. package/dist/engine/researcher.js.map +1 -0
  365. package/dist/engine/retry.policy.d.ts +1 -0
  366. package/dist/engine/retry.policy.js +38 -0
  367. package/dist/engine/retry.policy.js.map +1 -0
  368. package/dist/engine/reviewer.d.ts +6 -0
  369. package/dist/engine/reviewer.js +76 -0
  370. package/dist/engine/reviewer.js.map +1 -0
  371. package/dist/engine/schemas.d.ts +81 -0
  372. package/dist/engine/schemas.js +70 -0
  373. package/dist/engine/schemas.js.map +1 -0
  374. package/dist/engine/sensors-collect.d.ts +6 -0
  375. package/dist/engine/sensors-collect.js +27 -0
  376. package/dist/engine/sensors-collect.js.map +1 -0
  377. package/dist/engine/specialist-verdict.d.ts +19 -0
  378. package/dist/engine/specialist-verdict.js +184 -0
  379. package/dist/engine/specialist-verdict.js.map +1 -0
  380. package/dist/engine/specifier.d.ts +19 -0
  381. package/dist/engine/specifier.js +424 -0
  382. package/dist/engine/specifier.js.map +1 -0
  383. package/dist/engine/worktree-parallel.d.ts +22 -0
  384. package/dist/engine/worktree-parallel.js +82 -0
  385. package/dist/engine/worktree-parallel.js.map +1 -0
  386. package/dist/engine/worktree.js +5 -42
  387. package/dist/engine/worktree.js.map +1 -1
  388. package/dist/engine/worktree.parallel.d.ts +22 -0
  389. package/dist/engine/worktree.parallel.js +82 -0
  390. package/dist/engine/worktree.parallel.js.map +1 -0
  391. package/dist/engine/worktree.provision.d.ts +55 -0
  392. package/dist/engine/worktree.provision.js +89 -0
  393. package/dist/engine/worktree.provision.js.map +1 -0
  394. package/dist/git.js +20 -33
  395. package/dist/git.js.map +1 -1
  396. package/dist/references/download.js +11 -50
  397. package/dist/references/download.js.map +1 -1
  398. package/dist/sensors/a11y.d.ts +1 -1
  399. package/dist/sensors/a11y.js +10 -12
  400. package/dist/sensors/a11y.js.map +1 -1
  401. package/dist/sensors/contrast.d.ts +1 -1
  402. package/dist/sensors/contrast.js +5 -40
  403. package/dist/sensors/contrast.js.map +1 -1
  404. package/dist/sensors/index.d.ts +1 -1
  405. package/dist/sensors/index.js +1 -2
  406. package/dist/sensors/playwright.d.ts +1 -1
  407. package/dist/sensors/playwright.js +20 -59
  408. package/dist/sensors/playwright.js.map +1 -1
  409. package/dist/sensors/vision.d.ts +1 -1
  410. package/dist/sensors/vision.js +25 -50
  411. package/dist/sensors/vision.js.map +1 -1
  412. package/dist/shapes/detect.js +5 -41
  413. package/dist/shapes/detect.js.map +1 -1
  414. package/dist/stores/budget.d.ts +3 -1
  415. package/dist/stores/budget.js +32 -67
  416. package/dist/stores/budget.js.map +1 -1
  417. package/dist/stores/feedback.format.d.ts +1 -1
  418. package/dist/stores/feedback.format.js +2 -7
  419. package/dist/stores/feedback.format.js.map +1 -1
  420. package/dist/stores/feedback.io.d.ts +1 -1
  421. package/dist/stores/feedback.io.js +10 -51
  422. package/dist/stores/feedback.io.js.map +1 -1
  423. package/dist/stores/feedback.parse.d.ts +1 -1
  424. package/dist/stores/feedback.parse.js +1 -5
  425. package/dist/stores/feedback.parse.js.map +1 -1
  426. package/dist/stores/feedback.verdict.d.ts +2 -2
  427. package/dist/stores/feedback.verdict.js +2 -8
  428. package/dist/stores/feedback.verdict.js.map +1 -1
  429. package/dist/stores/handoff.js +6 -46
  430. package/dist/stores/handoff.js.map +1 -1
  431. package/dist/stores/index.d.ts +9 -9
  432. package/dist/stores/index.js +9 -47
  433. package/dist/stores/index.js.map +1 -1
  434. package/dist/stores/inputs.js +4 -42
  435. package/dist/stores/inputs.js.map +1 -1
  436. package/dist/stores/phases.d.ts +1 -1
  437. package/dist/stores/phases.js +11 -52
  438. package/dist/stores/phases.js.map +1 -1
  439. package/dist/stores/settings.js +46 -95
  440. package/dist/stores/settings.js.map +1 -1
  441. package/dist/stores/state.d.ts +3 -3
  442. package/dist/stores/state.js +53 -106
  443. package/dist/stores/state.js.map +1 -1
  444. package/dist/stores/tags.js +15 -24
  445. package/dist/stores/tags.js.map +1 -1
  446. package/dist/stores/trajectory.d.ts +3 -1
  447. package/dist/stores/trajectory.js +12 -44
  448. package/dist/stores/trajectory.js.map +1 -1
  449. package/dist/types.d.ts +4 -4
  450. package/dist/types.js +1 -2
  451. package/dist/ui/claude-stream-display.d.ts +20 -0
  452. package/dist/ui/claude-stream-display.js +264 -0
  453. package/dist/ui/claude-stream-display.js.map +1 -0
  454. package/dist/ui/color.js +11 -24
  455. package/dist/ui/color.js.map +1 -1
  456. package/dist/ui/contrast.js +10 -15
  457. package/dist/ui/contrast.js.map +1 -1
  458. package/dist/ui/dashboard/client.js +1 -5
  459. package/dist/ui/dashboard/client.js.map +1 -1
  460. package/dist/ui/dashboard/css.js +14 -18
  461. package/dist/ui/dashboard/css.js.map +1 -1
  462. package/dist/ui/dashboard/events.js +1 -5
  463. package/dist/ui/dashboard/events.js.map +1 -1
  464. package/dist/ui/dashboard/favicon.js +6 -10
  465. package/dist/ui/dashboard/favicon.js.map +1 -1
  466. package/dist/ui/dashboard/hex.js +3 -8
  467. package/dist/ui/dashboard/hex.js.map +1 -1
  468. package/dist/ui/dashboard/html.d.ts +1 -1
  469. package/dist/ui/dashboard/html.js +7 -11
  470. package/dist/ui/dashboard/html.js.map +1 -1
  471. package/dist/ui/dashboard/server.d.ts +2 -2
  472. package/dist/ui/dashboard/server.js +22 -60
  473. package/dist/ui/dashboard/server.js.map +1 -1
  474. package/dist/ui/dashboard/snapshot.d.ts +1 -1
  475. package/dist/ui/dashboard/snapshot.js +1 -5
  476. package/dist/ui/dashboard/snapshot.js.map +1 -1
  477. package/dist/ui/dashboard/tokens.js +6 -10
  478. package/dist/ui/dashboard/tokens.js.map +1 -1
  479. package/dist/ui/dashboard/watcher.js +4 -42
  480. package/dist/ui/dashboard/watcher.js.map +1 -1
  481. package/dist/ui/graceful-stop.js +2 -39
  482. package/dist/ui/graceful-stop.js.map +1 -1
  483. package/dist/ui/index.d.ts +3 -3
  484. package/dist/ui/index.js +3 -13
  485. package/dist/ui/index.js.map +1 -1
  486. package/dist/ui/logger.js +5 -44
  487. package/dist/ui/logger.js.map +1 -1
  488. package/dist/ui/output.js +20 -28
  489. package/dist/ui/output.js.map +1 -1
  490. package/dist/ui/phase-prompt.d.ts +1 -1
  491. package/dist/ui/phase-prompt.js +7 -44
  492. package/dist/ui/phase-prompt.js.map +1 -1
  493. package/dist/ui/preflight.d.ts +1 -1
  494. package/dist/ui/preflight.js +23 -61
  495. package/dist/ui/preflight.js.map +1 -1
  496. package/dist/ui/preflight.toolprobe.d.ts +3 -3
  497. package/dist/ui/preflight.toolprobe.js +4 -9
  498. package/dist/ui/preflight.toolprobe.js.map +1 -1
  499. package/dist/ui/prompt.js +2 -39
  500. package/dist/ui/prompt.js.map +1 -1
  501. package/dist/ui/spinner.js +9 -15
  502. package/dist/ui/spinner.js.map +1 -1
  503. package/dist/ui/summary.d.ts +1 -1
  504. package/dist/ui/summary.js +9 -48
  505. package/dist/ui/summary.js.map +1 -1
  506. package/dist/ui/transcript.js +7 -46
  507. package/dist/ui/transcript.js.map +1 -1
  508. package/dist/utils/atomic-write.js +4 -41
  509. package/dist/utils/atomic-write.js.map +1 -1
  510. package/dist/utils/cli-args.js +6 -45
  511. package/dist/utils/cli-args.js.map +1 -1
  512. package/dist/utils/file-lock.js +2 -39
  513. package/dist/utils/file-lock.js.map +1 -1
  514. package/dist/utils/flavour-removed.js +5 -11
  515. package/dist/utils/flavour-removed.js.map +1 -1
  516. package/package.json +7 -4
@@ -1,4 +1,4 @@
1
- import { AssetCatalog, CatalogOptions } from "./types";
1
+ import { AssetCatalog, CatalogOptions } from "./types.js";
2
2
  export type CatalogResult = {
3
3
  catalog: AssetCatalog;
4
4
  stats: {
@@ -1,45 +1,9 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.buildCatalog = void 0;
37
- const fs = __importStar(require("node:fs"));
38
- const path = __importStar(require("node:path"));
39
- const parse_conventions_1 = require("./parse-conventions");
40
- const extract_metadata_1 = require("./extract-metadata");
41
- const classify_1 = require("./classify");
42
- const color_1 = require("../ui/color");
1
+ import * as fs from "node:fs";
2
+ import * as path from "node:path";
3
+ import { parseConventions, inferDefaults, AUTO_DESCRIBE_CATEGORIES } from "./parse-conventions.js";
4
+ import { extractImageMetadata, extractPalette, detectSpritesheet, detectTileable, computeContentHash, extractBasicMetadata, } from "./extract-metadata.js";
5
+ import { classifyByHeuristics, classifyWithAI } from "./classify.js";
6
+ import { hint } from "../ui/color.js";
43
7
  /** Map file extensions to media types. */
44
8
  const MEDIA_EXTENSIONS = {
45
9
  // images
@@ -188,7 +152,7 @@ const checkPaletteMismatches = (assets, buildDir, ridgelineDir) => {
188
152
  * Build or update the asset catalog.
189
153
  * Handles all media types. Vision enrichment and sprite packing are handled separately.
190
154
  */
191
- const buildCatalog = async (assetDir, buildDir, opts) => {
155
+ export const buildCatalog = async (assetDir, buildDir, opts) => {
192
156
  const ridgelineDir = path.join(process.cwd(), ".ridgeline");
193
157
  const catalogPath = path.join(buildDir, "asset-catalog.json");
194
158
  const existing = loadExistingCatalog(catalogPath);
@@ -206,7 +170,7 @@ const buildCatalog = async (assetDir, buildDir, opts) => {
206
170
  let processedCount = 0;
207
171
  for (const relPath of assetFiles) {
208
172
  const absPath = path.join(assetDir, relPath);
209
- const hash = (0, extract_metadata_1.computeContentHash)(absPath);
173
+ const hash = computeContentHash(absPath);
210
174
  const prev = hashIndex.get(relPath);
211
175
  existingFiles.delete(relPath);
212
176
  // Skip unchanged files (unless --force)
@@ -215,8 +179,8 @@ const buildCatalog = async (assetDir, buildDir, opts) => {
215
179
  unchanged++;
216
180
  // Still track if auto-describe category needs vision
217
181
  if (prev.mediaType === "image") {
218
- const conv = (0, parse_conventions_1.parseConventions)(relPath);
219
- if (parse_conventions_1.AUTO_DESCRIBE_CATEGORIES.has(conv.category) && !prev.description) {
182
+ const conv = parseConventions(relPath);
183
+ if (AUTO_DESCRIBE_CATEGORIES.has(conv.category) && !prev.description) {
220
184
  needsVisionDescribe.push(relPath);
221
185
  }
222
186
  }
@@ -224,8 +188,8 @@ const buildCatalog = async (assetDir, buildDir, opts) => {
224
188
  }
225
189
  processedCount++;
226
190
  const mediaType = detectMediaType(relPath);
227
- const conventions = (0, parse_conventions_1.parseConventions)(relPath);
228
- const basic = (0, extract_metadata_1.extractBasicMetadata)(absPath);
191
+ const conventions = parseConventions(relPath);
192
+ const basic = extractBasicMetadata(absPath);
229
193
  // Build the entry — image-specific metadata only for images
230
194
  const entry = {
231
195
  file: relPath,
@@ -239,11 +203,11 @@ const buildCatalog = async (assetDir, buildDir, opts) => {
239
203
  extension: basic.extension,
240
204
  };
241
205
  if (mediaType === "image") {
242
- const meta = await (0, extract_metadata_1.extractImageMetadata)(absPath);
243
- const palette = await (0, extract_metadata_1.extractPalette)(absPath);
244
- const spritesheet = (0, extract_metadata_1.detectSpritesheet)(meta.width, meta.height);
245
- const isTileable = await (0, extract_metadata_1.detectTileable)(absPath, meta.width, meta.height);
246
- const defaults = (0, parse_conventions_1.inferDefaults)(conventions.category);
206
+ const meta = await extractImageMetadata(absPath);
207
+ const palette = await extractPalette(absPath);
208
+ const spritesheet = detectSpritesheet(meta.width, meta.height);
209
+ const isTileable = await detectTileable(absPath, meta.width, meta.height);
210
+ const defaults = inferDefaults(conventions.category);
247
211
  entry.width = meta.width;
248
212
  entry.height = meta.height;
249
213
  entry.format = meta.format;
@@ -261,22 +225,22 @@ const buildCatalog = async (assetDir, buildDir, opts) => {
261
225
  }
262
226
  // Classify uncategorized files when --classify is set
263
227
  if (conventions.category === "uncategorized" && opts.isClassify) {
264
- process.stderr.write(`${(0, color_1.hint)(` Classifying ${relPath} (${processedCount}/${totalFiles})...`, { stream: "stderr" })}\n`);
265
- const result = (0, classify_1.classifyByHeuristics)(relPath, basic.extension, mediaType)
266
- ?? (0, classify_1.classifyWithAI)(absPath, relPath, basic.extension, mediaType, opts.model, timeoutMs);
228
+ process.stderr.write(`${hint(` Classifying ${relPath} (${processedCount}/${totalFiles})...`, { stream: "stderr" })}\n`);
229
+ const result = classifyByHeuristics(relPath, basic.extension, mediaType)
230
+ ?? classifyWithAI(absPath, relPath, basic.extension, mediaType, opts.model, timeoutMs);
267
231
  entry.category = result.category;
268
232
  entry.isClassified = true;
269
233
  entry.classificationConfidence = result.confidence;
270
234
  classified++;
271
235
  // Update anchor/zLayer defaults based on new category
272
236
  if (mediaType === "image") {
273
- const defaults = (0, parse_conventions_1.inferDefaults)(entry.category);
237
+ const defaults = inferDefaults(entry.category);
274
238
  entry.suggestedAnchor = defaults.anchor;
275
239
  entry.suggestedZLayer = defaults.zLayer;
276
240
  }
277
241
  }
278
242
  assets.push(entry);
279
- if (mediaType === "image" && parse_conventions_1.AUTO_DESCRIBE_CATEGORIES.has(entry.category)) {
243
+ if (mediaType === "image" && AUTO_DESCRIBE_CATEGORIES.has(entry.category)) {
280
244
  needsVisionDescribe.push(relPath);
281
245
  }
282
246
  if (prev) {
@@ -302,5 +266,4 @@ const buildCatalog = async (assetDir, buildDir, opts) => {
302
266
  needsVisionDescribe,
303
267
  };
304
268
  };
305
- exports.buildCatalog = buildCatalog;
306
269
  //# sourceMappingURL=build-catalog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"build-catalog.js","sourceRoot":"","sources":["../../src/catalog/build-catalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-catalog.js","sourceRoot":"","sources":["../../src/catalog/build-catalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAA;AAClG,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AACpE,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAErC,0CAA0C;AAC1C,MAAM,gBAAgB,GAA8B;IAClD,SAAS;IACT,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;IAClD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;IACpE,QAAQ;IACR,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO;IACjD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO;IAClD,QAAQ;IACR,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO;IACnE,OAAO;IACP,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAC/C,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAC/C,CAAA;AAED,6CAA6C;AAC7C,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAoB,EAAE,CAC7D,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,IAAI,CAAA;AAEhE,4FAA4F;AAC5F,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,IAAa,EAAY,EAAE;IAC1D,MAAM,IAAI,GAAG,IAAI,IAAI,GAAG,CAAA;IACxB,MAAM,OAAO,GAAa,EAAE,CAAA;IAE5B,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAC3C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAA;QAC7C,CAAC;aAAM,IAAI,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAA;QAC7C,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,mDAAmD;AACnD,MAAM,mBAAmB,GAAG,CAAC,WAAmB,EAAuB,EAAE;IACvE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAA;IAC5C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAA;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC,CAAA;AAED,2EAA2E;AAC3E,MAAM,cAAc,GAAG,CAAC,OAA4B,EAA2B,EAAE;IAC/E,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAA;IAC3C,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAA;IAC1B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IAC9B,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,oFAAoF;AACpF,MAAM,gBAAgB,GAAG,CAAC,MAAoB,EAAiB,EAAE;IAC/D,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAA;IACvC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,SAAS,KAAK,OAAO;YAAE,SAAQ;QACrC,IAAI,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YACnC,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAA;YAC/C,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QAC3C,CAAC;aAAM,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI,GAAG,EAAE,CAAC;YACzE,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,CAAA;YACpC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACjC,OAAO,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC/D,CAAC,CAAA;AAED,mFAAmF;AACnF,MAAM,aAAa,GAAG,CAAC,MAAoB,EAAY,EAAE;IACvD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAA;IACtC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,CAAC,OAAO;YAAE,SAAQ;QACxB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;SACvB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAA;AAC9B,CAAC,CAAA;AAED,uDAAuD;AACvD,MAAM,WAAW,GAAG,CAAC,MAAoB,EAAiB,EAAE;IAC1D,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,OAAO,CAAC,CAAA;IACjE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAEzC,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3C,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,SAAS;YACzC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;YACxC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAA;QACzC,OAAO,IAAI,IAAI,GAAG,CAAA;IACpB,CAAC,CAAC,CAAA;IACF,IAAI,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,GAAG,GAAG;QAAE,OAAO,WAAW,CAAA;IAErE,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,MAAM,CAAA;IACrE,IAAI,QAAQ,GAAG,WAAW,CAAC,MAAM,GAAG,GAAG;QAAE,OAAO,QAAQ,CAAA;IAExD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,kEAAkE;AAClE,MAAM,oBAAoB,GAAG,CAAC,MAAoB,EAAkB,EAAE;IACpE,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IACjC,OAAO;QACL,aAAa,EAAE,KAAK;QACpB,eAAe,EAAE,aAAa,CAAC,MAAM,CAAC;QACtC,kBAAkB,EAAE,gBAAgB,CAAC,MAAM,CAAC;QAC5C,eAAe,EAAE,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;KAC1D,CAAA;AACH,CAAC,CAAA;AAED,+EAA+E;AAC/E,MAAM,sBAAsB,GAAG,CAAC,MAAoB,EAAE,QAAgB,EAAE,YAAoB,EAAY,EAAE;IACxG,MAAM,QAAQ,GAAa,EAAE,CAAA;IAE7B,MAAM,WAAW,GAAG;QAClB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC;KACrC,CAAA;IAED,IAAI,aAAa,GAAkB,IAAI,CAAA;IACvC,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;QAC5B,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;YAC3C,MAAK;QACP,CAAC;IACH,CAAC;IAED,IAAI,CAAC,aAAa;QAAE,OAAO,QAAQ,CAAA;IAEnC,MAAM,UAAU,GAAG,kBAAkB,CAAA;IACrC,MAAM,aAAa,GAAG,IAAI,GAAG,CAC3B,CAAC,GAAG,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CACvE,CAAA;IAED,IAAI,aAAa,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAA;IAE7C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,OAAO;YAAE,SAAQ;QAC5B,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;QACnF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,QAAQ,CAAC,IAAI,CACX,GAAG,KAAK,CAAC,IAAI,kBAAkB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,4DAA4D,CACjH,CAAA;QACH,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AAkBD;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,QAAgB,EAChB,QAAgB,EAChB,IAAsB,EACE,EAAE;IAC1B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAA;IAC3D,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAA;IAC7D,MAAM,QAAQ,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAA;IACjD,MAAM,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IAE1C,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;IACvC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAA;IAE/C,MAAM,MAAM,GAAiB,EAAE,CAAA;IAC/B,MAAM,mBAAmB,GAAa,EAAE,CAAA;IACxC,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,IAAI,SAAS,GAAG,CAAC,CAAA;IACjB,IAAI,UAAU,GAAG,CAAC,CAAA;IAElB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,IAAI,CAAA;IAC1C,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAA;IACpC,IAAI,cAAc,GAAG,CAAC,CAAA;IAEtB,KAAK,MAAM,OAAO,IAAI,UAAU,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAC5C,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;QACxC,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACnC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAE7B,wCAAwC;QACxC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YAChD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjB,SAAS,EAAE,CAAA;YAEX,qDAAqD;YACrD,IAAI,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE,CAAC;gBAC/B,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;gBACtC,IAAI,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrE,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBACnC,CAAC;YACH,CAAC;YACD,SAAQ;QACV,CAAC;QAED,cAAc,EAAE,CAAA;QAChB,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAE,CAAA;QAC3C,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;QAC7C,MAAM,KAAK,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAA;QAE3C,4DAA4D;QAC5D,MAAM,KAAK,GAAe;YACxB,IAAI,EAAE,OAAO;YACb,IAAI;YACJ,SAAS;YACT,QAAQ,EAAE,WAAW,CAAC,QAAQ;YAC9B,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,KAAK,EAAE,WAAW,CAAC,KAAK;YACxB,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAA;QAED,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAA;YAChD,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,CAAA;YAC7C,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YAC9D,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACzE,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;YAEpD,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;YACxB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YAC1B,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YAC1B,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;YAC9B,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;YAC9B,KAAK,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAA;YAC7C,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;YAC/B,KAAK,CAAC,aAAa,GAAG,WAAW,CAAC,aAAa,CAAA;YAC/C,KAAK,CAAC,UAAU,GAAG,WAAW,CAAC,UAAU,CAAA;YACzC,KAAK,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,CAAA;YACvC,KAAK,CAAC,cAAc,GAAG,WAAW,CAAC,cAAc,CAAA;YACjD,KAAK,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAA;YACvC,KAAK,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAA;YACvC,KAAK,CAAC,UAAU,GAAG,UAAU,CAAA;QAC/B,CAAC;QAED,sDAAsD;QACtD,IAAI,WAAW,CAAC,QAAQ,KAAK,eAAe,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAChE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,iBAAiB,OAAO,KAAK,cAAc,IAAI,UAAU,MAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAA;YAExH,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC;mBACnE,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;YAExF,KAAK,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;YAChC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAA;YACzB,KAAK,CAAC,wBAAwB,GAAG,MAAM,CAAC,UAAU,CAAA;YAClD,UAAU,EAAE,CAAA;YAEZ,sDAAsD;YACtD,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;gBAC1B,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;gBAC9C,KAAK,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAA;gBACvC,KAAK,CAAC,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAA;YACzC,CAAC;QACH,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAElB,IAAI,SAAS,KAAK,OAAO,IAAI,wBAAwB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1E,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACnC,CAAC;QAED,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,EAAE,CAAA;QACX,CAAC;aAAM,CAAC;YACN,KAAK,EAAE,CAAA;QACT,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAA;IAEjC,MAAM,OAAO,GAAiB;QAC5B,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,QAAQ;QACR,WAAW,EAAE,QAAQ,EAAE,WAAW,IAAI,KAAK;QAC3C,cAAc,EAAE,oBAAoB,CAAC,MAAM,CAAC;QAC5C,QAAQ,EAAE,sBAAsB,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC;QAChE,MAAM;KACP,CAAA;IAED,OAAO;QACL,OAAO;QACP,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE;QAC9E,mBAAmB;KACpB,CAAA;AACH,CAAC,CAAA"}
@@ -1,4 +1,4 @@
1
- import { MediaType } from "./types";
1
+ import { MediaType } from "./types.js";
2
2
  type ClassificationResult = {
3
3
  category: string;
4
4
  confidence: "high" | "medium" | "low";
@@ -1,43 +1,7 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.classifyWithAI = exports.classifyByHeuristics = void 0;
37
- const fs = __importStar(require("node:fs"));
38
- const path = __importStar(require("node:path"));
39
- const node_child_process_1 = require("node:child_process");
40
- const color_1 = require("../ui/color");
1
+ import * as fs from "node:fs";
2
+ import * as path from "node:path";
3
+ import { execFileSync } from "node:child_process";
4
+ import { warning } from "../ui/color.js";
41
5
  // --- Heuristic patterns (filename prefix → category) ---
42
6
  const IMAGE_HEURISTICS = [
43
7
  [/^(bg|background|backdrop|sky|scenery)[_-]/i, "backgrounds"],
@@ -78,7 +42,7 @@ const HEURISTICS_BY_MEDIA = {
78
42
  * Attempt to classify a file using filename pattern matching.
79
43
  * Returns null if no heuristic matches confidently.
80
44
  */
81
- const classifyByHeuristics = (filename, ext, mediaType) => {
45
+ export const classifyByHeuristics = (filename, ext, mediaType) => {
82
46
  const basename = path.basename(filename, ext);
83
47
  // Text data files by extension
84
48
  if (mediaType === "text" && [".json", ".csv", ".yaml", ".yml"].includes(ext)) {
@@ -92,7 +56,6 @@ const classifyByHeuristics = (filename, ext, mediaType) => {
92
56
  }
93
57
  return null;
94
58
  };
95
- exports.classifyByHeuristics = classifyByHeuristics;
96
59
  // --- AI classification prompts ---
97
60
  const IMAGE_CLASSIFY_PROMPT = `You are classifying game assets into organized categories. Analyze this image and determine the best category.
98
61
 
@@ -139,12 +102,12 @@ Respond with ONLY valid JSON:
139
102
  }`;
140
103
  };
141
104
  /** Invoke Claude and parse the classification result. */
142
- const invokeClaude = (prompt, model, timeoutMs, filename, filePath) => {
105
+ const runClaudeJsonClassify = (prompt, model, timeoutMs, filename, filePath) => {
143
106
  const args = ["-p", "--model", model, "--output-format", "json", prompt];
144
107
  if (filePath)
145
108
  args.push("--file", filePath);
146
109
  try {
147
- const result = (0, node_child_process_1.execFileSync)("claude", args, {
110
+ const result = execFileSync("claude", args, {
148
111
  timeout: timeoutMs,
149
112
  encoding: "utf-8",
150
113
  stdio: ["pipe", "pipe", "pipe"],
@@ -159,7 +122,7 @@ const invokeClaude = (prompt, model, timeoutMs, filename, filePath) => {
159
122
  }
160
123
  catch (err) {
161
124
  const msg = err instanceof Error ? err.message : String(err);
162
- process.stderr.write(`${(0, color_1.warning)(`Classification failed for ${filename}: ${msg}`, { stream: "stderr" })}\n`);
125
+ process.stderr.write(`${warning(`Classification failed for ${filename}: ${msg}`, { stream: "stderr" })}\n`);
163
126
  return { category: "uncategorized", confidence: "low" };
164
127
  }
165
128
  };
@@ -167,10 +130,10 @@ const invokeClaude = (prompt, model, timeoutMs, filename, filePath) => {
167
130
  * Classify a single file using AI.
168
131
  * Dispatches to vision (images) or text-only (audio/video/text).
169
132
  */
170
- const classifyWithAI = (absPath, filename, ext, mediaType, model, timeoutMs) => {
133
+ export const classifyWithAI = (absPath, filename, ext, mediaType, model, timeoutMs) => {
171
134
  if (mediaType === "image") {
172
135
  const prompt = IMAGE_CLASSIFY_PROMPT.replace("{filename}", filename);
173
- return invokeClaude(prompt, model, timeoutMs, filename, absPath);
136
+ return runClaudeJsonClassify(prompt, model, timeoutMs, filename, absPath);
174
137
  }
175
138
  const stat = fs.statSync(absPath);
176
139
  let contentPreview = null;
@@ -184,7 +147,6 @@ const classifyWithAI = (absPath, filename, ext, mediaType, model, timeoutMs) =>
184
147
  }
185
148
  }
186
149
  const prompt = buildNonImagePrompt(filename, ext, mediaType, stat.size, contentPreview);
187
- return invokeClaude(prompt, model, timeoutMs, filename);
150
+ return runClaudeJsonClassify(prompt, model, timeoutMs, filename);
188
151
  };
189
- exports.classifyWithAI = classifyWithAI;
190
152
  //# sourceMappingURL=classify.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"classify.js","sourceRoot":"","sources":["../../src/catalog/classify.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"classify.js","sourceRoot":"","sources":["../../src/catalog/classify.ts"],"names":[],"mappings":"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"}
@@ -1,57 +1,21 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.extractBasicMetadata = exports.computeContentHash = exports.detectTileable = exports.detectSpritesheet = exports.extractPalette = exports.extractImageMetadata = void 0;
37
- const crypto = __importStar(require("node:crypto"));
38
- const fs = __importStar(require("node:fs"));
39
- const path = __importStar(require("node:path"));
1
+ import * as crypto from "node:crypto";
2
+ import * as fs from "node:fs";
3
+ import * as path from "node:path";
40
4
  // Dynamic imports for native deps — only loaded when catalog command runs
41
5
  let sharpModule = null;
42
6
  let colorThiefModule = null;
43
7
  const loadSharp = async () => {
44
8
  if (!sharpModule)
45
- sharpModule = (await Promise.resolve().then(() => __importStar(require("sharp")))).default;
9
+ sharpModule = (await import("sharp")).default;
46
10
  return sharpModule;
47
11
  };
48
12
  const loadColorThief = async () => {
49
13
  if (!colorThiefModule)
50
- colorThiefModule = (await Promise.resolve().then(() => __importStar(require("colorthief")))).default;
14
+ colorThiefModule = (await import("colorthief")).default;
51
15
  return colorThiefModule;
52
16
  };
53
17
  /** Extract image dimensions, format, alpha, and channel info via sharp. */
54
- const extractImageMetadata = async (filepath) => {
18
+ export const extractImageMetadata = async (filepath) => {
55
19
  const sharp = await loadSharp();
56
20
  const meta = await sharp(filepath).metadata();
57
21
  return {
@@ -62,9 +26,8 @@ const extractImageMetadata = async (filepath) => {
62
26
  channels: meta.channels ?? 3,
63
27
  };
64
28
  };
65
- exports.extractImageMetadata = extractImageMetadata;
66
29
  /** Extract dominant colour and 6-colour palette via colorthief. */
67
- const extractPalette = async (filepath) => {
30
+ export const extractPalette = async (filepath) => {
68
31
  const ColorThief = await loadColorThief();
69
32
  try {
70
33
  const dominant = await ColorThief.getColor(filepath);
@@ -79,9 +42,8 @@ const extractPalette = async (filepath) => {
79
42
  return { dominantColour: "#000000", palette: [] };
80
43
  }
81
44
  };
82
- exports.extractPalette = extractPalette;
83
45
  /** Detect spritesheet from dimensions — one dimension is an exact multiple of the other. */
84
- const detectSpritesheet = (width, height) => {
46
+ export const detectSpritesheet = (width, height) => {
85
47
  if (width <= 0 || height <= 0 || width === height) {
86
48
  return { isSpritesheet: false, frameCount: 1, frameSize: null, frameDirection: null };
87
49
  }
@@ -105,13 +67,12 @@ const detectSpritesheet = (width, height) => {
105
67
  }
106
68
  return { isSpritesheet: false, frameCount: 1, frameSize: null, frameDirection: null };
107
69
  };
108
- exports.detectSpritesheet = detectSpritesheet;
109
70
  /**
110
71
  * Detect tilability by comparing edge pixel strips.
111
72
  * If the top row matches the bottom row (and left col matches right col),
112
73
  * the image is likely tileable.
113
74
  */
114
- const detectTileable = async (filepath, width, height) => {
75
+ export const detectTileable = async (filepath, width, height) => {
115
76
  if (width < 2 || height < 2)
116
77
  return false;
117
78
  const sharp = await loadSharp();
@@ -143,22 +104,19 @@ const detectTileable = async (filepath, width, height) => {
143
104
  return false;
144
105
  }
145
106
  };
146
- exports.detectTileable = detectTileable;
147
107
  /** Compute MD5 content hash for change detection (not security-sensitive). */
148
- const computeContentHash = (filepath) => {
108
+ export const computeContentHash = (filepath) => {
149
109
  const data = fs.readFileSync(filepath);
150
110
  return crypto.createHash("md5").update(data).digest("hex");
151
111
  };
152
- exports.computeContentHash = computeContentHash;
153
112
  /** Extract basic file metadata for non-image assets. */
154
- const extractBasicMetadata = (filepath) => {
113
+ export const extractBasicMetadata = (filepath) => {
155
114
  const stat = fs.statSync(filepath);
156
115
  return {
157
116
  fileSizeBytes: stat.size,
158
117
  extension: path.extname(filepath).toLowerCase(),
159
118
  };
160
119
  };
161
- exports.extractBasicMetadata = extractBasicMetadata;
162
120
  // --- Helpers ---
163
121
  const rgbToHex = (rgb) => "#" + rgb.map((c) => c.toString(16).padStart(2, "0")).join("");
164
122
  /** Compare two raw pixel buffers and return similarity ratio (0..1). */
@@ -1 +1 @@
1
- {"version":3,"file":"extract-metadata.js","sourceRoot":"","sources":["../../src/catalog/extract-metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extract-metadata.js","sourceRoot":"","sources":["../../src/catalog/extract-metadata.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { AssetCatalog } from "./types";
1
+ import { AssetCatalog } from "./types.js";
2
2
  /**
3
3
  * Pack sprites into texture atlases grouped by category.
4
- * Uses free-tex-packer-core to produce PixiJS-compatible JSON + PNG atlas files.
4
+ * Produces PixiJS-compatible JSON + PNG atlas files.
5
5
  *
6
6
  * Output: <assetDir>/packed/<category>.png + <category>.json
7
7
  */