@oscharko-dev/keiko 0.2.0-beta.5 → 0.2.0-beta.6

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 (622) hide show
  1. package/README.md +39 -14
  2. package/dist/ui/csp-hashes.json +17 -22
  3. package/dist/ui/static/404.html +1 -1
  4. package/dist/ui/static/__next.__PAGE__.txt +2 -2
  5. package/dist/ui/static/__next._full.txt +3 -3
  6. package/dist/ui/static/__next._head.txt +1 -1
  7. package/dist/ui/static/__next._index.txt +2 -2
  8. package/dist/ui/static/__next._tree.txt +2 -2
  9. package/dist/ui/static/_next/static/chunks/0-qhhdvxg2j_y.js +1 -0
  10. package/dist/ui/static/_next/static/chunks/0ke4ratkgvcxo.css +1 -0
  11. package/dist/ui/static/_next/static/chunks/0xhu-pfsyvbmx.js +5 -0
  12. package/dist/ui/static/_next/static/chunks/3vf3oh2-sl2nc.js +1 -0
  13. package/dist/ui/static/_next/static/chunks/3wmd4-2vznp2g.js +106 -0
  14. package/dist/ui/static/_next/static/chunks/turbopack-18q50fp2-1qbt.js +1 -0
  15. package/dist/ui/static/_not-found/__next._full.txt +2 -2
  16. package/dist/ui/static/_not-found/__next._head.txt +1 -1
  17. package/dist/ui/static/_not-found/__next._index.txt +2 -2
  18. package/dist/ui/static/_not-found/__next._not-found.__PAGE__.txt +1 -1
  19. package/dist/ui/static/_not-found/__next._not-found.txt +1 -1
  20. package/dist/ui/static/_not-found/__next._tree.txt +2 -2
  21. package/dist/ui/static/_not-found.html +1 -1
  22. package/dist/ui/static/_not-found.txt +2 -2
  23. package/dist/ui/static/index.html +1 -1
  24. package/dist/ui/static/index.txt +3 -3
  25. package/dist/ui/static/launch/__next._full.txt +3 -3
  26. package/dist/ui/static/launch/__next._head.txt +1 -1
  27. package/dist/ui/static/launch/__next._index.txt +2 -2
  28. package/dist/ui/static/launch/__next._tree.txt +2 -2
  29. package/dist/ui/static/launch/__next.launch.__PAGE__.txt +2 -2
  30. package/dist/ui/static/launch/__next.launch.txt +1 -1
  31. package/dist/ui/static/launch.html +1 -1
  32. package/dist/ui/static/launch.txt +3 -3
  33. package/dist/ui/static/local-knowledge/__next._full.txt +3 -3
  34. package/dist/ui/static/local-knowledge/__next._head.txt +1 -1
  35. package/dist/ui/static/local-knowledge/__next._index.txt +2 -2
  36. package/dist/ui/static/local-knowledge/__next._tree.txt +2 -2
  37. package/dist/ui/static/local-knowledge/__next.local-knowledge.__PAGE__.txt +2 -2
  38. package/dist/ui/static/local-knowledge/__next.local-knowledge.txt +1 -1
  39. package/dist/ui/static/local-knowledge/capsule/__next._full.txt +3 -3
  40. package/dist/ui/static/local-knowledge/capsule/__next._head.txt +1 -1
  41. package/dist/ui/static/local-knowledge/capsule/__next._index.txt +2 -2
  42. package/dist/ui/static/local-knowledge/capsule/__next._tree.txt +2 -2
  43. package/dist/ui/static/local-knowledge/capsule/__next.local-knowledge.capsule.__PAGE__.txt +2 -2
  44. package/dist/ui/static/local-knowledge/capsule/__next.local-knowledge.capsule.txt +1 -1
  45. package/dist/ui/static/local-knowledge/capsule/__next.local-knowledge.txt +1 -1
  46. package/dist/ui/static/local-knowledge/capsule.html +1 -1
  47. package/dist/ui/static/local-knowledge/capsule.txt +3 -3
  48. package/dist/ui/static/local-knowledge.html +1 -1
  49. package/dist/ui/static/local-knowledge.txt +3 -3
  50. package/dist/ui/static/memoriaviva/__next._full.txt +6 -6
  51. package/dist/ui/static/memoriaviva/__next._head.txt +1 -1
  52. package/dist/ui/static/memoriaviva/__next._index.txt +2 -2
  53. package/dist/ui/static/memoriaviva/__next._tree.txt +2 -2
  54. package/dist/ui/static/memoriaviva/__next.memoriaviva.__PAGE__.txt +4 -4
  55. package/dist/ui/static/memoriaviva/__next.memoriaviva.txt +1 -1
  56. package/dist/ui/static/memoriaviva/consolidation/__next._full.txt +4 -4
  57. package/dist/ui/static/memoriaviva/consolidation/__next._head.txt +1 -1
  58. package/dist/ui/static/memoriaviva/consolidation/__next._index.txt +2 -2
  59. package/dist/ui/static/memoriaviva/consolidation/__next._tree.txt +2 -2
  60. package/dist/ui/static/memoriaviva/consolidation/__next.memoriaviva.consolidation.__PAGE__.txt +2 -2
  61. package/dist/ui/static/memoriaviva/consolidation/__next.memoriaviva.consolidation.txt +1 -1
  62. package/dist/ui/static/memoriaviva/consolidation/__next.memoriaviva.txt +1 -1
  63. package/dist/ui/static/memoriaviva/consolidation.html +1 -1
  64. package/dist/ui/static/memoriaviva/consolidation.txt +4 -4
  65. package/dist/ui/static/memoriaviva/detail/__next._full.txt +6 -6
  66. package/dist/ui/static/memoriaviva/detail/__next._head.txt +1 -1
  67. package/dist/ui/static/memoriaviva/detail/__next._index.txt +2 -2
  68. package/dist/ui/static/memoriaviva/detail/__next._tree.txt +2 -2
  69. package/dist/ui/static/memoriaviva/detail/__next.memoriaviva.detail.__PAGE__.txt +4 -4
  70. package/dist/ui/static/memoriaviva/detail/__next.memoriaviva.detail.txt +1 -1
  71. package/dist/ui/static/memoriaviva/detail/__next.memoriaviva.txt +1 -1
  72. package/dist/ui/static/memoriaviva/detail.html +1 -1
  73. package/dist/ui/static/memoriaviva/detail.txt +6 -6
  74. package/dist/ui/static/memoriaviva/review-queue/__next._full.txt +4 -4
  75. package/dist/ui/static/memoriaviva/review-queue/__next._head.txt +1 -1
  76. package/dist/ui/static/memoriaviva/review-queue/__next._index.txt +2 -2
  77. package/dist/ui/static/memoriaviva/review-queue/__next._tree.txt +2 -2
  78. package/dist/ui/static/memoriaviva/review-queue/__next.memoriaviva.review-queue.__PAGE__.txt +2 -2
  79. package/dist/ui/static/memoriaviva/review-queue/__next.memoriaviva.review-queue.txt +1 -1
  80. package/dist/ui/static/memoriaviva/review-queue/__next.memoriaviva.txt +1 -1
  81. package/dist/ui/static/memoriaviva/review-queue.html +1 -1
  82. package/dist/ui/static/memoriaviva/review-queue.txt +4 -4
  83. package/dist/ui/static/memoriaviva.html +1 -1
  84. package/dist/ui/static/memoriaviva.txt +6 -6
  85. package/node_modules/@oscharko-dev/keiko-cli/dist/.tsbuildinfo +1 -1
  86. package/node_modules/@oscharko-dev/keiko-cli/dist/doctor.d.ts +24 -0
  87. package/node_modules/@oscharko-dev/keiko-cli/dist/doctor.d.ts.map +1 -0
  88. package/node_modules/@oscharko-dev/keiko-cli/dist/doctor.js +108 -0
  89. package/node_modules/@oscharko-dev/keiko-cli/dist/evaluate.d.ts.map +1 -1
  90. package/node_modules/@oscharko-dev/keiko-cli/dist/evaluate.js +7 -4
  91. package/node_modules/@oscharko-dev/keiko-cli/dist/index.d.ts +1 -0
  92. package/node_modules/@oscharko-dev/keiko-cli/dist/index.d.ts.map +1 -1
  93. package/node_modules/@oscharko-dev/keiko-cli/dist/index.js +1 -0
  94. package/node_modules/@oscharko-dev/keiko-cli/dist/init.d.ts +2 -2
  95. package/node_modules/@oscharko-dev/keiko-cli/dist/init.d.ts.map +1 -1
  96. package/node_modules/@oscharko-dev/keiko-cli/dist/init.js +4 -4
  97. package/node_modules/@oscharko-dev/keiko-cli/dist/install-layout.d.ts +6 -0
  98. package/node_modules/@oscharko-dev/keiko-cli/dist/install-layout.d.ts.map +1 -0
  99. package/node_modules/@oscharko-dev/keiko-cli/dist/install-layout.js +24 -0
  100. package/node_modules/@oscharko-dev/keiko-cli/dist/launcher.d.ts.map +1 -1
  101. package/node_modules/@oscharko-dev/keiko-cli/dist/launcher.js +5 -7
  102. package/node_modules/@oscharko-dev/keiko-cli/dist/lifecycle.d.ts +1 -0
  103. package/node_modules/@oscharko-dev/keiko-cli/dist/lifecycle.d.ts.map +1 -1
  104. package/node_modules/@oscharko-dev/keiko-cli/dist/lifecycle.js +75 -30
  105. package/node_modules/@oscharko-dev/keiko-cli/dist/memory.d.ts +3 -0
  106. package/node_modules/@oscharko-dev/keiko-cli/dist/memory.d.ts.map +1 -1
  107. package/node_modules/@oscharko-dev/keiko-cli/dist/memory.js +76 -7
  108. package/node_modules/@oscharko-dev/keiko-cli/dist/run.d.ts.map +1 -1
  109. package/node_modules/@oscharko-dev/keiko-cli/dist/run.js +50 -2
  110. package/node_modules/@oscharko-dev/keiko-cli/dist/runner.d.ts.map +1 -1
  111. package/node_modules/@oscharko-dev/keiko-cli/dist/runner.js +20 -4
  112. package/node_modules/@oscharko-dev/keiko-cli/dist/ui.d.ts +1 -1
  113. package/node_modules/@oscharko-dev/keiko-cli/dist/ui.d.ts.map +1 -1
  114. package/node_modules/@oscharko-dev/keiko-cli/dist/ui.js +17 -14
  115. package/node_modules/@oscharko-dev/keiko-cli/package.json +1 -1
  116. package/node_modules/@oscharko-dev/keiko-contracts/dist/.tsbuildinfo +1 -1
  117. package/node_modules/@oscharko-dev/keiko-contracts/dist/bff-wire.d.ts +7 -0
  118. package/node_modules/@oscharko-dev/keiko-contracts/dist/bff-wire.d.ts.map +1 -1
  119. package/node_modules/@oscharko-dev/keiko-contracts/dist/connected-context.d.ts.map +1 -1
  120. package/node_modules/@oscharko-dev/keiko-contracts/dist/connected-context.js +1 -2
  121. package/node_modules/@oscharko-dev/keiko-contracts/dist/evidence.d.ts +1 -0
  122. package/node_modules/@oscharko-dev/keiko-contracts/dist/evidence.d.ts.map +1 -1
  123. package/node_modules/@oscharko-dev/keiko-contracts/dist/gateway.d.ts +12 -0
  124. package/node_modules/@oscharko-dev/keiko-contracts/dist/gateway.d.ts.map +1 -1
  125. package/node_modules/@oscharko-dev/keiko-contracts/dist/index.d.ts +4 -2
  126. package/node_modules/@oscharko-dev/keiko-contracts/dist/index.d.ts.map +1 -1
  127. package/node_modules/@oscharko-dev/keiko-contracts/dist/index.js +4 -1
  128. package/node_modules/@oscharko-dev/keiko-contracts/dist/local-knowledge-validation.d.ts.map +1 -1
  129. package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-audit-events.d.ts +13 -1
  130. package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-audit-events.d.ts.map +1 -1
  131. package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-audit-events.js +7 -6
  132. package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-internal.d.ts.map +1 -1
  133. package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-internal.js +1 -1
  134. package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-operations.d.ts.map +1 -1
  135. package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-workflow-port.d.ts.map +1 -1
  136. package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-workflow-port.js +1 -1
  137. package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/bffWire.d.ts +21 -4
  138. package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/bffWire.d.ts.map +1 -1
  139. package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/index.d.ts +1 -0
  140. package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/index.d.ts.map +1 -1
  141. package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/index.js +1 -0
  142. package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/sourceEnvelope.d.ts +1 -0
  143. package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/sourceEnvelope.d.ts.map +1 -1
  144. package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/sourceEnvelope.js +26 -0
  145. package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/testQualityRubric.d.ts +5 -3
  146. package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/testQualityRubric.d.ts.map +1 -1
  147. package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/testQualityRubric.js +29 -3
  148. package/node_modules/@oscharko-dev/keiko-contracts/dist/text-safety.d.ts +7 -0
  149. package/node_modules/@oscharko-dev/keiko-contracts/dist/text-safety.d.ts.map +1 -0
  150. package/node_modules/@oscharko-dev/keiko-contracts/dist/text-safety.js +58 -0
  151. package/node_modules/@oscharko-dev/keiko-contracts/package.json +5 -1
  152. package/node_modules/@oscharko-dev/keiko-evaluations/dist/.tsbuildinfo +1 -1
  153. package/node_modules/@oscharko-dev/keiko-evaluations/dist/surface-parity.d.ts.map +1 -1
  154. package/node_modules/@oscharko-dev/keiko-evaluations/package.json +1 -1
  155. package/node_modules/@oscharko-dev/keiko-evidence/dist/.tsbuildinfo +1 -1
  156. package/node_modules/@oscharko-dev/keiko-evidence/dist/index.d.ts +1 -1
  157. package/node_modules/@oscharko-dev/keiko-evidence/dist/index.d.ts.map +1 -1
  158. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/candidatesArtifact.d.ts +7 -0
  159. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/candidatesArtifact.d.ts.map +1 -1
  160. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/candidatesArtifact.js +62 -13
  161. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/companionStore.d.ts +3 -3
  162. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/companionStore.d.ts.map +1 -1
  163. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/companionStore.js +31 -11
  164. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/schema.d.ts +35 -3
  165. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/schema.d.ts.map +1 -1
  166. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/schema.js +107 -3
  167. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/store.d.ts +15 -1
  168. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/store.d.ts.map +1 -1
  169. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/store.js +248 -36
  170. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/index.d.ts +2 -2
  171. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/index.d.ts.map +1 -1
  172. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/manifestSchema.d.ts +17 -3
  173. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/manifestSchema.d.ts.map +1 -1
  174. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/store.d.ts +1 -1
  175. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/store.d.ts.map +1 -1
  176. package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/store.js +26 -22
  177. package/node_modules/@oscharko-dev/keiko-evidence/dist/side-file.d.ts.map +1 -1
  178. package/node_modules/@oscharko-dev/keiko-evidence/dist/side-file.js +17 -5
  179. package/node_modules/@oscharko-dev/keiko-evidence/dist/store.d.ts.map +1 -1
  180. package/node_modules/@oscharko-dev/keiko-evidence/dist/store.js +128 -12
  181. package/node_modules/@oscharko-dev/keiko-evidence/dist/workflow-evidence.d.ts.map +1 -1
  182. package/node_modules/@oscharko-dev/keiko-evidence/dist/workflow-evidence.js +1 -3
  183. package/node_modules/@oscharko-dev/keiko-evidence/package.json +1 -1
  184. package/node_modules/@oscharko-dev/keiko-harness/dist/.tsbuildinfo +1 -1
  185. package/node_modules/@oscharko-dev/keiko-harness/package.json +1 -1
  186. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/.tsbuildinfo +1 -1
  187. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/capsule-set-lifecycle.d.ts.map +1 -1
  188. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/capsule-set-lifecycle.js +1 -2
  189. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/composition.d.ts.map +1 -1
  190. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/composition.js +1 -1
  191. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/extract.d.ts.map +1 -1
  192. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/extract.js +45 -21
  193. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/media-type.d.ts.map +1 -1
  194. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/media-type.js +1 -0
  195. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/walk.d.ts.map +1 -1
  196. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/walk.js +11 -3
  197. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/dimensions.d.ts +2 -0
  198. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/dimensions.d.ts.map +1 -1
  199. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/dimensions.js +42 -0
  200. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/fixtures.d.ts.map +1 -1
  201. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/fixtures.js +34 -0
  202. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/index.d.ts +1 -1
  203. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/index.d.ts.map +1 -1
  204. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/index.js +1 -1
  205. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/report.d.ts.map +1 -1
  206. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/report.js +7 -6
  207. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/runner.d.ts.map +1 -1
  208. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/runner.js +7 -1
  209. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/types.d.ts +4 -0
  210. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/types.d.ts.map +1 -1
  211. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/types.js +2 -0
  212. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/index.d.ts +1 -1
  213. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/index.d.ts.map +1 -1
  214. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/index.js +1 -1
  215. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/indexing/embedding-batcher.d.ts.map +1 -1
  216. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/indexing/embedding-batcher.js +121 -3
  217. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/indexing/orchestrator.d.ts.map +1 -1
  218. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/indexing/orchestrator.js +34 -4
  219. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/_internal.d.ts +1 -0
  220. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/_internal.d.ts.map +1 -1
  221. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/_internal.js +63 -0
  222. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/docx-parser.d.ts.map +1 -1
  223. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/docx-parser.js +4 -7
  224. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/html-parser.d.ts.map +1 -1
  225. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/html-parser.js +67 -11
  226. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/index.d.ts +1 -0
  227. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/index.d.ts.map +1 -1
  228. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/index.js +3 -0
  229. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/json-parser.d.ts.map +1 -1
  230. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/json-parser.js +39 -3
  231. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/ocr/null-ocr-adapter.d.ts.map +1 -1
  232. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/ocr/ocr-pipeline-parser.d.ts.map +1 -1
  233. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/ocr/ocr-pipeline-parser.js +46 -11
  234. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/parser-test-fixtures.d.ts +2 -0
  235. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/parser-test-fixtures.d.ts.map +1 -1
  236. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/parser-test-fixtures.js +2 -0
  237. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/pdf-parser.d.ts.map +1 -1
  238. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/pdf-parser.js +114 -0
  239. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/xlsx-parser.d.ts +3 -0
  240. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/xlsx-parser.d.ts.map +1 -0
  241. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/xlsx-parser.js +425 -0
  242. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/privacy/retention-applier.d.ts.map +1 -1
  243. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/qualityIntelligence/capsuleCorpus.d.ts +9 -4
  244. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/qualityIntelligence/capsuleCorpus.d.ts.map +1 -1
  245. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/qualityIntelligence/capsuleCorpus.js +11 -6
  246. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/retrieval-runner.js +15 -2
  247. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/scoped-vector-search.d.ts +1 -0
  248. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/scoped-vector-search.d.ts.map +1 -1
  249. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/scoped-vector-search.js +220 -7
  250. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/types.d.ts +2 -1
  251. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/types.d.ts.map +1 -1
  252. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/source-lifecycle.d.ts.map +1 -1
  253. package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/source-lifecycle.js +3 -1
  254. package/node_modules/@oscharko-dev/keiko-local-knowledge/package.json +4 -2
  255. package/node_modules/@oscharko-dev/keiko-memory-capture/dist/.tsbuildinfo +1 -1
  256. package/node_modules/@oscharko-dev/keiko-memory-capture/dist/capture-safety.d.ts +4 -0
  257. package/node_modules/@oscharko-dev/keiko-memory-capture/dist/capture-safety.d.ts.map +1 -0
  258. package/node_modules/@oscharko-dev/keiko-memory-capture/dist/capture-safety.js +17 -0
  259. package/node_modules/@oscharko-dev/keiko-memory-capture/dist/errors.d.ts +1 -1
  260. package/node_modules/@oscharko-dev/keiko-memory-capture/dist/errors.d.ts.map +1 -1
  261. package/node_modules/@oscharko-dev/keiko-memory-capture/dist/index.d.ts +1 -0
  262. package/node_modules/@oscharko-dev/keiko-memory-capture/dist/index.d.ts.map +1 -1
  263. package/node_modules/@oscharko-dev/keiko-memory-capture/dist/index.js +1 -0
  264. package/node_modules/@oscharko-dev/keiko-memory-capture/dist/salience.js +1 -1
  265. package/node_modules/@oscharko-dev/keiko-memory-capture/package.json +1 -1
  266. package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/.tsbuildinfo +1 -1
  267. package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/_constants.d.ts +3 -0
  268. package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/_constants.d.ts.map +1 -1
  269. package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/_constants.js +5 -0
  270. package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/consolidate.d.ts.map +1 -1
  271. package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/consolidate.js +93 -30
  272. package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/stale.d.ts.map +1 -1
  273. package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/stale.js +3 -1
  274. package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/types.d.ts +5 -0
  275. package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/types.d.ts.map +1 -1
  276. package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/types.js +1 -1
  277. package/node_modules/@oscharko-dev/keiko-memory-consolidation/package.json +2 -2
  278. package/node_modules/@oscharko-dev/keiko-memory-governance/dist/.tsbuildinfo +1 -1
  279. package/node_modules/@oscharko-dev/keiko-memory-governance/dist/forget.js +1 -1
  280. package/node_modules/@oscharko-dev/keiko-memory-governance/dist/types.js +1 -1
  281. package/node_modules/@oscharko-dev/keiko-memory-governance/package.json +2 -2
  282. package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/.tsbuildinfo +1 -1
  283. package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/context.d.ts.map +1 -1
  284. package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/context.js +61 -18
  285. package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/ranking.d.ts.map +1 -1
  286. package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/ranking.js +3 -1
  287. package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/retrieve.d.ts.map +1 -1
  288. package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/retrieve.js +26 -4
  289. package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/types.d.ts +9 -1
  290. package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/types.d.ts.map +1 -1
  291. package/node_modules/@oscharko-dev/keiko-memory-retrieval/package.json +1 -1
  292. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/.tsbuildinfo +1 -1
  293. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/embeddings.d.ts +1 -0
  294. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/embeddings.d.ts.map +1 -1
  295. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/embeddings.js +21 -0
  296. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/index.d.ts +1 -1
  297. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/index.d.ts.map +1 -1
  298. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/migrate-encrypt.d.ts.map +1 -1
  299. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/migrate-encrypt.js +24 -4
  300. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/schema.d.ts +1 -1
  301. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/schema.d.ts.map +1 -1
  302. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/schema.js +27 -4
  303. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/tombstones.d.ts +1 -0
  304. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/tombstones.d.ts.map +1 -1
  305. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/tombstones.js +21 -4
  306. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/types.d.ts +22 -1
  307. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/types.d.ts.map +1 -1
  308. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/validate.d.ts.map +1 -1
  309. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/validate.js +3 -0
  310. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/vault.d.ts.map +1 -1
  311. package/node_modules/@oscharko-dev/keiko-memory-vault/dist/vault.js +105 -28
  312. package/node_modules/@oscharko-dev/keiko-memory-vault/package.json +1 -1
  313. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/.tsbuildinfo +1 -1
  314. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/config.d.ts +2 -0
  315. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/config.d.ts.map +1 -1
  316. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/config.js +83 -69
  317. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/embedding.d.ts +3 -2
  318. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/embedding.d.ts.map +1 -1
  319. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/embedding.js +20 -16
  320. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/gateway.d.ts.map +1 -1
  321. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/gateway.js +9 -3
  322. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/http.d.ts.map +1 -1
  323. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/http.js +29 -3
  324. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/index.d.ts +4 -4
  325. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/index.d.ts.map +1 -1
  326. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/index.js +3 -3
  327. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-adapter.d.ts.map +1 -1
  328. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-adapter.js +51 -6
  329. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-embedding-adapter.d.ts +20 -1
  330. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-embedding-adapter.d.ts.map +1 -1
  331. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-embedding-adapter.js +122 -7
  332. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityGate.d.ts +10 -1
  333. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityGate.d.ts.map +1 -1
  334. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityGate.js +33 -11
  335. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityMapping.d.ts +4 -0
  336. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityMapping.d.ts.map +1 -0
  337. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityMapping.js +21 -0
  338. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/index.d.ts +1 -1
  339. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/index.d.ts.map +1 -1
  340. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/index.js +1 -1
  341. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/routing.d.ts.map +1 -1
  342. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/routing.js +2 -13
  343. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/resilience.d.ts +1 -0
  344. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/resilience.d.ts.map +1 -1
  345. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/resilience.js +18 -2
  346. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/types.d.ts +5 -1
  347. package/node_modules/@oscharko-dev/keiko-model-gateway/dist/types.d.ts.map +1 -1
  348. package/node_modules/@oscharko-dev/keiko-model-gateway/package.json +1 -1
  349. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/.tsbuildinfo +1 -1
  350. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/assertions.d.ts +35 -0
  351. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/assertions.d.ts.map +1 -1
  352. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/assertions.js +74 -0
  353. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/deduplication.d.ts.map +1 -1
  354. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/deduplication.js +6 -2
  355. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/a11yBaseline.d.ts.map +1 -1
  356. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/a11yBaseline.js +64 -19
  357. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/cleanToScreenIr.d.ts.map +1 -1
  358. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/cleanToScreenIr.js +3 -0
  359. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/color.d.ts +6 -1
  360. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/color.d.ts.map +1 -1
  361. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/color.js +22 -9
  362. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/emissionPlan.d.ts +4 -1
  363. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/emissionPlan.d.ts.map +1 -1
  364. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/emissionPlan.js +28 -12
  365. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/htmlCssAdapter.d.ts.map +1 -1
  366. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/htmlCssAdapter.js +123 -33
  367. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/index.d.ts +2 -2
  368. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/index.d.ts.map +1 -1
  369. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/irTypes.d.ts +7 -4
  370. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/irTypes.d.ts.map +1 -1
  371. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/links.d.ts.map +1 -1
  372. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/links.js +13 -17
  373. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/navGraph.d.ts.map +1 -1
  374. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/navGraph.js +35 -12
  375. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/normalize.d.ts.map +1 -1
  376. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/normalize.js +54 -6
  377. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/screenIrTestBaseline.d.ts +4 -0
  378. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/screenIrTestBaseline.d.ts.map +1 -1
  379. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/screenIrTestBaseline.js +29 -10
  380. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/tokens.d.ts.map +1 -1
  381. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/tokens.js +10 -4
  382. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/requirementExcerpt.d.ts.map +1 -1
  383. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/requirementExcerpt.js +15 -6
  384. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/staleness.d.ts +4 -0
  385. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/staleness.d.ts.map +1 -1
  386. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/staleness.js +162 -6
  387. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/testDesignModel.d.ts +14 -2
  388. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/testDesignModel.d.ts.map +1 -1
  389. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/testDesignModel.js +50 -12
  390. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/validation.d.ts.map +1 -1
  391. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/validation.js +4 -2
  392. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/markdown.d.ts.map +1 -1
  393. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/markdown.js +8 -3
  394. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/traceability.d.ts.map +1 -1
  395. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/traceability.js +12 -9
  396. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/textSafety.d.ts +7 -0
  397. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/textSafety.d.ts.map +1 -1
  398. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/textSafety.js +7 -0
  399. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/candidateBounds.d.ts +10 -0
  400. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/candidateBounds.d.ts.map +1 -0
  401. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/candidateBounds.js +14 -0
  402. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/index.d.ts.map +1 -1
  403. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/index.js +3 -2
  404. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/parseGeneratedCandidates.d.ts.map +1 -1
  405. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/parseGeneratedCandidates.js +97 -50
  406. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/prompt.d.ts.map +1 -1
  407. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/prompt.js +35 -7
  408. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/index.d.ts +2 -2
  409. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/index.d.ts.map +1 -1
  410. package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/index.js +2 -2
  411. package/node_modules/@oscharko-dev/keiko-quality-intelligence/package.json +1 -1
  412. package/node_modules/@oscharko-dev/keiko-sdk/dist/.tsbuildinfo +1 -1
  413. package/node_modules/@oscharko-dev/keiko-sdk/package.json +1 -1
  414. package/node_modules/@oscharko-dev/keiko-security/dist/.tsbuildinfo +1 -1
  415. package/node_modules/@oscharko-dev/keiko-security/dist/errors/gateway.d.ts +11 -0
  416. package/node_modules/@oscharko-dev/keiko-security/dist/errors/gateway.d.ts.map +1 -1
  417. package/node_modules/@oscharko-dev/keiko-security/dist/errors/gateway.js +13 -0
  418. package/node_modules/@oscharko-dev/keiko-security/package.json +1 -1
  419. package/node_modules/@oscharko-dev/keiko-server/dist/.tsbuildinfo +1 -1
  420. package/node_modules/@oscharko-dev/keiko-server/dist/chat-handlers.d.ts.map +1 -1
  421. package/node_modules/@oscharko-dev/keiko-server/dist/chat-handlers.js +50 -12
  422. package/node_modules/@oscharko-dev/keiko-server/dist/chat-stream-handlers.d.ts.map +1 -1
  423. package/node_modules/@oscharko-dev/keiko-server/dist/chat-stream-handlers.js +10 -8
  424. package/node_modules/@oscharko-dev/keiko-server/dist/conversation-prompt.d.ts +1 -0
  425. package/node_modules/@oscharko-dev/keiko-server/dist/conversation-prompt.d.ts.map +1 -1
  426. package/node_modules/@oscharko-dev/keiko-server/dist/conversation-prompt.js +3 -0
  427. package/node_modules/@oscharko-dev/keiko-server/dist/deps.d.ts +4 -2
  428. package/node_modules/@oscharko-dev/keiko-server/dist/deps.d.ts.map +1 -1
  429. package/node_modules/@oscharko-dev/keiko-server/dist/deps.js +44 -69
  430. package/node_modules/@oscharko-dev/keiko-server/dist/gateway-setup.d.ts.map +1 -1
  431. package/node_modules/@oscharko-dev/keiko-server/dist/gateway-setup.js +120 -28
  432. package/node_modules/@oscharko-dev/keiko-server/dist/governed-workflow.d.ts.map +1 -1
  433. package/node_modules/@oscharko-dev/keiko-server/dist/governed-workflow.js +4 -1
  434. package/node_modules/@oscharko-dev/keiko-server/dist/grounded-handoff.d.ts.map +1 -1
  435. package/node_modules/@oscharko-dev/keiko-server/dist/grounded-handoff.js +2 -0
  436. package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa-hybrid.d.ts.map +1 -1
  437. package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa-hybrid.js +115 -22
  438. package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa-multi-source.d.ts.map +1 -1
  439. package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa-multi-source.js +54 -21
  440. package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa.d.ts.map +1 -1
  441. package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa.js +11 -4
  442. package/node_modules/@oscharko-dev/keiko-server/dist/index.d.ts +1 -0
  443. package/node_modules/@oscharko-dev/keiko-server/dist/index.d.ts.map +1 -1
  444. package/node_modules/@oscharko-dev/keiko-server/dist/index.js +1 -0
  445. package/node_modules/@oscharko-dev/keiko-server/dist/local-knowledge-grounded-qa.d.ts.map +1 -1
  446. package/node_modules/@oscharko-dev/keiko-server/dist/local-knowledge-grounded-qa.js +7 -3
  447. package/node_modules/@oscharko-dev/keiko-server/dist/local-knowledge-handlers.d.ts.map +1 -1
  448. package/node_modules/@oscharko-dev/keiko-server/dist/local-knowledge-handlers.js +26 -14
  449. package/node_modules/@oscharko-dev/keiko-server/dist/memory-audit-handler.d.ts +1 -0
  450. package/node_modules/@oscharko-dev/keiko-server/dist/memory-audit-handler.d.ts.map +1 -1
  451. package/node_modules/@oscharko-dev/keiko-server/dist/memory-audit-handler.js +52 -27
  452. package/node_modules/@oscharko-dev/keiko-server/dist/memory-capture-policy.d.ts +10 -0
  453. package/node_modules/@oscharko-dev/keiko-server/dist/memory-capture-policy.d.ts.map +1 -0
  454. package/node_modules/@oscharko-dev/keiko-server/dist/memory-capture-policy.js +44 -0
  455. package/node_modules/@oscharko-dev/keiko-server/dist/memory-consolidation-handlers.d.ts.map +1 -1
  456. package/node_modules/@oscharko-dev/keiko-server/dist/memory-consolidation-handlers.js +79 -57
  457. package/node_modules/@oscharko-dev/keiko-server/dist/memory-consolidation-registry.d.ts +1 -0
  458. package/node_modules/@oscharko-dev/keiko-server/dist/memory-consolidation-registry.d.ts.map +1 -1
  459. package/node_modules/@oscharko-dev/keiko-server/dist/memory-conv-handlers.d.ts.map +1 -1
  460. package/node_modules/@oscharko-dev/keiko-server/dist/memory-conv-handlers.js +6 -4
  461. package/node_modules/@oscharko-dev/keiko-server/dist/memory-conversation-context.d.ts.map +1 -1
  462. package/node_modules/@oscharko-dev/keiko-server/dist/memory-diagnostics.d.ts.map +1 -1
  463. package/node_modules/@oscharko-dev/keiko-server/dist/memory-diagnostics.js +16 -9
  464. package/node_modules/@oscharko-dev/keiko-server/dist/memory-handlers.d.ts +3 -1
  465. package/node_modules/@oscharko-dev/keiko-server/dist/memory-handlers.d.ts.map +1 -1
  466. package/node_modules/@oscharko-dev/keiko-server/dist/memory-handlers.js +538 -87
  467. package/node_modules/@oscharko-dev/keiko-server/dist/memory-maintenance-handlers.d.ts +6 -1
  468. package/node_modules/@oscharko-dev/keiko-server/dist/memory-maintenance-handlers.d.ts.map +1 -1
  469. package/node_modules/@oscharko-dev/keiko-server/dist/memory-maintenance-handlers.js +17 -38
  470. package/node_modules/@oscharko-dev/keiko-server/dist/memory-retention.d.ts.map +1 -1
  471. package/node_modules/@oscharko-dev/keiko-server/dist/memory-retention.js +7 -15
  472. package/node_modules/@oscharko-dev/keiko-server/dist/memory-salience.d.ts.map +1 -1
  473. package/node_modules/@oscharko-dev/keiko-server/dist/memory-salience.js +17 -2
  474. package/node_modules/@oscharko-dev/keiko-server/dist/memory-scope-sanitizer.d.ts.map +1 -1
  475. package/node_modules/@oscharko-dev/keiko-server/dist/memory-scope-sanitizer.js +19 -0
  476. package/node_modules/@oscharko-dev/keiko-server/dist/memory-target-resolver.d.ts.map +1 -1
  477. package/node_modules/@oscharko-dev/keiko-server/dist/memory-target-resolver.js +4 -1
  478. package/node_modules/@oscharko-dev/keiko-server/dist/memory-workflow-port.d.ts +1 -0
  479. package/node_modules/@oscharko-dev/keiko-server/dist/memory-workflow-port.d.ts.map +1 -1
  480. package/node_modules/@oscharko-dev/keiko-server/dist/memory-workflow-port.js +108 -27
  481. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/capsuleAdapter.d.ts +4 -0
  482. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/capsuleAdapter.d.ts.map +1 -1
  483. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/capsuleAdapter.js +3 -0
  484. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/editRoutes.d.ts.map +1 -1
  485. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/editRoutes.js +61 -7
  486. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/exportRoutes.d.ts.map +1 -1
  487. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/exportRoutes.js +9 -3
  488. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConcurrency.d.ts.map +1 -1
  489. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConcurrency.js +2 -1
  490. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnector.d.ts +6 -0
  491. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnector.d.ts.map +1 -1
  492. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnector.js +16 -3
  493. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorAudit.d.ts +7 -0
  494. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorAudit.d.ts.map +1 -1
  495. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorErrors.d.ts +1 -1
  496. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorErrors.d.ts.map +1 -1
  497. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorErrors.js +3 -1
  498. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConsent.d.ts +2 -2
  499. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConsent.d.ts.map +1 -1
  500. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConsent.js +3 -3
  501. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaObservedActions.d.ts +5 -0
  502. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaObservedActions.d.ts.map +1 -1
  503. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaObservedActions.js +10 -8
  504. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaReadiness.d.ts.map +1 -1
  505. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaReadiness.js +11 -5
  506. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaRenderPort.d.ts.map +1 -1
  507. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaRenderPort.js +1 -0
  508. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaScopedPagination.d.ts +3 -0
  509. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaScopedPagination.d.ts.map +1 -1
  510. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaScopedPagination.js +71 -10
  511. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotBuilder.d.ts +2 -0
  512. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotBuilder.d.ts.map +1 -1
  513. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotBuilder.js +86 -23
  514. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotTypes.d.ts +1 -1
  515. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotTypes.d.ts.map +1 -1
  516. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaTokenSource.d.ts.map +1 -1
  517. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaTokenSource.js +4 -3
  518. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaUrl.d.ts.map +1 -1
  519. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaUrl.js +2 -0
  520. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/index.d.ts +1 -1
  521. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/index.d.ts.map +1 -1
  522. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/index.js +1 -1
  523. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaCodegenRoutes.d.ts.map +1 -1
  524. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaCodegenRoutes.js +60 -20
  525. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotAdapter.d.ts +11 -6
  526. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotAdapter.d.ts.map +1 -1
  527. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotAdapter.js +144 -6
  528. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotOrchestration.d.ts +9 -0
  529. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotOrchestration.d.ts.map +1 -1
  530. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotOrchestration.js +84 -15
  531. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotRoutes.d.ts +9 -7
  532. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotRoutes.d.ts.map +1 -1
  533. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotRoutes.js +206 -42
  534. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/judgePort.d.ts +3 -1
  535. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/judgePort.d.ts.map +1 -1
  536. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/judgePort.js +69 -65
  537. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/modelSelection.d.ts +15 -1
  538. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/modelSelection.d.ts.map +1 -1
  539. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/modelSelection.js +56 -39
  540. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reCheckRoutes.d.ts +1 -1
  541. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reCheckRoutes.d.ts.map +1 -1
  542. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reCheckRoutes.js +382 -75
  543. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reviewRoutes.d.ts.map +1 -1
  544. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reviewRoutes.js +14 -6
  545. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runExecution.d.ts +3 -2
  546. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runExecution.d.ts.map +1 -1
  547. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runExecution.js +44 -16
  548. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runIngestion.d.ts +7 -0
  549. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runIngestion.d.ts.map +1 -1
  550. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runIngestion.js +336 -47
  551. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runRoutes.d.ts.map +1 -1
  552. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runRoutes.js +15 -5
  553. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/traceabilityRoutes.d.ts.map +1 -1
  554. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/traceabilityRoutes.js +36 -4
  555. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/uiRoutes.d.ts.map +1 -1
  556. package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/uiRoutes.js +61 -6
  557. package/node_modules/@oscharko-dev/keiko-server/dist/routes.d.ts.map +1 -1
  558. package/node_modules/@oscharko-dev/keiko-server/dist/routes.js +16 -5
  559. package/node_modules/@oscharko-dev/keiko-server/dist/run-engine.d.ts +1 -0
  560. package/node_modules/@oscharko-dev/keiko-server/dist/run-engine.d.ts.map +1 -1
  561. package/node_modules/@oscharko-dev/keiko-server/dist/run-engine.js +3 -0
  562. package/node_modules/@oscharko-dev/keiko-server/dist/run-handlers.d.ts.map +1 -1
  563. package/node_modules/@oscharko-dev/keiko-server/dist/run-handlers.js +2 -0
  564. package/node_modules/@oscharko-dev/keiko-server/dist/sse-write.d.ts +9 -0
  565. package/node_modules/@oscharko-dev/keiko-server/dist/sse-write.d.ts.map +1 -0
  566. package/node_modules/@oscharko-dev/keiko-server/dist/sse-write.js +26 -0
  567. package/node_modules/@oscharko-dev/keiko-server/dist/store/chats.d.ts.map +1 -1
  568. package/node_modules/@oscharko-dev/keiko-server/dist/store/chats.js +16 -8
  569. package/node_modules/@oscharko-dev/keiko-server/dist/store/messages.d.ts.map +1 -1
  570. package/node_modules/@oscharko-dev/keiko-server/dist/store-handlers.d.ts.map +1 -1
  571. package/node_modules/@oscharko-dev/keiko-server/dist/terminal.d.ts.map +1 -1
  572. package/node_modules/@oscharko-dev/keiko-server/package.json +1 -1
  573. package/node_modules/@oscharko-dev/keiko-tools/dist/.tsbuildinfo +1 -1
  574. package/node_modules/@oscharko-dev/keiko-tools/dist/patch-normalize.d.ts.map +1 -1
  575. package/node_modules/@oscharko-dev/keiko-tools/dist/patch-normalize.js +13 -7
  576. package/node_modules/@oscharko-dev/keiko-tools/package.json +1 -1
  577. package/node_modules/@oscharko-dev/keiko-verification/dist/.tsbuildinfo +1 -1
  578. package/node_modules/@oscharko-dev/keiko-verification/package.json +1 -1
  579. package/node_modules/@oscharko-dev/keiko-workflows/dist/.tsbuildinfo +1 -1
  580. package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/memory.d.ts +2 -2
  581. package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/memory.d.ts.map +1 -1
  582. package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/memory.js +16 -18
  583. package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/prompt.d.ts.map +1 -1
  584. package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/prompt.js +6 -1
  585. package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/workflow.d.ts.map +1 -1
  586. package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/workflow.js +3 -3
  587. package/node_modules/@oscharko-dev/keiko-workflows/dist/governed-handoff.d.ts.map +1 -1
  588. package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/descriptors.d.ts +2 -2
  589. package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/modelRoutedTestDesign.d.ts +18 -2
  590. package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/modelRoutedTestDesign.d.ts.map +1 -1
  591. package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/modelRoutedTestDesign.js +209 -54
  592. package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/runtimeCommon.d.ts +4 -4
  593. package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/runtimeCommon.d.ts.map +1 -1
  594. package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/runtimeCommon.js +4 -1
  595. package/node_modules/@oscharko-dev/keiko-workflows/dist/unit-tests/target-guard.d.ts.map +1 -1
  596. package/node_modules/@oscharko-dev/keiko-workflows/package.json +1 -1
  597. package/node_modules/@oscharko-dev/keiko-workspace/dist/.tsbuildinfo +1 -1
  598. package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchEntries.d.ts.map +1 -1
  599. package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchEntries.js +1 -2
  600. package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchLineSelection.d.ts.map +1 -1
  601. package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchLineSelection.js +2 -1
  602. package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchMatchers.d.ts.map +1 -1
  603. package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchMatchers.js +6 -2
  604. package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchRegexSafety.d.ts.map +1 -1
  605. package/node_modules/@oscharko-dev/keiko-workspace/package.json +1 -1
  606. package/package.json +23 -6
  607. package/dist/ui/static/_next/static/chunks/082obv3v03b-9.js +0 -2
  608. package/dist/ui/static/_next/static/chunks/0uifns067thv8.js +0 -1
  609. package/dist/ui/static/_next/static/chunks/0x31-j53ab1tt.js +0 -1
  610. package/dist/ui/static/_next/static/chunks/1m-kvwm6_90_3.css +0 -1
  611. package/dist/ui/static/_next/static/chunks/1v4hrxrm_6_rw.js +0 -1
  612. package/dist/ui/static/_next/static/chunks/27jktro2p5rq9.js +0 -4
  613. package/dist/ui/static/_next/static/chunks/2lypy3ewh0r04.js +0 -1
  614. package/dist/ui/static/_next/static/chunks/2ngm8iwdb1cbv.js +0 -106
  615. package/dist/ui/static/_next/static/chunks/32573pyyglqxl.js +0 -1
  616. package/dist/ui/static/_next/static/chunks/3_t_pzet29qtn.js +0 -1
  617. package/dist/ui/static/_next/static/chunks/3jgg_oe0iok0l.js +0 -1
  618. package/dist/ui/static/_next/static/chunks/3o_oia3vsam60.js +0 -1
  619. package/dist/ui/static/_next/static/chunks/turbopack-2lg1g6kbsfm0x.js +0 -1
  620. /package/dist/ui/static/_next/static/{hR2gBQqCDKdPdSxBqZhqv → fQMXe8UmV01bh25WOoIt3}/_buildManifest.js +0 -0
  621. /package/dist/ui/static/_next/static/{hR2gBQqCDKdPdSxBqZhqv → fQMXe8UmV01bh25WOoIt3}/_clientMiddlewareManifest.js +0 -0
  622. /package/dist/ui/static/_next/static/{hR2gBQqCDKdPdSxBqZhqv → fQMXe8UmV01bh25WOoIt3}/_ssgManifest.js +0 -0
@@ -280,14 +280,45 @@ function handleExtractionSkipped(state, result) {
280
280
  reason: "unchanged",
281
281
  };
282
282
  }
283
+ // GRD-010: transient IO failure codes that must NOT destroy a previously-good index on an
284
+ // incremental refresh. Mirrors the gate in discovery/extract.ts buildFailureResult.
285
+ const TRANSIENT_DISCOVERY_CODES = new Set(["READ_FAILED", "STAT_FAILED"]);
283
286
  function handleExtractionFailed(state, result) {
284
- state.failedDocuments += 1;
285
287
  const errMessage = result.outcome.kind === "failed" ? result.outcome.error.message : "extraction failed";
286
288
  const errCode = result.outcome.kind === "failed" ? result.outcome.error.code : "READ_FAILED";
287
289
  if (result.outcome.kind === "failed") {
288
- clearDocumentArtifacts(state, result.outcome.document.id, { deleteChunks: true });
289
- markDocumentFailed(state, result.outcome.document.id);
290
+ const documentId = result.outcome.document.id;
291
+ // GRD-010: a transient re-read failure on a document that still has a prior good index
292
+ // (extract.ts preserved its chunks/vectors) is reported as a non-destructive skip, NOT a
293
+ // failure — the retrievable content survives until a successful re-extraction.
294
+ if (TRANSIENT_DISCOVERY_CODES.has(errCode) &&
295
+ countChunksForDocument(state.options.store._internal.db, state.capsule.id, documentId) > 0) {
296
+ state.skippedDocuments += 1;
297
+ return {
298
+ kind: "document-skipped",
299
+ jobId: state.jobId,
300
+ capsuleId: state.capsule.id,
301
+ sourceId: result.sourceId,
302
+ documentId,
303
+ reason: "unchanged",
304
+ };
305
+ }
306
+ state.failedDocuments += 1;
307
+ clearDocumentArtifacts(state, documentId, { deleteChunks: true });
308
+ markDocumentFailed(state, documentId);
309
+ const error = { code: `DISCOVERY_FAILED:${errCode}`, message: errMessage };
310
+ state.lastError = error;
311
+ return {
312
+ kind: "document-failed",
313
+ jobId: state.jobId,
314
+ capsuleId: state.capsule.id,
315
+ sourceId: result.sourceId,
316
+ documentId,
317
+ relativePath: result.relativePath,
318
+ error,
319
+ };
290
320
  }
321
+ state.failedDocuments += 1;
291
322
  const error = { code: `DISCOVERY_FAILED:${errCode}`, message: errMessage };
292
323
  state.lastError = error;
293
324
  return {
@@ -295,7 +326,6 @@ function handleExtractionFailed(state, result) {
295
326
  jobId: state.jobId,
296
327
  capsuleId: state.capsule.id,
297
328
  sourceId: result.sourceId,
298
- ...(result.outcome.kind === "failed" ? { documentId: result.outcome.document.id } : {}),
299
329
  relativePath: result.relativePath,
300
330
  error,
301
331
  };
@@ -15,5 +15,6 @@ export interface DecodedText {
15
15
  readonly text: string;
16
16
  readonly bomBytes: number;
17
17
  }
18
+ export declare function decodeXmlEntities(value: string): string;
18
19
  export declare function decodeUtf8(bytes: Uint8Array): DecodedText;
19
20
  //# sourceMappingURL=_internal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"_internal.d.ts","sourceRoot":"","sources":["../../src/parsers/_internal.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,YAAY,EACb,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEnF,wBAAgB,WAAW,CACzB,UAAU,EAAE,gBAAgB,EAC5B,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,aAAa,EACtB,WAAW,GAAE,SAAS,gBAAgB,EAAO,EAC7C,KAAK,GAAE,SAAS,UAAU,EAAO,GAChC,YAAY,CAUd;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,gBAAgB,GAAG,cAAc,CAQ3E;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,UAAU,EACtB,QAAQ,GAAE,gBAAgB,CAAC,UAAU,CAAU,GAC9C,gBAAgB,CAElB;AAID,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,UAAU,CACxB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,MAAM,GACnB,UAAU,CAmBZ;AAED,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,gBAAgB,CAOlB;AAED,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,UAAU,EACtB,qBAAqB,EAAE,MAAM,GAC5B,gBAAgB,CAOlB;AAMD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,WAAW,CAOzD"}
1
+ {"version":3,"file":"_internal.d.ts","sourceRoot":"","sources":["../../src/parsers/_internal.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,YAAY,EACb,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEnF,wBAAgB,WAAW,CACzB,UAAU,EAAE,gBAAgB,EAC5B,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,aAAa,EACtB,WAAW,GAAE,SAAS,gBAAgB,EAAO,EAC7C,KAAK,GAAE,SAAS,UAAU,EAAO,GAChC,YAAY,CAUd;AAED,wBAAgB,cAAc,CAAC,UAAU,EAAE,gBAAgB,GAAG,cAAc,CAQ3E;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,UAAU,EACtB,QAAQ,GAAE,gBAAgB,CAAC,UAAU,CAAU,GAC9C,gBAAgB,CAElB;AAID,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,UAAU,CACxB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,MAAM,GACnB,UAAU,CAmBZ;AAED,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,gBAAgB,CAOlB;AAED,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,UAAU,EACtB,qBAAqB,EAAE,MAAM,GAC5B,gBAAgB,CAOlB;AAMD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAkDD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAWvD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,WAAW,CASzD"}
@@ -49,7 +49,70 @@ export function oversizeDiagnostic(documentId, byteLength, maxBytes) {
49
49
  export function objectLimitDiagnostic(documentId, maxObjectsPerDocument) {
50
50
  return diagnostic("OBJECT_LIMIT_REACHED", `reached maxObjectsPerDocument=${String(maxObjectsPerDocument)}`, documentId, "error");
51
51
  }
52
+ // GRD-012: detect UTF-16 LE/BE by BOM (common Windows .txt/.csv/.json exports) and re-decode
53
+ // with the matching codec. Without this they decode as UTF-8 mojibake (every other byte a NUL /
54
+ // replacement char) and are silently chunked/embedded as garbage. UTF-32 LE (FF FE 00 00) is
55
+ // explicitly excluded so it is not mis-read as UTF-16 LE.
56
+ function utf16CodecForBom(bytes) {
57
+ if (bytes.byteLength < 2)
58
+ return undefined;
59
+ const b0 = bytes[0];
60
+ const b1 = bytes[1];
61
+ if (b0 === 0xfe && b1 === 0xff)
62
+ return "utf-16be";
63
+ if (b0 !== 0xff || b1 !== 0xfe)
64
+ return undefined;
65
+ // FF FE is UTF-16 LE — unless it is the UTF-32 LE BOM (FF FE 00 00), which is not handled here.
66
+ const isUtf32Le = bytes.byteLength >= 4 && bytes[2] === 0x00 && bytes[3] === 0x00;
67
+ return isUtf32Le ? undefined : "utf-16le";
68
+ }
69
+ function decodeUtf16(bytes) {
70
+ const codec = utf16CodecForBom(bytes);
71
+ if (codec === undefined)
72
+ return undefined;
73
+ const text = new TextDecoder(codec, { fatal: false }).decode(bytes);
74
+ // The 2-byte UTF-16 BOM is normally consumed by TextDecoder; strip defensively so a leading
75
+ // U+FEFF never survives into offsets. bomBytes is the consumed BOM byte length (2).
76
+ const stripped = text.length > 0 && text.charCodeAt(0) === 0xfeff ? text.slice(1) : text;
77
+ return { text: stripped, bomBytes: 2 };
78
+ }
79
+ // GRD-027: decode an XML numeric character reference body (the part between `&#` and `;`),
80
+ // e.g. "8217" (decimal) or "xE9" / "x2019" (hex). Returns undefined for malformed or
81
+ // out-of-range references (incl. surrogates) so the caller leaves the literal text intact —
82
+ // String.fromCodePoint throws on those, which must never crash the parser.
83
+ // Valid Unicode scalar value: in range and not a lone surrogate (String.fromCodePoint throws
84
+ // on surrogates / out-of-range).
85
+ function isValidScalarCodePoint(cp) {
86
+ if (!Number.isInteger(cp) || cp < 0 || cp > 0x10ffff)
87
+ return false;
88
+ return cp < 0xd800 || cp > 0xdfff;
89
+ }
90
+ function decodeNumericCharacterReference(body) {
91
+ const isHex = body.startsWith("x") || body.startsWith("X");
92
+ const digits = isHex ? body.slice(1) : body;
93
+ if (digits.length === 0)
94
+ return undefined;
95
+ if (!(isHex ? /^[0-9a-fA-F]+$/ : /^[0-9]+$/).test(digits))
96
+ return undefined;
97
+ const codePoint = Number.parseInt(digits, isHex ? 16 : 10);
98
+ return isValidScalarCodePoint(codePoint) ? String.fromCodePoint(codePoint) : undefined;
99
+ }
100
+ // Shared OOXML/HTML entity decoder for docx/xlsx text runs. Decodes numeric references first
101
+ // (decimal `&#8217;` and hex `&#xE9;` — smart quotes, accents), then the five named refs, with
102
+ // `&amp;` LAST so an escaped ampersand (`&amp;#65;`) is not re-interpreted as a numeric ref.
103
+ export function decodeXmlEntities(value) {
104
+ const withNumeric = value.replace(/&#(x?[0-9a-fA-F]+);/g, (match, body) => decodeNumericCharacterReference(body) ?? match);
105
+ return withNumeric
106
+ .replaceAll("&lt;", "<")
107
+ .replaceAll("&gt;", ">")
108
+ .replaceAll("&quot;", '"')
109
+ .replaceAll("&apos;", "'")
110
+ .replaceAll("&amp;", "&");
111
+ }
52
112
  export function decodeUtf8(bytes) {
113
+ const utf16 = decodeUtf16(bytes);
114
+ if (utf16 !== undefined)
115
+ return utf16;
53
116
  const decoder = new TextDecoder("utf-8", { fatal: false });
54
117
  const raw = decoder.decode(bytes);
55
118
  if (raw.length > 0 && raw.charCodeAt(0) === 0xfeff) {
@@ -1 +1 @@
1
- {"version":3,"file":"docx-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/docx-parser.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACV,kBAAkB,EAMnB,MAAM,YAAY,CAAC;AAmoBpB,eAAO,MAAM,UAAU,EAAE,kBAKvB,CAAC"}
1
+ {"version":3,"file":"docx-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/docx-parser.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EACV,kBAAkB,EAMnB,MAAM,YAAY,CAAC;AAgoBpB,eAAO,MAAM,UAAU,EAAE,kBAKvB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { Buffer } from "node:buffer";
2
2
  import yauzl from "yauzl";
3
- import { diagnostic, emptyResult, objectLimitDiagnostic, oversizeDiagnostic, parserIdentity, shouldStop, } from "./_internal.js";
3
+ import { decodeXmlEntities as decodeXmlEntitiesShared, diagnostic, emptyResult, objectLimitDiagnostic, oversizeDiagnostic, parserIdentity, shouldStop, } from "./_internal.js";
4
4
  const PARSER_ID = "docx";
5
5
  const PARSER_VERSION = "1";
6
6
  const DEPENDENCY_VERSIONS = Object.freeze([
@@ -176,13 +176,10 @@ async function readDocumentXml(bytes, maxInputBytes) {
176
176
  closeZipQuietly(zip);
177
177
  }
178
178
  }
179
+ // GRD-027: delegate to the shared decoder so docx text runs also resolve numeric character
180
+ // references (smart quotes, accented letters) instead of surfacing literal `&#8217;`.
179
181
  function decodeXmlEntities(value) {
180
- return value
181
- .replaceAll("&lt;", "<")
182
- .replaceAll("&gt;", ">")
183
- .replaceAll("&quot;", '"')
184
- .replaceAll("&apos;", "'")
185
- .replaceAll("&amp;", "&");
182
+ return decodeXmlEntitiesShared(value);
186
183
  }
187
184
  function limitDiagnostic(input, limit) {
188
185
  if (!limit.stop || limit.code === undefined || limit.message === undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"html-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/html-parser.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,aAAa,EAAuC,MAAM,YAAY,CAAC;AA+QrF,eAAO,MAAM,UAAU,EAAE,aAsBvB,CAAC"}
1
+ {"version":3,"file":"html-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/html-parser.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAEV,aAAa,EAGd,MAAM,YAAY,CAAC;AAyUpB,eAAO,MAAM,UAAU,EAAE,aA4BvB,CAAC"}
@@ -16,6 +16,26 @@
16
16
  // `headingPath` is set from the most recent `<h1>`-`<h6>` stack at the moment the block
17
17
  // opens. Inline text outside any heading produces a `html-block` with `headingPath: []`.
18
18
  import { decodeUtf8, diagnostic, emptyResult, oversizeDiagnostic, shouldStop, } from "./_internal.js";
19
+ // Collapse internal whitespace runs to single spaces and trim. Applied to each block's
20
+ // visible text so the cleaned projection reads as flowing prose (the raw HTML had source
21
+ // indentation / newlines between inline tags).
22
+ function collapseWhitespace(value) {
23
+ let out = "";
24
+ let inWs = false;
25
+ for (let i = 0; i < value.length; i += 1) {
26
+ const code = value.charCodeAt(i);
27
+ const ws = code === 0x20 || code === 0x09 || code === 0x0a || code === 0x0d;
28
+ if (ws) {
29
+ inWs = true;
30
+ continue;
31
+ }
32
+ if (inWs && out.length > 0)
33
+ out += " ";
34
+ inWs = false;
35
+ out += value.charAt(i);
36
+ }
37
+ return out;
38
+ }
19
39
  const PARSER_ID = "html";
20
40
  const PARSER_VERSION = "1";
21
41
  const HTML_EXTENSIONS = new Set(["html", "htm", "xhtml"]);
@@ -128,34 +148,54 @@ function isWhitespaceOnly(text, start, end) {
128
148
  }
129
149
  return true;
130
150
  }
151
+ function resetBlock(state) {
152
+ state.pendingBlockStart = null;
153
+ state.pendingBlockHasText = false;
154
+ state.blockText = "";
155
+ }
131
156
  function flushBlock(state, end) {
132
157
  if (state.pendingBlockStart === null)
133
158
  return;
134
159
  if (end <= state.pendingBlockStart || !state.pendingBlockHasText) {
135
- state.pendingBlockStart = null;
136
- state.pendingBlockHasText = false;
160
+ resetBlock(state);
137
161
  return;
138
162
  }
139
163
  const limit = shouldStop(state.startedAt, state.options, state.units.length);
140
164
  if (limit.stop && limit.code !== undefined && limit.message !== undefined) {
141
165
  state.diagnostics.push(diagnostic(limit.code, limit.message, state.input.documentId, "info"));
142
166
  state.stopped = true;
143
- state.pendingBlockStart = null;
144
- state.pendingBlockHasText = false;
167
+ resetBlock(state);
145
168
  return;
146
169
  }
170
+ // Offsets index the CLEANED projection, not the raw HTML — so citation slices and chunk
171
+ // spans never expose tags, <script>/<style> bodies, or embedded secrets.
172
+ const cleaned = collapseWhitespace(state.blockText);
173
+ if (cleaned.length === 0) {
174
+ resetBlock(state);
175
+ return;
176
+ }
177
+ if (state.cleanedParts.length > 0) {
178
+ // Single newline separator between blocks (a gap not covered by any unit range).
179
+ state.cleanedParts.push("\n");
180
+ state.cleanedOffset += 1;
181
+ }
182
+ const start = state.cleanedOffset;
183
+ state.cleanedParts.push(cleaned);
184
+ state.cleanedOffset += cleaned.length;
147
185
  state.units.push({
148
186
  kind: "html-block",
149
187
  documentId: state.input.documentId,
150
188
  headingPath: [...state.heading.stack],
151
- characterStart: state.pendingBlockStart,
152
- characterEnd: end,
189
+ characterStart: start,
190
+ characterEnd: state.cleanedOffset,
153
191
  });
154
- state.pendingBlockStart = null;
155
- state.pendingBlockHasText = false;
192
+ resetBlock(state);
156
193
  }
157
194
  function openBlock(state, at, hasText) {
158
- state.pendingBlockStart ??= at;
195
+ if (state.pendingBlockStart === null) {
196
+ state.pendingBlockStart = at;
197
+ state.blockText = "";
198
+ }
159
199
  if (hasText)
160
200
  state.pendingBlockHasText = true;
161
201
  }
@@ -183,6 +223,9 @@ function appendTextRun(state, from, to) {
183
223
  return;
184
224
  }
185
225
  openBlock(state, from, !isWhitespaceOnly(state.text, from, to));
226
+ // Accumulate only inter-tag text runs — inline tag literals (<b>, <a …>) are never part of
227
+ // a run, so the cleaned projection is tag-free by construction.
228
+ state.blockText += state.text.slice(from, to);
186
229
  }
187
230
  function handleTag(state, tag) {
188
231
  if (RAW_TEXT_TAGS.has(tag.name) && tag.kind === "open") {
@@ -227,13 +270,20 @@ function emitHtml(text, input, options) {
227
270
  pendingHeadingLabel: null,
228
271
  pendingHeadingLevel: 0,
229
272
  stopped: false,
273
+ blockText: "",
274
+ cleanedParts: [],
275
+ cleanedOffset: 0,
230
276
  };
231
277
  let cursor = 0;
232
278
  while (cursor < text.length && !state.stopped) {
233
279
  cursor = step(state, cursor);
234
280
  }
235
281
  flushBlock(state, text.length);
236
- return { units: state.units, diagnostics: state.diagnostics };
282
+ return {
283
+ units: state.units,
284
+ diagnostics: state.diagnostics,
285
+ normalizedText: state.cleanedParts.join(""),
286
+ };
237
287
  }
238
288
  export const htmlParser = Object.freeze({
239
289
  capability: Object.freeze({
@@ -249,6 +299,12 @@ export const htmlParser = Object.freeze({
249
299
  }
250
300
  const decoded = decodeUtf8(input.bytes);
251
301
  const emission = emitHtml(decoded.text, input, options);
252
- return emptyResult(htmlParser.capability, input.documentId, options, emission.diagnostics, emission.units);
302
+ const result = {
303
+ ...emptyResult(htmlParser.capability, input.documentId, options, emission.diagnostics, emission.units),
304
+ // GRD-003: persist the cleaned, tag/script/style-free projection so extract.ts NEVER
305
+ // falls back to raw bytes (which carried <script> bodies + embedded secrets).
306
+ normalizedText: emission.normalizedText,
307
+ };
308
+ return result;
253
309
  },
254
310
  });
@@ -7,6 +7,7 @@ export { csvParser } from "./csv-parser.js";
7
7
  export { htmlParser } from "./html-parser.js";
8
8
  export { pdfParser } from "./pdf-parser.js";
9
9
  export { docxParser } from "./docx-parser.js";
10
+ export { xlsxParser } from "./xlsx-parser.js";
10
11
  import type { ParserRegistry } from "./types.js";
11
12
  export declare function createDefaultParserRegistry(): ParserRegistry;
12
13
  export { nullOcrAdapter, createOcrPipelineParser, type OcrAdapter, type OcrPageResult, type OcrPipelineAdapter, } from "./ocr/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parsers/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,kBAAkB,EAClB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,GAC1B,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE7E,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACd,aAAa,EACb,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAY9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,wBAAgB,2BAA2B,IAAI,cAAc,CAY5D;AAGD,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,kBAAkB,GACxB,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parsers/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,kBAAkB,EAClB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,GAC1B,MAAM,YAAY,CAAC;AACpB,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE7E,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACd,aAAa,EACb,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAY9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD,wBAAgB,2BAA2B,IAAI,cAAc,CAa5D;AAGD,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,kBAAkB,GACxB,MAAM,gBAAgB,CAAC"}
@@ -9,6 +9,7 @@ export { csvParser } from "./csv-parser.js";
9
9
  export { htmlParser } from "./html-parser.js";
10
10
  export { pdfParser } from "./pdf-parser.js";
11
11
  export { docxParser } from "./docx-parser.js";
12
+ export { xlsxParser } from "./xlsx-parser.js";
12
13
  // Convenience: a registry pre-populated with every shipped adapter. Resolution order is
13
14
  // JSON → CSV/TSV → HTML → text. Text registers last because its `matches` predicate is
14
15
  // the most permissive (accepts any `text/*`); registering it first would shadow CSV and HTML.
@@ -19,6 +20,7 @@ import { jsonParser } from "./json-parser.js";
19
20
  import { pdfParser } from "./pdf-parser.js";
20
21
  import { createParserRegistry, registerParser } from "./registry.js";
21
22
  import { textParser } from "./text-parser.js";
23
+ import { xlsxParser } from "./xlsx-parser.js";
22
24
  export function createDefaultParserRegistry() {
23
25
  let registry = createParserRegistry();
24
26
  registry = registerParser(registry, jsonParser);
@@ -26,6 +28,7 @@ export function createDefaultParserRegistry() {
26
28
  registry = registerParser(registry, htmlParser);
27
29
  registry = registerParser(registry, pdfParser);
28
30
  registry = registerParser(registry, docxParser);
31
+ registry = registerParser(registry, xlsxParser);
29
32
  // Text parser is registered last among the real adapters because its `matches` predicate
30
33
  // is the most permissive (it accepts any `text/*` media type), so it must not shadow the
31
34
  // structured adapters.
@@ -1 +1 @@
1
- {"version":3,"file":"json-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/json-parser.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAEV,aAAa,EAGd,MAAM,YAAY,CAAC;AAiJpB,eAAO,MAAM,UAAU,EAAE,aA4CvB,CAAC"}
1
+ {"version":3,"file":"json-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/json-parser.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAEV,aAAa,EAGd,MAAM,YAAY,CAAC;AAoLpB,eAAO,MAAM,UAAU,EAAE,aAkDvB,CAAC"}
@@ -114,6 +114,35 @@ function parseJsonValue(text) {
114
114
  return { ok: false, error: error instanceof Error ? error.name : "SyntaxError" };
115
115
  }
116
116
  }
117
+ // GRD-011: JSON Lines / NDJSON is a sequence of independent JSON values, one per line — NOT a
118
+ // single JSON document. Whole-document `JSON.parse` always throws on a multi-record file, so
119
+ // `.jsonl`/`.ndjson` (advertised as supported) were 100% unparseable. Detect and parse per line.
120
+ const JSONL_EXTENSIONS = new Set(["jsonl", "ndjson"]);
121
+ function isJsonLines(input) {
122
+ if (JSONL_EXTENSIONS.has(input.extension.toLowerCase()))
123
+ return true;
124
+ return input.mediaType.toLowerCase() === "application/x-ndjson";
125
+ }
126
+ // Parse each non-empty line independently and walk it under an `/<lineIndex>` pointer prefix
127
+ // (RFC 6901 array-index style), so a record on file line N cites as `/N/...`. A malformed line
128
+ // is surfaced as a non-fatal `warning` diagnostic and skipped — one bad line never discards the
129
+ // whole file's good records.
130
+ function walkJsonLines(ctx) {
131
+ const lines = ctx.text.split("\n");
132
+ for (let i = 0; i < lines.length; i += 1) {
133
+ if (ctx.stopped)
134
+ return;
135
+ const raw = lines[i];
136
+ if (raw === undefined || raw.trim().length === 0)
137
+ continue;
138
+ const parsed = parseJsonValue(raw);
139
+ if (!parsed.ok) {
140
+ ctx.diagnostics.push(diagnostic("MALFORMED_INPUT", `JSONL line ${String(i)} parse failed: ${parsed.error}`, ctx.input.documentId, "warning"));
141
+ continue;
142
+ }
143
+ walk(ctx, parsed.value, joinPointer("", String(i)), 0);
144
+ }
145
+ }
117
146
  export const jsonParser = Object.freeze({
118
147
  capability: Object.freeze({
119
148
  parserId: PARSER_ID,
@@ -127,8 +156,10 @@ export const jsonParser = Object.freeze({
127
156
  ]);
128
157
  }
129
158
  const decoded = decodeUtf8(input.bytes);
130
- const parsed = parseJsonValue(decoded.text);
131
- if (!parsed.ok) {
159
+ const jsonLines = isJsonLines(input);
160
+ // Whole-document parse only for true JSON; JSONL is parsed line-by-line below.
161
+ const parsed = jsonLines ? undefined : parseJsonValue(decoded.text);
162
+ if (parsed !== undefined && !parsed.ok) {
132
163
  return emptyResult(jsonParser.capability, input.documentId, options, [
133
164
  diagnostic("MALFORMED_INPUT", `JSON parse failed: ${parsed.error}`, input.documentId, "error"),
134
165
  ]);
@@ -144,7 +175,12 @@ export const jsonParser = Object.freeze({
144
175
  normalizedLength: 0,
145
176
  stopped: false,
146
177
  };
147
- walk(ctx, parsed.value, "", 0);
178
+ if (jsonLines) {
179
+ walkJsonLines(ctx);
180
+ }
181
+ else if (parsed?.ok === true) {
182
+ walk(ctx, parsed.value, "", 0);
183
+ }
148
184
  if (ctx.diagnostics.some((diagnostic) => diagnostic.code === "NESTING_LIMIT_REACHED")) {
149
185
  return emptyResult(jsonParser.capability, input.documentId, options, ctx.diagnostics);
150
186
  }
@@ -1 +1 @@
1
- {"version":3,"file":"null-ocr-adapter.d.ts","sourceRoot":"","sources":["../../../src/parsers/ocr/null-ocr-adapter.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AAO5D,eAAO,MAAM,cAAc,EAAE,UAI3B,CAAC"}
1
+ {"version":3,"file":"null-ocr-adapter.d.ts","sourceRoot":"","sources":["../../../src/parsers/ocr/null-ocr-adapter.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AAO5D,eAAO,MAAM,cAAc,EAAE,UAM3B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ocr-pipeline-parser.d.ts","sourceRoot":"","sources":["../../../src/parsers/ocr/ocr-pipeline-parser.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAc,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG9E,OAAO,KAAK,EAAE,aAAa,EAAoB,aAAa,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxG,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AAsH5D,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACvD,QAAQ,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,oBAAoB,EAAE,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;CACrG;AAID,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,UAAU,GAAG,kBAAkB,CAG/E"}
1
+ {"version":3,"file":"ocr-pipeline-parser.d.ts","sourceRoot":"","sources":["../../../src/parsers/ocr/ocr-pipeline-parser.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAc,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG9E,OAAO,KAAK,EACV,aAAa,EAEb,aAAa,EACb,oBAAoB,EACrB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,YAAY,CAAC;AAwK5D,MAAM,WAAW,kBAAmB,SAAQ,aAAa;IACvD,QAAQ,CAAC,UAAU,EAAE,CACnB,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,aAAa,KACnB,OAAO,CAAC,YAAY,CAAC,CAAC;CAC5B;AAID,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,UAAU,GAAG,kBAAkB,CAW/E"}
@@ -11,7 +11,15 @@ import { diagnostic, emptyResult, oversizeDiagnostic, shouldStop } from "../_int
11
11
  const PARSER_ID = "ocr-pipeline";
12
12
  const PARSER_VERSION = "1";
13
13
  const OCR_EXTENSIONS = new Set([
14
- "pdf", "png", "jpg", "jpeg", "gif", "bmp", "tif", "tiff", "webp",
14
+ "pdf",
15
+ "png",
16
+ "jpg",
17
+ "jpeg",
18
+ "gif",
19
+ "bmp",
20
+ "tif",
21
+ "tiff",
22
+ "webp",
15
23
  ]);
16
24
  const OCR_MEDIA_PREFIXES = ["image/", "application/pdf"];
17
25
  // Magic-byte table for fallback detection when no extension / media type is present.
@@ -48,7 +56,8 @@ function isOcrCandidate(input) {
48
56
  return matchesMagicBytes(input.bytes);
49
57
  }
50
58
  function unsupportedReason(input) {
51
- if (input.extension.toLowerCase() === "pdf" || input.mediaType.toLowerCase() === "application/pdf")
59
+ if (input.extension.toLowerCase() === "pdf" ||
60
+ input.mediaType.toLowerCase() === "application/pdf")
52
61
  return "pdf-not-implemented";
53
62
  return "image-not-supported";
54
63
  }
@@ -67,46 +76,72 @@ function resultFromOcrOutcome(ocrResult, cap, input, options) {
67
76
  const reason = ocrResult.reason === "ocr-not-configured"
68
77
  ? unsupportedReason(input)
69
78
  : `ocr-failed:${ocrResult.reason}`;
70
- return emptyResult(cap, input.documentId, options, [diagnostic("UNSUPPORTED_FORMAT", `ocr adapter returned ok:false (${ocrResult.reason})`, input.documentId, "info")], [{ kind: "unsupported-media", documentId: input.documentId, reason }]);
79
+ return emptyResult(cap, input.documentId, options, [
80
+ diagnostic("UNSUPPORTED_FORMAT", `ocr adapter returned ok:false (${ocrResult.reason})`, input.documentId, "info"),
81
+ ], [{ kind: "unsupported-media", documentId: input.documentId, reason }]);
71
82
  }
72
- const pageUnit = { kind: "page", documentId: input.documentId, pageNumber: 1, characterStart: 0, characterEnd: ocrResult.text.length };
83
+ const pageUnit = {
84
+ kind: "page",
85
+ documentId: input.documentId,
86
+ pageNumber: 1,
87
+ characterStart: 0,
88
+ characterEnd: ocrResult.text.length,
89
+ };
73
90
  return emptyResult(cap, input.documentId, options, [], [pageUnit]);
74
91
  }
75
92
  function buildSyncParse(cap) {
76
93
  return (input, options) => {
77
94
  if (input.bytes.byteLength > options.maxBytes) {
78
- return emptyResult(cap, input.documentId, options, [oversizeDiagnostic(input.documentId, input.bytes.byteLength, options.maxBytes)]);
95
+ return emptyResult(cap, input.documentId, options, [
96
+ oversizeDiagnostic(input.documentId, input.bytes.byteLength, options.maxBytes),
97
+ ]);
79
98
  }
80
99
  if (isAborted(options.signal))
81
100
  return cancelled(cap, input, options);
82
101
  const reason = unsupportedReason(input);
83
- return emptyResult(cap, input.documentId, options, [diagnostic("UNSUPPORTED_FORMAT", `ocr adapter present but sync parse called; use parseAsync (${reason})`, input.documentId, "info")], [{ kind: "unsupported-media", documentId: input.documentId, reason }]);
102
+ return emptyResult(cap, input.documentId, options, [
103
+ diagnostic("UNSUPPORTED_FORMAT", `ocr adapter present but sync parse called; use parseAsync (${reason})`, input.documentId, "info"),
104
+ ], [{ kind: "unsupported-media", documentId: input.documentId, reason }]);
84
105
  };
85
106
  }
86
107
  function buildAsyncParse(cap, adapter) {
87
108
  return async (input, options) => {
88
109
  if (input.bytes.byteLength > options.maxBytes) {
89
- return emptyResult(cap, input.documentId, options, [oversizeDiagnostic(input.documentId, input.bytes.byteLength, options.maxBytes)]);
110
+ return emptyResult(cap, input.documentId, options, [
111
+ oversizeDiagnostic(input.documentId, input.bytes.byteLength, options.maxBytes),
112
+ ]);
90
113
  }
91
114
  if (isAborted(options.signal))
92
115
  return cancelled(cap, input, options);
93
116
  const startedAt = options.now();
94
117
  const preCheck = shouldStop(startedAt, options, 0);
95
118
  if (preCheck.stop && preCheck.code !== undefined && preCheck.message !== undefined) {
96
- return emptyResult(cap, input.documentId, options, [diagnostic(preCheck.code, preCheck.message, input.documentId, "info")]);
119
+ return emptyResult(cap, input.documentId, options, [
120
+ diagnostic(preCheck.code, preCheck.message, input.documentId, "info"),
121
+ ]);
97
122
  }
98
123
  const ocrResult = await adapter.ocrPage({ bytes: input.bytes, pageNumber: 1 });
99
124
  if (isAborted(options.signal))
100
125
  return cancelled(cap, input, options);
101
126
  const postCheck = shouldStop(startedAt, options, 0);
102
127
  if (postCheck.stop && postCheck.code !== undefined && postCheck.message !== undefined) {
103
- return emptyResult(cap, input.documentId, options, [diagnostic(postCheck.code, postCheck.message, input.documentId, "info")]);
128
+ return emptyResult(cap, input.documentId, options, [
129
+ diagnostic(postCheck.code, postCheck.message, input.documentId, "info"),
130
+ ]);
104
131
  }
105
132
  return resultFromOcrOutcome(ocrResult, cap, input, options);
106
133
  };
107
134
  }
108
135
  // ─── Factory ─────────────────────────────────────────────────────────────────
109
136
  export function createOcrPipelineParser(adapter) {
110
- const capability = Object.freeze({ parserId: PARSER_ID, parserVersion: PARSER_VERSION, matches: isOcrCandidate });
111
- return Object.freeze({ capability, parse: buildSyncParse(capability), parseAsync: buildAsyncParse(capability, adapter) });
137
+ const capability = Object.freeze({
138
+ parserId: PARSER_ID,
139
+ parserVersion: PARSER_VERSION,
140
+ matches: isOcrCandidate,
141
+ });
142
+ return Object.freeze({
143
+ capability,
144
+ parse: buildSyncParse(capability),
145
+ parseAsync: buildAsyncParse(capability, adapter),
146
+ });
112
147
  }
@@ -20,6 +20,8 @@ export declare const DOCX_SIMPLE_BASE64 = "UEsDBBQAAAAIAC28xFzXeYTq8QAAALgBAAATA
20
20
  export declare const DOCX_SIMPLE: Uint8Array;
21
21
  export declare const DOCX_WITH_PREAMBLE_BASE64 = "UEsDBBQAAAAIANACxVxn4XsRxAAAAHcBAAATABwAW0NvbnRlbnRfVHlwZXNdLnhtbFVUCQADp/ohaqf6IWp1eAsAAQT1AQAABBQAAAB9kLkOwjAMhneeosqKqBEDA6IswAoMvICVum1ELsXmentSrgEBo/0fn+X5/hqJi4uznivVicQZAOuOHHIZIvmsNCE5lDymFiLqA7YEk/F4Cjp4IS8j6TvUYr6iBo9WivUlr9kEX6lEllWxfBh7VqUwRms0Stbh5OsPyuhJKHPy7uHORB5mg4KvhF75DXjmtidKydRU7DDJBl12wTmkGuqgjy4ny/81X+4MTWM0vfN9W0xBE7PxrbPlW3Fo/Ot+uL97MbgBUEsDBAoAAAAAANACxVwAAAAAAAAAAAAAAAAGABwAX3JlbHMvVVQJAAOn+iFqp/ohanV4CwABBPUBAAAEFAAAAFBLAwQUAAAACADQAsVcJnghCIsAAADzAAAACwAcAF9yZWxzLy5yZWxzVVQJAAOn+iFqp/ohanV4CwABBPUBAAAEFAAAAI3PPQ4CIRAF4N5TEA6ws1pYGKCy2XbjBQjMAnH5yYBRby+FxWosLGfe5HsZMeOqW8ip+lAqe8Q1Vcl9a+UEUI3HqOuQC6aeLJmibn0kB0Wbq3YIh3E8Am0NrsTWZJOVnCa75+zyLPiPnZclGDxnc4uY2o+Kr4sua3LYJL9nsmDf66GzHJSAjxfV7gVQSwMECgAAAAAA0ALFXAAAAAAAAAAAAAAAAAUAHAB3b3JkL1VUCQADp/ohaqf6IWp1eAsAAQT1AQAABBQAAABQSwMEFAAAAAgA0ALFXNON7KHUAAAAWAEAABEAHAB3b3JkL2RvY3VtZW50LnhtbFVUCQADp/ohaqf6IWp1eAsAAQT1AQAABBQAAAB1kE1PwzAMhu/7FZHvLN0OCFVtd0PsNgn4ASYxbaUkjpyw0n9PsvEhJLi8Vuwnrz+6w7t36kySZg497LYNKAqG7RzGHp6f7m/uQKWMwaLjQD2slOAwbLqltWzePIWsikNI7dLDlHNstU5mIo9py5FCqb2yeMzlKaNeWGwUNpRSaeCd3jfNrfY4BxiK5QvbtcZYRark4RiysIooOArGqdM1WVUuGr/5eLr8iI95daSW9oyuhwfCusoO9JW+Mp/WJ3azWf93/IWpOtwfrP4aW/+cZNh8AFBLAQIeAxQAAAAIANACxVxn4XsRxAAAAHcBAAATABgAAAAAAAEAAACkgQAAAABbQ29udGVudF9UeXBlc10ueG1sVVQFAAOn+iFqdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA0ALFXAAAAAAAAAAAAAAAAAYAGAAAAAAAAAAQAO1BEQEAAF9yZWxzL1VUBQADp/ohanV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAAAIANACxVwmeCEIiwAAAPMAAAALABgAAAAAAAEAAACkgVEBAABfcmVscy8ucmVsc1VUBQADp/ohanV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAANACxVwAAAAAAAAAAAAAAAAFABgAAAAAAAAAEADtQSECAAB3b3JkL1VUBQADp/ohanV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAAAIANACxVzTjeyh1AAAAFgBAAARABgAAAAAAAEAAACkgWACAAB3b3JkL2RvY3VtZW50LnhtbFVUBQADp/ohanV4CwABBPUBAAAEFAAAAFBLBQYAAAAABQAFAJgBAAB/AwAAAAA=";
22
22
  export declare const DOCX_WITH_PREAMBLE: Uint8Array;
23
+ export declare const XLSX_SIMPLE_BASE64 = "UEsDBBQAAAAIAAAAAADBChDqgQAAAKQAAAAPAAAAeGwvd29ya2Jvb2sueG1sNY7BDoMwDEN/pcoHLLDDDohy2S58RgfpWkEblARtnz80jZPtZ1ly/2ZZnsyL+5S1aicektnWIeqUqAS98Eb16CJLCXZEeSHHmCd68LQXqobXprmh0Bosc9WUN4Wh10Rk+ldXQyEPd64mvCq4Hx1nDy046fJhZJxbwKHHc4jns+ELUEsDBBQAAAAIAAAAAAAHfok7RgAAAGgAAAAaAAAAeGwvX3JlbHMvd29ya2Jvb2sueG1sLnJlbHOzCUrNSSzJzM8rzsgsKLazQeYqeKbYKhV5phgqKYRUFqTaKpXnF2UXZ6SmlgAFEovSU0uQhIr1wZShXkVujpK+nY0+qsEAUEsDBBQAAAAIAAAAAACCf1VtQAAAAGwAAAAUAAAAeGwvc2hhcmVkU3RyaW5ncy54bWyzKS4usbMpzrSzKbHzTq200Qfy9EFciFBYYk5pKrqgc35eSVF+jq6hObqMa15yUWVBiUJSYnJ2aUExQlofZA0AUEsDBBQAAAAIAAAAAAA2I5L5hAAAAPoAAAAYAAAAeGwvd29ya3NoZWV0cy9zaGVldDEueG1ssynPL8ouzkhNLbGzAVMuiSWJdjZF+eUKRbZKhkp2NskghqOhkkKJrVIxkF9mZ2CjX2Zno58MlXNCljOEy+kDzYAbZAQ3yAhJsRGaQchyxqhyzhC5zLyczLzU4JIioJrMYjubErtAEwW1xNwCa4XE0pTMEht9oD/0QTIIJ+gj+Usf4V0AUEsBAhQAFAAAAAgAAAAAAMEKEOqBAAAApAAAAA8AAAAAAAAAAAAAAAAAAAAAAHhsL3dvcmtib29rLnhtbFBLAQIUABQAAAAIAAAAAAAHfok7RgAAAGgAAAAaAAAAAAAAAAAAAAAAAK4AAAB4bC9fcmVscy93b3JrYm9vay54bWwucmVsc1BLAQIUABQAAAAIAAAAAACCf1VtQAAAAGwAAAAUAAAAAAAAAAAAAAAAACwBAAB4bC9zaGFyZWRTdHJpbmdzLnhtbFBLAQIUABQAAAAIAAAAAAA2I5L5hAAAAPoAAAAYAAAAAAAAAAAAAAAAAJ4BAAB4bC93b3Jrc2hlZXRzL3NoZWV0MS54bWxQSwUGAAAAAAQABAANAQAAWAIAAAAA";
24
+ export declare const XLSX_SIMPLE: Uint8Array;
23
25
  export declare const ZIP_MAGIC: Uint8Array;
24
26
  export declare const GZIP_MAGIC: Uint8Array;
25
27
  export declare const PNG_MAGIC: Uint8Array;
@@ -1 +1 @@
1
- {"version":3,"file":"parser-test-fixtures.d.ts","sourceRoot":"","sources":["../../src/parsers/parser-test-fixtures.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD,eAAO,MAAM,mBAAmB,EAAoB,UAAU,CAAC;AAE/D,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAE/C;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,OAAO,CAAC,oBAAoB,CAAM,GAC5C,oBAAoB,CAUtB;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,UAAU,EACjB,SAAS,GAAE,OAAO,CAAC,oBAAoB,CAAM,GAC5C,oBAAoB,CAUtB;AAID,eAAO,MAAM,UAAU,4CAA4C,CAAC;AAEpE,eAAO,MAAM,YAAY,QAiBb,CAAC;AAEb,eAAO,MAAM,SAAS,qDAA6C,CAAC;AAEpE,eAAO,MAAM,WAAW,QAMtB,CAAC;AAEH,eAAO,MAAM,UAAU,0BAA0B,CAAC;AAGlD,eAAO,MAAM,UAAU,yCAAiC,CAAC;AAEzD,eAAO,MAAM,UAAU,uBAAuB,CAAC;AAE/C,eAAO,MAAM,aAAa,QAUd,CAAC;AAEb,eAAO,MAAM,cAAc,QAQf,CAAC;AAGb,eAAO,MAAM,SAAS,EAAE,UAAiD,CAAC;AAE1E,eAAO,MAAM,cAAc,EAAE,UAqB5B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,UAmB/B,CAAC;AAEF,eAAO,MAAM,kBAAkB,qzCACqxC,CAAC;AAErzC,eAAO,MAAM,WAAW,EAAE,UAEzB,CAAC;AAEF,eAAO,MAAM,yBAAyB,6uDACssD,CAAC;AAE7uD,eAAO,MAAM,kBAAkB,EAAE,UAEhC,CAAC;AAGF,eAAO,MAAM,SAAS,EAAE,UAEtB,CAAC;AAGH,eAAO,MAAM,UAAU,EAAE,UAAqD,CAAC;AAG/E,eAAO,MAAM,SAAS,EAAE,UAEtB,CAAC"}
1
+ {"version":3,"file":"parser-test-fixtures.d.ts","sourceRoot":"","sources":["../../src/parsers/parser-test-fixtures.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD,eAAO,MAAM,mBAAmB,EAAoB,UAAU,CAAC;AAE/D,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAE/C;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,OAAO,CAAC,oBAAoB,CAAM,GAC5C,oBAAoB,CAUtB;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,UAAU,EACjB,SAAS,GAAE,OAAO,CAAC,oBAAoB,CAAM,GAC5C,oBAAoB,CAUtB;AAID,eAAO,MAAM,UAAU,4CAA4C,CAAC;AAEpE,eAAO,MAAM,YAAY,QAiBb,CAAC;AAEb,eAAO,MAAM,SAAS,qDAA6C,CAAC;AAEpE,eAAO,MAAM,WAAW,QAMtB,CAAC;AAEH,eAAO,MAAM,UAAU,0BAA0B,CAAC;AAGlD,eAAO,MAAM,UAAU,yCAAiC,CAAC;AAEzD,eAAO,MAAM,UAAU,uBAAuB,CAAC;AAE/C,eAAO,MAAM,aAAa,QAUd,CAAC;AAEb,eAAO,MAAM,cAAc,QAQf,CAAC;AAGb,eAAO,MAAM,SAAS,EAAE,UAAiD,CAAC;AAE1E,eAAO,MAAM,cAAc,EAAE,UAqB5B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,UAmB/B,CAAC;AAEF,eAAO,MAAM,kBAAkB,qzCACqxC,CAAC;AAErzC,eAAO,MAAM,WAAW,EAAE,UAAuE,CAAC;AAElG,eAAO,MAAM,yBAAyB,6uDACssD,CAAC;AAE7uD,eAAO,MAAM,kBAAkB,EAAE,UAEhC,CAAC;AAEF,eAAO,MAAM,kBAAkB,yqCACyoC,CAAC;AAEzqC,eAAO,MAAM,WAAW,EAAE,UAAuE,CAAC;AAGlG,eAAO,MAAM,SAAS,EAAE,UAEtB,CAAC;AAGH,eAAO,MAAM,UAAU,EAAE,UAAqD,CAAC;AAG/E,eAAO,MAAM,SAAS,EAAE,UAEtB,CAAC"}
@@ -125,6 +125,8 @@ export const DOCX_SIMPLE_BASE64 = "UEsDBBQAAAAIAC28xFzXeYTq8QAAALgBAAATAAAAW0Nvb
125
125
  export const DOCX_SIMPLE = Uint8Array.from(Buffer.from(DOCX_SIMPLE_BASE64, "base64"));
126
126
  export const DOCX_WITH_PREAMBLE_BASE64 = "UEsDBBQAAAAIANACxVxn4XsRxAAAAHcBAAATABwAW0NvbnRlbnRfVHlwZXNdLnhtbFVUCQADp/ohaqf6IWp1eAsAAQT1AQAABBQAAAB9kLkOwjAMhneeosqKqBEDA6IswAoMvICVum1ELsXmentSrgEBo/0fn+X5/hqJi4uznivVicQZAOuOHHIZIvmsNCE5lDymFiLqA7YEk/F4Cjp4IS8j6TvUYr6iBo9WivUlr9kEX6lEllWxfBh7VqUwRms0Stbh5OsPyuhJKHPy7uHORB5mg4KvhF75DXjmtidKydRU7DDJBl12wTmkGuqgjy4ny/81X+4MTWM0vfN9W0xBE7PxrbPlW3Fo/Ot+uL97MbgBUEsDBAoAAAAAANACxVwAAAAAAAAAAAAAAAAGABwAX3JlbHMvVVQJAAOn+iFqp/ohanV4CwABBPUBAAAEFAAAAFBLAwQUAAAACADQAsVcJnghCIsAAADzAAAACwAcAF9yZWxzLy5yZWxzVVQJAAOn+iFqp/ohanV4CwABBPUBAAAEFAAAAI3PPQ4CIRAF4N5TEA6ws1pYGKCy2XbjBQjMAnH5yYBRby+FxWosLGfe5HsZMeOqW8ip+lAqe8Q1Vcl9a+UEUI3HqOuQC6aeLJmibn0kB0Wbq3YIh3E8Am0NrsTWZJOVnCa75+zyLPiPnZclGDxnc4uY2o+Kr4sua3LYJL9nsmDf66GzHJSAjxfV7gVQSwMECgAAAAAA0ALFXAAAAAAAAAAAAAAAAAUAHAB3b3JkL1VUCQADp/ohaqf6IWp1eAsAAQT1AQAABBQAAABQSwMEFAAAAAgA0ALFXNON7KHUAAAAWAEAABEAHAB3b3JkL2RvY3VtZW50LnhtbFVUCQADp/ohaqf6IWp1eAsAAQT1AQAABBQAAAB1kE1PwzAMhu/7FZHvLN0OCFVtd0PsNgn4ASYxbaUkjpyw0n9PsvEhJLi8Vuwnrz+6w7t36kySZg497LYNKAqG7RzGHp6f7m/uQKWMwaLjQD2slOAwbLqltWzePIWsikNI7dLDlHNstU5mIo9py5FCqb2yeMzlKaNeWGwUNpRSaeCd3jfNrfY4BxiK5QvbtcZYRark4RiysIooOArGqdM1WVUuGr/5eLr8iI95daSW9oyuhwfCusoO9JW+Mp/WJ3azWf93/IWpOtwfrP4aW/+cZNh8AFBLAQIeAxQAAAAIANACxVxn4XsRxAAAAHcBAAATABgAAAAAAAEAAACkgQAAAABbQ29udGVudF9UeXBlc10ueG1sVVQFAAOn+iFqdXgLAAEE9QEAAAQUAAAAUEsBAh4DCgAAAAAA0ALFXAAAAAAAAAAAAAAAAAYAGAAAAAAAAAAQAO1BEQEAAF9yZWxzL1VUBQADp/ohanV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAAAIANACxVwmeCEIiwAAAPMAAAALABgAAAAAAAEAAACkgVEBAABfcmVscy8ucmVsc1VUBQADp/ohanV4CwABBPUBAAAEFAAAAFBLAQIeAwoAAAAAANACxVwAAAAAAAAAAAAAAAAFABgAAAAAAAAAEADtQSECAAB3b3JkL1VUBQADp/ohanV4CwABBPUBAAAEFAAAAFBLAQIeAxQAAAAIANACxVzTjeyh1AAAAFgBAAARABgAAAAAAAEAAACkgWACAAB3b3JkL2RvY3VtZW50LnhtbFVUBQADp/ohanV4CwABBPUBAAAEFAAAAFBLBQYAAAAABQAFAJgBAAB/AwAAAAA=";
127
127
  export const DOCX_WITH_PREAMBLE = Uint8Array.from(Buffer.from(DOCX_WITH_PREAMBLE_BASE64, "base64"));
128
+ export const XLSX_SIMPLE_BASE64 = "UEsDBBQAAAAIAAAAAADBChDqgQAAAKQAAAAPAAAAeGwvd29ya2Jvb2sueG1sNY7BDoMwDEN/pcoHLLDDDohy2S58RgfpWkEblARtnz80jZPtZ1ly/2ZZnsyL+5S1aicektnWIeqUqAS98Eb16CJLCXZEeSHHmCd68LQXqobXprmh0Bosc9WUN4Wh10Rk+ldXQyEPd64mvCq4Hx1nDy046fJhZJxbwKHHc4jns+ELUEsDBBQAAAAIAAAAAAAHfok7RgAAAGgAAAAaAAAAeGwvX3JlbHMvd29ya2Jvb2sueG1sLnJlbHOzCUrNSSzJzM8rzsgsKLazQeYqeKbYKhV5phgqKYRUFqTaKpXnF2UXZ6SmlgAFEovSU0uQhIr1wZShXkVujpK+nY0+qsEAUEsDBBQAAAAIAAAAAACCf1VtQAAAAGwAAAAUAAAAeGwvc2hhcmVkU3RyaW5ncy54bWyzKS4usbMpzrSzKbHzTq200Qfy9EFciFBYYk5pKrqgc35eSVF+jq6hObqMa15yUWVBiUJSYnJ2aUExQlofZA0AUEsDBBQAAAAIAAAAAAA2I5L5hAAAAPoAAAAYAAAAeGwvd29ya3NoZWV0cy9zaGVldDEueG1ssynPL8ouzkhNLbGzAVMuiSWJdjZF+eUKRbZKhkp2NskghqOhkkKJrVIxkF9mZ2CjX2Zno58MlXNCljOEy+kDzYAbZAQ3yAhJsRGaQchyxqhyzhC5zLyczLzU4JIioJrMYjubErtAEwW1xNwCa4XE0pTMEht9oD/0QTIIJ+gj+Usf4V0AUEsBAhQAFAAAAAgAAAAAAMEKEOqBAAAApAAAAA8AAAAAAAAAAAAAAAAAAAAAAHhsL3dvcmtib29rLnhtbFBLAQIUABQAAAAIAAAAAAAHfok7RgAAAGgAAAAaAAAAAAAAAAAAAAAAAK4AAAB4bC9fcmVscy93b3JrYm9vay54bWwucmVsc1BLAQIUABQAAAAIAAAAAACCf1VtQAAAAGwAAAAUAAAAAAAAAAAAAAAAACwBAAB4bC9zaGFyZWRTdHJpbmdzLnhtbFBLAQIUABQAAAAIAAAAAAA2I5L5hAAAAPoAAAAYAAAAAAAAAAAAAAAAAJ4BAAB4bC93b3Jrc2hlZXRzL3NoZWV0MS54bWxQSwUGAAAAAAQABAANAQAAWAIAAAAA";
129
+ export const XLSX_SIMPLE = Uint8Array.from(Buffer.from(XLSX_SIMPLE_BASE64, "base64"));
128
130
  // Synthetic zip marker — PK\x03\x04 prefix. We never decompress this.
129
131
  export const ZIP_MAGIC = new Uint8Array([
130
132
  0x50, 0x4b, 0x03, 0x04, 0x14, 0x00, 0x00, 0x00,
@@ -1 +1 @@
1
- {"version":3,"file":"pdf-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/pdf-parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAEjB,MAAM,+BAA+B,CAAC;AAUvC,OAAO,KAAK,EACV,kBAAkB,EAIlB,aAAa,EACb,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAUpB,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,cAAc,CAAC,mBAAmB,CAAC,CAAC;CACvE;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;CAChE;AA0PD,wBAAsB,YAAY,CAChC,GAAG,EAAE,eAAe,EACpB,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IACT,QAAQ,CAAC,WAAW,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAClD,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC,CAAC,CAsCD;AA8DD,eAAO,MAAM,SAAS,EAAE,kBAKtB,CAAC"}
1
+ {"version":3,"file":"pdf-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/pdf-parser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAEjB,MAAM,+BAA+B,CAAC;AAUvC,OAAO,KAAK,EACV,kBAAkB,EAIlB,aAAa,EACb,oBAAoB,EACrB,MAAM,YAAY,CAAC;AAUpB,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,KAAK,EAAE,SAAS,WAAW,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,cAAc,CAAC,mBAAmB,CAAC,CAAC;CACvE;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;CAChE;AAsYD,wBAAsB,YAAY,CAChC,GAAG,EAAE,eAAe,EACpB,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IACT,QAAQ,CAAC,WAAW,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAClD,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC;IACtC,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC,CAAC,CAsCD;AA8DD,eAAO,MAAM,SAAS,EAAE,kBAKtB,CAAC"}