@reftrixmcp/mcp-server 0.1.8 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1424) hide show
  1. package/README.md +36 -6
  2. package/package.json +46 -41
  3. package/src/admin/bull-board.ts +177 -0
  4. package/src/index.ts +32 -1
  5. package/src/middleware/auth.ts +6 -0
  6. package/src/middleware/index.ts +13 -0
  7. package/src/middleware/rate-limiter.ts +525 -0
  8. package/src/router.ts +36 -3
  9. package/src/schemas/common-search-filters.ts +42 -0
  10. package/src/services/background/background-design-db.service.ts +4 -6
  11. package/src/services/background/background-design-embedding.service.ts +6 -8
  12. package/src/services/background-search.service.ts +44 -16
  13. package/src/services/browser-process-manager.ts +29 -24
  14. package/src/services/layout-embedding.service.ts +18 -28
  15. package/src/services/layout-search.service.ts +52 -31
  16. package/src/services/layout-to-code.service.ts +13 -21
  17. package/src/services/ml/mood-brandtone-embedding.service.ts +4 -10
  18. package/src/services/motion/analyzers/webgl-motion-analyzer.ts +1 -3
  19. package/src/services/motion/existing-animation-detector.service.ts +11 -17
  20. package/src/services/motion/frame-analysis-save.helper.ts +3 -8
  21. package/src/services/motion/frame-capture.service.ts +5 -5
  22. package/src/services/motion/frame-embedding.service.ts +30 -46
  23. package/src/services/motion/js-animation-detector.ts +5 -15
  24. package/src/services/motion/js-animation-search.service.ts +12 -20
  25. package/src/services/motion/motion-db.service.ts +21 -31
  26. package/src/services/motion/three-js-scene-extractor.ts +1 -3
  27. package/src/services/motion/webgl-animation-detector.service.ts +5 -9
  28. package/src/services/motion/webgl-animation-embedding.service.ts +3 -5
  29. package/src/services/motion-persistence.service.ts +13 -19
  30. package/src/services/motion-search.service.ts +72 -57
  31. package/src/services/narrative/analyzers/worldview.analyzer.ts +6 -10
  32. package/src/services/narrative/narrative-analysis.service.ts +10 -16
  33. package/src/services/narrative/narrative-search.service.ts +89 -40
  34. package/src/services/narrative/types/narrative.types.ts +24 -6
  35. package/src/services/page/frame-analyzer.service.ts +1 -3
  36. package/src/services/page/layout-analyzer.service.ts +224 -303
  37. package/src/services/page/playwright-crawler.service.ts +14 -20
  38. package/src/services/page/quality-evaluator.service.ts +1 -3
  39. package/src/services/page/runtime-animation-detector.service.ts +7 -17
  40. package/src/services/page/video-recorder.service.ts +2 -6
  41. package/src/services/page/webgl-detector.service.ts +3 -5
  42. package/src/services/page-ingest-adapter.ts +269 -251
  43. package/src/services/part/part-search.service.ts +43 -22
  44. package/src/services/part/schemas.ts +6 -0
  45. package/src/services/project-context-analyzer.ts +3 -5
  46. package/src/services/quality/axe-accessibility.service.ts +3 -5
  47. package/src/services/quality/benchmark.service.ts +4 -16
  48. package/src/services/quality/pattern-matcher.service.ts +11 -21
  49. package/src/services/quality/playwright-axe.service.ts +10 -18
  50. package/src/services/quality-search.service.ts +16 -17
  51. package/src/services/responsive/multi-viewport-capture.service.ts +11 -17
  52. package/src/services/responsive/responsive-analysis-embedding.service.ts +7 -11
  53. package/src/services/responsive/responsive-analysis.service.ts +7 -11
  54. package/src/services/responsive/responsive-quality-evaluator.service.ts +4 -6
  55. package/src/services/responsive-search.service.ts +40 -5
  56. package/src/services/search-cache.service.ts +166 -0
  57. package/src/services/service-client.ts +16 -24
  58. package/src/services/service-initializer.ts +49 -945
  59. package/src/services/service-registrar-analysis.ts +679 -0
  60. package/src/services/service-registrar-search.ts +464 -0
  61. package/src/services/vision/scroll-vision-persistence.service.ts +4 -6
  62. package/src/services/vision-embedding-search.service.ts +57 -45
  63. package/src/services/vision-embedding.service.ts +8 -12
  64. package/src/services/worker-supervisor.service.ts +2 -6
  65. package/src/tools/background/schemas.ts +2 -1
  66. package/src/tools/background/search.tool.ts +93 -53
  67. package/src/tools/brief/validate.handler.ts +11 -26
  68. package/src/tools/design/search-by-image.tool.ts +891 -0
  69. package/src/tools/index.ts +42 -1
  70. package/src/tools/layout/batch-ingest.tool.ts +14 -21
  71. package/src/tools/layout/ingest.tool.ts +38 -88
  72. package/src/tools/layout/inspect/inspect.tool.ts +32 -59
  73. package/src/tools/layout/inspect/visual-extractors.utils.ts +3 -9
  74. package/src/tools/layout/schemas.ts +11 -8
  75. package/src/tools/layout/search-executor.ts +699 -0
  76. package/src/tools/layout/search-helpers.ts +620 -0
  77. package/src/tools/layout/search.tool.ts +148 -1371
  78. package/src/tools/layout/to-code.tool.ts +21 -42
  79. package/src/tools/motion/analyze-frames.handler.ts +19 -37
  80. package/src/tools/motion/code-generators.ts +1363 -0
  81. package/src/tools/motion/css-mode-handler.ts +14 -23
  82. package/src/tools/motion/detect.tool.ts +38 -60
  83. package/src/tools/motion/detection-modes.ts +4 -8
  84. package/src/tools/motion/di-factories.ts +87 -110
  85. package/src/tools/motion/search-helpers.ts +376 -0
  86. package/src/tools/motion/search.schemas.ts +9 -6
  87. package/src/tools/motion/search.tool.ts +81 -1717
  88. package/src/tools/narrative/analyze.tool.ts +14 -30
  89. package/src/tools/narrative/schemas.ts +14 -11
  90. package/src/tools/narrative/search.tool.ts +91 -77
  91. package/src/tools/page/analyze.tool.ts +21 -33
  92. package/src/tools/page/get-job-status.tool.ts +8 -12
  93. package/src/tools/page/handlers/db-handler.ts +3 -6
  94. package/src/tools/page/handlers/embedding-handler.ts +48 -81
  95. package/src/tools/page/handlers/execution-status-tracker.ts +3 -5
  96. package/src/tools/page/handlers/js-animation-handler.ts +29 -53
  97. package/src/tools/page/handlers/layout-handler.ts +45 -73
  98. package/src/tools/page/handlers/motion-handler.ts +24 -35
  99. package/src/tools/page/handlers/narrative-handler.ts +12 -24
  100. package/src/tools/page/handlers/phased-executor.ts +13 -16
  101. package/src/tools/page/handlers/quality-handler.ts +3 -4
  102. package/src/tools/page/handlers/result-builder.ts +21 -18
  103. package/src/tools/page/handlers/sync-helpers.ts +597 -0
  104. package/src/tools/page/handlers/sync-phase-handlers.ts +1170 -0
  105. package/src/tools/page/handlers/sync-processing.ts +192 -1542
  106. package/src/tools/page/handlers/timeout-utils.ts +23 -30
  107. package/src/tools/page/handlers/video-handler.ts +9 -9
  108. package/src/tools/page/handlers/webgl-animation-handler.ts +10 -13
  109. package/src/tools/part/compare.tool.ts +2 -20
  110. package/src/tools/part/inspect.tool.ts +11 -41
  111. package/src/tools/part/search.tool.ts +50 -28
  112. package/src/tools/preference/get.tool.ts +6 -19
  113. package/src/tools/preference/hear.tool.ts +6 -19
  114. package/src/tools/preference/reset.tool.ts +6 -19
  115. package/src/tools/project-get.ts +12 -14
  116. package/src/tools/project-list.ts +10 -22
  117. package/src/tools/quality/batch-evaluate.tool.ts +17 -23
  118. package/src/tools/quality/evaluate.tool.ts +42 -131
  119. package/src/tools/quality/get-job-status.tool.ts +2 -1
  120. package/src/tools/responsive/schemas.ts +2 -2
  121. package/src/tools/responsive/search.tool.ts +73 -46
  122. package/src/tools/search-unified.tool.ts +582 -0
  123. package/src/tools/style-get-palette.ts +18 -33
  124. package/src/tools/system-health.ts +24 -33
  125. package/src/utils/di-factory.ts +64 -0
  126. package/src/utils/prisma-wrapper-factory.ts +18 -17
  127. package/src/utils/sanitize-error.ts +132 -0
  128. package/src/utils/url-validator.ts +1 -3
  129. package/src/workers/batch-quality-worker.ts +5 -7
  130. package/src/workers/page-analyze-worker.ts +38 -24
  131. package/src/workers/phases/phase-0-ingest.ts +1 -1
  132. package/src/workers/phases/phase-1-layout.ts +10 -7
  133. package/src/workers/phases/phase-2-motion.ts +22 -23
  134. package/src/workers/phases/phase-4-narrative.ts +8 -12
  135. package/src/workers/phases/phase-5-embedding.ts +669 -457
  136. package/LICENSE +0 -661
  137. package/dist/api/health.d.ts +0 -122
  138. package/dist/api/health.d.ts.map +0 -1
  139. package/dist/api/health.js +0 -267
  140. package/dist/api/health.js.map +0 -1
  141. package/dist/config/index.d.ts +0 -9
  142. package/dist/config/index.d.ts.map +0 -1
  143. package/dist/config/index.js +0 -27
  144. package/dist/config/index.js.map +0 -1
  145. package/dist/config/redis.d.ts +0 -99
  146. package/dist/config/redis.d.ts.map +0 -1
  147. package/dist/config/redis.js +0 -234
  148. package/dist/config/redis.js.map +0 -1
  149. package/dist/index.d.ts +0 -18
  150. package/dist/index.d.ts.map +0 -1
  151. package/dist/index.js +0 -247
  152. package/dist/index.js.map +0 -1
  153. package/dist/lib/index.d.ts +0 -6
  154. package/dist/lib/index.d.ts.map +0 -1
  155. package/dist/lib/index.js +0 -14
  156. package/dist/lib/index.js.map +0 -1
  157. package/dist/lib/project-context.d.ts +0 -51
  158. package/dist/lib/project-context.d.ts.map +0 -1
  159. package/dist/lib/project-context.js +0 -109
  160. package/dist/lib/project-context.js.map +0 -1
  161. package/dist/middleware/args-type-coercion.d.ts +0 -59
  162. package/dist/middleware/args-type-coercion.d.ts.map +0 -1
  163. package/dist/middleware/args-type-coercion.js +0 -187
  164. package/dist/middleware/args-type-coercion.js.map +0 -1
  165. package/dist/middleware/auth.d.ts +0 -122
  166. package/dist/middleware/auth.d.ts.map +0 -1
  167. package/dist/middleware/auth.js +0 -430
  168. package/dist/middleware/auth.js.map +0 -1
  169. package/dist/middleware/index.d.ts +0 -10
  170. package/dist/middleware/index.d.ts.map +0 -1
  171. package/dist/middleware/index.js +0 -38
  172. package/dist/middleware/index.js.map +0 -1
  173. package/dist/middleware/light-response-controller.d.ts +0 -206
  174. package/dist/middleware/light-response-controller.d.ts.map +0 -1
  175. package/dist/middleware/light-response-controller.js +0 -555
  176. package/dist/middleware/light-response-controller.js.map +0 -1
  177. package/dist/middleware/response-size-warning.d.ts +0 -97
  178. package/dist/middleware/response-size-warning.d.ts.map +0 -1
  179. package/dist/middleware/response-size-warning.js +0 -137
  180. package/dist/middleware/response-size-warning.js.map +0 -1
  181. package/dist/queues/batch-quality-queue.d.ts +0 -225
  182. package/dist/queues/batch-quality-queue.d.ts.map +0 -1
  183. package/dist/queues/batch-quality-queue.js +0 -375
  184. package/dist/queues/batch-quality-queue.js.map +0 -1
  185. package/dist/queues/index.d.ts +0 -10
  186. package/dist/queues/index.d.ts.map +0 -1
  187. package/dist/queues/index.js +0 -28
  188. package/dist/queues/index.js.map +0 -1
  189. package/dist/queues/page-analyze-queue.d.ts +0 -287
  190. package/dist/queues/page-analyze-queue.d.ts.map +0 -1
  191. package/dist/queues/page-analyze-queue.js +0 -219
  192. package/dist/queues/page-analyze-queue.js.map +0 -1
  193. package/dist/router.d.ts +0 -144
  194. package/dist/router.d.ts.map +0 -1
  195. package/dist/router.js +0 -261
  196. package/dist/router.js.map +0 -1
  197. package/dist/schemas/creative/index.d.ts +0 -8
  198. package/dist/schemas/creative/index.d.ts.map +0 -1
  199. package/dist/schemas/creative/index.js +0 -23
  200. package/dist/schemas/creative/index.js.map +0 -1
  201. package/dist/schemas/creative/palette.schema.d.ts +0 -741
  202. package/dist/schemas/creative/palette.schema.d.ts.map +0 -1
  203. package/dist/schemas/creative/palette.schema.js +0 -154
  204. package/dist/schemas/creative/palette.schema.js.map +0 -1
  205. package/dist/schemas/mood-brandtone-filters.d.ts +0 -740
  206. package/dist/schemas/mood-brandtone-filters.d.ts.map +0 -1
  207. package/dist/schemas/mood-brandtone-filters.js +0 -265
  208. package/dist/schemas/mood-brandtone-filters.js.map +0 -1
  209. package/dist/scripts/backfill-embeddings.d.ts +0 -3
  210. package/dist/scripts/backfill-embeddings.d.ts.map +0 -1
  211. package/dist/scripts/backfill-embeddings.js +0 -385
  212. package/dist/scripts/backfill-embeddings.js.map +0 -1
  213. package/dist/scripts/check-embedding-coverage.d.ts +0 -3
  214. package/dist/scripts/check-embedding-coverage.d.ts.map +0 -1
  215. package/dist/scripts/check-embedding-coverage.js +0 -103
  216. package/dist/scripts/check-embedding-coverage.js.map +0 -1
  217. package/dist/scripts/start-workers.d.ts +0 -3
  218. package/dist/scripts/start-workers.d.ts.map +0 -1
  219. package/dist/scripts/start-workers.js +0 -447
  220. package/dist/scripts/start-workers.js.map +0 -1
  221. package/dist/server.d.ts +0 -49
  222. package/dist/server.d.ts.map +0 -1
  223. package/dist/server.js +0 -237
  224. package/dist/server.js.map +0 -1
  225. package/dist/services/background/background-design-db.service.d.ts +0 -65
  226. package/dist/services/background/background-design-db.service.d.ts.map +0 -1
  227. package/dist/services/background/background-design-db.service.js +0 -138
  228. package/dist/services/background/background-design-db.service.js.map +0 -1
  229. package/dist/services/background/background-design-detector.service.d.ts +0 -125
  230. package/dist/services/background/background-design-detector.service.d.ts.map +0 -1
  231. package/dist/services/background/background-design-detector.service.js +0 -1106
  232. package/dist/services/background/background-design-detector.service.js.map +0 -1
  233. package/dist/services/background/background-design-embedding.service.d.ts +0 -188
  234. package/dist/services/background/background-design-embedding.service.d.ts.map +0 -1
  235. package/dist/services/background/background-design-embedding.service.js +0 -386
  236. package/dist/services/background/background-design-embedding.service.js.map +0 -1
  237. package/dist/services/background-search.service.d.ts +0 -43
  238. package/dist/services/background-search.service.d.ts.map +0 -1
  239. package/dist/services/background-search.service.js +0 -235
  240. package/dist/services/background-search.service.js.map +0 -1
  241. package/dist/services/backup-service.d.ts +0 -135
  242. package/dist/services/backup-service.d.ts.map +0 -1
  243. package/dist/services/backup-service.js +0 -357
  244. package/dist/services/backup-service.js.map +0 -1
  245. package/dist/services/brief/brief-parser-service.d.ts +0 -47
  246. package/dist/services/brief/brief-parser-service.d.ts.map +0 -1
  247. package/dist/services/brief/brief-parser-service.js +0 -380
  248. package/dist/services/brief/brief-parser-service.js.map +0 -1
  249. package/dist/services/brief/schemas/brief-parser-schemas.d.ts +0 -278
  250. package/dist/services/brief/schemas/brief-parser-schemas.d.ts.map +0 -1
  251. package/dist/services/brief/schemas/brief-parser-schemas.js +0 -116
  252. package/dist/services/brief/schemas/brief-parser-schemas.js.map +0 -1
  253. package/dist/services/browser-process-manager.d.ts +0 -116
  254. package/dist/services/browser-process-manager.d.ts.map +0 -1
  255. package/dist/services/browser-process-manager.js +0 -259
  256. package/dist/services/browser-process-manager.js.map +0 -1
  257. package/dist/services/cache.d.ts +0 -119
  258. package/dist/services/cache.d.ts.map +0 -1
  259. package/dist/services/cache.js +0 -233
  260. package/dist/services/cache.js.map +0 -1
  261. package/dist/services/checksum-service.d.ts +0 -122
  262. package/dist/services/checksum-service.d.ts.map +0 -1
  263. package/dist/services/checksum-service.js +0 -270
  264. package/dist/services/checksum-service.js.map +0 -1
  265. package/dist/services/css-analysis-cache.service.d.ts +0 -248
  266. package/dist/services/css-analysis-cache.service.d.ts.map +0 -1
  267. package/dist/services/css-analysis-cache.service.js +0 -398
  268. package/dist/services/css-analysis-cache.service.js.map +0 -1
  269. package/dist/services/database-dumper.service.d.ts +0 -181
  270. package/dist/services/database-dumper.service.d.ts.map +0 -1
  271. package/dist/services/database-dumper.service.js +0 -550
  272. package/dist/services/database-dumper.service.js.map +0 -1
  273. package/dist/services/embedding-backfill.service.d.ts +0 -53
  274. package/dist/services/embedding-backfill.service.d.ts.map +0 -1
  275. package/dist/services/embedding-backfill.service.js +0 -672
  276. package/dist/services/embedding-backfill.service.js.map +0 -1
  277. package/dist/services/embedding-validation.service.d.ts +0 -64
  278. package/dist/services/embedding-validation.service.d.ts.map +0 -1
  279. package/dist/services/embedding-validation.service.js +0 -141
  280. package/dist/services/embedding-validation.service.js.map +0 -1
  281. package/dist/services/encryption-service.d.ts +0 -171
  282. package/dist/services/encryption-service.d.ts.map +0 -1
  283. package/dist/services/encryption-service.js +0 -343
  284. package/dist/services/encryption-service.js.map +0 -1
  285. package/dist/services/external-css-fetcher.d.ts +0 -185
  286. package/dist/services/external-css-fetcher.d.ts.map +0 -1
  287. package/dist/services/external-css-fetcher.js +0 -667
  288. package/dist/services/external-css-fetcher.js.map +0 -1
  289. package/dist/services/gpu-resource-manager.d.ts +0 -180
  290. package/dist/services/gpu-resource-manager.d.ts.map +0 -1
  291. package/dist/services/gpu-resource-manager.js +0 -485
  292. package/dist/services/gpu-resource-manager.js.map +0 -1
  293. package/dist/services/index.d.ts +0 -15
  294. package/dist/services/index.d.ts.map +0 -1
  295. package/dist/services/index.js +0 -73
  296. package/dist/services/index.js.map +0 -1
  297. package/dist/services/layout/component-splitter.d.ts +0 -63
  298. package/dist/services/layout/component-splitter.d.ts.map +0 -1
  299. package/dist/services/layout/component-splitter.js +0 -508
  300. package/dist/services/layout/component-splitter.js.map +0 -1
  301. package/dist/services/layout/html-to-jsx-converter.d.ts +0 -40
  302. package/dist/services/layout/html-to-jsx-converter.d.ts.map +0 -1
  303. package/dist/services/layout/html-to-jsx-converter.js +0 -484
  304. package/dist/services/layout/html-to-jsx-converter.js.map +0 -1
  305. package/dist/services/layout/semantic-html-converter.d.ts +0 -67
  306. package/dist/services/layout/semantic-html-converter.d.ts.map +0 -1
  307. package/dist/services/layout/semantic-html-converter.js +0 -247
  308. package/dist/services/layout/semantic-html-converter.js.map +0 -1
  309. package/dist/services/layout/style-to-tailwind-mapper.d.ts +0 -82
  310. package/dist/services/layout/style-to-tailwind-mapper.d.ts.map +0 -1
  311. package/dist/services/layout/style-to-tailwind-mapper.js +0 -1334
  312. package/dist/services/layout/style-to-tailwind-mapper.js.map +0 -1
  313. package/dist/services/layout-embedding.service.d.ts +0 -415
  314. package/dist/services/layout-embedding.service.d.ts.map +0 -1
  315. package/dist/services/layout-embedding.service.js +0 -1147
  316. package/dist/services/layout-embedding.service.js.map +0 -1
  317. package/dist/services/layout-generate-code-service-export.d.ts +0 -38
  318. package/dist/services/layout-generate-code-service-export.d.ts.map +0 -1
  319. package/dist/services/layout-generate-code-service-export.js +0 -77
  320. package/dist/services/layout-generate-code-service-export.js.map +0 -1
  321. package/dist/services/layout-search-service-export.d.ts +0 -31
  322. package/dist/services/layout-search-service-export.d.ts.map +0 -1
  323. package/dist/services/layout-search-service-export.js +0 -43
  324. package/dist/services/layout-search-service-export.js.map +0 -1
  325. package/dist/services/layout-search.service.d.ts +0 -111
  326. package/dist/services/layout-search.service.d.ts.map +0 -1
  327. package/dist/services/layout-search.service.js +0 -716
  328. package/dist/services/layout-search.service.js.map +0 -1
  329. package/dist/services/layout-to-code.service.d.ts +0 -85
  330. package/dist/services/layout-to-code.service.d.ts.map +0 -1
  331. package/dist/services/layout-to-code.service.js +0 -1368
  332. package/dist/services/layout-to-code.service.js.map +0 -1
  333. package/dist/services/metrics-collector.d.ts +0 -189
  334. package/dist/services/metrics-collector.d.ts.map +0 -1
  335. package/dist/services/metrics-collector.js +0 -344
  336. package/dist/services/metrics-collector.js.map +0 -1
  337. package/dist/services/ml/mood-brandtone-embedding.service.d.ts +0 -253
  338. package/dist/services/ml/mood-brandtone-embedding.service.d.ts.map +0 -1
  339. package/dist/services/ml/mood-brandtone-embedding.service.js +0 -678
  340. package/dist/services/ml/mood-brandtone-embedding.service.js.map +0 -1
  341. package/dist/services/motion/analyzers/color-change.analyzer.d.ts +0 -274
  342. package/dist/services/motion/analyzers/color-change.analyzer.d.ts.map +0 -1
  343. package/dist/services/motion/analyzers/color-change.analyzer.js +0 -644
  344. package/dist/services/motion/analyzers/color-change.analyzer.js.map +0 -1
  345. package/dist/services/motion/analyzers/frame-diff.analyzer.d.ts +0 -109
  346. package/dist/services/motion/analyzers/frame-diff.analyzer.d.ts.map +0 -1
  347. package/dist/services/motion/analyzers/frame-diff.analyzer.js +0 -315
  348. package/dist/services/motion/analyzers/frame-diff.analyzer.js.map +0 -1
  349. package/dist/services/motion/analyzers/layout-shift.detector.d.ts +0 -132
  350. package/dist/services/motion/analyzers/layout-shift.detector.d.ts.map +0 -1
  351. package/dist/services/motion/analyzers/layout-shift.detector.js +0 -179
  352. package/dist/services/motion/analyzers/layout-shift.detector.js.map +0 -1
  353. package/dist/services/motion/analyzers/motion-vector.estimator.d.ts +0 -88
  354. package/dist/services/motion/analyzers/motion-vector.estimator.d.ts.map +0 -1
  355. package/dist/services/motion/analyzers/motion-vector.estimator.js +0 -494
  356. package/dist/services/motion/analyzers/motion-vector.estimator.js.map +0 -1
  357. package/dist/services/motion/analyzers/webgl-motion-analyzer.d.ts +0 -167
  358. package/dist/services/motion/analyzers/webgl-motion-analyzer.d.ts.map +0 -1
  359. package/dist/services/motion/analyzers/webgl-motion-analyzer.js +0 -500
  360. package/dist/services/motion/analyzers/webgl-motion-analyzer.js.map +0 -1
  361. package/dist/services/motion/animation-metrics-collector.service.d.ts +0 -215
  362. package/dist/services/motion/animation-metrics-collector.service.d.ts.map +0 -1
  363. package/dist/services/motion/animation-metrics-collector.service.js +0 -502
  364. package/dist/services/motion/animation-metrics-collector.service.js.map +0 -1
  365. package/dist/services/motion/cls-calculator.service.d.ts +0 -186
  366. package/dist/services/motion/cls-calculator.service.d.ts.map +0 -1
  367. package/dist/services/motion/cls-calculator.service.js +0 -329
  368. package/dist/services/motion/cls-calculator.service.js.map +0 -1
  369. package/dist/services/motion/existing-animation-detector.service.d.ts +0 -208
  370. package/dist/services/motion/existing-animation-detector.service.d.ts.map +0 -1
  371. package/dist/services/motion/existing-animation-detector.service.js +0 -591
  372. package/dist/services/motion/existing-animation-detector.service.js.map +0 -1
  373. package/dist/services/motion/fade-detector.service.d.ts +0 -114
  374. package/dist/services/motion/fade-detector.service.d.ts.map +0 -1
  375. package/dist/services/motion/fade-detector.service.js +0 -249
  376. package/dist/services/motion/fade-detector.service.js.map +0 -1
  377. package/dist/services/motion/frame-analysis-save.helper.d.ts +0 -41
  378. package/dist/services/motion/frame-analysis-save.helper.d.ts.map +0 -1
  379. package/dist/services/motion/frame-analysis-save.helper.js +0 -235
  380. package/dist/services/motion/frame-analysis-save.helper.js.map +0 -1
  381. package/dist/services/motion/frame-capture.service.d.ts +0 -170
  382. package/dist/services/motion/frame-capture.service.d.ts.map +0 -1
  383. package/dist/services/motion/frame-capture.service.js +0 -476
  384. package/dist/services/motion/frame-capture.service.js.map +0 -1
  385. package/dist/services/motion/frame-embedding.service.d.ts +0 -315
  386. package/dist/services/motion/frame-embedding.service.d.ts.map +0 -1
  387. package/dist/services/motion/frame-embedding.service.js +0 -1023
  388. package/dist/services/motion/frame-embedding.service.js.map +0 -1
  389. package/dist/services/motion/frame-image-analysis.service.d.ts +0 -126
  390. package/dist/services/motion/frame-image-analysis.service.d.ts.map +0 -1
  391. package/dist/services/motion/frame-image-analysis.service.js +0 -982
  392. package/dist/services/motion/frame-image-analysis.service.js.map +0 -1
  393. package/dist/services/motion/frame-image-analyzer.adapter.d.ts +0 -168
  394. package/dist/services/motion/frame-image-analyzer.adapter.d.ts.map +0 -1
  395. package/dist/services/motion/frame-image-analyzer.adapter.js +0 -520
  396. package/dist/services/motion/frame-image-analyzer.adapter.js.map +0 -1
  397. package/dist/services/motion/frame-worker-pool.service.d.ts +0 -133
  398. package/dist/services/motion/frame-worker-pool.service.d.ts.map +0 -1
  399. package/dist/services/motion/frame-worker-pool.service.js +0 -410
  400. package/dist/services/motion/frame-worker-pool.service.js.map +0 -1
  401. package/dist/services/motion/infrastructure/frame-loader.d.ts +0 -77
  402. package/dist/services/motion/infrastructure/frame-loader.d.ts.map +0 -1
  403. package/dist/services/motion/infrastructure/frame-loader.js +0 -430
  404. package/dist/services/motion/infrastructure/frame-loader.js.map +0 -1
  405. package/dist/services/motion/js-animation-detector.d.ts +0 -382
  406. package/dist/services/motion/js-animation-detector.d.ts.map +0 -1
  407. package/dist/services/motion/js-animation-detector.js +0 -911
  408. package/dist/services/motion/js-animation-detector.js.map +0 -1
  409. package/dist/services/motion/js-animation-embedding.service.d.ts +0 -114
  410. package/dist/services/motion/js-animation-embedding.service.d.ts.map +0 -1
  411. package/dist/services/motion/js-animation-embedding.service.js +0 -289
  412. package/dist/services/motion/js-animation-embedding.service.js.map +0 -1
  413. package/dist/services/motion/js-animation-search.service.d.ts +0 -138
  414. package/dist/services/motion/js-animation-search.service.d.ts.map +0 -1
  415. package/dist/services/motion/js-animation-search.service.js +0 -503
  416. package/dist/services/motion/js-animation-search.service.js.map +0 -1
  417. package/dist/services/motion/motion-db.service.d.ts +0 -231
  418. package/dist/services/motion/motion-db.service.d.ts.map +0 -1
  419. package/dist/services/motion/motion-db.service.js +0 -676
  420. package/dist/services/motion/motion-db.service.js.map +0 -1
  421. package/dist/services/motion/three-js-scene-extractor.d.ts +0 -274
  422. package/dist/services/motion/three-js-scene-extractor.d.ts.map +0 -1
  423. package/dist/services/motion/three-js-scene-extractor.js +0 -1126
  424. package/dist/services/motion/three-js-scene-extractor.js.map +0 -1
  425. package/dist/services/motion/types.d.ts +0 -592
  426. package/dist/services/motion/types.d.ts.map +0 -1
  427. package/dist/services/motion/types.js +0 -121
  428. package/dist/services/motion/types.js.map +0 -1
  429. package/dist/services/motion/visual-category-classifier.d.ts +0 -273
  430. package/dist/services/motion/visual-category-classifier.d.ts.map +0 -1
  431. package/dist/services/motion/visual-category-classifier.js +0 -1060
  432. package/dist/services/motion/visual-category-classifier.js.map +0 -1
  433. package/dist/services/motion/webgl-animation-categorizer.d.ts +0 -151
  434. package/dist/services/motion/webgl-animation-categorizer.d.ts.map +0 -1
  435. package/dist/services/motion/webgl-animation-categorizer.js +0 -568
  436. package/dist/services/motion/webgl-animation-categorizer.js.map +0 -1
  437. package/dist/services/motion/webgl-animation-detector.service.d.ts +0 -204
  438. package/dist/services/motion/webgl-animation-detector.service.d.ts.map +0 -1
  439. package/dist/services/motion/webgl-animation-detector.service.js +0 -518
  440. package/dist/services/motion/webgl-animation-detector.service.js.map +0 -1
  441. package/dist/services/motion/webgl-animation-embedding.service.d.ts +0 -238
  442. package/dist/services/motion/webgl-animation-embedding.service.d.ts.map +0 -1
  443. package/dist/services/motion/webgl-animation-embedding.service.js +0 -368
  444. package/dist/services/motion/webgl-animation-embedding.service.js.map +0 -1
  445. package/dist/services/motion-detect-service-export.d.ts +0 -130
  446. package/dist/services/motion-detect-service-export.d.ts.map +0 -1
  447. package/dist/services/motion-detect-service-export.js +0 -160
  448. package/dist/services/motion-detect-service-export.js.map +0 -1
  449. package/dist/services/motion-persistence.service.d.ts +0 -144
  450. package/dist/services/motion-persistence.service.d.ts.map +0 -1
  451. package/dist/services/motion-persistence.service.js +0 -398
  452. package/dist/services/motion-persistence.service.js.map +0 -1
  453. package/dist/services/motion-search-service.d.ts +0 -10
  454. package/dist/services/motion-search-service.d.ts.map +0 -1
  455. package/dist/services/motion-search-service.js +0 -22
  456. package/dist/services/motion-search-service.js.map +0 -1
  457. package/dist/services/motion-search.service.d.ts +0 -210
  458. package/dist/services/motion-search.service.d.ts.map +0 -1
  459. package/dist/services/motion-search.service.js +0 -900
  460. package/dist/services/motion-search.service.js.map +0 -1
  461. package/dist/services/narrative/analyzers/layout-structure.analyzer.d.ts +0 -75
  462. package/dist/services/narrative/analyzers/layout-structure.analyzer.d.ts.map +0 -1
  463. package/dist/services/narrative/analyzers/layout-structure.analyzer.js +0 -489
  464. package/dist/services/narrative/analyzers/layout-structure.analyzer.js.map +0 -1
  465. package/dist/services/narrative/analyzers/worldview.analyzer.d.ts +0 -92
  466. package/dist/services/narrative/analyzers/worldview.analyzer.d.ts.map +0 -1
  467. package/dist/services/narrative/analyzers/worldview.analyzer.js +0 -477
  468. package/dist/services/narrative/analyzers/worldview.analyzer.js.map +0 -1
  469. package/dist/services/narrative/generators/confidence-calculator.d.ts +0 -65
  470. package/dist/services/narrative/generators/confidence-calculator.d.ts.map +0 -1
  471. package/dist/services/narrative/generators/confidence-calculator.js +0 -316
  472. package/dist/services/narrative/generators/confidence-calculator.js.map +0 -1
  473. package/dist/services/narrative/generators/text-representation.generator.d.ts +0 -67
  474. package/dist/services/narrative/generators/text-representation.generator.d.ts.map +0 -1
  475. package/dist/services/narrative/generators/text-representation.generator.js +0 -312
  476. package/dist/services/narrative/generators/text-representation.generator.js.map +0 -1
  477. package/dist/services/narrative/index.d.ts +0 -16
  478. package/dist/services/narrative/index.d.ts.map +0 -1
  479. package/dist/services/narrative/index.js +0 -63
  480. package/dist/services/narrative/index.js.map +0 -1
  481. package/dist/services/narrative/narrative-analysis.service.d.ts +0 -120
  482. package/dist/services/narrative/narrative-analysis.service.d.ts.map +0 -1
  483. package/dist/services/narrative/narrative-analysis.service.js +0 -479
  484. package/dist/services/narrative/narrative-analysis.service.js.map +0 -1
  485. package/dist/services/narrative/narrative-search.service.d.ts +0 -126
  486. package/dist/services/narrative/narrative-search.service.d.ts.map +0 -1
  487. package/dist/services/narrative/narrative-search.service.js +0 -516
  488. package/dist/services/narrative/narrative-search.service.js.map +0 -1
  489. package/dist/services/narrative/types/narrative.types.d.ts +0 -372
  490. package/dist/services/narrative/types/narrative.types.d.ts.map +0 -1
  491. package/dist/services/narrative/types/narrative.types.js +0 -5
  492. package/dist/services/narrative/types/narrative.types.js.map +0 -1
  493. package/dist/services/orphaned-job-utils.d.ts +0 -62
  494. package/dist/services/orphaned-job-utils.d.ts.map +0 -1
  495. package/dist/services/orphaned-job-utils.js +0 -130
  496. package/dist/services/orphaned-job-utils.js.map +0 -1
  497. package/dist/services/page/css-animation-parser.service.d.ts +0 -173
  498. package/dist/services/page/css-animation-parser.service.d.ts.map +0 -1
  499. package/dist/services/page/css-animation-parser.service.js +0 -537
  500. package/dist/services/page/css-animation-parser.service.js.map +0 -1
  501. package/dist/services/page/fallback-analyzer.service.d.ts +0 -140
  502. package/dist/services/page/fallback-analyzer.service.d.ts.map +0 -1
  503. package/dist/services/page/fallback-analyzer.service.js +0 -289
  504. package/dist/services/page/fallback-analyzer.service.js.map +0 -1
  505. package/dist/services/page/frame-analyzer.service.d.ts +0 -208
  506. package/dist/services/page/frame-analyzer.service.d.ts.map +0 -1
  507. package/dist/services/page/frame-analyzer.service.js +0 -628
  508. package/dist/services/page/frame-analyzer.service.js.map +0 -1
  509. package/dist/services/page/layout-analyzer.service.d.ts +0 -323
  510. package/dist/services/page/layout-analyzer.service.d.ts.map +0 -1
  511. package/dist/services/page/layout-analyzer.service.js +0 -2001
  512. package/dist/services/page/layout-analyzer.service.js.map +0 -1
  513. package/dist/services/page/motion-category-classifier.service.d.ts +0 -72
  514. package/dist/services/page/motion-category-classifier.service.d.ts.map +0 -1
  515. package/dist/services/page/motion-category-classifier.service.js +0 -340
  516. package/dist/services/page/motion-category-classifier.service.js.map +0 -1
  517. package/dist/services/page/motion-detector.service.d.ts +0 -76
  518. package/dist/services/page/motion-detector.service.d.ts.map +0 -1
  519. package/dist/services/page/motion-detector.service.js +0 -255
  520. package/dist/services/page/motion-detector.service.js.map +0 -1
  521. package/dist/services/page/motion-performance-analyzer.service.d.ts +0 -114
  522. package/dist/services/page/motion-performance-analyzer.service.d.ts.map +0 -1
  523. package/dist/services/page/motion-performance-analyzer.service.js +0 -315
  524. package/dist/services/page/motion-performance-analyzer.service.js.map +0 -1
  525. package/dist/services/page/playwright-crawler.service.d.ts +0 -106
  526. package/dist/services/page/playwright-crawler.service.d.ts.map +0 -1
  527. package/dist/services/page/playwright-crawler.service.js +0 -373
  528. package/dist/services/page/playwright-crawler.service.js.map +0 -1
  529. package/dist/services/page/quality-evaluator.service.d.ts +0 -107
  530. package/dist/services/page/quality-evaluator.service.d.ts.map +0 -1
  531. package/dist/services/page/quality-evaluator.service.js +0 -1138
  532. package/dist/services/page/quality-evaluator.service.js.map +0 -1
  533. package/dist/services/page/runtime-animation-detector.service.d.ts +0 -154
  534. package/dist/services/page/runtime-animation-detector.service.d.ts.map +0 -1
  535. package/dist/services/page/runtime-animation-detector.service.js +0 -480
  536. package/dist/services/page/runtime-animation-detector.service.js.map +0 -1
  537. package/dist/services/page/section-postprocessor.service.d.ts +0 -55
  538. package/dist/services/page/section-postprocessor.service.d.ts.map +0 -1
  539. package/dist/services/page/section-postprocessor.service.js +0 -708
  540. package/dist/services/page/section-postprocessor.service.js.map +0 -1
  541. package/dist/services/page/video-recorder.service.d.ts +0 -110
  542. package/dist/services/page/video-recorder.service.d.ts.map +0 -1
  543. package/dist/services/page/video-recorder.service.js +0 -441
  544. package/dist/services/page/video-recorder.service.js.map +0 -1
  545. package/dist/services/page/webgl-detector.service.d.ts +0 -113
  546. package/dist/services/page/webgl-detector.service.d.ts.map +0 -1
  547. package/dist/services/page/webgl-detector.service.js +0 -280
  548. package/dist/services/page/webgl-detector.service.js.map +0 -1
  549. package/dist/services/page-analyze-service.d.ts +0 -30
  550. package/dist/services/page-analyze-service.d.ts.map +0 -1
  551. package/dist/services/page-analyze-service.js +0 -58
  552. package/dist/services/page-analyze-service.js.map +0 -1
  553. package/dist/services/page-ingest-adapter.d.ts +0 -479
  554. package/dist/services/page-ingest-adapter.d.ts.map +0 -1
  555. package/dist/services/page-ingest-adapter.js +0 -1726
  556. package/dist/services/page-ingest-adapter.js.map +0 -1
  557. package/dist/services/palette-service-export.d.ts +0 -26
  558. package/dist/services/palette-service-export.d.ts.map +0 -1
  559. package/dist/services/palette-service-export.js +0 -22
  560. package/dist/services/palette-service-export.js.map +0 -1
  561. package/dist/services/part/index.d.ts +0 -22
  562. package/dist/services/part/index.d.ts.map +0 -1
  563. package/dist/services/part/index.js +0 -72
  564. package/dist/services/part/index.js.map +0 -1
  565. package/dist/services/part/part-backfill.service.d.ts +0 -66
  566. package/dist/services/part/part-backfill.service.d.ts.map +0 -1
  567. package/dist/services/part/part-backfill.service.js +0 -195
  568. package/dist/services/part/part-backfill.service.js.map +0 -1
  569. package/dist/services/part/part-bbox-playwright.service.d.ts +0 -85
  570. package/dist/services/part/part-bbox-playwright.service.d.ts.map +0 -1
  571. package/dist/services/part/part-bbox-playwright.service.js +0 -362
  572. package/dist/services/part/part-bbox-playwright.service.js.map +0 -1
  573. package/dist/services/part/part-db.service.d.ts +0 -41
  574. package/dist/services/part/part-db.service.d.ts.map +0 -1
  575. package/dist/services/part/part-db.service.js +0 -82
  576. package/dist/services/part/part-db.service.js.map +0 -1
  577. package/dist/services/part/part-embedding-db.service.d.ts +0 -52
  578. package/dist/services/part/part-embedding-db.service.d.ts.map +0 -1
  579. package/dist/services/part/part-embedding-db.service.js +0 -122
  580. package/dist/services/part/part-embedding-db.service.js.map +0 -1
  581. package/dist/services/part/part-embedding.service.d.ts +0 -140
  582. package/dist/services/part/part-embedding.service.d.ts.map +0 -1
  583. package/dist/services/part/part-embedding.service.js +0 -276
  584. package/dist/services/part/part-embedding.service.js.map +0 -1
  585. package/dist/services/part/part-extraction.service.d.ts +0 -75
  586. package/dist/services/part/part-extraction.service.d.ts.map +0 -1
  587. package/dist/services/part/part-extraction.service.js +0 -519
  588. package/dist/services/part/part-extraction.service.js.map +0 -1
  589. package/dist/services/part/part-search.service.d.ts +0 -180
  590. package/dist/services/part/part-search.service.d.ts.map +0 -1
  591. package/dist/services/part/part-search.service.js +0 -565
  592. package/dist/services/part/part-search.service.js.map +0 -1
  593. package/dist/services/part/schemas.d.ts +0 -232
  594. package/dist/services/part/schemas.d.ts.map +0 -1
  595. package/dist/services/part/schemas.js +0 -167
  596. package/dist/services/part/schemas.js.map +0 -1
  597. package/dist/services/part/section-screenshot-fallback.service.d.ts +0 -101
  598. package/dist/services/part/section-screenshot-fallback.service.d.ts.map +0 -1
  599. package/dist/services/part/section-screenshot-fallback.service.js +0 -489
  600. package/dist/services/part/section-screenshot-fallback.service.js.map +0 -1
  601. package/dist/services/part/types.d.ts +0 -189
  602. package/dist/services/part/types.d.ts.map +0 -1
  603. package/dist/services/part/types.js +0 -139
  604. package/dist/services/part/types.js.map +0 -1
  605. package/dist/services/persistent-cache.d.ts +0 -209
  606. package/dist/services/persistent-cache.d.ts.map +0 -1
  607. package/dist/services/persistent-cache.js +0 -633
  608. package/dist/services/persistent-cache.js.map +0 -1
  609. package/dist/services/preference-profile.service.d.ts +0 -143
  610. package/dist/services/preference-profile.service.d.ts.map +0 -1
  611. package/dist/services/preference-profile.service.js +0 -604
  612. package/dist/services/preference-profile.service.js.map +0 -1
  613. package/dist/services/preference-rerank.helper.d.ts +0 -128
  614. package/dist/services/preference-rerank.helper.d.ts.map +0 -1
  615. package/dist/services/preference-rerank.helper.js +0 -397
  616. package/dist/services/preference-rerank.helper.js.map +0 -1
  617. package/dist/services/production-guard.d.ts +0 -213
  618. package/dist/services/production-guard.d.ts.map +0 -1
  619. package/dist/services/production-guard.js +0 -357
  620. package/dist/services/production-guard.js.map +0 -1
  621. package/dist/services/project-context-analyzer.d.ts +0 -194
  622. package/dist/services/project-context-analyzer.d.ts.map +0 -1
  623. package/dist/services/project-context-analyzer.js +0 -747
  624. package/dist/services/project-context-analyzer.js.map +0 -1
  625. package/dist/services/quality/axe-accessibility.service.d.ts +0 -87
  626. package/dist/services/quality/axe-accessibility.service.d.ts.map +0 -1
  627. package/dist/services/quality/axe-accessibility.service.js +0 -188
  628. package/dist/services/quality/axe-accessibility.service.js.map +0 -1
  629. package/dist/services/quality/axe-core-shared.d.ts +0 -108
  630. package/dist/services/quality/axe-core-shared.d.ts.map +0 -1
  631. package/dist/services/quality/axe-core-shared.js +0 -136
  632. package/dist/services/quality/axe-core-shared.js.map +0 -1
  633. package/dist/services/quality/benchmark.service.d.ts +0 -178
  634. package/dist/services/quality/benchmark.service.d.ts.map +0 -1
  635. package/dist/services/quality/benchmark.service.js +0 -394
  636. package/dist/services/quality/benchmark.service.js.map +0 -1
  637. package/dist/services/quality/content-gap-detector.service.d.ts +0 -133
  638. package/dist/services/quality/content-gap-detector.service.d.ts.map +0 -1
  639. package/dist/services/quality/content-gap-detector.service.js +0 -364
  640. package/dist/services/quality/content-gap-detector.service.js.map +0 -1
  641. package/dist/services/quality/index.d.ts +0 -12
  642. package/dist/services/quality/index.d.ts.map +0 -1
  643. package/dist/services/quality/index.js +0 -12
  644. package/dist/services/quality/index.js.map +0 -1
  645. package/dist/services/quality/pattern-matcher.service.d.ts +0 -195
  646. package/dist/services/quality/pattern-matcher.service.d.ts.map +0 -1
  647. package/dist/services/quality/pattern-matcher.service.js +0 -630
  648. package/dist/services/quality/pattern-matcher.service.js.map +0 -1
  649. package/dist/services/quality/playwright-axe.service.d.ts +0 -84
  650. package/dist/services/quality/playwright-axe.service.d.ts.map +0 -1
  651. package/dist/services/quality/playwright-axe.service.js +0 -267
  652. package/dist/services/quality/playwright-axe.service.js.map +0 -1
  653. package/dist/services/quality/quality-evaluate.service.interface.d.ts +0 -216
  654. package/dist/services/quality/quality-evaluate.service.interface.d.ts.map +0 -1
  655. package/dist/services/quality/quality-evaluate.service.interface.js +0 -5
  656. package/dist/services/quality/quality-evaluate.service.interface.js.map +0 -1
  657. package/dist/services/quality/visual-design-analyzer.service.d.ts +0 -72
  658. package/dist/services/quality/visual-design-analyzer.service.d.ts.map +0 -1
  659. package/dist/services/quality/visual-design-analyzer.service.js +0 -762
  660. package/dist/services/quality/visual-design-analyzer.service.js.map +0 -1
  661. package/dist/services/quality-evaluate-service-export.d.ts +0 -122
  662. package/dist/services/quality-evaluate-service-export.d.ts.map +0 -1
  663. package/dist/services/quality-evaluate-service-export.js +0 -138
  664. package/dist/services/quality-evaluate-service-export.js.map +0 -1
  665. package/dist/services/quality-search.service.d.ts +0 -20
  666. package/dist/services/quality-search.service.d.ts.map +0 -1
  667. package/dist/services/quality-search.service.js +0 -260
  668. package/dist/services/quality-search.service.js.map +0 -1
  669. package/dist/services/query-analyzer.d.ts +0 -107
  670. package/dist/services/query-analyzer.d.ts.map +0 -1
  671. package/dist/services/query-analyzer.js +0 -222
  672. package/dist/services/query-analyzer.js.map +0 -1
  673. package/dist/services/query-context-analyzer.d.ts +0 -85
  674. package/dist/services/query-context-analyzer.d.ts.map +0 -1
  675. package/dist/services/query-context-analyzer.js +0 -728
  676. package/dist/services/query-context-analyzer.js.map +0 -1
  677. package/dist/services/queue-cleanup.service.d.ts +0 -102
  678. package/dist/services/queue-cleanup.service.d.ts.map +0 -1
  679. package/dist/services/queue-cleanup.service.js +0 -259
  680. package/dist/services/queue-cleanup.service.js.map +0 -1
  681. package/dist/services/responsive/difference-detector.service.d.ts +0 -77
  682. package/dist/services/responsive/difference-detector.service.d.ts.map +0 -1
  683. package/dist/services/responsive/difference-detector.service.js +0 -525
  684. package/dist/services/responsive/difference-detector.service.js.map +0 -1
  685. package/dist/services/responsive/index.d.ts +0 -16
  686. package/dist/services/responsive/index.d.ts.map +0 -1
  687. package/dist/services/responsive/index.js +0 -60
  688. package/dist/services/responsive/index.js.map +0 -1
  689. package/dist/services/responsive/multi-viewport-capture.service.d.ts +0 -103
  690. package/dist/services/responsive/multi-viewport-capture.service.d.ts.map +0 -1
  691. package/dist/services/responsive/multi-viewport-capture.service.js +0 -841
  692. package/dist/services/responsive/multi-viewport-capture.service.js.map +0 -1
  693. package/dist/services/responsive/responsive-analysis-embedding.service.d.ts +0 -114
  694. package/dist/services/responsive/responsive-analysis-embedding.service.d.ts.map +0 -1
  695. package/dist/services/responsive/responsive-analysis-embedding.service.js +0 -232
  696. package/dist/services/responsive/responsive-analysis-embedding.service.js.map +0 -1
  697. package/dist/services/responsive/responsive-analysis.service.d.ts +0 -37
  698. package/dist/services/responsive/responsive-analysis.service.d.ts.map +0 -1
  699. package/dist/services/responsive/responsive-analysis.service.js +0 -262
  700. package/dist/services/responsive/responsive-analysis.service.js.map +0 -1
  701. package/dist/services/responsive/responsive-persistence.service.d.ts +0 -45
  702. package/dist/services/responsive/responsive-persistence.service.d.ts.map +0 -1
  703. package/dist/services/responsive/responsive-persistence.service.js +0 -102
  704. package/dist/services/responsive/responsive-persistence.service.js.map +0 -1
  705. package/dist/services/responsive/responsive-quality-evaluator.service.d.ts +0 -80
  706. package/dist/services/responsive/responsive-quality-evaluator.service.d.ts.map +0 -1
  707. package/dist/services/responsive/responsive-quality-evaluator.service.js +0 -448
  708. package/dist/services/responsive/responsive-quality-evaluator.service.js.map +0 -1
  709. package/dist/services/responsive/shared-browser-manager.d.ts +0 -65
  710. package/dist/services/responsive/shared-browser-manager.d.ts.map +0 -1
  711. package/dist/services/responsive/shared-browser-manager.js +0 -112
  712. package/dist/services/responsive/shared-browser-manager.js.map +0 -1
  713. package/dist/services/responsive/types.d.ts +0 -367
  714. package/dist/services/responsive/types.d.ts.map +0 -1
  715. package/dist/services/responsive/types.js +0 -5
  716. package/dist/services/responsive/types.js.map +0 -1
  717. package/dist/services/responsive/viewport-diff.service.d.ts +0 -49
  718. package/dist/services/responsive/viewport-diff.service.d.ts.map +0 -1
  719. package/dist/services/responsive/viewport-diff.service.js +0 -178
  720. package/dist/services/responsive/viewport-diff.service.js.map +0 -1
  721. package/dist/services/responsive-search.service.d.ts +0 -52
  722. package/dist/services/responsive-search.service.d.ts.map +0 -1
  723. package/dist/services/responsive-search.service.js +0 -136
  724. package/dist/services/responsive-search.service.js.map +0 -1
  725. package/dist/services/search/mood-brandtone-search.service.d.ts +0 -99
  726. package/dist/services/search/mood-brandtone-search.service.d.ts.map +0 -1
  727. package/dist/services/search/mood-brandtone-search.service.js +0 -310
  728. package/dist/services/search/mood-brandtone-search.service.js.map +0 -1
  729. package/dist/services/search-performance.service.d.ts +0 -118
  730. package/dist/services/search-performance.service.d.ts.map +0 -1
  731. package/dist/services/search-performance.service.js +0 -181
  732. package/dist/services/search-performance.service.js.map +0 -1
  733. package/dist/services/section-screenshot.service.d.ts +0 -163
  734. package/dist/services/section-screenshot.service.d.ts.map +0 -1
  735. package/dist/services/section-screenshot.service.js +0 -363
  736. package/dist/services/section-screenshot.service.js.map +0 -1
  737. package/dist/services/service-client.d.ts +0 -181
  738. package/dist/services/service-client.d.ts.map +0 -1
  739. package/dist/services/service-client.js +0 -450
  740. package/dist/services/service-client.js.map +0 -1
  741. package/dist/services/service-initializer.d.ts +0 -174
  742. package/dist/services/service-initializer.d.ts.map +0 -1
  743. package/dist/services/service-initializer.js +0 -942
  744. package/dist/services/service-initializer.js.map +0 -1
  745. package/dist/services/storage/index.d.ts +0 -7
  746. package/dist/services/storage/index.d.ts.map +0 -1
  747. package/dist/services/storage/index.js +0 -14
  748. package/dist/services/storage/index.js.map +0 -1
  749. package/dist/services/storage/local-storage.provider.d.ts +0 -140
  750. package/dist/services/storage/local-storage.provider.d.ts.map +0 -1
  751. package/dist/services/storage/local-storage.provider.js +0 -333
  752. package/dist/services/storage/local-storage.provider.js.map +0 -1
  753. package/dist/services/style/index.d.ts +0 -7
  754. package/dist/services/style/index.d.ts.map +0 -1
  755. package/dist/services/style/index.js +0 -25
  756. package/dist/services/style/index.js.map +0 -1
  757. package/dist/services/style/palette-service.d.ts +0 -212
  758. package/dist/services/style/palette-service.d.ts.map +0 -1
  759. package/dist/services/style/palette-service.js +0 -423
  760. package/dist/services/style/palette-service.js.map +0 -1
  761. package/dist/services/style/prisma-palette-repository.d.ts +0 -35
  762. package/dist/services/style/prisma-palette-repository.d.ts.map +0 -1
  763. package/dist/services/style/prisma-palette-repository.js +0 -165
  764. package/dist/services/style/prisma-palette-repository.js.map +0 -1
  765. package/dist/services/vision/brandtone.analyzer.d.ts +0 -104
  766. package/dist/services/vision/brandtone.analyzer.d.ts.map +0 -1
  767. package/dist/services/vision/brandtone.analyzer.js +0 -279
  768. package/dist/services/vision/brandtone.analyzer.js.map +0 -1
  769. package/dist/services/vision/hardware-detector.d.ts +0 -166
  770. package/dist/services/vision/hardware-detector.d.ts.map +0 -1
  771. package/dist/services/vision/hardware-detector.js +0 -330
  772. package/dist/services/vision/hardware-detector.js.map +0 -1
  773. package/dist/services/vision/image-optimizer.d.ts +0 -152
  774. package/dist/services/vision/image-optimizer.d.ts.map +0 -1
  775. package/dist/services/vision/image-optimizer.js +0 -266
  776. package/dist/services/vision/image-optimizer.js.map +0 -1
  777. package/dist/services/vision/index.d.ts +0 -26
  778. package/dist/services/vision/index.d.ts.map +0 -1
  779. package/dist/services/vision/index.js +0 -80
  780. package/dist/services/vision/index.js.map +0 -1
  781. package/dist/services/vision/llama-vision-adapter.d.ts +0 -178
  782. package/dist/services/vision/llama-vision-adapter.d.ts.map +0 -1
  783. package/dist/services/vision/llama-vision-adapter.js +0 -307
  784. package/dist/services/vision/llama-vision-adapter.js.map +0 -1
  785. package/dist/services/vision/mcp-progress-adapter.d.ts +0 -128
  786. package/dist/services/vision/mcp-progress-adapter.d.ts.map +0 -1
  787. package/dist/services/vision/mcp-progress-adapter.js +0 -150
  788. package/dist/services/vision/mcp-progress-adapter.js.map +0 -1
  789. package/dist/services/vision/mood.analyzer.d.ts +0 -74
  790. package/dist/services/vision/mood.analyzer.d.ts.map +0 -1
  791. package/dist/services/vision/mood.analyzer.js +0 -258
  792. package/dist/services/vision/mood.analyzer.js.map +0 -1
  793. package/dist/services/vision/ollama-readiness-probe.d.ts +0 -87
  794. package/dist/services/vision/ollama-readiness-probe.d.ts.map +0 -1
  795. package/dist/services/vision/ollama-readiness-probe.js +0 -211
  796. package/dist/services/vision/ollama-readiness-probe.js.map +0 -1
  797. package/dist/services/vision/ollama-vision-client.d.ts +0 -129
  798. package/dist/services/vision/ollama-vision-client.d.ts.map +0 -1
  799. package/dist/services/vision/ollama-vision-client.js +0 -478
  800. package/dist/services/vision/ollama-vision-client.js.map +0 -1
  801. package/dist/services/vision/progress-reporter.d.ts +0 -140
  802. package/dist/services/vision/progress-reporter.d.ts.map +0 -1
  803. package/dist/services/vision/progress-reporter.js +0 -306
  804. package/dist/services/vision/progress-reporter.js.map +0 -1
  805. package/dist/services/vision/scroll-vision-capture.service.d.ts +0 -117
  806. package/dist/services/vision/scroll-vision-capture.service.d.ts.map +0 -1
  807. package/dist/services/vision/scroll-vision-capture.service.js +0 -266
  808. package/dist/services/vision/scroll-vision-capture.service.js.map +0 -1
  809. package/dist/services/vision/scroll-vision-persistence.service.d.ts +0 -48
  810. package/dist/services/vision/scroll-vision-persistence.service.d.ts.map +0 -1
  811. package/dist/services/vision/scroll-vision-persistence.service.js +0 -161
  812. package/dist/services/vision/scroll-vision-persistence.service.js.map +0 -1
  813. package/dist/services/vision/scroll-vision.analyzer.d.ts +0 -90
  814. package/dist/services/vision/scroll-vision.analyzer.d.ts.map +0 -1
  815. package/dist/services/vision/scroll-vision.analyzer.js +0 -280
  816. package/dist/services/vision/scroll-vision.analyzer.js.map +0 -1
  817. package/dist/services/vision/theme.analyzer.d.ts +0 -108
  818. package/dist/services/vision/theme.analyzer.d.ts.map +0 -1
  819. package/dist/services/vision/theme.analyzer.js +0 -315
  820. package/dist/services/vision/theme.analyzer.js.map +0 -1
  821. package/dist/services/vision/timeout-calculator.d.ts +0 -85
  822. package/dist/services/vision/timeout-calculator.d.ts.map +0 -1
  823. package/dist/services/vision/timeout-calculator.js +0 -142
  824. package/dist/services/vision/timeout-calculator.js.map +0 -1
  825. package/dist/services/vision/vision-fallback.service.d.ts +0 -121
  826. package/dist/services/vision/vision-fallback.service.d.ts.map +0 -1
  827. package/dist/services/vision/vision-fallback.service.js +0 -253
  828. package/dist/services/vision/vision-fallback.service.js.map +0 -1
  829. package/dist/services/vision/vision.cache.d.ts +0 -124
  830. package/dist/services/vision/vision.cache.d.ts.map +0 -1
  831. package/dist/services/vision/vision.cache.js +0 -261
  832. package/dist/services/vision/vision.cache.js.map +0 -1
  833. package/dist/services/vision/vision.errors.d.ts +0 -104
  834. package/dist/services/vision/vision.errors.d.ts.map +0 -1
  835. package/dist/services/vision/vision.errors.js +0 -133
  836. package/dist/services/vision/vision.errors.js.map +0 -1
  837. package/dist/services/vision/vision.prompts.d.ts +0 -47
  838. package/dist/services/vision/vision.prompts.d.ts.map +0 -1
  839. package/dist/services/vision/vision.prompts.js +0 -272
  840. package/dist/services/vision/vision.prompts.js.map +0 -1
  841. package/dist/services/vision/vram-utils.d.ts +0 -22
  842. package/dist/services/vision/vram-utils.d.ts.map +0 -1
  843. package/dist/services/vision/vram-utils.js +0 -57
  844. package/dist/services/vision/vram-utils.js.map +0 -1
  845. package/dist/services/vision-adapter/index.d.ts +0 -18
  846. package/dist/services/vision-adapter/index.d.ts.map +0 -1
  847. package/dist/services/vision-adapter/index.js +0 -31
  848. package/dist/services/vision-adapter/index.js.map +0 -1
  849. package/dist/services/vision-adapter/interface.d.ts +0 -1434
  850. package/dist/services/vision-adapter/interface.d.ts.map +0 -1
  851. package/dist/services/vision-adapter/interface.js +0 -326
  852. package/dist/services/vision-adapter/interface.js.map +0 -1
  853. package/dist/services/vision-adapter/llama-vision.adapter.d.ts +0 -373
  854. package/dist/services/vision-adapter/llama-vision.adapter.d.ts.map +0 -1
  855. package/dist/services/vision-adapter/llama-vision.adapter.js +0 -1751
  856. package/dist/services/vision-adapter/llama-vision.adapter.js.map +0 -1
  857. package/dist/services/vision-adapter/llama-vision.prompts.d.ts +0 -63
  858. package/dist/services/vision-adapter/llama-vision.prompts.d.ts.map +0 -1
  859. package/dist/services/vision-adapter/llama-vision.prompts.js +0 -234
  860. package/dist/services/vision-adapter/llama-vision.prompts.js.map +0 -1
  861. package/dist/services/vision-adapter/llama-vision.types.d.ts +0 -68
  862. package/dist/services/vision-adapter/llama-vision.types.d.ts.map +0 -1
  863. package/dist/services/vision-adapter/llama-vision.types.js +0 -21
  864. package/dist/services/vision-adapter/llama-vision.types.js.map +0 -1
  865. package/dist/services/vision-adapter/local.adapter.d.ts +0 -185
  866. package/dist/services/vision-adapter/local.adapter.d.ts.map +0 -1
  867. package/dist/services/vision-adapter/local.adapter.js +0 -835
  868. package/dist/services/vision-adapter/local.adapter.js.map +0 -1
  869. package/dist/services/vision-adapter/mock.adapter.d.ts +0 -174
  870. package/dist/services/vision-adapter/mock.adapter.d.ts.map +0 -1
  871. package/dist/services/vision-adapter/mock.adapter.js +0 -812
  872. package/dist/services/vision-adapter/mock.adapter.js.map +0 -1
  873. package/dist/services/vision-embedding-search.service.d.ts +0 -205
  874. package/dist/services/vision-embedding-search.service.d.ts.map +0 -1
  875. package/dist/services/vision-embedding-search.service.js +0 -742
  876. package/dist/services/vision-embedding-search.service.js.map +0 -1
  877. package/dist/services/vision-embedding.service.d.ts +0 -150
  878. package/dist/services/vision-embedding.service.d.ts.map +0 -1
  879. package/dist/services/vision-embedding.service.js +0 -461
  880. package/dist/services/vision-embedding.service.js.map +0 -1
  881. package/dist/services/visual/css-variable-extractor.service.d.ts +0 -97
  882. package/dist/services/visual/css-variable-extractor.service.d.ts.map +0 -1
  883. package/dist/services/visual/css-variable-extractor.service.js +0 -460
  884. package/dist/services/visual/css-variable-extractor.service.js.map +0 -1
  885. package/dist/services/visual/typography-extractor.service.d.ts +0 -137
  886. package/dist/services/visual/typography-extractor.service.d.ts.map +0 -1
  887. package/dist/services/visual/typography-extractor.service.js +0 -539
  888. package/dist/services/visual/typography-extractor.service.js.map +0 -1
  889. package/dist/services/visual-extractor/color-extractor.service.d.ts +0 -55
  890. package/dist/services/visual-extractor/color-extractor.service.d.ts.map +0 -1
  891. package/dist/services/visual-extractor/color-extractor.service.js +0 -281
  892. package/dist/services/visual-extractor/color-extractor.service.js.map +0 -1
  893. package/dist/services/visual-extractor/density-calculator.service.d.ts +0 -85
  894. package/dist/services/visual-extractor/density-calculator.service.d.ts.map +0 -1
  895. package/dist/services/visual-extractor/density-calculator.service.js +0 -369
  896. package/dist/services/visual-extractor/density-calculator.service.js.map +0 -1
  897. package/dist/services/visual-extractor/gradient-detector.service.d.ts +0 -134
  898. package/dist/services/visual-extractor/gradient-detector.service.d.ts.map +0 -1
  899. package/dist/services/visual-extractor/gradient-detector.service.js +0 -1172
  900. package/dist/services/visual-extractor/gradient-detector.service.js.map +0 -1
  901. package/dist/services/visual-extractor/image-utils.d.ts +0 -135
  902. package/dist/services/visual-extractor/image-utils.d.ts.map +0 -1
  903. package/dist/services/visual-extractor/image-utils.js +0 -305
  904. package/dist/services/visual-extractor/image-utils.js.map +0 -1
  905. package/dist/services/visual-extractor/pixel-theme-detector.service.d.ts +0 -58
  906. package/dist/services/visual-extractor/pixel-theme-detector.service.d.ts.map +0 -1
  907. package/dist/services/visual-extractor/pixel-theme-detector.service.js +0 -358
  908. package/dist/services/visual-extractor/pixel-theme-detector.service.js.map +0 -1
  909. package/dist/services/visual-extractor/theme-detector.service.d.ts +0 -101
  910. package/dist/services/visual-extractor/theme-detector.service.d.ts.map +0 -1
  911. package/dist/services/visual-extractor/theme-detector.service.js +0 -463
  912. package/dist/services/visual-extractor/theme-detector.service.js.map +0 -1
  913. package/dist/services/visual-extractor/visual-decoration-detector.service.d.ts +0 -43
  914. package/dist/services/visual-extractor/visual-decoration-detector.service.d.ts.map +0 -1
  915. package/dist/services/visual-extractor/visual-decoration-detector.service.js +0 -628
  916. package/dist/services/visual-extractor/visual-decoration-detector.service.js.map +0 -1
  917. package/dist/services/visual-extractor/visual-feature-merger.service.d.ts +0 -230
  918. package/dist/services/visual-extractor/visual-feature-merger.service.d.ts.map +0 -1
  919. package/dist/services/visual-extractor/visual-feature-merger.service.js +0 -482
  920. package/dist/services/visual-extractor/visual-feature-merger.service.js.map +0 -1
  921. package/dist/services/web-page.service.d.ts +0 -80
  922. package/dist/services/web-page.service.d.ts.map +0 -1
  923. package/dist/services/web-page.service.js +0 -211
  924. package/dist/services/web-page.service.js.map +0 -1
  925. package/dist/services/worker-constants.d.ts +0 -40
  926. package/dist/services/worker-constants.d.ts.map +0 -1
  927. package/dist/services/worker-constants.js +0 -51
  928. package/dist/services/worker-constants.js.map +0 -1
  929. package/dist/services/worker-db-save.service.d.ts +0 -311
  930. package/dist/services/worker-db-save.service.d.ts.map +0 -1
  931. package/dist/services/worker-db-save.service.js +0 -771
  932. package/dist/services/worker-db-save.service.js.map +0 -1
  933. package/dist/services/worker-memory-monitor.service.d.ts +0 -24
  934. package/dist/services/worker-memory-monitor.service.d.ts.map +0 -1
  935. package/dist/services/worker-memory-monitor.service.js +0 -105
  936. package/dist/services/worker-memory-monitor.service.js.map +0 -1
  937. package/dist/services/worker-memory-profile.d.ts +0 -65
  938. package/dist/services/worker-memory-profile.d.ts.map +0 -1
  939. package/dist/services/worker-memory-profile.js +0 -225
  940. package/dist/services/worker-memory-profile.js.map +0 -1
  941. package/dist/services/worker-stall-recovery.service.d.ts +0 -166
  942. package/dist/services/worker-stall-recovery.service.d.ts.map +0 -1
  943. package/dist/services/worker-stall-recovery.service.js +0 -335
  944. package/dist/services/worker-stall-recovery.service.js.map +0 -1
  945. package/dist/services/worker-supervisor.service.d.ts +0 -145
  946. package/dist/services/worker-supervisor.service.d.ts.map +0 -1
  947. package/dist/services/worker-supervisor.service.js +0 -635
  948. package/dist/services/worker-supervisor.service.js.map +0 -1
  949. package/dist/tools/background/schemas.d.ts +0 -85
  950. package/dist/tools/background/schemas.d.ts.map +0 -1
  951. package/dist/tools/background/schemas.js +0 -79
  952. package/dist/tools/background/schemas.js.map +0 -1
  953. package/dist/tools/background/search.tool.d.ts +0 -179
  954. package/dist/tools/background/search.tool.d.ts.map +0 -1
  955. package/dist/tools/background/search.tool.js +0 -318
  956. package/dist/tools/background/search.tool.js.map +0 -1
  957. package/dist/tools/brief/index.d.ts +0 -10
  958. package/dist/tools/brief/index.d.ts.map +0 -1
  959. package/dist/tools/brief/index.js +0 -54
  960. package/dist/tools/brief/index.js.map +0 -1
  961. package/dist/tools/brief/schemas.d.ts +0 -750
  962. package/dist/tools/brief/schemas.d.ts.map +0 -1
  963. package/dist/tools/brief/schemas.js +0 -212
  964. package/dist/tools/brief/schemas.js.map +0 -1
  965. package/dist/tools/brief/validate.handler.d.ts +0 -149
  966. package/dist/tools/brief/validate.handler.d.ts.map +0 -1
  967. package/dist/tools/brief/validate.handler.js +0 -247
  968. package/dist/tools/brief/validate.handler.js.map +0 -1
  969. package/dist/tools/brief/validate.service.d.ts +0 -100
  970. package/dist/tools/brief/validate.service.d.ts.map +0 -1
  971. package/dist/tools/brief/validate.service.js +0 -296
  972. package/dist/tools/brief/validate.service.js.map +0 -1
  973. package/dist/tools/common/error-codes.d.ts +0 -35
  974. package/dist/tools/common/error-codes.d.ts.map +0 -1
  975. package/dist/tools/common/error-codes.js +0 -92
  976. package/dist/tools/common/error-codes.js.map +0 -1
  977. package/dist/tools/common/index.d.ts +0 -7
  978. package/dist/tools/common/index.d.ts.map +0 -1
  979. package/dist/tools/common/index.js +0 -20
  980. package/dist/tools/common/index.js.map +0 -1
  981. package/dist/tools/index.d.ts +0 -2756
  982. package/dist/tools/index.d.ts.map +0 -1
  983. package/dist/tools/index.js +0 -506
  984. package/dist/tools/index.js.map +0 -1
  985. package/dist/tools/layout/batch-ingest.tool.d.ts +0 -82
  986. package/dist/tools/layout/batch-ingest.tool.d.ts.map +0 -1
  987. package/dist/tools/layout/batch-ingest.tool.js +0 -410
  988. package/dist/tools/layout/batch-ingest.tool.js.map +0 -1
  989. package/dist/tools/layout/index.d.ts +0 -13
  990. package/dist/tools/layout/index.d.ts.map +0 -1
  991. package/dist/tools/layout/index.js +0 -62
  992. package/dist/tools/layout/index.js.map +0 -1
  993. package/dist/tools/layout/ingest.tool.d.ts +0 -338
  994. package/dist/tools/layout/ingest.tool.d.ts.map +0 -1
  995. package/dist/tools/layout/ingest.tool.js +0 -1308
  996. package/dist/tools/layout/ingest.tool.js.map +0 -1
  997. package/dist/tools/layout/inspect/index.d.ts +0 -11
  998. package/dist/tools/layout/inspect/index.d.ts.map +0 -1
  999. package/dist/tools/layout/inspect/index.js +0 -55
  1000. package/dist/tools/layout/inspect/index.js.map +0 -1
  1001. package/dist/tools/layout/inspect/inspect.schemas.d.ts +0 -4130
  1002. package/dist/tools/layout/inspect/inspect.schemas.d.ts.map +0 -1
  1003. package/dist/tools/layout/inspect/inspect.schemas.js +0 -400
  1004. package/dist/tools/layout/inspect/inspect.schemas.js.map +0 -1
  1005. package/dist/tools/layout/inspect/inspect.tool.d.ts +0 -164
  1006. package/dist/tools/layout/inspect/inspect.tool.d.ts.map +0 -1
  1007. package/dist/tools/layout/inspect/inspect.tool.js +0 -738
  1008. package/dist/tools/layout/inspect/inspect.tool.js.map +0 -1
  1009. package/dist/tools/layout/inspect/inspect.utils.d.ts +0 -200
  1010. package/dist/tools/layout/inspect/inspect.utils.d.ts.map +0 -1
  1011. package/dist/tools/layout/inspect/inspect.utils.js +0 -1104
  1012. package/dist/tools/layout/inspect/inspect.utils.js.map +0 -1
  1013. package/dist/tools/layout/inspect/visual-extractors.schemas.d.ts +0 -3372
  1014. package/dist/tools/layout/inspect/visual-extractors.schemas.d.ts.map +0 -1
  1015. package/dist/tools/layout/inspect/visual-extractors.schemas.js +0 -558
  1016. package/dist/tools/layout/inspect/visual-extractors.schemas.js.map +0 -1
  1017. package/dist/tools/layout/inspect/visual-extractors.utils.d.ts +0 -86
  1018. package/dist/tools/layout/inspect/visual-extractors.utils.d.ts.map +0 -1
  1019. package/dist/tools/layout/inspect/visual-extractors.utils.js +0 -231
  1020. package/dist/tools/layout/inspect/visual-extractors.utils.js.map +0 -1
  1021. package/dist/tools/layout/schemas.d.ts +0 -11074
  1022. package/dist/tools/layout/schemas.d.ts.map +0 -1
  1023. package/dist/tools/layout/schemas.js +0 -1497
  1024. package/dist/tools/layout/schemas.js.map +0 -1
  1025. package/dist/tools/layout/search.tool.d.ts +0 -470
  1026. package/dist/tools/layout/search.tool.d.ts.map +0 -1
  1027. package/dist/tools/layout/search.tool.js +0 -1582
  1028. package/dist/tools/layout/search.tool.js.map +0 -1
  1029. package/dist/tools/layout/to-code.tool.d.ts +0 -280
  1030. package/dist/tools/layout/to-code.tool.d.ts.map +0 -1
  1031. package/dist/tools/layout/to-code.tool.js +0 -317
  1032. package/dist/tools/layout/to-code.tool.js.map +0 -1
  1033. package/dist/tools/motion/analyze-frames.handler.d.ts +0 -157
  1034. package/dist/tools/motion/analyze-frames.handler.d.ts.map +0 -1
  1035. package/dist/tools/motion/analyze-frames.handler.js +0 -263
  1036. package/dist/tools/motion/analyze-frames.handler.js.map +0 -1
  1037. package/dist/tools/motion/analyze-frames.schema.d.ts +0 -4599
  1038. package/dist/tools/motion/analyze-frames.schema.d.ts.map +0 -1
  1039. package/dist/tools/motion/analyze-frames.schema.js +0 -420
  1040. package/dist/tools/motion/analyze-frames.schema.js.map +0 -1
  1041. package/dist/tools/motion/css-mode-handler.d.ts +0 -70
  1042. package/dist/tools/motion/css-mode-handler.d.ts.map +0 -1
  1043. package/dist/tools/motion/css-mode-handler.js +0 -754
  1044. package/dist/tools/motion/css-mode-handler.js.map +0 -1
  1045. package/dist/tools/motion/detect.schemas.d.ts +0 -14288
  1046. package/dist/tools/motion/detect.schemas.d.ts.map +0 -1
  1047. package/dist/tools/motion/detect.schemas.js +0 -1715
  1048. package/dist/tools/motion/detect.schemas.js.map +0 -1
  1049. package/dist/tools/motion/detect.tool.d.ts +0 -195
  1050. package/dist/tools/motion/detect.tool.d.ts.map +0 -1
  1051. package/dist/tools/motion/detect.tool.js +0 -1421
  1052. package/dist/tools/motion/detect.tool.js.map +0 -1
  1053. package/dist/tools/motion/detection-modes.d.ts +0 -72
  1054. package/dist/tools/motion/detection-modes.d.ts.map +0 -1
  1055. package/dist/tools/motion/detection-modes.js +0 -353
  1056. package/dist/tools/motion/detection-modes.js.map +0 -1
  1057. package/dist/tools/motion/di-factories.d.ts +0 -341
  1058. package/dist/tools/motion/di-factories.d.ts.map +0 -1
  1059. package/dist/tools/motion/di-factories.js +0 -376
  1060. package/dist/tools/motion/di-factories.js.map +0 -1
  1061. package/dist/tools/motion/index.d.ts +0 -12
  1062. package/dist/tools/motion/index.d.ts.map +0 -1
  1063. package/dist/tools/motion/index.js +0 -146
  1064. package/dist/tools/motion/index.js.map +0 -1
  1065. package/dist/tools/motion/pattern-converter.d.ts +0 -49
  1066. package/dist/tools/motion/pattern-converter.d.ts.map +0 -1
  1067. package/dist/tools/motion/pattern-converter.js +0 -493
  1068. package/dist/tools/motion/pattern-converter.js.map +0 -1
  1069. package/dist/tools/motion/schemas.d.ts +0 -10
  1070. package/dist/tools/motion/schemas.d.ts.map +0 -1
  1071. package/dist/tools/motion/schemas.js +0 -28
  1072. package/dist/tools/motion/schemas.js.map +0 -1
  1073. package/dist/tools/motion/search.schemas.d.ts +0 -7500
  1074. package/dist/tools/motion/search.schemas.d.ts.map +0 -1
  1075. package/dist/tools/motion/search.schemas.js +0 -596
  1076. package/dist/tools/motion/search.schemas.js.map +0 -1
  1077. package/dist/tools/motion/search.tool.d.ts +0 -416
  1078. package/dist/tools/motion/search.tool.d.ts.map +0 -1
  1079. package/dist/tools/motion/search.tool.js +0 -2088
  1080. package/dist/tools/motion/search.tool.js.map +0 -1
  1081. package/dist/tools/motion/shared.schemas.d.ts +0 -994
  1082. package/dist/tools/motion/shared.schemas.d.ts.map +0 -1
  1083. package/dist/tools/motion/shared.schemas.js +0 -354
  1084. package/dist/tools/motion/shared.schemas.js.map +0 -1
  1085. package/dist/tools/narrative/analyze.tool.d.ts +0 -96
  1086. package/dist/tools/narrative/analyze.tool.d.ts.map +0 -1
  1087. package/dist/tools/narrative/analyze.tool.js +0 -396
  1088. package/dist/tools/narrative/analyze.tool.js.map +0 -1
  1089. package/dist/tools/narrative/index.d.ts +0 -15
  1090. package/dist/tools/narrative/index.d.ts.map +0 -1
  1091. package/dist/tools/narrative/index.js +0 -83
  1092. package/dist/tools/narrative/index.js.map +0 -1
  1093. package/dist/tools/narrative/schemas.d.ts +0 -5553
  1094. package/dist/tools/narrative/schemas.d.ts.map +0 -1
  1095. package/dist/tools/narrative/schemas.js +0 -747
  1096. package/dist/tools/narrative/schemas.js.map +0 -1
  1097. package/dist/tools/narrative/search.tool.d.ts +0 -160
  1098. package/dist/tools/narrative/search.tool.d.ts.map +0 -1
  1099. package/dist/tools/narrative/search.tool.js +0 -434
  1100. package/dist/tools/narrative/search.tool.js.map +0 -1
  1101. package/dist/tools/page/analyze.tool.d.ts +0 -502
  1102. package/dist/tools/page/analyze.tool.d.ts.map +0 -1
  1103. package/dist/tools/page/analyze.tool.js +0 -875
  1104. package/dist/tools/page/analyze.tool.js.map +0 -1
  1105. package/dist/tools/page/get-job-status.tool.d.ts +0 -43
  1106. package/dist/tools/page/get-job-status.tool.d.ts.map +0 -1
  1107. package/dist/tools/page/get-job-status.tool.js +0 -178
  1108. package/dist/tools/page/get-job-status.tool.js.map +0 -1
  1109. package/dist/tools/page/handlers/db-handler.d.ts +0 -155
  1110. package/dist/tools/page/handlers/db-handler.d.ts.map +0 -1
  1111. package/dist/tools/page/handlers/db-handler.js +0 -368
  1112. package/dist/tools/page/handlers/db-handler.js.map +0 -1
  1113. package/dist/tools/page/handlers/embedding-handler.d.ts +0 -200
  1114. package/dist/tools/page/handlers/embedding-handler.d.ts.map +0 -1
  1115. package/dist/tools/page/handlers/embedding-handler.js +0 -541
  1116. package/dist/tools/page/handlers/embedding-handler.js.map +0 -1
  1117. package/dist/tools/page/handlers/execution-status-tracker.d.ts +0 -146
  1118. package/dist/tools/page/handlers/execution-status-tracker.d.ts.map +0 -1
  1119. package/dist/tools/page/handlers/execution-status-tracker.js +0 -348
  1120. package/dist/tools/page/handlers/execution-status-tracker.js.map +0 -1
  1121. package/dist/tools/page/handlers/js-animation-handler.d.ts +0 -197
  1122. package/dist/tools/page/handlers/js-animation-handler.d.ts.map +0 -1
  1123. package/dist/tools/page/handlers/js-animation-handler.js +0 -952
  1124. package/dist/tools/page/handlers/js-animation-handler.js.map +0 -1
  1125. package/dist/tools/page/handlers/layout-handler.d.ts +0 -31
  1126. package/dist/tools/page/handlers/layout-handler.d.ts.map +0 -1
  1127. package/dist/tools/page/handlers/layout-handler.js +0 -1181
  1128. package/dist/tools/page/handlers/layout-handler.js.map +0 -1
  1129. package/dist/tools/page/handlers/motion-handler.d.ts +0 -31
  1130. package/dist/tools/page/handlers/motion-handler.d.ts.map +0 -1
  1131. package/dist/tools/page/handlers/motion-handler.js +0 -940
  1132. package/dist/tools/page/handlers/motion-handler.js.map +0 -1
  1133. package/dist/tools/page/handlers/narrative-handler.d.ts +0 -23
  1134. package/dist/tools/page/handlers/narrative-handler.d.ts.map +0 -1
  1135. package/dist/tools/page/handlers/narrative-handler.js +0 -279
  1136. package/dist/tools/page/handlers/narrative-handler.js.map +0 -1
  1137. package/dist/tools/page/handlers/phased-db-handler.d.ts +0 -83
  1138. package/dist/tools/page/handlers/phased-db-handler.d.ts.map +0 -1
  1139. package/dist/tools/page/handlers/phased-db-handler.js +0 -120
  1140. package/dist/tools/page/handlers/phased-db-handler.js.map +0 -1
  1141. package/dist/tools/page/handlers/phased-executor.d.ts +0 -123
  1142. package/dist/tools/page/handlers/phased-executor.d.ts.map +0 -1
  1143. package/dist/tools/page/handlers/phased-executor.js +0 -205
  1144. package/dist/tools/page/handlers/phased-executor.js.map +0 -1
  1145. package/dist/tools/page/handlers/quality-handler.d.ts +0 -9
  1146. package/dist/tools/page/handlers/quality-handler.d.ts.map +0 -1
  1147. package/dist/tools/page/handlers/quality-handler.js +0 -100
  1148. package/dist/tools/page/handlers/quality-handler.js.map +0 -1
  1149. package/dist/tools/page/handlers/result-builder.d.ts +0 -105
  1150. package/dist/tools/page/handlers/result-builder.d.ts.map +0 -1
  1151. package/dist/tools/page/handlers/result-builder.js +0 -447
  1152. package/dist/tools/page/handlers/result-builder.js.map +0 -1
  1153. package/dist/tools/page/handlers/retry-strategy.d.ts +0 -106
  1154. package/dist/tools/page/handlers/retry-strategy.d.ts.map +0 -1
  1155. package/dist/tools/page/handlers/retry-strategy.js +0 -169
  1156. package/dist/tools/page/handlers/retry-strategy.js.map +0 -1
  1157. package/dist/tools/page/handlers/sync-processing.d.ts +0 -26
  1158. package/dist/tools/page/handlers/sync-processing.d.ts.map +0 -1
  1159. package/dist/tools/page/handlers/sync-processing.js +0 -1659
  1160. package/dist/tools/page/handlers/sync-processing.js.map +0 -1
  1161. package/dist/tools/page/handlers/timeout-utils.d.ts +0 -278
  1162. package/dist/tools/page/handlers/timeout-utils.d.ts.map +0 -1
  1163. package/dist/tools/page/handlers/timeout-utils.js +0 -600
  1164. package/dist/tools/page/handlers/timeout-utils.js.map +0 -1
  1165. package/dist/tools/page/handlers/types.d.ts +0 -1229
  1166. package/dist/tools/page/handlers/types.d.ts.map +0 -1
  1167. package/dist/tools/page/handlers/types.js +0 -21
  1168. package/dist/tools/page/handlers/types.js.map +0 -1
  1169. package/dist/tools/page/handlers/video-handler.d.ts +0 -11
  1170. package/dist/tools/page/handlers/video-handler.d.ts.map +0 -1
  1171. package/dist/tools/page/handlers/video-handler.js +0 -235
  1172. package/dist/tools/page/handlers/video-handler.js.map +0 -1
  1173. package/dist/tools/page/handlers/webgl-animation-handler.d.ts +0 -48
  1174. package/dist/tools/page/handlers/webgl-animation-handler.d.ts.map +0 -1
  1175. package/dist/tools/page/handlers/webgl-animation-handler.js +0 -237
  1176. package/dist/tools/page/handlers/webgl-animation-handler.js.map +0 -1
  1177. package/dist/tools/page/handlers/webgl-detector.d.ts +0 -184
  1178. package/dist/tools/page/handlers/webgl-detector.d.ts.map +0 -1
  1179. package/dist/tools/page/handlers/webgl-detector.js +0 -680
  1180. package/dist/tools/page/handlers/webgl-detector.js.map +0 -1
  1181. package/dist/tools/page/handlers/webgl-domains.d.ts +0 -133
  1182. package/dist/tools/page/handlers/webgl-domains.d.ts.map +0 -1
  1183. package/dist/tools/page/handlers/webgl-domains.js +0 -420
  1184. package/dist/tools/page/handlers/webgl-domains.js.map +0 -1
  1185. package/dist/tools/page/handlers/webgl-pre-detector.d.ts +0 -100
  1186. package/dist/tools/page/handlers/webgl-pre-detector.d.ts.map +0 -1
  1187. package/dist/tools/page/handlers/webgl-pre-detector.js +0 -248
  1188. package/dist/tools/page/handlers/webgl-pre-detector.js.map +0 -1
  1189. package/dist/tools/page/index.d.ts +0 -10
  1190. package/dist/tools/page/index.d.ts.map +0 -1
  1191. package/dist/tools/page/index.js +0 -84
  1192. package/dist/tools/page/index.js.map +0 -1
  1193. package/dist/tools/page/input.schemas.d.ts +0 -2223
  1194. package/dist/tools/page/input.schemas.d.ts.map +0 -1
  1195. package/dist/tools/page/input.schemas.js +0 -853
  1196. package/dist/tools/page/input.schemas.js.map +0 -1
  1197. package/dist/tools/page/output.schemas.d.ts +0 -26026
  1198. package/dist/tools/page/output.schemas.d.ts.map +0 -1
  1199. package/dist/tools/page/output.schemas.js +0 -1414
  1200. package/dist/tools/page/output.schemas.js.map +0 -1
  1201. package/dist/tools/page/schemas.d.ts +0 -10
  1202. package/dist/tools/page/schemas.d.ts.map +0 -1
  1203. package/dist/tools/page/schemas.js +0 -28
  1204. package/dist/tools/page/schemas.js.map +0 -1
  1205. package/dist/tools/page/shared.schemas.d.ts +0 -38
  1206. package/dist/tools/page/shared.schemas.d.ts.map +0 -1
  1207. package/dist/tools/page/shared.schemas.js +0 -69
  1208. package/dist/tools/page/shared.schemas.js.map +0 -1
  1209. package/dist/tools/part/compare.tool.d.ts +0 -106
  1210. package/dist/tools/part/compare.tool.d.ts.map +0 -1
  1211. package/dist/tools/part/compare.tool.js +0 -421
  1212. package/dist/tools/part/compare.tool.js.map +0 -1
  1213. package/dist/tools/part/inspect.tool.d.ts +0 -108
  1214. package/dist/tools/part/inspect.tool.d.ts.map +0 -1
  1215. package/dist/tools/part/inspect.tool.js +0 -279
  1216. package/dist/tools/part/inspect.tool.js.map +0 -1
  1217. package/dist/tools/part/search.tool.d.ts +0 -121
  1218. package/dist/tools/part/search.tool.d.ts.map +0 -1
  1219. package/dist/tools/part/search.tool.js +0 -381
  1220. package/dist/tools/part/search.tool.js.map +0 -1
  1221. package/dist/tools/preference/get.tool.d.ts +0 -74
  1222. package/dist/tools/preference/get.tool.d.ts.map +0 -1
  1223. package/dist/tools/preference/get.tool.js +0 -175
  1224. package/dist/tools/preference/get.tool.js.map +0 -1
  1225. package/dist/tools/preference/hear.tool.d.ts +0 -267
  1226. package/dist/tools/preference/hear.tool.d.ts.map +0 -1
  1227. package/dist/tools/preference/hear.tool.js +0 -268
  1228. package/dist/tools/preference/hear.tool.js.map +0 -1
  1229. package/dist/tools/preference/index.d.ts +0 -16
  1230. package/dist/tools/preference/index.d.ts.map +0 -1
  1231. package/dist/tools/preference/index.js +0 -43
  1232. package/dist/tools/preference/index.js.map +0 -1
  1233. package/dist/tools/preference/reset.tool.d.ts +0 -71
  1234. package/dist/tools/preference/reset.tool.d.ts.map +0 -1
  1235. package/dist/tools/preference/reset.tool.js +0 -205
  1236. package/dist/tools/preference/reset.tool.js.map +0 -1
  1237. package/dist/tools/preference/schemas.d.ts +0 -174
  1238. package/dist/tools/preference/schemas.d.ts.map +0 -1
  1239. package/dist/tools/preference/schemas.js +0 -142
  1240. package/dist/tools/preference/schemas.js.map +0 -1
  1241. package/dist/tools/project-get.d.ts +0 -42
  1242. package/dist/tools/project-get.d.ts.map +0 -1
  1243. package/dist/tools/project-get.js +0 -152
  1244. package/dist/tools/project-get.js.map +0 -1
  1245. package/dist/tools/project-list.d.ts +0 -66
  1246. package/dist/tools/project-list.d.ts.map +0 -1
  1247. package/dist/tools/project-list.js +0 -201
  1248. package/dist/tools/project-list.js.map +0 -1
  1249. package/dist/tools/quality/batch-evaluate.tool.d.ts +0 -101
  1250. package/dist/tools/quality/batch-evaluate.tool.d.ts.map +0 -1
  1251. package/dist/tools/quality/batch-evaluate.tool.js +0 -393
  1252. package/dist/tools/quality/batch-evaluate.tool.js.map +0 -1
  1253. package/dist/tools/quality/evaluate-engine.d.ts +0 -166
  1254. package/dist/tools/quality/evaluate-engine.d.ts.map +0 -1
  1255. package/dist/tools/quality/evaluate-engine.js +0 -1061
  1256. package/dist/tools/quality/evaluate-engine.js.map +0 -1
  1257. package/dist/tools/quality/evaluate.tool.d.ts +0 -286
  1258. package/dist/tools/quality/evaluate.tool.d.ts.map +0 -1
  1259. package/dist/tools/quality/evaluate.tool.js +0 -815
  1260. package/dist/tools/quality/evaluate.tool.js.map +0 -1
  1261. package/dist/tools/quality/get-job-status.tool.d.ts +0 -44
  1262. package/dist/tools/quality/get-job-status.tool.d.ts.map +0 -1
  1263. package/dist/tools/quality/get-job-status.tool.js +0 -291
  1264. package/dist/tools/quality/get-job-status.tool.js.map +0 -1
  1265. package/dist/tools/quality/improvement-utils.d.ts +0 -24
  1266. package/dist/tools/quality/improvement-utils.d.ts.map +0 -1
  1267. package/dist/tools/quality/improvement-utils.js +0 -307
  1268. package/dist/tools/quality/improvement-utils.js.map +0 -1
  1269. package/dist/tools/quality/index.d.ts +0 -11
  1270. package/dist/tools/quality/index.d.ts.map +0 -1
  1271. package/dist/tools/quality/index.js +0 -49
  1272. package/dist/tools/quality/index.js.map +0 -1
  1273. package/dist/tools/quality/schemas.d.ts +0 -14098
  1274. package/dist/tools/quality/schemas.d.ts.map +0 -1
  1275. package/dist/tools/quality/schemas.js +0 -950
  1276. package/dist/tools/quality/schemas.js.map +0 -1
  1277. package/dist/tools/responsive/schemas.d.ts +0 -156
  1278. package/dist/tools/responsive/schemas.d.ts.map +0 -1
  1279. package/dist/tools/responsive/schemas.js +0 -86
  1280. package/dist/tools/responsive/schemas.js.map +0 -1
  1281. package/dist/tools/responsive/search.tool.d.ts +0 -130
  1282. package/dist/tools/responsive/search.tool.d.ts.map +0 -1
  1283. package/dist/tools/responsive/search.tool.js +0 -324
  1284. package/dist/tools/responsive/search.tool.js.map +0 -1
  1285. package/dist/tools/schemas/index.d.ts +0 -10
  1286. package/dist/tools/schemas/index.d.ts.map +0 -1
  1287. package/dist/tools/schemas/index.js +0 -45
  1288. package/dist/tools/schemas/index.js.map +0 -1
  1289. package/dist/tools/schemas/layout-schemas.d.ts +0 -521
  1290. package/dist/tools/schemas/layout-schemas.d.ts.map +0 -1
  1291. package/dist/tools/schemas/layout-schemas.js +0 -281
  1292. package/dist/tools/schemas/layout-schemas.js.map +0 -1
  1293. package/dist/tools/schemas/project-schemas.d.ts +0 -417
  1294. package/dist/tools/schemas/project-schemas.d.ts.map +0 -1
  1295. package/dist/tools/schemas/project-schemas.js +0 -159
  1296. package/dist/tools/schemas/project-schemas.js.map +0 -1
  1297. package/dist/tools/schemas/shared.d.ts +0 -107
  1298. package/dist/tools/schemas/shared.d.ts.map +0 -1
  1299. package/dist/tools/schemas/shared.js +0 -150
  1300. package/dist/tools/schemas/shared.js.map +0 -1
  1301. package/dist/tools/schemas/style-schemas.d.ts +0 -114
  1302. package/dist/tools/schemas/style-schemas.d.ts.map +0 -1
  1303. package/dist/tools/schemas/style-schemas.js +0 -61
  1304. package/dist/tools/schemas/style-schemas.js.map +0 -1
  1305. package/dist/tools/style-get-palette.d.ts +0 -136
  1306. package/dist/tools/style-get-palette.d.ts.map +0 -1
  1307. package/dist/tools/style-get-palette.js +0 -259
  1308. package/dist/tools/style-get-palette.js.map +0 -1
  1309. package/dist/tools/system-health.d.ts +0 -255
  1310. package/dist/tools/system-health.d.ts.map +0 -1
  1311. package/dist/tools/system-health.js +0 -463
  1312. package/dist/tools/system-health.js.map +0 -1
  1313. package/dist/transport.d.ts +0 -29
  1314. package/dist/transport.d.ts.map +0 -1
  1315. package/dist/transport.js +0 -50
  1316. package/dist/transport.js.map +0 -1
  1317. package/dist/types/creative/index.d.ts +0 -8
  1318. package/dist/types/creative/index.d.ts.map +0 -1
  1319. package/dist/types/creative/index.js +0 -5
  1320. package/dist/types/creative/index.js.map +0 -1
  1321. package/dist/types/creative/palette.d.ts +0 -142
  1322. package/dist/types/creative/palette.d.ts.map +0 -1
  1323. package/dist/types/creative/palette.js +0 -5
  1324. package/dist/types/creative/palette.js.map +0 -1
  1325. package/dist/types/reftrix-window.d.ts +0 -124
  1326. package/dist/types/reftrix-window.d.ts.map +0 -1
  1327. package/dist/types/reftrix-window.js +0 -68
  1328. package/dist/types/reftrix-window.js.map +0 -1
  1329. package/dist/utils/actionable-warning.d.ts +0 -170
  1330. package/dist/utils/actionable-warning.d.ts.map +0 -1
  1331. package/dist/utils/actionable-warning.js +0 -818
  1332. package/dist/utils/actionable-warning.js.map +0 -1
  1333. package/dist/utils/blank-image-detector.d.ts +0 -22
  1334. package/dist/utils/blank-image-detector.d.ts.map +0 -1
  1335. package/dist/utils/blank-image-detector.js +0 -133
  1336. package/dist/utils/blank-image-detector.js.map +0 -1
  1337. package/dist/utils/color.d.ts +0 -203
  1338. package/dist/utils/color.d.ts.map +0 -1
  1339. package/dist/utils/color.js +0 -442
  1340. package/dist/utils/color.js.map +0 -1
  1341. package/dist/utils/deprecation-warning.d.ts +0 -43
  1342. package/dist/utils/deprecation-warning.d.ts.map +0 -1
  1343. package/dist/utils/deprecation-warning.js +0 -112
  1344. package/dist/utils/deprecation-warning.js.map +0 -1
  1345. package/dist/utils/error-messages.d.ts +0 -233
  1346. package/dist/utils/error-messages.d.ts.map +0 -1
  1347. package/dist/utils/error-messages.js +0 -721
  1348. package/dist/utils/error-messages.js.map +0 -1
  1349. package/dist/utils/errors.d.ts +0 -64
  1350. package/dist/utils/errors.d.ts.map +0 -1
  1351. package/dist/utils/errors.js +0 -82
  1352. package/dist/utils/errors.js.map +0 -1
  1353. package/dist/utils/gpu-browser-args.d.ts +0 -27
  1354. package/dist/utils/gpu-browser-args.d.ts.map +0 -1
  1355. package/dist/utils/gpu-browser-args.js +0 -42
  1356. package/dist/utils/gpu-browser-args.js.map +0 -1
  1357. package/dist/utils/html-sanitizer.d.ts +0 -116
  1358. package/dist/utils/html-sanitizer.d.ts.map +0 -1
  1359. package/dist/utils/html-sanitizer.js +0 -630
  1360. package/dist/utils/html-sanitizer.js.map +0 -1
  1361. package/dist/utils/logger.d.ts +0 -141
  1362. package/dist/utils/logger.d.ts.map +0 -1
  1363. package/dist/utils/logger.js +0 -249
  1364. package/dist/utils/logger.js.map +0 -1
  1365. package/dist/utils/mcp-response.d.ts +0 -317
  1366. package/dist/utils/mcp-response.d.ts.map +0 -1
  1367. package/dist/utils/mcp-response.js +0 -270
  1368. package/dist/utils/mcp-response.js.map +0 -1
  1369. package/dist/utils/path-security.d.ts +0 -73
  1370. package/dist/utils/path-security.d.ts.map +0 -1
  1371. package/dist/utils/path-security.js +0 -389
  1372. package/dist/utils/path-security.js.map +0 -1
  1373. package/dist/utils/prisma-wrapper-factory.d.ts +0 -152
  1374. package/dist/utils/prisma-wrapper-factory.d.ts.map +0 -1
  1375. package/dist/utils/prisma-wrapper-factory.js +0 -124
  1376. package/dist/utils/prisma-wrapper-factory.js.map +0 -1
  1377. package/dist/utils/safe-parse-int.d.ts +0 -41
  1378. package/dist/utils/safe-parse-int.d.ts.map +0 -1
  1379. package/dist/utils/safe-parse-int.js +0 -49
  1380. package/dist/utils/safe-parse-int.js.map +0 -1
  1381. package/dist/utils/url-normalizer.d.ts +0 -38
  1382. package/dist/utils/url-normalizer.d.ts.map +0 -1
  1383. package/dist/utils/url-normalizer.js +0 -103
  1384. package/dist/utils/url-normalizer.js.map +0 -1
  1385. package/dist/utils/url-validator.d.ts +0 -86
  1386. package/dist/utils/url-validator.d.ts.map +0 -1
  1387. package/dist/utils/url-validator.js +0 -533
  1388. package/dist/utils/url-validator.js.map +0 -1
  1389. package/dist/workers/batch-quality-worker.d.ts +0 -87
  1390. package/dist/workers/batch-quality-worker.d.ts.map +0 -1
  1391. package/dist/workers/batch-quality-worker.js +0 -300
  1392. package/dist/workers/batch-quality-worker.js.map +0 -1
  1393. package/dist/workers/page-analyze-worker.d.ts +0 -63
  1394. package/dist/workers/page-analyze-worker.d.ts.map +0 -1
  1395. package/dist/workers/page-analyze-worker.js +0 -872
  1396. package/dist/workers/page-analyze-worker.js.map +0 -1
  1397. package/dist/workers/phases/phase-0-ingest.d.ts +0 -42
  1398. package/dist/workers/phases/phase-0-ingest.d.ts.map +0 -1
  1399. package/dist/workers/phases/phase-0-ingest.js +0 -197
  1400. package/dist/workers/phases/phase-0-ingest.js.map +0 -1
  1401. package/dist/workers/phases/phase-1-layout.d.ts +0 -63
  1402. package/dist/workers/phases/phase-1-layout.d.ts.map +0 -1
  1403. package/dist/workers/phases/phase-1-layout.js +0 -362
  1404. package/dist/workers/phases/phase-1-layout.js.map +0 -1
  1405. package/dist/workers/phases/phase-2-motion.d.ts +0 -93
  1406. package/dist/workers/phases/phase-2-motion.d.ts.map +0 -1
  1407. package/dist/workers/phases/phase-2-motion.js +0 -408
  1408. package/dist/workers/phases/phase-2-motion.js.map +0 -1
  1409. package/dist/workers/phases/phase-3-quality.d.ts +0 -61
  1410. package/dist/workers/phases/phase-3-quality.d.ts.map +0 -1
  1411. package/dist/workers/phases/phase-3-quality.js +0 -191
  1412. package/dist/workers/phases/phase-3-quality.js.map +0 -1
  1413. package/dist/workers/phases/phase-4-narrative.d.ts +0 -37
  1414. package/dist/workers/phases/phase-4-narrative.d.ts.map +0 -1
  1415. package/dist/workers/phases/phase-4-narrative.js +0 -309
  1416. package/dist/workers/phases/phase-4-narrative.js.map +0 -1
  1417. package/dist/workers/phases/phase-5-embedding.d.ts +0 -56
  1418. package/dist/workers/phases/phase-5-embedding.d.ts.map +0 -1
  1419. package/dist/workers/phases/phase-5-embedding.js +0 -1350
  1420. package/dist/workers/phases/phase-5-embedding.js.map +0 -1
  1421. package/dist/workers/phases/types.d.ts +0 -411
  1422. package/dist/workers/phases/types.d.ts.map +0 -1
  1423. package/dist/workers/phases/types.js +0 -540
  1424. package/dist/workers/phases/types.js.map +0 -1
@@ -1,1350 +0,0 @@
1
- "use strict";
2
- // SPDX-FileCopyrightText: 2025-2026 Reftrix Contributors
3
- // SPDX-License-Identifier: AGPL-3.0-only
4
- var __importDefault = (this && this.__importDefault) || function (mod) {
5
- return (mod && mod.__esModule) ? mod : { "default": mod };
6
- };
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.processEmbeddingPhase = processEmbeddingPhase;
9
- /**
10
- * Phase 5: Embedding Generation
11
- *
12
- * Generates text and visual embeddings for sections, motions, backgrounds,
13
- * JS animations, responsive analyses, and parts (text + DINOv2 visual).
14
- *
15
- * Extracted from page-analyze-worker.ts (TDA-C1).
16
- *
17
- * @module workers/phases/phase-5-embedding
18
- */
19
- const logger_1 = require("../../utils/logger");
20
- const sharp_1 = __importDefault(require("sharp"));
21
- const path_1 = __importDefault(require("path"));
22
- // Embedding generation (reuse from synchronous flow)
23
- const embedding_handler_1 = require("../../tools/page/handlers/embedding-handler");
24
- // Part Embedding (Phase 5 text + visual via DINOv2)
25
- const part_embedding_service_1 = require("../../services/part/part-embedding.service");
26
- // DINOv2 visual embedding service
27
- const ml_1 = require("@reftrixmcp/ml");
28
- const part_embedding_db_service_1 = require("../../services/part/part-embedding-db.service");
29
- // Part Bounding Box resolution via Playwright (Phase 5 pre-step for DINOv2)
30
- const part_bbox_playwright_service_1 = require("../../services/part/part-bbox-playwright.service");
31
- // Section Screenshot Fallback: screenshotBase64範囲外セクション用Playwrightキャプチャ
32
- const section_screenshot_fallback_service_1 = require("../../services/part/section-screenshot-fallback.service");
33
- // Responsive Analysis Embedding generation
34
- const responsive_analysis_embedding_service_1 = require("../../services/responsive/responsive-analysis-embedding.service");
35
- // Shared types, constants, and helpers from types.ts
36
- const types_1 = require("./types");
37
- // ============================================================================
38
- // Main Phase Function
39
- // ============================================================================
40
- /**
41
- * Phase 5: Embedding Generation
42
- *
43
- * Generates text embeddings (e5-base) and visual embeddings (DINOv2) for all
44
- * analyzed content: sections, motions, backgrounds, JS animations, responsive
45
- * analyses, and parts.
46
- *
47
- * @param params - Embedding phase parameters (job data, save results, etc.)
48
- * @param deps - Injected dependencies (singletons from orchestrator)
49
- * @returns Embedding phase result with generation counts
50
- */
51
- async function processEmbeddingPhase(params, deps) {
52
- const { webPageId, url, job, effectiveToken, effectiveLockDuration, sectionSaveResult, motionSaveResult, jsSaveResult, bgSaveResult, scrollVisionSaveResult, layoutResultForNarrative, motionResultForEmbedding, jsAnimationsForEmbedding, scrollVisionResultForEmbedding, responsiveAnalysisId, partsSavedCount, screenshotBase64, onProgress, } = params;
53
- const { sharedLayoutEmbeddingService, gpuResourceManager, prisma } = deps;
54
- const result = {
55
- sectionEmbeddingsGenerated: 0,
56
- motionEmbeddingsGenerated: 0,
57
- bgEmbeddingsGenerated: 0,
58
- jsAnimationEmbeddingsGenerated: 0,
59
- responsiveEmbeddingsGenerated: 0,
60
- partEmbeddingsGenerated: 0,
61
- partVisualEmbeddingsGenerated: 0,
62
- sectionVisualEmbeddingsGenerated: 0,
63
- embeddingFailedChunks: 0,
64
- completed: false,
65
- };
66
- // Compound progress tracking: accumulate across all 4 embedding sub-phases
67
- // Calculate total expected items for proportional progress reporting
68
- const sectionCount = sectionSaveResult && sectionSaveResult.idMapping.size > 0 && layoutResultForNarrative?.sections
69
- ? layoutResultForNarrative.sections.length
70
- : 0;
71
- const motionCount = motionSaveResult && motionSaveResult.idMapping.size > 0 && motionResultForEmbedding?.patterns
72
- ? motionResultForEmbedding.patterns.length
73
- : 0;
74
- const visionMotionCount = scrollVisionSaveResult &&
75
- scrollVisionSaveResult.idMapping.size > 0 &&
76
- scrollVisionResultForEmbedding
77
- ? scrollVisionResultForEmbedding.scrollTriggeredAnimations.length
78
- : 0;
79
- const bgCount = bgSaveResult && bgSaveResult.ids.length > 0 && layoutResultForNarrative?.backgroundDesigns
80
- ? layoutResultForNarrative.backgroundDesigns.length
81
- : 0;
82
- const jsCount = jsSaveResult && jsSaveResult.idMapping.size > 0 && jsAnimationsForEmbedding
83
- ? jsSaveResult.idMapping.size
84
- : 0;
85
- const totalEmbeddingItems = sectionCount + motionCount + visionMotionCount + bgCount + jsCount;
86
- let completedEmbeddingItems = 0;
87
- /** Report compound embedding progress via parent onProgress callback */
88
- function reportEmbeddingSubProgress(_subCompleted, _subTotal) {
89
- if (!onProgress || totalEmbeddingItems <= 0)
90
- return;
91
- // Each call increments the global counter by 1 item
92
- completedEmbeddingItems++;
93
- try {
94
- onProgress(completedEmbeddingItems, totalEmbeddingItems);
95
- }
96
- catch {
97
- /* fire-and-forget */
98
- }
99
- }
100
- try {
101
- if ((0, logger_1.isDevelopment)()) {
102
- logger_1.logger.info("[PageAnalyzeWorker] Starting embedding generation", {
103
- sectionIdMappingSize: sectionSaveResult?.idMapping?.size ?? 0,
104
- motionIdMappingSize: motionSaveResult?.idMapping?.size ?? 0,
105
- jsIdMappingSize: jsSaveResult?.idMapping?.size ?? 0,
106
- bgIdMappingSize: bgSaveResult?.idMapping?.size ?? 0,
107
- scrollVisionIdMappingSize: scrollVisionSaveResult?.idMapping?.size ?? 0,
108
- });
109
- }
110
- // 1. SectionEmbedding生成(チャンク化: EMBEDDING_CHUNK_SIZE件ごとにdispose+GC)
111
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-sections");
112
- if (sectionSaveResult &&
113
- sectionSaveResult.idMapping.size > 0 &&
114
- layoutResultForNarrative?.sections) {
115
- const allSections = layoutResultForNarrative.sections;
116
- let sectionChunkSize = types_1.EMBEDDING_CHUNK_SIZE;
117
- for (let offset = 0; offset < allSections.length; offset += sectionChunkSize) {
118
- // メモリ圧力チェック: degradation時はチャンクサイズ縮小
119
- const memCheck = (0, types_1.checkMemoryPressure)();
120
- if (memCheck.shouldAbort) {
121
- logger_1.logger.warn("[PageAnalyzeWorker] Critical memory, stopping section embedding", {
122
- rssMb: memCheck.rssMb,
123
- });
124
- break;
125
- }
126
- if (memCheck.shouldDegrade) {
127
- sectionChunkSize = Math.max(5, Math.floor(sectionChunkSize / 2));
128
- logger_1.logger.warn("[PageAnalyzeWorker] Memory pressure, reducing section chunk size", {
129
- rssMb: memCheck.rssMb,
130
- newChunkSize: sectionChunkSize,
131
- });
132
- }
133
- const chunkSections = allSections.slice(offset, offset + sectionChunkSize);
134
- // チャンクごとに lock extension(大量アイテム処理での lockDuration 超過リスク回避)
135
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-sections");
136
- // チャンク用の idMapping サブセットを作成
137
- const chunkIdMapping = new Map();
138
- for (const section of chunkSections) {
139
- const dbId = sectionSaveResult.idMapping.get(section.id);
140
- if (dbId)
141
- chunkIdMapping.set(section.id, dbId);
142
- }
143
- try {
144
- const sectionEmbResult = await (0, embedding_handler_1.generateSectionEmbeddings)(chunkSections, chunkIdMapping, {
145
- webPageId,
146
- onProgress: reportEmbeddingSubProgress,
147
- layoutEmbeddingService: sharedLayoutEmbeddingService,
148
- });
149
- result.sectionEmbeddingsGenerated += sectionEmbResult.generatedCount;
150
- if ((0, logger_1.isDevelopment)()) {
151
- logger_1.logger.info("[PageAnalyzeWorker] SectionEmbeddings chunk completed", {
152
- chunkOffset: offset,
153
- chunkSize: chunkSections.length,
154
- generatedCount: sectionEmbResult.generatedCount,
155
- failedCount: sectionEmbResult.failedCount,
156
- totalSoFar: result.sectionEmbeddingsGenerated,
157
- });
158
- }
159
- }
160
- catch (sectionEmbError) {
161
- result.embeddingFailedChunks++;
162
- logger_1.logger.warn("[PageAnalyzeWorker] SectionEmbedding chunk failed (non-fatal)", {
163
- chunkOffset: offset,
164
- error: sectionEmbError instanceof Error ? sectionEmbError.message : String(sectionEmbError),
165
- });
166
- }
167
- // チャンク間メモリ回復(最終チャンク以外)
168
- if (offset + sectionChunkSize < allSections.length) {
169
- await sharedLayoutEmbeddingService.disposeEmbeddingPipeline();
170
- (0, types_1.tryGarbageCollect)();
171
- // Yield to event loop: allow BullMQ heartbeats and IPC between chunks
172
- await new Promise((resolve) => setImmediate(resolve));
173
- }
174
- }
175
- }
176
- // ONNX session dispose: Section embedding後のメモリ回復
177
- await sharedLayoutEmbeddingService.disposeEmbeddingPipeline();
178
- (0, types_1.tryGarbageCollect)();
179
- // 2. MotionEmbedding生成(チャンク化: EMBEDDING_CHUNK_SIZE件ごとにdispose+GC)
180
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-motions");
181
- if (motionSaveResult &&
182
- motionSaveResult.idMapping.size > 0 &&
183
- motionResultForEmbedding?.patterns) {
184
- const allMotionPatterns = motionResultForEmbedding.patterns;
185
- let motionChunkSize = types_1.EMBEDDING_CHUNK_SIZE;
186
- for (let offset = 0; offset < allMotionPatterns.length; offset += motionChunkSize) {
187
- // メモリ圧力チェック
188
- const memCheck = (0, types_1.checkMemoryPressure)();
189
- if (memCheck.shouldAbort) {
190
- logger_1.logger.warn("[PageAnalyzeWorker] Critical memory, stopping motion embedding", {
191
- rssMb: memCheck.rssMb,
192
- });
193
- break;
194
- }
195
- if (memCheck.shouldDegrade) {
196
- motionChunkSize = Math.max(5, Math.floor(motionChunkSize / 2));
197
- logger_1.logger.warn("[PageAnalyzeWorker] Memory pressure, reducing motion chunk size", {
198
- rssMb: memCheck.rssMb,
199
- newChunkSize: motionChunkSize,
200
- });
201
- }
202
- const chunkPatterns = allMotionPatterns.slice(offset, offset + motionChunkSize);
203
- // チャンクごとに lock extension
204
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-motions");
205
- // チャンク用の idMapping サブセットを作成
206
- const chunkIdMapping = new Map();
207
- for (const pattern of chunkPatterns) {
208
- const dbId = motionSaveResult.idMapping.get(pattern.id);
209
- if (dbId)
210
- chunkIdMapping.set(pattern.id, dbId);
211
- }
212
- try {
213
- const motionEmbResult = await (0, embedding_handler_1.generateMotionEmbeddings)(chunkPatterns, {
214
- webPageId,
215
- sourceUrl: url,
216
- motionPatternIdMapping: chunkIdMapping,
217
- onProgress: reportEmbeddingSubProgress,
218
- });
219
- result.motionEmbeddingsGenerated += motionEmbResult.savedCount;
220
- if ((0, logger_1.isDevelopment)()) {
221
- logger_1.logger.info("[PageAnalyzeWorker] MotionEmbeddings chunk completed", {
222
- chunkOffset: offset,
223
- chunkSize: chunkPatterns.length,
224
- savedCount: motionEmbResult.savedCount,
225
- errorCount: motionEmbResult.errors.length,
226
- totalSoFar: result.motionEmbeddingsGenerated,
227
- });
228
- }
229
- }
230
- catch (motionEmbError) {
231
- result.embeddingFailedChunks++;
232
- logger_1.logger.warn("[PageAnalyzeWorker] MotionEmbedding chunk failed (non-fatal)", {
233
- chunkOffset: offset,
234
- error: motionEmbError instanceof Error ? motionEmbError.message : String(motionEmbError),
235
- });
236
- }
237
- // チャンク間メモリ回復(最終チャンク以外)
238
- if (offset + motionChunkSize < allMotionPatterns.length) {
239
- await sharedLayoutEmbeddingService.disposeEmbeddingPipeline();
240
- (0, types_1.tryGarbageCollect)();
241
- // Yield to event loop: allow BullMQ heartbeats and IPC between chunks
242
- await new Promise((resolve) => setImmediate(resolve));
243
- }
244
- }
245
- }
246
- // 2.5. Vision-detected MotionEmbedding生成(scroll-vision由来、チャンク化対象)
247
- if (scrollVisionSaveResult &&
248
- scrollVisionSaveResult.idMapping.size > 0 &&
249
- scrollVisionResultForEmbedding) {
250
- // vision_detectedパターンをMotionPatternForEmbedding形式に変換
251
- const visionPatterns = scrollVisionResultForEmbedding.scrollTriggeredAnimations.map((animation, index) => ({
252
- id: `vision_detected_${index}`,
253
- name: `Scroll-triggered ${animation.animationType}: ${animation.element.slice(0, 100)}`,
254
- type: "vision_detected",
255
- category: animation.animationType === "parallax"
256
- ? "parallax"
257
- : animation.animationType === "appear"
258
- ? "reveal"
259
- : animation.animationType === "lazy-load"
260
- ? "entrance"
261
- : "scroll_trigger",
262
- trigger: "scroll",
263
- duration: 0,
264
- easing: "unknown",
265
- properties: [],
266
- performance: {
267
- level: "acceptable",
268
- usesTransform: false,
269
- usesOpacity: false,
270
- },
271
- accessibility: {
272
- respectsReducedMotion: false,
273
- },
274
- }));
275
- let visionChunkSize = types_1.EMBEDDING_CHUNK_SIZE;
276
- for (let offset = 0; offset < visionPatterns.length; offset += visionChunkSize) {
277
- const memCheck = (0, types_1.checkMemoryPressure)();
278
- if (memCheck.shouldAbort) {
279
- logger_1.logger.warn("[PageAnalyzeWorker] Critical memory, stopping vision motion embedding", {
280
- rssMb: memCheck.rssMb,
281
- });
282
- break;
283
- }
284
- if (memCheck.shouldDegrade) {
285
- visionChunkSize = Math.max(5, Math.floor(visionChunkSize / 2));
286
- logger_1.logger.warn("[PageAnalyzeWorker] Memory pressure detected, reducing vision-motion chunk size", {
287
- rssMb: memCheck.rssMb,
288
- newChunkSize: visionChunkSize,
289
- });
290
- }
291
- const chunkVisionPatterns = visionPatterns.slice(offset, offset + visionChunkSize);
292
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-motions");
293
- const chunkVisionIdMapping = new Map();
294
- for (const pattern of chunkVisionPatterns) {
295
- const dbId = scrollVisionSaveResult.idMapping.get(pattern.id);
296
- if (dbId)
297
- chunkVisionIdMapping.set(pattern.id, dbId);
298
- }
299
- try {
300
- const visionEmbResult = await (0, embedding_handler_1.generateMotionEmbeddings)(chunkVisionPatterns, {
301
- webPageId,
302
- sourceUrl: url,
303
- motionPatternIdMapping: chunkVisionIdMapping,
304
- onProgress: reportEmbeddingSubProgress,
305
- });
306
- result.motionEmbeddingsGenerated += visionEmbResult.savedCount;
307
- if ((0, logger_1.isDevelopment)()) {
308
- logger_1.logger.info("[PageAnalyzeWorker] Vision-detected MotionEmbeddings chunk completed", {
309
- chunkOffset: offset,
310
- savedCount: visionEmbResult.savedCount,
311
- errorCount: visionEmbResult.errors.length,
312
- });
313
- }
314
- }
315
- catch (visionEmbError) {
316
- result.embeddingFailedChunks++;
317
- logger_1.logger.warn("[PageAnalyzeWorker] Vision-detected MotionEmbedding chunk failed (non-fatal)", {
318
- chunkOffset: offset,
319
- error: visionEmbError instanceof Error ? visionEmbError.message : String(visionEmbError),
320
- });
321
- }
322
- // チャンク間メモリ回復(最終チャンク以外)
323
- if (offset + visionChunkSize < visionPatterns.length) {
324
- await sharedLayoutEmbeddingService.disposeEmbeddingPipeline();
325
- (0, types_1.tryGarbageCollect)();
326
- // Yield to event loop: allow BullMQ heartbeats and IPC between chunks
327
- await new Promise((resolve) => setImmediate(resolve));
328
- }
329
- }
330
- }
331
- // ONNX session dispose: Motion embedding後のメモリ回復
332
- await sharedLayoutEmbeddingService.disposeEmbeddingPipeline();
333
- (0, types_1.tryGarbageCollect)();
334
- // 3. BackgroundDesignEmbedding生成(チャンク化: EMBEDDING_CHUNK_SIZE件ごとにdispose+GC)
335
- // bgSaveResult.ids を使用して name 重複による idMapping 欠落を回避
336
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-backgrounds");
337
- if (bgSaveResult &&
338
- bgSaveResult.ids.length > 0 &&
339
- layoutResultForNarrative?.backgroundDesigns) {
340
- // BackgroundDesignForText形式に変換(全件)
341
- const allBackgroundsForText = layoutResultForNarrative.backgroundDesigns.map((bg) => ({
342
- name: bg.name,
343
- designType: bg.designType,
344
- selector: bg.selector,
345
- colorInfo: bg.colorInfo,
346
- gradientInfo: bg.gradientInfo,
347
- }));
348
- let bgChunkSize = types_1.EMBEDDING_CHUNK_SIZE;
349
- for (let offset = 0; offset < allBackgroundsForText.length; offset += bgChunkSize) {
350
- // メモリ圧力チェック
351
- const memCheck = (0, types_1.checkMemoryPressure)();
352
- if (memCheck.shouldAbort) {
353
- logger_1.logger.warn("[PageAnalyzeWorker] Critical memory, stopping background embedding", {
354
- rssMb: memCheck.rssMb,
355
- });
356
- break;
357
- }
358
- if (memCheck.shouldDegrade) {
359
- bgChunkSize = Math.max(5, Math.floor(bgChunkSize / 2));
360
- logger_1.logger.warn("[PageAnalyzeWorker] Memory pressure, reducing background chunk size", {
361
- rssMb: memCheck.rssMb,
362
- newChunkSize: bgChunkSize,
363
- });
364
- }
365
- const chunkBgs = allBackgroundsForText.slice(offset, offset + bgChunkSize);
366
- const chunkIds = bgSaveResult.ids.slice(offset, offset + bgChunkSize);
367
- // チャンク用の idMapping サブセットを作成
368
- const chunkIdMapping = new Map();
369
- for (const bg of chunkBgs) {
370
- const dbId = bgSaveResult.idMapping.get(bg.name);
371
- if (dbId)
372
- chunkIdMapping.set(bg.name, dbId);
373
- }
374
- // チャンクごとに lock extension
375
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-backgrounds");
376
- try {
377
- const bgEmbResult = await (0, embedding_handler_1.generateBackgroundDesignEmbeddings)(chunkBgs, chunkIdMapping, {
378
- webPageId,
379
- backgroundDesignIds: chunkIds,
380
- onProgress: reportEmbeddingSubProgress,
381
- });
382
- result.bgEmbeddingsGenerated += bgEmbResult.generatedCount;
383
- if ((0, logger_1.isDevelopment)()) {
384
- logger_1.logger.info("[PageAnalyzeWorker] BackgroundDesignEmbeddings chunk completed", {
385
- chunkOffset: offset,
386
- chunkSize: chunkBgs.length,
387
- generatedCount: bgEmbResult.generatedCount,
388
- failedCount: bgEmbResult.failedCount,
389
- totalSoFar: result.bgEmbeddingsGenerated,
390
- });
391
- }
392
- }
393
- catch (bgEmbError) {
394
- result.embeddingFailedChunks++;
395
- logger_1.logger.warn("[PageAnalyzeWorker] BackgroundDesignEmbedding chunk failed (non-fatal)", {
396
- chunkOffset: offset,
397
- error: bgEmbError instanceof Error ? bgEmbError.message : String(bgEmbError),
398
- });
399
- }
400
- // チャンク間メモリ回復(最終チャンク以外)
401
- if (offset + bgChunkSize < allBackgroundsForText.length) {
402
- await sharedLayoutEmbeddingService.disposeEmbeddingPipeline();
403
- (0, types_1.tryGarbageCollect)();
404
- // Yield to event loop: allow BullMQ heartbeats and IPC between chunks
405
- await new Promise((resolve) => setImmediate(resolve));
406
- }
407
- }
408
- }
409
- // ONNX session dispose: Background embedding後のメモリ回復
410
- await sharedLayoutEmbeddingService.disposeEmbeddingPipeline();
411
- (0, types_1.tryGarbageCollect)();
412
- // 4. JSAnimationEmbedding生成(チャンク処理: 50件/バッチでメモリ抑制)
413
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-js-animations");
414
- if (jsSaveResult && jsSaveResult.idMapping.size > 0 && jsAnimationsForEmbedding) {
415
- try {
416
- const jsEmbService = sharedLayoutEmbeddingService;
417
- // チャンク化: 50件ずつ生成+DB保存を繰り返し、メモリを抑制
418
- const embeddingItems = [];
419
- for (const [originalId, dbId] of jsSaveResult.idMapping) {
420
- const memCheck = (0, types_1.checkMemoryPressure)();
421
- if (memCheck.shouldAbort) {
422
- logger_1.logger.warn("[PageAnalyzeWorker] Critical memory, stopping JS animation embedding", {
423
- rssMb: memCheck.rssMb,
424
- });
425
- break;
426
- }
427
- if (memCheck.shouldDegrade) {
428
- logger_1.logger.warn("[PageAnalyzeWorker] Memory pressure detected in JS animation embedding", {
429
- rssMb: memCheck.rssMb,
430
- });
431
- // Note: JSAnimation uses item-by-item processing, not chunk slicing,
432
- // so chunk size reduction is not applicable here. The warning is for monitoring.
433
- }
434
- try {
435
- const textRepresentation = (0, types_1.generateJsAnimationTextRepresentation)(originalId, jsAnimationsForEmbedding);
436
- const embeddingResult = await jsEmbService.generateFromText(textRepresentation);
437
- embeddingItems.push({
438
- originalId,
439
- dbId,
440
- textRepresentation,
441
- embedding: embeddingResult.embedding,
442
- });
443
- // Granular progress: report each JS animation embedding item
444
- try {
445
- reportEmbeddingSubProgress(0, 0);
446
- }
447
- catch {
448
- /* fire-and-forget */
449
- }
450
- // チャンク境界: DB保存してメモリ解放
451
- if (embeddingItems.length >= types_1.JS_ANIMATION_EMBEDDING_CHUNK_SIZE) {
452
- const savedCount = await (0, types_1.saveJsAnimationEmbeddingChunk)(embeddingItems, prisma);
453
- result.jsAnimationEmbeddingsGenerated += savedCount;
454
- if ((0, logger_1.isDevelopment)()) {
455
- logger_1.logger.info("[PageAnalyzeWorker] JSAnimationEmbeddings chunk saved", {
456
- chunkSize: savedCount,
457
- totalSoFar: result.jsAnimationEmbeddingsGenerated,
458
- });
459
- }
460
- embeddingItems.length = 0; // 配列をクリアしてメモリ解放
461
- (0, types_1.tryGarbageCollect)();
462
- // Yield to event loop: allow BullMQ heartbeats and IPC between chunks
463
- await new Promise((resolve) => setImmediate(resolve));
464
- }
465
- }
466
- catch (jsEmbItemError) {
467
- // Granular progress: report failed item too
468
- try {
469
- reportEmbeddingSubProgress(0, 0);
470
- }
471
- catch {
472
- /* fire-and-forget */
473
- }
474
- // Graceful Degradation: 個別パターンの失敗はジョブを止めない
475
- result.embeddingFailedChunks++;
476
- logger_1.logger.warn("[PageAnalyzeWorker] JSAnimationEmbedding item generation failed (non-fatal)", {
477
- originalId,
478
- dbId,
479
- error: jsEmbItemError instanceof Error ? jsEmbItemError.message : String(jsEmbItemError),
480
- });
481
- }
482
- }
483
- // 残りのアイテムを保存
484
- if (embeddingItems.length > 0) {
485
- const savedCount = await (0, types_1.saveJsAnimationEmbeddingChunk)(embeddingItems, prisma);
486
- result.jsAnimationEmbeddingsGenerated += savedCount;
487
- }
488
- if ((0, logger_1.isDevelopment)()) {
489
- logger_1.logger.info("[PageAnalyzeWorker] JSAnimationEmbeddings generated", {
490
- generatedCount: result.jsAnimationEmbeddingsGenerated,
491
- totalPatterns: jsSaveResult.idMapping.size,
492
- });
493
- }
494
- }
495
- catch (jsEmbError) {
496
- result.embeddingFailedChunks++;
497
- logger_1.logger.warn("[PageAnalyzeWorker] JSAnimationEmbedding generation failed (non-fatal)", {
498
- error: jsEmbError instanceof Error ? jsEmbError.message : String(jsEmbError),
499
- });
500
- }
501
- }
502
- // ONNX session dispose: JSAnimation embedding後のメモリ回復
503
- await sharedLayoutEmbeddingService.disposeEmbeddingPipeline();
504
- (0, types_1.tryGarbageCollect)();
505
- // 5. ResponsiveAnalysisEmbedding生成(Phase 4.5でDB保存済みの分析結果にEmbeddingを付与)
506
- if (responsiveAnalysisId) {
507
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-responsive");
508
- try {
509
- const memCheck = (0, types_1.checkMemoryPressure)();
510
- if (!memCheck.shouldAbort) {
511
- const responsiveEmbResult = await (0, responsive_analysis_embedding_service_1.generateResponsiveAnalysisEmbeddings)([responsiveAnalysisId], sharedLayoutEmbeddingService, prisma);
512
- result.responsiveEmbeddingsGenerated = responsiveEmbResult.generatedCount;
513
- if ((0, logger_1.isDevelopment)()) {
514
- logger_1.logger.info("[PageAnalyzeWorker] ResponsiveAnalysisEmbeddings generated", {
515
- generatedCount: responsiveEmbResult.generatedCount,
516
- responsiveAnalysisId,
517
- });
518
- }
519
- }
520
- else {
521
- logger_1.logger.warn("[PageAnalyzeWorker] Critical memory, skipping responsive embedding", {
522
- rssMb: memCheck.rssMb,
523
- });
524
- }
525
- }
526
- catch (respEmbError) {
527
- // Graceful Degradation: responsive embedding失敗はジョブを中断しない
528
- result.embeddingFailedChunks++;
529
- logger_1.logger.warn("[PageAnalyzeWorker] ResponsiveAnalysisEmbedding generation failed (non-fatal)", {
530
- error: respEmbError instanceof Error ? respEmbError.message : String(respEmbError),
531
- });
532
- }
533
- // ONNX session dispose: Responsive embedding後の最終メモリ回復
534
- await sharedLayoutEmbeddingService.disposeEmbeddingPipeline();
535
- (0, types_1.tryGarbageCollect)();
536
- }
537
- // 6. PartEmbedding生成(text-only, Phase 1.1でDB保存済みパーツにテキストEmbeddingを付与)
538
- // ビジュアルEmbedding(DINOv2)はbackfill経由で後から生成
539
- if ((partsSavedCount ?? 0) > 0) {
540
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-parts");
541
- try {
542
- // Query parts from DB (saved in Phase 1.1) that don't have embeddings yet
543
- const partsForEmbedding = (await prisma.componentPart.findMany({
544
- where: {
545
- webPageId,
546
- embedding: { is: null },
547
- },
548
- select: {
549
- id: true,
550
- partType: true,
551
- partSubtype: true,
552
- computedStyles: true,
553
- cssClasses: true,
554
- attributes: true,
555
- interactionInfo: true,
556
- },
557
- }));
558
- if (partsForEmbedding.length > 0) {
559
- if ((0, logger_1.isDevelopment)()) {
560
- logger_1.logger.info("[PageAnalyzeWorker] Starting Part embedding generation", {
561
- totalParts: partsForEmbedding.length,
562
- });
563
- }
564
- let partChunkSize = types_1.EMBEDDING_CHUNK_SIZE;
565
- for (let offset = 0; offset < partsForEmbedding.length; offset += partChunkSize) {
566
- // Memory pressure check
567
- const memCheck = (0, types_1.checkMemoryPressure)();
568
- if (memCheck.shouldAbort) {
569
- logger_1.logger.warn("[PageAnalyzeWorker] Critical memory, stopping part embedding", {
570
- rssMb: memCheck.rssMb,
571
- });
572
- break;
573
- }
574
- if (memCheck.shouldDegrade) {
575
- partChunkSize = Math.max(5, Math.floor(partChunkSize / 2));
576
- logger_1.logger.warn("[PageAnalyzeWorker] Memory pressure, reducing part chunk size", {
577
- rssMb: memCheck.rssMb,
578
- newChunkSize: partChunkSize,
579
- });
580
- }
581
- const chunkParts = partsForEmbedding.slice(offset, offset + partChunkSize);
582
- // Lock extension per chunk
583
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-parts");
584
- try {
585
- const chunkEmbeddings = [];
586
- for (const part of chunkParts) {
587
- try {
588
- // Build ComponentPartForEmbedding from Prisma result (Json → Record cast)
589
- const partForEmb = {
590
- id: part.id,
591
- partType: part.partType,
592
- partSubtype: part.partSubtype,
593
- computedStyles: (part.computedStyles ?? {}),
594
- cssClasses: part.cssClasses,
595
- attributes: (part.attributes ?? {}),
596
- interactionInfo: (part.interactionInfo ?? {}),
597
- };
598
- // Build text representation (returns "passage: ..." prefixed string)
599
- const textRepr = (0, part_embedding_service_1.buildPartTextRepresentation)(partForEmb);
600
- // Strip "passage: " prefix because generateFromText adds it internally
601
- const textForEmbedding = textRepr.startsWith("passage: ")
602
- ? textRepr.slice("passage: ".length)
603
- : textRepr;
604
- const embResult = await sharedLayoutEmbeddingService.generateFromText(textForEmbedding);
605
- chunkEmbeddings.push({
606
- componentPartId: part.id,
607
- visualEmbedding: null, // text-only in worker, visual via backfill
608
- textEmbedding: embResult.embedding,
609
- textRepresentation: textRepr,
610
- });
611
- // Progress reporting
612
- try {
613
- reportEmbeddingSubProgress(0, 0);
614
- }
615
- catch {
616
- /* fire-and-forget */
617
- }
618
- }
619
- catch (partItemError) {
620
- // Per-part failure: continue with others (Graceful Degradation)
621
- try {
622
- reportEmbeddingSubProgress(0, 0);
623
- }
624
- catch {
625
- /* fire-and-forget */
626
- }
627
- logger_1.logger.warn("[PageAnalyzeWorker] Part embedding failed for item (non-fatal)", {
628
- partId: part.id.slice(0, 8) + "...",
629
- error: partItemError instanceof Error
630
- ? partItemError.message
631
- : String(partItemError),
632
- });
633
- }
634
- }
635
- // Save chunk embeddings to DB
636
- if (chunkEmbeddings.length > 0) {
637
- const saveResult = await (0, part_embedding_db_service_1.savePartEmbeddings)(prisma, chunkEmbeddings);
638
- result.partEmbeddingsGenerated += saveResult.savedCount;
639
- }
640
- if ((0, logger_1.isDevelopment)()) {
641
- logger_1.logger.info("[PageAnalyzeWorker] PartEmbeddings chunk completed", {
642
- chunkOffset: offset,
643
- chunkSize: chunkParts.length,
644
- savedCount: chunkEmbeddings.length,
645
- totalSoFar: result.partEmbeddingsGenerated,
646
- });
647
- }
648
- }
649
- catch (partChunkError) {
650
- result.embeddingFailedChunks++;
651
- logger_1.logger.warn("[PageAnalyzeWorker] PartEmbedding chunk failed (non-fatal)", {
652
- chunkOffset: offset,
653
- error: partChunkError instanceof Error ? partChunkError.message : String(partChunkError),
654
- });
655
- }
656
- // Inter-chunk memory recovery (except last chunk)
657
- if (offset + partChunkSize < partsForEmbedding.length) {
658
- await sharedLayoutEmbeddingService.disposeEmbeddingPipeline();
659
- (0, types_1.tryGarbageCollect)();
660
- await new Promise((resolve) => setImmediate(resolve));
661
- }
662
- }
663
- if ((0, logger_1.isDevelopment)()) {
664
- logger_1.logger.info("[PageAnalyzeWorker] PartEmbeddings generation complete", {
665
- generatedCount: result.partEmbeddingsGenerated,
666
- totalParts: partsForEmbedding.length,
667
- });
668
- }
669
- }
670
- }
671
- catch (partEmbError) {
672
- // Graceful Degradation: Part embedding failure does NOT block the job
673
- result.embeddingFailedChunks++;
674
- logger_1.logger.warn("[PageAnalyzeWorker] PartEmbedding generation failed (non-fatal)", {
675
- error: partEmbError instanceof Error ? partEmbError.message : String(partEmbError),
676
- });
677
- }
678
- // ONNX session dispose: Part text embedding後のメモリ回復
679
- await sharedLayoutEmbeddingService.disposeEmbeddingPipeline();
680
- (0, types_1.tryGarbageCollect)();
681
- }
682
- // 7. DINOv2 Visual Embedding生成(Section + Part)
683
- // screenshotBase64が利用可能な場合、DINOv2を1回初期化してSection・Partの両方でvisual embeddingを生成する。
684
- // text_embeddingはあるがvision_embeddingがないセクション、visual_embeddingがないパーツを対象とする。
685
- const hasSections = (sectionSaveResult?.idMapping?.size ?? 0) > 0;
686
- const hasParts = (partsSavedCount ?? 0) > 0;
687
- if (screenshotBase64 && (hasSections || hasParts)) {
688
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-visual-dinov2");
689
- // 0. Playwright でパーツの bounding box を後付け取得(JSDOM は常に {0,0,0,0} を返すため)
690
- if (hasParts) {
691
- try {
692
- const bboxResult = await (0, part_bbox_playwright_service_1.resolvePartBoundingBoxes)({
693
- webPageId,
694
- url,
695
- prisma: prisma,
696
- sharedBrowser: params.sharedBrowser,
697
- viewportWidth: job.data.options?.layoutOptions?.viewport?.width,
698
- viewportHeight: job.data.options?.layoutOptions?.viewport?.height,
699
- });
700
- if ((0, logger_1.isDevelopment)()) {
701
- logger_1.logger.info("[PageAnalyzeWorker] Resolved part bounding boxes via Playwright", {
702
- resolved: bboxResult.resolvedCount,
703
- skipped: bboxResult.skippedCount,
704
- });
705
- }
706
- }
707
- catch (bboxError) {
708
- // Graceful Degradation: bbox resolution failure is non-fatal
709
- logger_1.logger.warn("[PageAnalyzeWorker] Part bounding box resolution failed (non-fatal)", {
710
- error: bboxError instanceof Error ? bboxError.message : String(bboxError),
711
- });
712
- }
713
- }
714
- try {
715
- // 1. screenshotをBufferに変換
716
- // let: 動的Fallback前にメモリ解放のためnull代入が必要
717
- let screenshotBuffer = Buffer.from(screenshotBase64, "base64");
718
- // 2. DINOv2 モデルパスを解決
719
- let dinov2ModelPath;
720
- if (process.env["DINOV2_MODEL_PATH"]) {
721
- dinov2ModelPath = process.env["DINOV2_MODEL_PATH"];
722
- }
723
- else {
724
- const mlMainPath = require.resolve("@reftrixmcp/ml");
725
- const mlRoot = path_1.default.resolve(path_1.default.dirname(mlMainPath), "..");
726
- dinov2ModelPath = path_1.default.join(mlRoot, "models", "dinov2-base", "model.onnx");
727
- }
728
- // 3. GPU確保(DINOv2用)
729
- try {
730
- const dinov2GpuResult = await gpuResourceManager.acquireForDINOv2();
731
- if ((0, logger_1.isDevelopment)()) {
732
- logger_1.logger.info("[PageAnalyzeWorker] GPU acquired for DINOv2 visual embedding", {
733
- mode: dinov2GpuResult.mode,
734
- message: dinov2GpuResult.message,
735
- });
736
- }
737
- }
738
- catch (gpuError) {
739
- logger_1.logger.warn("[PageAnalyzeWorker] GPU acquire for DINOv2 failed, using CPU", {
740
- error: gpuError instanceof Error ? gpuError.message : String(gpuError),
741
- });
742
- }
743
- // 4. DINOv2Serviceを初期化(Section + Partで共用)
744
- const dinov2Service = new ml_1.DINOv2Service({ modelPath: dinov2ModelPath });
745
- await dinov2Service.initialize();
746
- // Get screenshot dimensions for crop bounds clamping(Section + Part共通)
747
- const screenshotMeta = await (0, sharp_1.default)(screenshotBuffer).metadata();
748
- const imgWidth = screenshotMeta.width ?? 0;
749
- const imgHeight = screenshotMeta.height ?? 0;
750
- try {
751
- // ====================================================================
752
- // 5. Section Visual Embedding(DINOv2)
753
- // ====================================================================
754
- if (hasSections) {
755
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-sections-visual");
756
- try {
757
- // 5a. vision_embeddingが未生成のsection_embeddingsをDBから取得
758
- const sectionsNeedingVisual = await prisma.$queryRawUnsafe(`SELECT id, section_pattern_id
759
- FROM section_embeddings
760
- WHERE section_pattern_id IN (
761
- SELECT id FROM section_patterns WHERE web_page_id = $1::uuid
762
- )
763
- AND text_embedding IS NOT NULL
764
- AND vision_embedding IS NULL`, webPageId);
765
- if (sectionsNeedingVisual.length > 0) {
766
- if ((0, logger_1.isDevelopment)()) {
767
- logger_1.logger.info("[PageAnalyzeWorker] Starting Section DINOv2 visual embedding generation", {
768
- totalSections: sectionsNeedingVisual.length,
769
- });
770
- }
771
- // 5b. 対応するsection_patternsからlayoutInfo.position (startY, height) を取得
772
- const sectionPatternIds = sectionsNeedingVisual.map((s) => s.section_pattern_id);
773
- const sectionPatterns = (await prisma.sectionPattern.findMany({
774
- where: { id: { in: sectionPatternIds } },
775
- select: { id: true, layoutInfo: true, sectionType: true },
776
- }));
777
- const sectionPositionMap = new Map();
778
- for (const sp of sectionPatterns) {
779
- const info = sp.layoutInfo;
780
- const position = info?.position;
781
- sectionPositionMap.set(sp.id, {
782
- startY: position?.startY ?? 0,
783
- height: position?.height ?? 0,
784
- sectionType: sp.sectionType,
785
- });
786
- }
787
- // 5c. PII保護: piiRiskLevel='high' のパーツを含むセクションを除外
788
- const highPiiSectionIds = await prisma.$queryRawUnsafe(`SELECT DISTINCT cp.section_pattern_id
789
- FROM component_parts cp
790
- WHERE cp.section_pattern_id IN (${sectionPatternIds.map((_, i) => `$${i + 1}::uuid`).join(", ")})
791
- AND cp.pii_risk_level = 'high'`, ...sectionPatternIds);
792
- const highPiiSectionIdSet = new Set(highPiiSectionIds.map((r) => r.section_pattern_id));
793
- const sectionsFiltered = highPiiSectionIdSet.size > 0
794
- ? sectionsNeedingVisual.filter((s) => !highPiiSectionIdSet.has(s.section_pattern_id))
795
- : sectionsNeedingVisual;
796
- if (highPiiSectionIdSet.size > 0) {
797
- logger_1.logger.warn("[PageAnalyzeWorker] Skipped sections with high PII risk for visual embedding (GDPR Art. 5(1)(c))", {
798
- skippedCount: highPiiSectionIdSet.size,
799
- remainingCount: sectionsFiltered.length,
800
- });
801
- }
802
- // 5d. チャンク処理でcrop→DINOv2→DB保存
803
- const SECTION_FALLBACK_TIMEOUT_MS = 300_000; // 300s cumulative timeout
804
- let sectionFallbackCapturedCount = 0;
805
- // 5d-diag. 診断カウンター
806
- let diagInRangeCount = 0;
807
- let diagFallbackCount = 0;
808
- let diagDynamicCount = 0;
809
- let diagDedupSkipCount = 0;
810
- let diagSkippedCount = 0;
811
- // 5d-pre. フォールバック対象セクションの事前バッチ収集
812
- const fallbackEnabled = (process.env["ENABLE_SECTION_SCREENSHOT_FALLBACK"] ?? "true") === "true";
813
- const fallbackSections = [];
814
- for (const section of sectionsFiltered) {
815
- const sectionPos = sectionPositionMap.get(section.section_pattern_id);
816
- if (!sectionPos || sectionPos.height < 10)
817
- continue;
818
- const sectionTop = Math.max(0, Math.round(sectionPos.startY));
819
- if (sectionTop >= imgHeight) {
820
- fallbackSections.push({
821
- id: section.section_pattern_id,
822
- startY: sectionPos.startY,
823
- height: sectionPos.height,
824
- });
825
- }
826
- }
827
- // 5d-batch. フォールバック対象を1回のバッチ呼び出しで一括キャプチャ
828
- const fallbackScreenshots = new Map();
829
- if (fallbackSections.length > 0 && fallbackEnabled) {
830
- if ((0, logger_1.isDevelopment)()) {
831
- logger_1.logger.info("[PageAnalyzeWorker] Batch capturing fallback section screenshots", {
832
- fallbackSectionCount: fallbackSections.length,
833
- });
834
- }
835
- try {
836
- const fallbackResult = await (0, section_screenshot_fallback_service_1.captureSectionScreenshots)({
837
- url,
838
- sections: fallbackSections,
839
- viewportWidth: job.data.options?.layoutOptions?.viewport?.width ?? 1920,
840
- viewportHeight: job.data.options?.layoutOptions?.viewport?.height ?? 1080,
841
- maxSections: 50,
842
- timeoutMs: SECTION_FALLBACK_TIMEOUT_MS,
843
- sharedBrowser: params.sharedBrowser,
844
- checkMemoryPressure: types_1.checkMemoryPressure,
845
- });
846
- for (const fbResult of fallbackResult.results) {
847
- if (fbResult.screenshotBuffer && !fbResult.skipped) {
848
- fallbackScreenshots.set(fbResult.sectionId, fbResult.screenshotBuffer);
849
- }
850
- }
851
- sectionFallbackCapturedCount = fallbackResult.capturedCount;
852
- }
853
- catch (batchFallbackError) {
854
- logger_1.logger.warn("[PageAnalyzeWorker] Batch section screenshot fallback failed (non-fatal)", {
855
- error: batchFallbackError instanceof Error
856
- ? batchFallbackError.message
857
- : String(batchFallbackError),
858
- });
859
- }
860
- }
861
- // 5d-dedup. Type-aware 重複ベクトル検出用のスライディングウィンドウ
862
- const parsedThreshold = parseFloat(process.env["DUPLICATE_VECTOR_THRESHOLD"] ?? "0.995");
863
- const DUPLICATE_THRESHOLD = Number.isFinite(parsedThreshold)
864
- ? parsedThreshold
865
- : 0.995;
866
- const MAX_RECENT_EMBEDDINGS = 10;
867
- const recentSectionVisualEmbeddings = [];
868
- // 5d-dynamic. 動的Fallbackキュー: 白画像検出セクションを蓄積
869
- const MAX_DYNAMIC_FALLBACK_SECTIONS = 20;
870
- const dynamicFallbackSections = [];
871
- let sectionVisualChunkSize = types_1.EMBEDDING_CHUNK_SIZE;
872
- for (let offset = 0; offset < sectionsFiltered.length; offset += sectionVisualChunkSize) {
873
- // Memory pressure check
874
- const memCheck = (0, types_1.checkMemoryPressure)();
875
- if (memCheck.shouldAbort) {
876
- logger_1.logger.warn("[PageAnalyzeWorker] Critical memory, stopping section visual embedding", { rssMb: memCheck.rssMb });
877
- break;
878
- }
879
- if (memCheck.shouldDegrade) {
880
- sectionVisualChunkSize = Math.max(3, Math.floor(sectionVisualChunkSize / 2));
881
- logger_1.logger.warn("[PageAnalyzeWorker] Memory pressure, reducing section visual chunk size", {
882
- rssMb: memCheck.rssMb,
883
- newChunkSize: sectionVisualChunkSize,
884
- });
885
- }
886
- const chunk = sectionsFiltered.slice(offset, offset + sectionVisualChunkSize);
887
- // Lock extension per chunk
888
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-sections-visual");
889
- for (const section of chunk) {
890
- try {
891
- const sectionPos = sectionPositionMap.get(section.section_pattern_id);
892
- if (!sectionPos || sectionPos.height < 10) {
893
- diagSkippedCount++;
894
- if ((0, logger_1.isDevelopment)()) {
895
- logger_1.logger.info("[PageAnalyzeWorker] Section visual path", {
896
- sectionId: section.section_pattern_id.slice(0, 8) + "...",
897
- path: "skipped",
898
- skipReason: !sectionPos ? "no_position" : "height_too_small",
899
- });
900
- }
901
- continue;
902
- }
903
- const sectionTop = Math.max(0, Math.round(sectionPos.startY));
904
- const isOutOfRange = sectionTop >= imgHeight;
905
- // TDA HIGH-1: acquireSectionCropBuffer でcropパスを一元管理
906
- const cropResult = await (0, types_1.acquireSectionCropBuffer)({
907
- sectionPatternId: section.section_pattern_id,
908
- sectionPos,
909
- screenshotBuffer: screenshotBuffer,
910
- imgWidth,
911
- imgHeight,
912
- fallbackScreenshots,
913
- fallbackEnabled,
914
- dinov2InputSize: ml_1.DINOV2_INPUT_SIZE,
915
- });
916
- if (cropResult.isBlank) {
917
- // 白画像検出: 動的Fallbackキューに蓄積
918
- if (dynamicFallbackSections.length < MAX_DYNAMIC_FALLBACK_SECTIONS) {
919
- dynamicFallbackSections.push({
920
- sectionEmbeddingId: section.id,
921
- sectionPatternId: section.section_pattern_id,
922
- startY: sectionPos.startY,
923
- height: sectionPos.height,
924
- });
925
- }
926
- if ((0, logger_1.isDevelopment)()) {
927
- logger_1.logger.info("[PageAnalyzeWorker] Section visual path", {
928
- sectionId: section.section_pattern_id.slice(0, 8) + "...",
929
- startY: sectionPos.startY,
930
- height: sectionPos.height,
931
- imgHeight,
932
- path: "dynamic",
933
- });
934
- }
935
- continue;
936
- }
937
- if (!cropResult.rawCropBuffer) {
938
- diagSkippedCount++;
939
- if ((0, logger_1.isDevelopment)()) {
940
- logger_1.logger.info("[PageAnalyzeWorker] Section visual path", {
941
- sectionId: section.section_pattern_id.slice(0, 8) + "...",
942
- startY: sectionPos.startY,
943
- height: sectionPos.height,
944
- imgHeight,
945
- path: "skipped",
946
- skipReason: "no_crop_buffer",
947
- });
948
- }
949
- continue;
950
- }
951
- // Generate visual embedding via DINOv2
952
- const visualEmbedding = await (0, part_embedding_service_1.generateVisualEmbedding)(dinov2Service, cropResult.rawCropBuffer);
953
- // Type-aware 重複ベクトル検出
954
- const currentSectionType = sectionPos.sectionType;
955
- const isDuplicateVector = (0, types_1.isDuplicateVisionEmbedding)({
956
- sectionType: currentSectionType,
957
- height: sectionPos.height,
958
- embedding: visualEmbedding,
959
- recentEmbeddings: recentSectionVisualEmbeddings,
960
- threshold: DUPLICATE_THRESHOLD,
961
- });
962
- if (isDuplicateVector) {
963
- diagDedupSkipCount++;
964
- logger_1.logger.warn("[PageAnalyzeWorker] Duplicate vision embedding detected, skipping DB save", {
965
- sectionId: section.section_pattern_id.slice(0, 8) + "...",
966
- sectionType: currentSectionType,
967
- });
968
- if ((0, logger_1.isDevelopment)()) {
969
- logger_1.logger.info("[PageAnalyzeWorker] Section visual path", {
970
- sectionId: section.section_pattern_id.slice(0, 8) + "...",
971
- startY: sectionPos.startY,
972
- height: sectionPos.height,
973
- imgHeight,
974
- path: "dedup",
975
- sectionType: currentSectionType,
976
- });
977
- }
978
- continue;
979
- }
980
- // スライディングウィンドウに追加
981
- recentSectionVisualEmbeddings.push({
982
- embedding: visualEmbedding,
983
- sectionType: currentSectionType,
984
- });
985
- if (recentSectionVisualEmbeddings.length > MAX_RECENT_EMBEDDINGS) {
986
- recentSectionVisualEmbeddings.shift();
987
- }
988
- // Update vision_embedding in DB via raw SQL
989
- const visualVectorString = `[${visualEmbedding.join(",")}]`;
990
- await prisma.$executeRawUnsafe(`UPDATE section_embeddings
991
- SET vision_embedding = $1::vector(768)
992
- WHERE id = $2::uuid`, visualVectorString, section.id);
993
- if (isOutOfRange) {
994
- diagFallbackCount++;
995
- }
996
- else {
997
- diagInRangeCount++;
998
- }
999
- if ((0, logger_1.isDevelopment)()) {
1000
- logger_1.logger.info("[PageAnalyzeWorker] Section visual path", {
1001
- sectionId: section.section_pattern_id.slice(0, 8) + "...",
1002
- startY: sectionPos.startY,
1003
- height: sectionPos.height,
1004
- imgHeight,
1005
- path: isOutOfRange ? "fallback" : "in_range",
1006
- });
1007
- }
1008
- result.sectionVisualEmbeddingsGenerated++;
1009
- }
1010
- catch (sectionVisualError) {
1011
- diagSkippedCount++;
1012
- logger_1.logger.warn("[PageAnalyzeWorker] DINOv2 visual embedding failed for section (non-fatal)", {
1013
- sectionEmbeddingId: section.id.slice(0, 8) + "...",
1014
- error: sectionVisualError instanceof Error
1015
- ? sectionVisualError.message
1016
- : String(sectionVisualError),
1017
- });
1018
- }
1019
- }
1020
- if ((0, logger_1.isDevelopment)()) {
1021
- logger_1.logger.info("[PageAnalyzeWorker] Section visual embedding chunk completed", {
1022
- chunkOffset: offset,
1023
- chunkSize: chunk.length,
1024
- totalVisualSoFar: result.sectionVisualEmbeddingsGenerated,
1025
- });
1026
- }
1027
- // Inter-chunk memory recovery (except last chunk)
1028
- if (offset + sectionVisualChunkSize < sectionsNeedingVisual.length) {
1029
- (0, types_1.tryGarbageCollect)();
1030
- await new Promise((resolve) => setImmediate(resolve));
1031
- }
1032
- }
1033
- // 5d-dynamic-batch. 動的Fallback: 白画像検出セクションをバッチ再キャプチャ
1034
- if (dynamicFallbackSections.length > 0 && fallbackEnabled) {
1035
- const remainingCapacity = Math.max(0, 50 - sectionFallbackCapturedCount);
1036
- const dynamicBatch = dynamicFallbackSections.slice(0, remainingCapacity);
1037
- if (dynamicBatch.length > 0) {
1038
- // 動的FallbackではscreenshotBase64不要 → メモリ解放して圧力軽減
1039
- screenshotBuffer = null;
1040
- if (typeof global.gc === "function") {
1041
- global.gc();
1042
- }
1043
- const memCheckDynamic = (0, types_1.checkMemoryPressure)();
1044
- if (!memCheckDynamic.shouldAbort) {
1045
- if ((0, logger_1.isDevelopment)()) {
1046
- logger_1.logger.info("[PageAnalyzeWorker] Starting dynamic fallback for blank-detected sections", {
1047
- dynamicFallbackCount: dynamicBatch.length,
1048
- remainingCapacity,
1049
- });
1050
- }
1051
- try {
1052
- const dynamicFallbackResult = await (0, section_screenshot_fallback_service_1.captureSectionScreenshots)({
1053
- url,
1054
- sections: dynamicBatch.map((s) => ({
1055
- id: s.sectionPatternId,
1056
- startY: s.startY,
1057
- height: s.height,
1058
- })),
1059
- viewportWidth: job.data.options?.layoutOptions?.viewport?.width ?? 1920,
1060
- viewportHeight: job.data.options?.layoutOptions?.viewport?.height ?? 1080,
1061
- maxSections: remainingCapacity,
1062
- timeoutMs: SECTION_FALLBACK_TIMEOUT_MS,
1063
- sharedBrowser: params.sharedBrowser,
1064
- checkMemoryPressure: types_1.checkMemoryPressure,
1065
- });
1066
- sectionFallbackCapturedCount += dynamicFallbackResult.capturedCount;
1067
- for (const fbResult of dynamicFallbackResult.results) {
1068
- if (fbResult.skipped || !fbResult.screenshotBuffer)
1069
- continue;
1070
- const matchingSection = dynamicBatch.find((s) => s.sectionPatternId === fbResult.sectionId);
1071
- if (!matchingSection)
1072
- continue;
1073
- try {
1074
- const rawCropBuffer = await (0, sharp_1.default)(fbResult.screenshotBuffer)
1075
- .resize(ml_1.DINOV2_INPUT_SIZE, ml_1.DINOV2_INPUT_SIZE, {
1076
- fit: "cover",
1077
- kernel: "cubic",
1078
- })
1079
- .removeAlpha()
1080
- .toColorspace("srgb")
1081
- .raw()
1082
- .toBuffer();
1083
- // LCC MUST-FIX-3: 動的Fallbackスクリーンショットバッファの参照解除
1084
- fbResult.screenshotBuffer = null;
1085
- const visualEmbedding = await (0, part_embedding_service_1.generateVisualEmbedding)(dinov2Service, rawCropBuffer);
1086
- const dynamicSectionPos = sectionPositionMap.get(matchingSection.sectionPatternId);
1087
- const dynamicSectionType = dynamicSectionPos?.sectionType ?? "unknown";
1088
- const isDuplicateVector = (0, types_1.isDuplicateVisionEmbedding)({
1089
- sectionType: dynamicSectionType,
1090
- height: dynamicSectionPos?.height ?? 0,
1091
- embedding: visualEmbedding,
1092
- recentEmbeddings: recentSectionVisualEmbeddings,
1093
- threshold: DUPLICATE_THRESHOLD,
1094
- });
1095
- if (isDuplicateVector) {
1096
- logger_1.logger.warn("[PageAnalyzeWorker] Duplicate vision embedding (dynamic fallback), skipping", {
1097
- sectionId: fbResult.sectionId.slice(0, 8) + "...",
1098
- sectionType: dynamicSectionType,
1099
- });
1100
- continue;
1101
- }
1102
- recentSectionVisualEmbeddings.push({
1103
- embedding: visualEmbedding,
1104
- sectionType: dynamicSectionType,
1105
- });
1106
- if (recentSectionVisualEmbeddings.length > MAX_RECENT_EMBEDDINGS) {
1107
- recentSectionVisualEmbeddings.shift();
1108
- }
1109
- const visualVectorString = `[${visualEmbedding.join(",")}]`;
1110
- await prisma.$executeRawUnsafe(`UPDATE section_embeddings
1111
- SET vision_embedding = $1::vector(768)
1112
- WHERE id = $2::uuid`, visualVectorString, matchingSection.sectionEmbeddingId);
1113
- diagDynamicCount++;
1114
- result.sectionVisualEmbeddingsGenerated++;
1115
- }
1116
- catch (dynamicEmbeddingError) {
1117
- logger_1.logger.warn("[PageAnalyzeWorker] DINOv2 visual embedding failed for dynamic fallback section (non-fatal)", {
1118
- sectionId: fbResult.sectionId.slice(0, 8) + "...",
1119
- error: dynamicEmbeddingError instanceof Error
1120
- ? dynamicEmbeddingError.message
1121
- : String(dynamicEmbeddingError),
1122
- });
1123
- }
1124
- }
1125
- }
1126
- catch (dynamicFallbackError) {
1127
- logger_1.logger.warn("[PageAnalyzeWorker] Dynamic section screenshot fallback failed (non-fatal)", {
1128
- error: dynamicFallbackError instanceof Error
1129
- ? dynamicFallbackError.message
1130
- : String(dynamicFallbackError),
1131
- });
1132
- }
1133
- }
1134
- else {
1135
- logger_1.logger.warn("[PageAnalyzeWorker] Skipping dynamic fallback due to memory pressure", {
1136
- rssMb: memCheckDynamic.rssMb,
1137
- dynamicFallbackCount: dynamicBatch.length,
1138
- });
1139
- }
1140
- }
1141
- }
1142
- // 5d-diag-summary. セクション visual embedding 処理パスサマリーログ
1143
- logger_1.logger.info("[PageAnalyzeWorker] Section visual embedding path summary", {
1144
- totalSections: sectionsNeedingVisual.length,
1145
- inRangeCount: diagInRangeCount,
1146
- fallbackCount: diagFallbackCount,
1147
- dynamicCount: diagDynamicCount,
1148
- dedupSkipCount: diagDedupSkipCount,
1149
- skippedCount: diagSkippedCount,
1150
- totalGenerated: result.sectionVisualEmbeddingsGenerated,
1151
- fallbackCaptured: sectionFallbackCapturedCount,
1152
- });
1153
- }
1154
- }
1155
- catch (sectionVisualError) {
1156
- result.embeddingFailedChunks++;
1157
- logger_1.logger.warn("[PageAnalyzeWorker] Section DINOv2 visual embedding failed (non-fatal)", {
1158
- error: sectionVisualError instanceof Error
1159
- ? sectionVisualError.message
1160
- : String(sectionVisualError),
1161
- });
1162
- }
1163
- // Memory recovery between section and part visual embedding
1164
- (0, types_1.tryGarbageCollect)();
1165
- }
1166
- // ====================================================================
1167
- // 6. Part Visual Embedding(DINOv2)
1168
- // ====================================================================
1169
- if (hasParts) {
1170
- const partsWithEmbeddings = (await prisma.componentPart.findMany({
1171
- where: {
1172
- webPageId,
1173
- piiRiskLevel: { not: "high" },
1174
- embedding: { isNot: null },
1175
- },
1176
- select: {
1177
- id: true,
1178
- boundingBox: true,
1179
- sectionPatternId: true,
1180
- embedding: { select: { id: true } },
1181
- },
1182
- }));
1183
- // Check which parts already have visual_embedding via raw SQL
1184
- let partsNeedingVisual = [];
1185
- if (partsWithEmbeddings.length > 0) {
1186
- const embeddingIds = partsWithEmbeddings
1187
- .filter((p) => p.embedding !== null)
1188
- .map((p) => p.embedding.id);
1189
- if (embeddingIds.length > 0) {
1190
- const nullVisualRows = await prisma.$queryRawUnsafe(`SELECT id FROM component_part_embeddings
1191
- WHERE id = ANY($1::uuid[]) AND visual_embedding IS NULL`, embeddingIds);
1192
- const nullVisualIds = new Set(nullVisualRows.map((r) => r.id));
1193
- partsNeedingVisual = partsWithEmbeddings
1194
- .filter((p) => p.embedding !== null && nullVisualIds.has(p.embedding.id))
1195
- .map((p) => ({
1196
- id: p.id,
1197
- boundingBox: p.boundingBox,
1198
- sectionPatternId: p.sectionPatternId,
1199
- embeddingId: p.embedding.id,
1200
- }));
1201
- }
1202
- }
1203
- if (partsNeedingVisual.length > 0 && screenshotBuffer) {
1204
- if ((0, logger_1.isDevelopment)()) {
1205
- logger_1.logger.info("[PageAnalyzeWorker] Starting DINOv2 part visual embedding generation", {
1206
- totalParts: partsNeedingVisual.length,
1207
- });
1208
- }
1209
- const uniqueSectionIds = [
1210
- ...new Set(partsNeedingVisual.map((p) => p.sectionPatternId)),
1211
- ];
1212
- const sectionPositions = (await prisma.sectionPattern.findMany({
1213
- where: { id: { in: uniqueSectionIds } },
1214
- select: { id: true, layoutInfo: true },
1215
- }));
1216
- const sectionStartYMap = new Map();
1217
- for (const s of sectionPositions) {
1218
- const info = s.layoutInfo;
1219
- const position = info?.position;
1220
- sectionStartYMap.set(s.id, position?.startY ?? 0);
1221
- }
1222
- let visualChunkSize = types_1.EMBEDDING_CHUNK_SIZE;
1223
- for (let offset = 0; offset < partsNeedingVisual.length; offset += visualChunkSize) {
1224
- const memCheck = (0, types_1.checkMemoryPressure)();
1225
- if (memCheck.shouldAbort) {
1226
- logger_1.logger.warn("[PageAnalyzeWorker] Critical memory, stopping part visual embedding", { rssMb: memCheck.rssMb });
1227
- break;
1228
- }
1229
- if (memCheck.shouldDegrade) {
1230
- visualChunkSize = Math.max(3, Math.floor(visualChunkSize / 2));
1231
- logger_1.logger.warn("[PageAnalyzeWorker] Memory pressure, reducing part visual chunk size", {
1232
- rssMb: memCheck.rssMb,
1233
- newChunkSize: visualChunkSize,
1234
- });
1235
- }
1236
- const chunk = partsNeedingVisual.slice(offset, offset + visualChunkSize);
1237
- await (0, types_1.extendJobLock)(job, effectiveToken, effectiveLockDuration, "embedding-parts-visual");
1238
- for (const part of chunk) {
1239
- try {
1240
- const bbox = part.boundingBox;
1241
- if (!bbox ||
1242
- typeof bbox.width !== "number" ||
1243
- typeof bbox.height !== "number" ||
1244
- bbox.width <= 0 ||
1245
- bbox.height <= 0) {
1246
- continue;
1247
- }
1248
- const sectionStartY = sectionStartYMap.get(part.sectionPatternId) ?? 0;
1249
- const absoluteBbox = {
1250
- x: bbox.x ?? 0,
1251
- y: (bbox.y ?? 0) + sectionStartY,
1252
- width: bbox.width,
1253
- height: bbox.height,
1254
- };
1255
- const left = Math.max(0, Math.round(absoluteBbox.x));
1256
- const top = Math.max(0, Math.round(absoluteBbox.y));
1257
- const cropWidth = Math.min(Math.round(absoluteBbox.width), Math.max(1, imgWidth - left));
1258
- const cropHeight = Math.min(Math.round(absoluteBbox.height), Math.max(1, imgHeight - top));
1259
- if (cropWidth <= 0 || cropHeight <= 0)
1260
- continue;
1261
- const rawCropBuffer = await (0, sharp_1.default)(screenshotBuffer)
1262
- .extract({ left, top, width: cropWidth, height: cropHeight })
1263
- .resize(ml_1.DINOV2_INPUT_SIZE, ml_1.DINOV2_INPUT_SIZE, {
1264
- fit: "cover",
1265
- kernel: "cubic",
1266
- })
1267
- .removeAlpha()
1268
- .toColorspace("srgb")
1269
- .raw()
1270
- .toBuffer();
1271
- const visualEmbedding = await (0, part_embedding_service_1.generateVisualEmbedding)(dinov2Service, rawCropBuffer);
1272
- const visualVectorString = `[${visualEmbedding.join(",")}]`;
1273
- await prisma.$executeRawUnsafe(`UPDATE component_part_embeddings
1274
- SET visual_embedding = $1::vector(768)
1275
- WHERE id = $2::uuid`, visualVectorString, part.embeddingId);
1276
- result.partVisualEmbeddingsGenerated++;
1277
- }
1278
- catch (partVisualError) {
1279
- logger_1.logger.warn("[PageAnalyzeWorker] DINOv2 visual embedding failed for part (non-fatal)", {
1280
- partId: part.id.slice(0, 8) + "...",
1281
- error: partVisualError instanceof Error
1282
- ? partVisualError.message
1283
- : String(partVisualError),
1284
- });
1285
- }
1286
- }
1287
- if ((0, logger_1.isDevelopment)()) {
1288
- logger_1.logger.info("[PageAnalyzeWorker] Part visual embedding chunk completed", {
1289
- chunkOffset: offset,
1290
- chunkSize: chunk.length,
1291
- totalVisualSoFar: result.partVisualEmbeddingsGenerated,
1292
- });
1293
- }
1294
- if (offset + visualChunkSize < partsNeedingVisual.length) {
1295
- (0, types_1.tryGarbageCollect)();
1296
- await new Promise((resolve) => setImmediate(resolve));
1297
- }
1298
- }
1299
- if ((0, logger_1.isDevelopment)()) {
1300
- logger_1.logger.info("[PageAnalyzeWorker] DINOv2 part visual embedding generation complete", {
1301
- generatedCount: result.partVisualEmbeddingsGenerated,
1302
- totalParts: partsNeedingVisual.length,
1303
- });
1304
- }
1305
- }
1306
- }
1307
- }
1308
- finally {
1309
- // 7. DINOv2 dispose(必ず実行、Section + Part完了後)
1310
- try {
1311
- await dinov2Service.dispose();
1312
- }
1313
- catch {
1314
- // dispose failure is non-fatal
1315
- }
1316
- (0, types_1.tryGarbageCollect)();
1317
- }
1318
- }
1319
- catch (visualEmbError) {
1320
- result.embeddingFailedChunks++;
1321
- logger_1.logger.warn("[PageAnalyzeWorker] DINOv2 visual embedding failed (non-fatal)", {
1322
- error: visualEmbError instanceof Error ? visualEmbError.message : String(visualEmbError),
1323
- });
1324
- }
1325
- }
1326
- result.completed = true;
1327
- }
1328
- catch (embeddingError) {
1329
- // Graceful Degradation: Embedding失敗はジョブを中断しない
1330
- result.embeddingFailedChunks++;
1331
- logger_1.logger.warn("[PageAnalyzeWorker] Embedding generation failed (non-fatal)", {
1332
- error: embeddingError instanceof Error ? embeddingError.message : String(embeddingError),
1333
- });
1334
- }
1335
- if (result.embeddingFailedChunks > 0) {
1336
- logger_1.logger.warn("[PageAnalyzeWorker] Embedding phase completed with failures", {
1337
- embeddingFailedChunks: result.embeddingFailedChunks,
1338
- sectionEmbeddingsGenerated: result.sectionEmbeddingsGenerated,
1339
- sectionVisualEmbeddingsGenerated: result.sectionVisualEmbeddingsGenerated,
1340
- motionEmbeddingsGenerated: result.motionEmbeddingsGenerated,
1341
- bgEmbeddingsGenerated: result.bgEmbeddingsGenerated,
1342
- jsAnimationEmbeddingsGenerated: result.jsAnimationEmbeddingsGenerated,
1343
- responsiveEmbeddingsGenerated: result.responsiveEmbeddingsGenerated,
1344
- partEmbeddingsGenerated: result.partEmbeddingsGenerated,
1345
- partVisualEmbeddingsGenerated: result.partVisualEmbeddingsGenerated,
1346
- });
1347
- }
1348
- return result;
1349
- }
1350
- //# sourceMappingURL=phase-5-embedding.js.map