@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,1308 +0,0 @@
1
- "use strict";
2
- // SPDX-FileCopyrightText: 2026 TKMD and Reftrix Contributors
3
- // SPDX-License-Identifier: AGPL-3.0-only
4
- Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.layoutIngestToolDefinition = void 0;
6
- exports.setLayoutIngestServiceFactory = setLayoutIngestServiceFactory;
7
- exports.resetLayoutIngestServiceFactory = resetLayoutIngestServiceFactory;
8
- exports.layoutIngestHandler = layoutIngestHandler;
9
- /**
10
- * layout.ingest MCPツール
11
- * URLからWebページのHTML・スクリーンショットを取得し、レイアウト解析用データを準備
12
- *
13
- * セキュリティ要件:
14
- * - SSRF対策: プライベートIP、localhost、メタデータサービスへのアクセスをブロック
15
- * - HTMLサニタイズ: DOMPurifyでスクリプト・危険タグを除去
16
- *
17
- * @see /docs/plans/webdesign/01-page-ingest.md
18
- */
19
- const zod_1 = require("zod");
20
- const uuid_1 = require("uuid");
21
- const database_1 = require("@reftrixmcp/database");
22
- const logger_1 = require("../../utils/logger");
23
- const url_validator_1 = require("../../utils/url-validator");
24
- const url_normalizer_1 = require("../../utils/url-normalizer");
25
- const html_sanitizer_1 = require("../../utils/html-sanitizer");
26
- const page_ingest_adapter_1 = require("../../services/page-ingest-adapter");
27
- const external_css_fetcher_1 = require("../../services/external-css-fetcher");
28
- const error_messages_1 = require("../../utils/error-messages");
29
- const schemas_1 = require("./schemas");
30
- const crypto_1 = require("crypto");
31
- const layout_analyzer_service_1 = require("../../services/page/layout-analyzer.service");
32
- const responsive_1 = require("../../services/responsive");
33
- // =============================================
34
- // 定数定義
35
- // =============================================
36
- /** デフォルトのレスポンスサイズ制限(1MB) */
37
- const DEFAULT_RESPONSE_SIZE_LIMIT = 1000000;
38
- /** 自動最適化時のHTML最大サイズ(20KB) */
39
- const AUTO_OPTIMIZE_HTML_MAX_SIZE = 20000;
40
- /** 自動最適化時のHTMLトリミングマーカー */
41
- const AUTO_OPTIMIZE_TRUNCATION_MARKER = "\n<!-- truncated by auto_optimize -->";
42
- /** デフォルトのingestタイムアウト(30秒) */
43
- const DEFAULT_INGEST_TIMEOUT = 30000;
44
- // =============================================
45
- // ヘルパー関数
46
- // =============================================
47
- /**
48
- * Promiseにタイムアウトを追加するラッパー関数
49
- * WebGLサイトでChromiumがハングした場合でもタイムアウトを強制する
50
- *
51
- * @param promise - タイムアウトを追加するPromise
52
- * @param timeoutMs - タイムアウト時間(ミリ秒)
53
- * @param operationName - タイムアウト時のエラーメッセージに含める操作名
54
- * @returns タイムアウト付きのPromise
55
- */
56
- async function withTimeout(promise, timeoutMs, operationName) {
57
- let timeoutId;
58
- const timeoutPromise = new Promise((_, reject) => {
59
- timeoutId = setTimeout(() => {
60
- reject(new Error(`Operation '${operationName}' timed out after ${timeoutMs}ms`));
61
- }, timeoutMs);
62
- });
63
- try {
64
- const result = await Promise.race([promise, timeoutPromise]);
65
- clearTimeout(timeoutId);
66
- return result;
67
- }
68
- catch (error) {
69
- clearTimeout(timeoutId);
70
- throw error;
71
- }
72
- }
73
- /** サービスファクトリ関数 */
74
- let ingestServiceFactory = null;
75
- /**
76
- * サービスファクトリを設定(テスト用)
77
- */
78
- function setLayoutIngestServiceFactory(factory) {
79
- ingestServiceFactory = factory;
80
- }
81
- /**
82
- * サービスファクトリをリセット(テスト用)
83
- */
84
- function resetLayoutIngestServiceFactory() {
85
- ingestServiceFactory = null;
86
- }
87
- // =============================================
88
- // HTML最適化関数
89
- // =============================================
90
- /**
91
- * HTMLからscript/styleタグを除去し、空白を圧縮する
92
- * 自動最適化時にHTMLサイズを削減するために使用
93
- */
94
- function optimizeHtml(html) {
95
- let optimized = html;
96
- // scriptタグを除去(インライン含む)
97
- optimized = optimized.replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, "");
98
- // styleタグを除去
99
- optimized = optimized.replace(/<style\b[^<]*(?:(?!<\/style>)<[^<]*)*<\/style>/gi, "");
100
- // noscriptタグを除去
101
- optimized = optimized.replace(/<noscript\b[^<]*(?:(?!<\/noscript>)<[^<]*)*<\/noscript>/gi, "");
102
- // HTMLコメントを除去
103
- optimized = optimized.replace(/<!--[\s\S]*?-->/g, "");
104
- // 連続する空白を1つに圧縮
105
- optimized = optimized.replace(/[ \t]+/g, " ");
106
- // 連続する改行を2つ以下に圧縮
107
- optimized = optimized.replace(/\n{3,}/g, "\n\n");
108
- // 行頭・行末の空白を削除
109
- optimized = optimized.replace(/^\s+|\s+$/gm, "");
110
- // 空行を削除
111
- optimized = optimized.replace(/\n\s*\n/g, "\n");
112
- return optimized.trim();
113
- }
114
- /**
115
- * HTMLを指定バイト数でトリミングする(UTF-8対応)
116
- */
117
- function truncateHtmlToBytes(html, maxBytes, marker) {
118
- const htmlBytes = new TextEncoder().encode(html);
119
- if (htmlBytes.length <= maxBytes) {
120
- return html;
121
- }
122
- const markerBytes = new TextEncoder().encode(marker);
123
- const targetByteLength = Math.max(0, maxBytes - markerBytes.length);
124
- const truncatedBytes = htmlBytes.slice(0, targetByteLength);
125
- return new TextDecoder().decode(truncatedBytes) + marker;
126
- }
127
- /**
128
- * セクションからテキスト表現を生成(Embedding生成用)
129
- */
130
- function sectionToTextRepresentation(section) {
131
- const parts = [];
132
- // セクションタイプ
133
- parts.push(`${section.type} section`);
134
- // 見出し
135
- if (section.content.headings.length > 0) {
136
- const headingTexts = section.content.headings.map((h) => h.text).join(", ");
137
- parts.push(`with headings: ${headingTexts}`);
138
- }
139
- // ボタン
140
- if (section.content.buttons.length > 0) {
141
- const buttonTexts = section.content.buttons.map((b) => b.text).join(", ");
142
- parts.push(`buttons: ${buttonTexts}`);
143
- }
144
- // 段落(最初の1つのみ)
145
- if (section.content.paragraphs.length > 0) {
146
- const firstParagraph = section.content.paragraphs[0];
147
- if (firstParagraph && firstParagraph.length > 0) {
148
- const truncated = firstParagraph.length > 100 ? firstParagraph.substring(0, 100) + "..." : firstParagraph;
149
- parts.push(`content: "${truncated}"`);
150
- }
151
- }
152
- // スタイル情報
153
- const styleInfo = [];
154
- if (section.style.backgroundColor) {
155
- styleInfo.push(`background ${section.style.backgroundColor}`);
156
- }
157
- if (section.style.textColor) {
158
- styleInfo.push(`text color ${section.style.textColor}`);
159
- }
160
- if (section.style.hasGradient) {
161
- styleInfo.push("gradient");
162
- }
163
- if (styleInfo.length > 0) {
164
- parts.push(`style: ${styleInfo.join(", ")}`);
165
- }
166
- // 画像
167
- if (section.content.images.length > 0) {
168
- parts.push(`${section.content.images.length} image(s)`);
169
- }
170
- // リンク
171
- if (section.content.links.length > 0) {
172
- parts.push(`${section.content.links.length} link(s)`);
173
- }
174
- return parts.join(". ") + ".";
175
- }
176
- // =============================================
177
- // エラー判定ヘルパー
178
- // =============================================
179
- /**
180
- * エラーメッセージからエラーコードを判定
181
- */
182
- function determineErrorCode(error) {
183
- const message = typeof error === "string" ? error : error.message;
184
- const lowerMessage = message.toLowerCase();
185
- // タイムアウトエラー
186
- if (lowerMessage.includes("timeout") ||
187
- lowerMessage.includes("navigation timeout") ||
188
- lowerMessage.includes("timed out")) {
189
- return schemas_1.LAYOUT_MCP_ERROR_CODES.TIMEOUT_ERROR;
190
- }
191
- // ネットワークエラー
192
- if (lowerMessage.includes("net::") ||
193
- lowerMessage.includes("econnrefused") ||
194
- lowerMessage.includes("enotfound") ||
195
- lowerMessage.includes("name_not_resolved") ||
196
- lowerMessage.includes("network") ||
197
- lowerMessage.includes("dns")) {
198
- return schemas_1.LAYOUT_MCP_ERROR_CODES.NETWORK_ERROR;
199
- }
200
- // ブラウザエラー
201
- if (lowerMessage.includes("browser") ||
202
- lowerMessage.includes("browser has been closed") ||
203
- lowerMessage.includes("context has been closed") ||
204
- lowerMessage.includes("page has been closed")) {
205
- return schemas_1.LAYOUT_MCP_ERROR_CODES.BROWSER_ERROR;
206
- }
207
- // HTTPエラー
208
- if (lowerMessage.includes("http ") ||
209
- lowerMessage.includes("status") ||
210
- lowerMessage.includes("404") ||
211
- lowerMessage.includes("500")) {
212
- return schemas_1.LAYOUT_MCP_ERROR_CODES.HTTP_ERROR;
213
- }
214
- // その他は内部エラー
215
- return schemas_1.LAYOUT_MCP_ERROR_CODES.INTERNAL_ERROR;
216
- }
217
- /**
218
- * エラーメッセージをユーザーフレンドリーに変換
219
- */
220
- function formatErrorMessage(code, originalMessage) {
221
- switch (code) {
222
- case schemas_1.LAYOUT_MCP_ERROR_CODES.TIMEOUT_ERROR:
223
- return `Page load timeout: ${originalMessage}`;
224
- case schemas_1.LAYOUT_MCP_ERROR_CODES.NETWORK_ERROR:
225
- return `Network error: Unable to reach the specified URL`;
226
- case schemas_1.LAYOUT_MCP_ERROR_CODES.BROWSER_ERROR:
227
- return `Browser error: ${originalMessage}`;
228
- case schemas_1.LAYOUT_MCP_ERROR_CODES.HTTP_ERROR:
229
- return `HTTP error: ${originalMessage}`;
230
- default:
231
- return `Internal error: ${originalMessage}`;
232
- }
233
- }
234
- // =============================================
235
- // メインハンドラー
236
- // =============================================
237
- /**
238
- * layout.ingest ツールハンドラー
239
- *
240
- * @param input - 入力パラメータ
241
- * @returns レイアウトインジェスト結果
242
- *
243
- * @example
244
- * ```typescript
245
- * const result = await layoutIngestHandler({
246
- * url: 'https://awwwards.com/sites/example',
247
- * source_type: 'award_gallery',
248
- * usage_scope: 'inspiration_only',
249
- * options: {
250
- * fullPage: true,
251
- * viewport: { width: 1920, height: 1080 },
252
- * },
253
- * });
254
- * ```
255
- */
256
- async function layoutIngestHandler(input) {
257
- // 開発環境でのログ出力 - デバッグ用に詳細な入力情報を出力
258
- if ((0, logger_1.isDevelopment)()) {
259
- logger_1.logger.info("[MCP Tool] layout.ingest called", {
260
- url: input?.url,
261
- });
262
- // DEBUG: 入力値の詳細をログ出力(型情報含む)
263
- const rawOptions = input?.options;
264
- logger_1.logger.debug("[MCP Tool] layout.ingest raw input", {
265
- rawInput: JSON.stringify(input),
266
- inputOptions: JSON.stringify(rawOptions),
267
- optionsType: typeof rawOptions,
268
- optionsIsString: typeof rawOptions === "string",
269
- });
270
- }
271
- // MCP経由でoptionsがJSON文字列として渡される場合の前処理
272
- let processedInput = input;
273
- if (input && typeof input === "object") {
274
- const inputObj = input;
275
- if (typeof inputObj.options === "string") {
276
- try {
277
- const parsedOptions = JSON.parse(inputObj.options);
278
- processedInput = { ...inputObj, options: parsedOptions };
279
- if ((0, logger_1.isDevelopment)()) {
280
- logger_1.logger.debug("[MCP Tool] layout.ingest options parsed from string", {
281
- originalOptions: inputObj.options,
282
- parsedOptions: JSON.stringify(parsedOptions),
283
- });
284
- }
285
- }
286
- catch {
287
- // JSON解析に失敗した場合は元の入力をそのまま使用
288
- if ((0, logger_1.isDevelopment)()) {
289
- logger_1.logger.warn("[MCP Tool] layout.ingest options string parse failed", {
290
- options: inputObj.options,
291
- });
292
- }
293
- }
294
- }
295
- // 後方互換性: camelCaseパラメータをsnake_caseに正規化
296
- // MCP命名規約ではsnake_caseを使用するが、既存クライアントのために両方受け入れる
297
- const processedObj = processedInput;
298
- if (processedObj.options && typeof processedObj.options === "object") {
299
- const opts = processedObj.options;
300
- const normalizedOpts = { ...opts };
301
- // camelCase -> snake_case マッピング
302
- const camelToSnakeMap = {
303
- fullPage: "full_page",
304
- waitForSelector: "wait_for_selector",
305
- disableJavaScript: "disable_javascript",
306
- disableWebGL: "disable_webgl",
307
- forceKillOnTimeout: "force_kill_on_timeout",
308
- includeHtml: "include_html",
309
- includeScreenshot: "include_screenshot",
310
- };
311
- for (const [camelKey, snakeKey] of Object.entries(camelToSnakeMap)) {
312
- if (camelKey in opts && !(snakeKey in opts)) {
313
- normalizedOpts[snakeKey] = opts[camelKey];
314
- delete normalizedOpts[camelKey];
315
- if ((0, logger_1.isDevelopment)()) {
316
- logger_1.logger.debug("[MCP Tool] layout.ingest deprecated param normalized", {
317
- from: camelKey,
318
- to: snakeKey,
319
- });
320
- }
321
- }
322
- }
323
- processedInput = { ...processedObj, options: normalizedOpts };
324
- }
325
- }
326
- // 入力バリデーション
327
- let validated;
328
- try {
329
- validated = schemas_1.layoutIngestInputSchema.parse(processedInput);
330
- }
331
- catch (error) {
332
- if (error instanceof zod_1.ZodError) {
333
- // 拡張エラーメッセージユーティリティを使用(ヒント付き)
334
- const errorWithHints = (0, error_messages_1.createValidationErrorWithHints)(error, "layout.ingest");
335
- const detailedMessage = (0, error_messages_1.formatMultipleDetailedErrors)(errorWithHints.errors);
336
- // 後方互換性のため旧形式も保持
337
- const formattedErrors = (0, error_messages_1.formatZodError)(error);
338
- if ((0, logger_1.isDevelopment)()) {
339
- logger_1.logger.error("[MCP Tool] layout.ingest validation error", {
340
- errors: errorWithHints.errors,
341
- });
342
- }
343
- return {
344
- success: false,
345
- error: {
346
- code: schemas_1.LAYOUT_MCP_ERROR_CODES.VALIDATION_ERROR,
347
- message: `Validation error:\n${detailedMessage}`,
348
- details: {
349
- errors: formattedErrors,
350
- detailedErrors: errorWithHints.errors,
351
- },
352
- },
353
- };
354
- }
355
- throw error;
356
- }
357
- // DEBUG: バリデーション後の値をログ出力
358
- if ((0, logger_1.isDevelopment)()) {
359
- logger_1.logger.debug("[MCP Tool] layout.ingest validated input", {
360
- validatedOptions: JSON.stringify(validated.options),
361
- include_html: validated.options?.include_html,
362
- include_screenshot: validated.options?.include_screenshot,
363
- });
364
- }
365
- // SSRF対策: URL検証
366
- const urlValidation = (0, url_validator_1.validateExternalUrl)(validated.url);
367
- if (!urlValidation.valid) {
368
- if ((0, logger_1.isDevelopment)()) {
369
- logger_1.logger.warn("[MCP Tool] layout.ingest SSRF blocked", {
370
- url: validated.url,
371
- reason: urlValidation.error,
372
- });
373
- }
374
- return {
375
- success: false,
376
- error: {
377
- code: schemas_1.LAYOUT_MCP_ERROR_CODES.SSRF_BLOCKED,
378
- message: urlValidation.error ?? "URL is blocked for security reasons",
379
- },
380
- };
381
- }
382
- try {
383
- // レスポンス最適化オプションを取得(DB-first: デフォルトでレスポンスサイズ削減)
384
- const includeHtml = validated.options?.include_html ?? false;
385
- const includeScreenshot = validated.options?.include_screenshot ?? false;
386
- const truncateHtmlBytes = validated.options?.truncate_html_bytes;
387
- const screenshotFormat = validated.options?.screenshot_format ?? "png";
388
- const screenshotQuality = validated.options?.screenshot_quality;
389
- const screenshotMaxWidth = validated.options?.screenshot_max_width;
390
- const screenshotMaxHeight = validated.options?.screenshot_max_height;
391
- const autoOptimize = validated.options?.auto_optimize ?? false;
392
- const responseSizeLimit = validated.options?.response_size_limit;
393
- const saveToDb = validated.options?.save_to_db ?? false;
394
- // PageIngestAdapterを使用してページを取得
395
- // undefinedプロパティを除外してオプションを構築
396
- const ingestOptions = {
397
- url: validated.url,
398
- fullPage: validated.options?.full_page ?? true,
399
- sourceType: validated.source_type,
400
- usageScope: validated.usage_scope,
401
- // WebGL/3Dサイト対応: 適応的待機戦略(デフォルト有効)
402
- // Canvas/WebGL検出、Three.js等3Dライブラリ検出、フレームレート安定化待機
403
- // wait_untilがデフォルトの'load'の場合、自動的に'domcontentloaded'に変更される
404
- adaptiveWebGLWait: true,
405
- };
406
- // 明示的に指定されたオプションのみを追加
407
- if (validated.options?.viewport) {
408
- ingestOptions.viewport = validated.options.viewport;
409
- }
410
- if (validated.options?.wait_for_selector) {
411
- ingestOptions.waitForSelector = validated.options.wait_for_selector;
412
- }
413
- if (validated.options?.timeout !== undefined) {
414
- ingestOptions.timeout = validated.options.timeout;
415
- }
416
- if (validated.options?.disable_javascript !== undefined) {
417
- ingestOptions.disableJavaScript = validated.options.disable_javascript;
418
- }
419
- // wait_untilが'load'以外の場合のみ明示的に設定
420
- // 'load'の場合はadaptiveWebGLWait機能によりWebGLサイトで自動的に'domcontentloaded'に変更される
421
- if (validated.options?.wait_until !== undefined && validated.options.wait_until !== "load") {
422
- ingestOptions.waitUntil = validated.options.wait_until;
423
- }
424
- // DOM安定化待機(デフォルトtrue - React/Vue/Next.js対応)
425
- if (validated.options?.wait_for_dom_stable !== undefined) {
426
- ingestOptions.waitForDomStable = validated.options.wait_for_dom_stable;
427
- }
428
- if (validated.options?.dom_stable_timeout !== undefined) {
429
- ingestOptions.domStableTimeout = validated.options.dom_stable_timeout;
430
- }
431
- // 追加待機オプション
432
- if (validated.options?.wait_for_timeout !== undefined) {
433
- ingestOptions.waitForTimeout = validated.options.wait_for_timeout;
434
- }
435
- if (validated.options?.wait_for_selector_hidden !== undefined) {
436
- ingestOptions.waitForSelectorHidden = validated.options.wait_for_selector_hidden;
437
- }
438
- // include_screenshot: false の場合はスクリーンショットをスキップ
439
- if (includeScreenshot === false) {
440
- ingestOptions.skipScreenshot = true;
441
- }
442
- // include_computed_styles: true の場合はComputed Stylesを取得
443
- if (validated.options?.include_computed_styles === true) {
444
- ingestOptions.includeComputedStyles = true;
445
- }
446
- // スクリーンショットオプションを追加
447
- if (screenshotFormat || screenshotQuality !== undefined) {
448
- ingestOptions.screenshotOptions = {
449
- format: screenshotFormat,
450
- // exactOptionalPropertyTypes対応: undefinedの場合はプロパティを含めない
451
- ...(screenshotQuality !== undefined && { quality: screenshotQuality }),
452
- };
453
- }
454
- // WebGL無効化オプション(重い3Dサイトでタイムアウト発生時に使用)
455
- if (validated.options?.disable_webgl === true) {
456
- ingestOptions.disableWebGL = true;
457
- }
458
- // タイムアウト時強制終了オプション(WebGLサイトでハング時の最終手段)
459
- if (validated.options?.force_kill_on_timeout === true) {
460
- ingestOptions.forceKillOnTimeout = true;
461
- }
462
- // robots.txt準拠オプション
463
- if (validated.respect_robots_txt !== undefined) {
464
- ingestOptions.respectRobotsTxt = validated.respect_robots_txt;
465
- }
466
- // グローバルタイムアウトを計算(ユーザー指定 or デフォルト30秒)
467
- // 内部操作にはバッファを持たせるため、全体タイムアウトは指定値の1.5倍を使用
468
- const effectiveTimeout = (ingestOptions.timeout ?? DEFAULT_INGEST_TIMEOUT) * 1.5;
469
- if ((0, logger_1.isDevelopment)()) {
470
- logger_1.logger.debug("[MCP Tool] layout.ingest starting with timeout", {
471
- url: validated.url,
472
- userTimeout: ingestOptions.timeout,
473
- effectiveTimeout,
474
- });
475
- }
476
- // グローバルタイムアウトラッパーで囲む
477
- // WebGLサイトでChromiumがハングした場合でもタイムアウトを強制する
478
- const ingestResult = await withTimeout(page_ingest_adapter_1.pageIngestAdapter.ingest(ingestOptions), effectiveTimeout, `layout.ingest for ${validated.url}`);
479
- // インジェスト失敗チェック
480
- if (!ingestResult.success) {
481
- if ((0, logger_1.isDevelopment)()) {
482
- logger_1.logger.error("[MCP Tool] layout.ingest failed", {
483
- url: validated.url,
484
- error: ingestResult.error,
485
- });
486
- }
487
- return {
488
- success: false,
489
- error: {
490
- code: schemas_1.LAYOUT_MCP_ERROR_CODES.INGEST_FAILED,
491
- message: ingestResult.error ?? "Page ingest failed",
492
- },
493
- };
494
- }
495
- // 外部CSS URLをサニタイズ前に抽出(DOMPurifyで<link>タグが除去される問題の回避策)
496
- // auto_analyze と fetch_external_css のデフォルト値を早期に取得
497
- const autoAnalyze = validated.options?.auto_analyze ?? false;
498
- const fetchExternalCss = validated.options?.fetch_external_css ?? true;
499
- let preExtractedCssUrls = [];
500
- if (autoAnalyze && saveToDb && fetchExternalCss) {
501
- const baseUrl = urlValidation.normalizedUrl ?? validated.url;
502
- preExtractedCssUrls = (0, external_css_fetcher_1.extractCssUrls)(ingestResult.html, baseUrl)
503
- .map((u) => u.url)
504
- .filter((url) => url.length > 0); // 空のURLを除外
505
- if ((0, logger_1.isDevelopment)()) {
506
- logger_1.logger.debug("[MCP Tool] layout.ingest pre-extracted CSS URLs before sanitization", {
507
- urlCount: preExtractedCssUrls.length,
508
- urls: preExtractedCssUrls.slice(0, 5), // Log first 5 URLs
509
- });
510
- }
511
- }
512
- // HTMLサニタイズとトランケート処理
513
- // save_to_db=true の場合は、レスポンスにHTMLを含めるかどうかに関係なくサニタイズが必要
514
- let sanitizedHtml;
515
- const needsSanitizedHtml = includeHtml || saveToDb;
516
- if (needsSanitizedHtml) {
517
- sanitizedHtml = (0, html_sanitizer_1.sanitizeHtml)(ingestResult.html);
518
- // トランケート処理
519
- if (truncateHtmlBytes !== undefined) {
520
- const htmlBytes = new TextEncoder().encode(sanitizedHtml);
521
- if (htmlBytes.length > truncateHtmlBytes) {
522
- // UTF-8バイト境界を考慮してトランケート
523
- // マーカーのバイト数を考慮して切り詰める
524
- const TRUNCATION_MARKER = "\n<!-- truncated -->";
525
- const markerByteLength = new TextEncoder().encode(TRUNCATION_MARKER).length;
526
- const targetByteLength = Math.max(0, truncateHtmlBytes - markerByteLength);
527
- const truncatedBytes = htmlBytes.slice(0, targetByteLength);
528
- sanitizedHtml = new TextDecoder().decode(truncatedBytes) + TRUNCATION_MARKER;
529
- }
530
- }
531
- }
532
- // スクリーンショット情報を変換(リサイズ対応)
533
- let screenshot;
534
- if (includeScreenshot && ingestResult.screenshots && ingestResult.screenshots.length > 0) {
535
- const firstScreenshot = ingestResult.screenshots[0];
536
- if (firstScreenshot) {
537
- let width = firstScreenshot.viewport.width;
538
- let height = firstScreenshot.viewport.height;
539
- let base64Data = firstScreenshot.data;
540
- const format = screenshotFormat === "jpeg" ? "jpeg" : firstScreenshot.format;
541
- // リサイズが必要な場合
542
- if (screenshotMaxWidth !== undefined || screenshotMaxHeight !== undefined) {
543
- const originalWidth = width;
544
- const originalHeight = height;
545
- // アスペクト比を維持しながらリサイズ
546
- if (screenshotMaxWidth !== undefined && width > screenshotMaxWidth) {
547
- const ratio = screenshotMaxWidth / width;
548
- width = screenshotMaxWidth;
549
- height = Math.round(height * ratio);
550
- }
551
- if (screenshotMaxHeight !== undefined && height > screenshotMaxHeight) {
552
- const ratio = screenshotMaxHeight / height;
553
- height = screenshotMaxHeight;
554
- width = Math.round(width * ratio);
555
- }
556
- // 実際のリサイズはadapterで行われるため、
557
- // ここではサイズ情報のみ更新(base64データはそのまま)
558
- // 本番ではsharpなどでリサイズを実装
559
- if ((0, logger_1.isDevelopment)()) {
560
- logger_1.logger.debug("[MCP Tool] Screenshot resize requested", {
561
- original: { width: originalWidth, height: originalHeight },
562
- resized: { width, height },
563
- });
564
- }
565
- }
566
- screenshot = {
567
- base64: base64Data,
568
- format: format,
569
- width,
570
- height,
571
- };
572
- }
573
- }
574
- // メタデータを変換
575
- const metadata = {
576
- title: ingestResult.metadata.title || "",
577
- description: ingestResult.metadata.description,
578
- favicon: ingestResult.metadata.favicon,
579
- ogImage: ingestResult.metadata.ogImage,
580
- };
581
- // ソース情報を変換
582
- const source = {
583
- type: ingestResult.source.type,
584
- usageScope: ingestResult.source.usageScope,
585
- };
586
- // DB保存処理(save_to_db: true の場合)
587
- let persistedId;
588
- let savedToDb = false;
589
- if (saveToDb && sanitizedHtml) {
590
- try {
591
- // HTMLハッシュを生成(変更検知用)
592
- const htmlHash = (0, crypto_1.createHash)("sha256").update(sanitizedHtml).digest("hex");
593
- // WebPageテーブルに保存(upsert: URLが重複する場合は更新)
594
- // URL正規化で末尾スラッシュ等の重複を防止
595
- const normalizedDbUrl = (0, url_normalizer_1.normalizeUrlForStorage)(urlValidation.normalizedUrl ?? validated.url);
596
- const savedPage = await database_1.prisma.webPage.upsert({
597
- where: { url: normalizedDbUrl },
598
- create: {
599
- url: normalizedDbUrl,
600
- title: metadata.title || null,
601
- description: metadata.description || null,
602
- sourceType: ingestResult.source.type,
603
- usageScope: ingestResult.source.usageScope,
604
- htmlContent: sanitizedHtml,
605
- htmlHash,
606
- metadata: {
607
- favicon: metadata.favicon,
608
- ogImage: metadata.ogImage,
609
- },
610
- crawledAt: ingestResult.ingestedAt,
611
- analysisStatus: "pending",
612
- },
613
- update: {
614
- title: metadata.title || null,
615
- description: metadata.description || null,
616
- htmlContent: sanitizedHtml,
617
- htmlHash,
618
- metadata: {
619
- favicon: metadata.favicon,
620
- ogImage: metadata.ogImage,
621
- },
622
- crawledAt: ingestResult.ingestedAt,
623
- analysisStatus: "pending",
624
- },
625
- select: { id: true },
626
- });
627
- persistedId = savedPage.id;
628
- savedToDb = true;
629
- if ((0, logger_1.isDevelopment)()) {
630
- logger_1.logger.info("[MCP Tool] layout.ingest saved to DB", {
631
- id: persistedId,
632
- url: urlValidation.normalizedUrl ?? validated.url,
633
- });
634
- }
635
- }
636
- catch (dbError) {
637
- // DB保存失敗時はエラーを返す
638
- const errorMessage = dbError instanceof Error ? dbError.message : String(dbError);
639
- if ((0, logger_1.isDevelopment)()) {
640
- logger_1.logger.error("[MCP Tool] layout.ingest DB save failed", {
641
- url: validated.url,
642
- error: errorMessage,
643
- });
644
- }
645
- return {
646
- success: false,
647
- error: {
648
- code: schemas_1.LAYOUT_MCP_ERROR_CODES.DB_SAVE_FAILED,
649
- message: `Failed to save to database: ${errorMessage}`,
650
- details: (0, logger_1.isDevelopment)() ? { originalError: errorMessage } : undefined,
651
- },
652
- };
653
- }
654
- }
655
- // レスポンシブ解析: responsive.enabled: true の場合
656
- // 複数ビューポートでのキャプチャと差異検出を実行
657
- let responsiveAnalysisResult;
658
- if (validated.options?.responsive?.enabled === true) {
659
- try {
660
- if ((0, logger_1.isDevelopment)()) {
661
- logger_1.logger.info("[MCP Tool] layout.ingest responsive analysis starting", {
662
- url: validated.url,
663
- viewports: validated.options.responsive.viewports?.map((v) => v.name) ?? [
664
- "desktop",
665
- "tablet",
666
- "mobile",
667
- ],
668
- includeScreenshots: validated.options.responsive.include_screenshots ?? true,
669
- });
670
- }
671
- // ResponsiveAnalysisOptionsを構築(undefinedプロパティを除外)
672
- const responsiveOptions = {
673
- enabled: true,
674
- };
675
- // 各プロパティはundefinedでなければ設定
676
- if (validated.options.responsive.viewports !== undefined) {
677
- responsiveOptions.viewports = validated.options.responsive.viewports;
678
- }
679
- if (validated.options.responsive.include_screenshots !== undefined) {
680
- responsiveOptions.include_screenshots = validated.options.responsive.include_screenshots;
681
- }
682
- if (validated.options.responsive.include_diff_images !== undefined) {
683
- responsiveOptions.include_diff_images = validated.options.responsive.include_diff_images;
684
- }
685
- if (validated.options.responsive.diff_threshold !== undefined) {
686
- responsiveOptions.diff_threshold = validated.options.responsive.diff_threshold;
687
- }
688
- if (validated.options.responsive.detect_navigation !== undefined) {
689
- responsiveOptions.detect_navigation = validated.options.responsive.detect_navigation;
690
- }
691
- if (validated.options.responsive.detect_visibility !== undefined) {
692
- responsiveOptions.detect_visibility = validated.options.responsive.detect_visibility;
693
- }
694
- if (validated.options.responsive.detect_layout !== undefined) {
695
- responsiveOptions.detect_layout = validated.options.responsive.detect_layout;
696
- }
697
- responsiveAnalysisResult = await responsive_1.responsiveAnalysisService.analyze(validated.url, responsiveOptions);
698
- if ((0, logger_1.isDevelopment)()) {
699
- logger_1.logger.info("[MCP Tool] layout.ingest responsive analysis completed", {
700
- url: validated.url,
701
- viewportsAnalyzed: responsiveAnalysisResult.viewportsAnalyzed.length,
702
- differencesFound: responsiveAnalysisResult.differences.length,
703
- breakpointsDetected: responsiveAnalysisResult.breakpoints.length,
704
- analysisTimeMs: responsiveAnalysisResult.analysisTimeMs,
705
- });
706
- }
707
- }
708
- catch (responsiveError) {
709
- // レスポンシブ解析の失敗はエラーとして返すのではなく、警告ログを出力して続行
710
- // インジェスト自体は成功しているため
711
- if ((0, logger_1.isDevelopment)()) {
712
- logger_1.logger.warn("[MCP Tool] layout.ingest responsive analysis failed", {
713
- url: validated.url,
714
- error: responsiveError instanceof Error ? responsiveError.message : String(responsiveError),
715
- });
716
- }
717
- }
718
- }
719
- // レスポンシブ解析結果のDB保存(save_to_db かつ responsive.save_to_db が true の場合)
720
- let responsiveAnalysisId;
721
- if (responsiveAnalysisResult &&
722
- persistedId &&
723
- saveToDb &&
724
- (validated.options?.responsive?.save_to_db ?? true)) {
725
- try {
726
- responsiveAnalysisId = await responsive_1.responsivePersistenceService.save(persistedId, responsiveAnalysisResult);
727
- if ((0, logger_1.isDevelopment)()) {
728
- logger_1.logger.info("[MCP Tool] layout.ingest responsive analysis saved to DB", {
729
- responsiveAnalysisId,
730
- webPageId: persistedId,
731
- });
732
- }
733
- }
734
- catch (dbError) {
735
- // DB保存失敗はエラーとして返さず、警告ログを出力して続行
736
- if ((0, logger_1.isDevelopment)()) {
737
- logger_1.logger.warn("[MCP Tool] layout.ingest responsive DB save failed", {
738
- webPageId: persistedId,
739
- error: dbError instanceof Error ? dbError.message : String(dbError),
740
- });
741
- }
742
- }
743
- }
744
- // auto_analyze: trueの場合、セクション解析とEmbedding保存を行う
745
- // autoAnalyze と fetchExternalCss は前方(サニタイズ前)で定義済み
746
- let sectionsAnalyzed = 0;
747
- let externalCssFetchResult;
748
- if (autoAnalyze && saveToDb && persistedId && sanitizedHtml) {
749
- const service = ingestServiceFactory?.();
750
- if (service) {
751
- try {
752
- if ((0, logger_1.isDevelopment)()) {
753
- logger_1.logger.info("[MCP Tool] layout.ingest auto_analyze starting", {
754
- webPageId: persistedId,
755
- });
756
- }
757
- // 外部CSSオプションを取得
758
- const externalCssTimeout = validated.options?.external_css_timeout ?? 5000;
759
- const externalCssMaxSize = validated.options?.external_css_max_size ?? 5242880;
760
- const externalCssMaxConcurrent = validated.options?.external_css_max_concurrent ?? 5;
761
- const externalCssMaxFiles = validated.options?.external_css_max_files ?? 20;
762
- // LayoutAnalyzerServiceを使用してHTMLを解析(外部CSS取得を含む)
763
- const layoutAnalyzer = (0, layout_analyzer_service_1.getLayoutAnalyzerService)();
764
- const layoutAnalysisOptions = {
765
- includeContent: true,
766
- includeStyles: true,
767
- // Computed StylesをhtmlSnippetにインラインスタイルとして適用
768
- ...(ingestResult.computedStyles &&
769
- ingestResult.computedStyles.length > 0 && {
770
- computedStyles: ingestResult.computedStyles,
771
- }),
772
- ...(fetchExternalCss && {
773
- externalCss: {
774
- fetchExternalCss: true,
775
- baseUrl: urlValidation.normalizedUrl ?? validated.url,
776
- timeout: externalCssTimeout,
777
- maxSize: externalCssMaxSize,
778
- maxConcurrent: externalCssMaxConcurrent,
779
- maxCssFiles: externalCssMaxFiles,
780
- // DOMPurifyで<link>タグが除去される問題の回避策
781
- // サニタイズ前のHTMLから抽出したURLを使用
782
- ...(preExtractedCssUrls.length > 0 && {
783
- preExtractedUrls: preExtractedCssUrls,
784
- }),
785
- },
786
- }),
787
- };
788
- const layoutAnalysisResult = await layoutAnalyzer.analyze(sanitizedHtml, layoutAnalysisOptions);
789
- // 外部CSS取得結果を保存
790
- externalCssFetchResult = layoutAnalysisResult.externalCssFetch;
791
- if ((0, logger_1.isDevelopment)() && externalCssFetchResult) {
792
- logger_1.logger.debug("[MCP Tool] layout.ingest external CSS fetch completed", {
793
- webPageId: persistedId,
794
- successCount: externalCssFetchResult.successCount,
795
- failedCount: externalCssFetchResult.failedCount,
796
- totalSize: externalCssFetchResult.totalSize,
797
- processingTimeMs: externalCssFetchResult.processingTimeMs,
798
- });
799
- }
800
- // HTMLを解析してセクションを抽出(従来のサービス経由)
801
- const inspectResult = await service.analyzeHtml(sanitizedHtml);
802
- // 各セクションをEmbeddingと共に保存
803
- for (let sectionIndex = 0; sectionIndex < inspectResult.sections.length; sectionIndex++) {
804
- const section = inspectResult.sections[sectionIndex];
805
- if (!section) {
806
- // 配列境界チェックのためのガード(TypeScriptの厳格な型チェック対応)
807
- continue;
808
- }
809
- try {
810
- // セクションからテキスト表現を生成してEmbeddingを作成
811
- const textRepresentation = sectionToTextRepresentation(section);
812
- const embedding = await service.generateEmbedding(textRepresentation);
813
- // LayoutAnalyzerServiceから取得したhtmlSnippet(computed styles適用済み)を使用
814
- // インデックスが一致するlayoutAnalysisResult.sectionsからhtmlSnippetを取得
815
- const layoutSection = layoutAnalysisResult.sections[sectionIndex];
816
- const htmlSnippet = layoutSection?.htmlSnippet;
817
- // SectionPatternとSectionEmbeddingを保存
818
- // 外部CSSを取得した場合は、その内容をcssSnippetに設定
819
- // htmlSnippetはcomputed styles適用済み
820
- const saveOptions = {};
821
- if (layoutAnalysisResult.cssSnippet) {
822
- saveOptions.cssSnippet = layoutAnalysisResult.cssSnippet;
823
- }
824
- if (layoutAnalysisResult.externalCssContent) {
825
- saveOptions.externalCssContent = layoutAnalysisResult.externalCssContent;
826
- }
827
- if (layoutAnalysisResult.externalCssMeta) {
828
- saveOptions.externalCssMeta = layoutAnalysisResult.externalCssMeta;
829
- }
830
- if (htmlSnippet) {
831
- saveOptions.htmlSnippet = htmlSnippet;
832
- }
833
- await service.saveSectionWithEmbedding(section, persistedId, embedding, Object.keys(saveOptions).length > 0 ? saveOptions : undefined, textRepresentation);
834
- sectionsAnalyzed++;
835
- if ((0, logger_1.isDevelopment)()) {
836
- logger_1.logger.debug("[MCP Tool] layout.ingest section saved", {
837
- sectionType: section.type,
838
- sectionId: section.id,
839
- hasCssSnippet: !!layoutAnalysisResult.cssSnippet,
840
- cssSnippetLength: layoutAnalysisResult.cssSnippet?.length ?? 0,
841
- hasExternalCssContent: !!layoutAnalysisResult.externalCssContent,
842
- externalCssContentLength: layoutAnalysisResult.externalCssContent?.length ?? 0,
843
- hasHtmlSnippet: !!htmlSnippet,
844
- htmlSnippetLength: htmlSnippet?.length ?? 0,
845
- });
846
- }
847
- }
848
- catch (sectionError) {
849
- // 個別セクションの保存失敗は警告ログのみで継続
850
- if ((0, logger_1.isDevelopment)()) {
851
- logger_1.logger.warn("[MCP Tool] layout.ingest section save failed", {
852
- sectionType: section.type,
853
- error: sectionError instanceof Error ? sectionError.message : String(sectionError),
854
- });
855
- }
856
- }
857
- }
858
- if ((0, logger_1.isDevelopment)()) {
859
- logger_1.logger.info("[MCP Tool] layout.ingest auto_analyze completed", {
860
- webPageId: persistedId,
861
- sectionsAnalyzed,
862
- totalSections: inspectResult.sections.length,
863
- externalCssFetched: externalCssFetchResult?.successCount ?? 0,
864
- cssFramework: layoutAnalysisResult.cssFramework?.framework,
865
- computedStylesApplied: layoutAnalysisResult.computedStylesAppliedCount ?? 0,
866
- });
867
- }
868
- }
869
- catch (analyzeError) {
870
- // 解析失敗は警告ログのみで、インジェスト自体は成功とする
871
- if ((0, logger_1.isDevelopment)()) {
872
- logger_1.logger.warn("[MCP Tool] layout.ingest auto_analyze failed", {
873
- webPageId: persistedId,
874
- error: analyzeError instanceof Error ? analyzeError.message : String(analyzeError),
875
- });
876
- }
877
- }
878
- }
879
- else {
880
- if ((0, logger_1.isDevelopment)()) {
881
- logger_1.logger.warn("[MCP Tool] layout.ingest auto_analyze service not available", {
882
- webPageId: persistedId,
883
- });
884
- }
885
- }
886
- }
887
- // 成功レスポンスを構築
888
- const data = {
889
- id: persistedId ?? (0, uuid_1.v7)(),
890
- url: validated.url,
891
- normalizedUrl: urlValidation.normalizedUrl ?? validated.url,
892
- html: sanitizedHtml,
893
- screenshot,
894
- computedStyles: ingestResult.computedStyles,
895
- metadata,
896
- source,
897
- crawledAt: ingestResult.ingestedAt.toISOString(),
898
- savedToDb: saveToDb ? savedToDb : undefined,
899
- // レスポンシブ解析結果(responsive.enabled: true 時のみ)
900
- responsiveAnalysis: responsiveAnalysisResult
901
- ? {
902
- viewportsAnalyzed: responsiveAnalysisResult.viewportsAnalyzed.map((v) => v.name),
903
- differences: responsiveAnalysisResult.differences,
904
- breakpoints: responsiveAnalysisResult.breakpoints,
905
- screenshots: responsiveAnalysisResult.screenshots,
906
- analysisTimeMs: responsiveAnalysisResult.analysisTimeMs,
907
- responsiveAnalysisId,
908
- }
909
- : undefined,
910
- };
911
- // レスポンスサイズチェックと自動最適化
912
- let response = {
913
- success: true,
914
- data,
915
- };
916
- const initialResponseSize = JSON.stringify(response).length;
917
- const sizeThreshold = responseSizeLimit ?? DEFAULT_RESPONSE_SIZE_LIMIT;
918
- // 開発環境で初期サイズをログ出力
919
- if ((0, logger_1.isDevelopment)()) {
920
- logger_1.logger.debug("[MCP Tool] layout.ingest response size check", {
921
- initialSize: initialResponseSize,
922
- threshold: sizeThreshold,
923
- autoOptimize,
924
- });
925
- }
926
- if (initialResponseSize > sizeThreshold) {
927
- if (autoOptimize) {
928
- const originalHtmlLength = data.html?.length ?? 0;
929
- const hadScreenshot = !!data.screenshot;
930
- // 段階的な自動最適化
931
- // 段階1: HTMLの最適化(script/style除去、空白圧縮)
932
- if (data.html) {
933
- // まずHTMLを最適化(script/style除去、空白圧縮)
934
- const optimizedHtml = optimizeHtml(data.html);
935
- data.html = optimizedHtml;
936
- // 再計算
937
- let currentSize = JSON.stringify({ success: true, data }).length;
938
- // 最適化後もサイズが大きい場合、トランケート
939
- if (currentSize > sizeThreshold) {
940
- data.html = truncateHtmlToBytes(optimizedHtml, AUTO_OPTIMIZE_HTML_MAX_SIZE, AUTO_OPTIMIZE_TRUNCATION_MARKER);
941
- }
942
- }
943
- // 再計算
944
- let currentSize = JSON.stringify({ success: true, data }).length;
945
- // 段階2: スクリーンショット削除
946
- if (currentSize > sizeThreshold && data.screenshot) {
947
- data.screenshot = undefined;
948
- currentSize = JSON.stringify({ success: true, data }).length;
949
- }
950
- // 段階3: HTML削除(最終手段)
951
- if (currentSize > sizeThreshold && data.html) {
952
- data.html = undefined;
953
- }
954
- const finalResponseSize = JSON.stringify({ success: true, data }).length;
955
- // 最適化情報を追加(開発環境のみ)
956
- if ((0, logger_1.isDevelopment)()) {
957
- response._optimizationInfo = {
958
- originalHtmlLength,
959
- finalHtmlLength: data.html?.length ?? 0,
960
- htmlRemoved: data.html === undefined,
961
- screenshotRemoved: hadScreenshot && !data.screenshot,
962
- originalSize: initialResponseSize,
963
- finalSize: finalResponseSize,
964
- reductionPercent: Math.round((1 - finalResponseSize / initialResponseSize) * 100),
965
- };
966
- logger_1.logger.info("[MCP Tool] layout.ingest auto-optimization applied", {
967
- originalSize: initialResponseSize,
968
- finalSize: finalResponseSize,
969
- reductionPercent: Math.round((1 - finalResponseSize / initialResponseSize) * 100),
970
- htmlOptimized: originalHtmlLength !== (data.html?.length ?? 0),
971
- screenshotRemoved: hadScreenshot && !data.screenshot,
972
- });
973
- }
974
- response = {
975
- success: true,
976
- data,
977
- ...((0, logger_1.isDevelopment)() && response._optimizationInfo
978
- ? { _optimizationInfo: response._optimizationInfo }
979
- : {}),
980
- };
981
- }
982
- else {
983
- // 警告を追加
984
- response._responseSizeWarning = `Response size (${initialResponseSize} bytes) exceeds threshold (${sizeThreshold} bytes). Consider using include_html: false, include_screenshot: false, or truncate_html_bytes option.`;
985
- }
986
- }
987
- const finalResponseSize = JSON.stringify(response).length;
988
- if ((0, logger_1.isDevelopment)()) {
989
- logger_1.logger.info("[MCP Tool] layout.ingest completed", {
990
- id: data.id,
991
- url: data.url,
992
- htmlLength: data.html?.length ?? 0,
993
- hasScreenshot: !!data.screenshot,
994
- initialResponseSize,
995
- finalResponseSize,
996
- optimized: autoOptimize && initialResponseSize > sizeThreshold,
997
- savedToDb: data.savedToDb ?? false,
998
- });
999
- }
1000
- return response;
1001
- }
1002
- catch (error) {
1003
- // エラーハンドリング
1004
- const errorMessage = error instanceof Error ? error.message : String(error);
1005
- const errorCode = determineErrorCode(error instanceof Error ? error : errorMessage);
1006
- const formattedMessage = formatErrorMessage(errorCode, errorMessage);
1007
- if ((0, logger_1.isDevelopment)()) {
1008
- logger_1.logger.error("[MCP Tool] layout.ingest error", {
1009
- url: validated.url,
1010
- code: errorCode,
1011
- error: errorMessage,
1012
- });
1013
- }
1014
- return {
1015
- success: false,
1016
- error: {
1017
- code: errorCode,
1018
- message: formattedMessage,
1019
- details: (0, logger_1.isDevelopment)() ? { originalError: errorMessage } : undefined,
1020
- },
1021
- };
1022
- }
1023
- }
1024
- // =============================================
1025
- // ツール定義
1026
- // =============================================
1027
- /**
1028
- * layout.ingest MCPツール定義
1029
- * MCP Protocol用のツール定義オブジェクト
1030
- */
1031
- exports.layoutIngestToolDefinition = {
1032
- name: "layout.ingest",
1033
- description: "Fetch HTML/screenshot from URL for layout analysis. SSRF protection blocks private IPs/metadata services. HTML is sanitized.",
1034
- annotations: {
1035
- title: "Layout Ingest",
1036
- readOnlyHint: false,
1037
- idempotentHint: false,
1038
- openWorldHint: true,
1039
- },
1040
- inputSchema: {
1041
- type: "object",
1042
- properties: {
1043
- url: {
1044
- type: "string",
1045
- description: "Target URL (https:// or http://)",
1046
- format: "uri",
1047
- },
1048
- source_type: {
1049
- type: "string",
1050
- enum: ["award_gallery", "user_provided"],
1051
- description: "Source type: award_gallery or user_provided",
1052
- default: "user_provided",
1053
- },
1054
- usage_scope: {
1055
- type: "string",
1056
- enum: ["inspiration_only", "owned_asset"],
1057
- description: "Usage scope: inspiration_only or owned_asset",
1058
- default: "inspiration_only",
1059
- },
1060
- options: {
1061
- type: "object",
1062
- description: "Options",
1063
- properties: {
1064
- full_page: {
1065
- type: "boolean",
1066
- description: "Full page screenshot (default: true)",
1067
- default: true,
1068
- },
1069
- viewport: {
1070
- type: "object",
1071
- description: "Viewport size",
1072
- properties: {
1073
- width: {
1074
- type: "number",
1075
- description: "Width (px) 320-4096",
1076
- minimum: 320,
1077
- maximum: 4096,
1078
- },
1079
- height: {
1080
- type: "number",
1081
- description: "Height (px) 240-16384",
1082
- minimum: 240,
1083
- maximum: 16384,
1084
- },
1085
- },
1086
- required: ["width", "height"],
1087
- },
1088
- wait_for_selector: {
1089
- type: "string",
1090
- description: "CSS selector to wait for (page load detection)",
1091
- },
1092
- wait_until: {
1093
- type: "string",
1094
- enum: ["load", "domcontentloaded", "networkidle"],
1095
- description: "Page load completion strategy: load (default, fastest), domcontentloaded (faster), networkidle (slowest, for heavy JS sites)",
1096
- default: "load",
1097
- },
1098
- timeout: {
1099
- type: "number",
1100
- description: "Timeout (ms) 1000-120000",
1101
- minimum: 1000,
1102
- maximum: 120000,
1103
- default: 30000,
1104
- },
1105
- disable_javascript: {
1106
- type: "boolean",
1107
- description: "Disable JavaScript (default: false)",
1108
- default: false,
1109
- },
1110
- // Response optimization options
1111
- include_html: {
1112
- type: "boolean",
1113
- description: "Include HTML in response (default: false for DB-first workflow)",
1114
- default: false,
1115
- },
1116
- include_screenshot: {
1117
- type: "boolean",
1118
- description: "Include screenshot in response (default: false for DB-first workflow)",
1119
- default: false,
1120
- },
1121
- truncate_html_bytes: {
1122
- type: "number",
1123
- description: "Truncate HTML to specified bytes (100-10000000)",
1124
- minimum: 100,
1125
- maximum: 10000000,
1126
- },
1127
- screenshot_format: {
1128
- type: "string",
1129
- enum: ["png", "jpeg"],
1130
- description: "Screenshot format (default: png)",
1131
- default: "png",
1132
- },
1133
- screenshot_quality: {
1134
- type: "number",
1135
- description: "JPEG quality (1-100, only for jpeg format)",
1136
- minimum: 1,
1137
- maximum: 100,
1138
- },
1139
- screenshot_max_width: {
1140
- type: "number",
1141
- description: "Max screenshot width (resize with aspect ratio)",
1142
- minimum: 1,
1143
- },
1144
- screenshot_max_height: {
1145
- type: "number",
1146
- description: "Max screenshot height (resize with aspect ratio)",
1147
- minimum: 1,
1148
- },
1149
- auto_optimize: {
1150
- type: "boolean",
1151
- description: "Auto-optimize response if exceeds size limit: removes script/style tags, compresses whitespace, then removes screenshot/HTML as needed (default: false)",
1152
- default: false,
1153
- },
1154
- response_size_limit: {
1155
- type: "number",
1156
- description: "Response size threshold in bytes for auto_optimize (default: 1000000 = 1MB)",
1157
- minimum: 10000,
1158
- maximum: 50000000,
1159
- default: 1000000,
1160
- },
1161
- save_to_db: {
1162
- type: "boolean",
1163
- description: "Save to WebPage table for later use with motion.detect pageId mode (default: false)",
1164
- default: false,
1165
- },
1166
- auto_analyze: {
1167
- type: "boolean",
1168
- description: "Auto-analyze HTML and save SectionPattern with embeddings when save_to_db is true (default: false)",
1169
- default: false,
1170
- },
1171
- include_computed_styles: {
1172
- type: "boolean",
1173
- description: "Include computed styles for section elements (getComputedStyle). Useful for accurate design reproduction. (default: false, for performance)",
1174
- default: false,
1175
- },
1176
- // External CSS fetching options
1177
- fetch_external_css: {
1178
- type: "boolean",
1179
- description: 'Fetch external CSS files content from <link rel="stylesheet"> tags (default: true)',
1180
- default: true,
1181
- },
1182
- external_css_timeout: {
1183
- type: "number",
1184
- description: "Timeout for fetching each external CSS file (ms) 1000-30000 (default: 5000)",
1185
- minimum: 1000,
1186
- maximum: 30000,
1187
- default: 5000,
1188
- },
1189
- external_css_max_size: {
1190
- type: "number",
1191
- description: "Maximum size per external CSS file (bytes) 1024-10485760 (default: 5MB)",
1192
- minimum: 1024,
1193
- maximum: 10485760,
1194
- default: 5242880,
1195
- },
1196
- external_css_max_concurrent: {
1197
- type: "number",
1198
- description: "Maximum concurrent external CSS fetches 1-10 (default: 5)",
1199
- minimum: 1,
1200
- maximum: 10,
1201
- default: 5,
1202
- },
1203
- external_css_max_files: {
1204
- type: "number",
1205
- description: "Maximum number of external CSS files to fetch 1-50 (default: 20)",
1206
- minimum: 1,
1207
- maximum: 50,
1208
- default: 20,
1209
- },
1210
- // WebGL/3D site handling options
1211
- disable_webgl: {
1212
- type: "boolean",
1213
- description: "Disable WebGL completely. Use for heavy 3D sites (Three.js, WebGL) that cause timeouts. When true, launches a dedicated browser instance with WebGL disabled.",
1214
- default: false,
1215
- },
1216
- force_kill_on_timeout: {
1217
- type: "boolean",
1218
- description: "Force kill browser process on timeout. Use as last resort when WebGL sites hang. Sends SIGKILL to the browser process.",
1219
- default: false,
1220
- },
1221
- // Responsive analysis options
1222
- responsive: {
1223
- type: "object",
1224
- description: "Responsive layout analysis options. Captures layouts at multiple viewport sizes and detects differences.",
1225
- properties: {
1226
- enabled: {
1227
- type: "boolean",
1228
- description: "Enable responsive analysis (default: false)",
1229
- default: false,
1230
- },
1231
- viewports: {
1232
- type: "array",
1233
- description: "Custom viewport configurations. Default: desktop (1920x1080), tablet (768x1024), mobile (375x667)",
1234
- items: {
1235
- type: "object",
1236
- properties: {
1237
- name: {
1238
- type: "string",
1239
- description: "Viewport name (e.g., desktop, tablet, mobile)",
1240
- },
1241
- width: {
1242
- type: "number",
1243
- description: "Width in pixels (320-4096)",
1244
- minimum: 320,
1245
- maximum: 4096,
1246
- },
1247
- height: {
1248
- type: "number",
1249
- description: "Height in pixels (240-16384)",
1250
- minimum: 240,
1251
- maximum: 16384,
1252
- },
1253
- },
1254
- required: ["name", "width", "height"],
1255
- },
1256
- },
1257
- include_screenshots: {
1258
- type: "boolean",
1259
- description: "Include screenshots for each viewport (default: true)",
1260
- default: true,
1261
- },
1262
- include_diff_images: {
1263
- type: "boolean",
1264
- description: "Include diff images in viewport comparison results (default: false)",
1265
- default: false,
1266
- },
1267
- diff_threshold: {
1268
- type: "number",
1269
- description: "Pixel diff threshold for viewport comparison (0-1, default: 0.1)",
1270
- minimum: 0,
1271
- maximum: 1,
1272
- default: 0.1,
1273
- },
1274
- save_to_db: {
1275
- type: "boolean",
1276
- description: "Save responsive analysis results to DB (default: true, requires save_to_db at top level)",
1277
- default: true,
1278
- },
1279
- detect_navigation: {
1280
- type: "boolean",
1281
- description: "Detect navigation pattern changes (horizontal-menu to hamburger-menu, etc.) (default: true)",
1282
- default: true,
1283
- },
1284
- detect_visibility: {
1285
- type: "boolean",
1286
- description: "Detect element visibility changes between viewports (default: true)",
1287
- default: true,
1288
- },
1289
- detect_layout: {
1290
- type: "boolean",
1291
- description: "Detect layout structure changes (grid columns, flex direction, etc.) (default: true)",
1292
- default: true,
1293
- },
1294
- },
1295
- },
1296
- },
1297
- },
1298
- },
1299
- required: ["url"],
1300
- },
1301
- };
1302
- // =============================================
1303
- // 開発環境ログ
1304
- // =============================================
1305
- if ((0, logger_1.isDevelopment)()) {
1306
- logger_1.logger.debug("[layout.ingest] Tool module loaded");
1307
- }
1308
- //# sourceMappingURL=ingest.tool.js.map