zorya-classifier 0.1.0 → 0.2.1

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 (311) hide show
  1. package/NOTICE.md +2 -0
  2. package/README.md +37 -9
  3. package/dist/app/cli-arguments.d.ts +40 -0
  4. package/dist/app/cli-arguments.js +67 -0
  5. package/dist/app/create-classifier.d.ts +24 -0
  6. package/dist/app/create-classifier.js +226 -14
  7. package/dist/app/extraction-files.d.ts +9 -0
  8. package/dist/app/extraction-files.js +28 -0
  9. package/dist/cli.js +58 -14
  10. package/dist/entities/boundary-view.d.ts +29 -0
  11. package/dist/entities/boundary-view.js +1 -0
  12. package/dist/entities/contracts.d.ts +81 -1
  13. package/dist/entities/contracts.js +7 -0
  14. package/dist/entities/cutout-raster.d.ts +7 -0
  15. package/dist/entities/cutout-raster.js +1 -0
  16. package/dist/entities/object-proposals.d.ts +56 -0
  17. package/dist/entities/object-proposals.js +8 -0
  18. package/dist/entities/representation.d.ts +225 -0
  19. package/dist/entities/representation.js +33 -0
  20. package/dist/entities/segmentation-metadata.d.ts +11 -0
  21. package/dist/entities/segmentation-metadata.js +1 -0
  22. package/dist/entities/segmentation-verification.d.ts +31 -0
  23. package/dist/entities/segmentation-verification.js +1 -0
  24. package/dist/entities/segmentation.d.ts +164 -0
  25. package/dist/entities/segmentation.js +5 -0
  26. package/dist/entities/whole-object.d.ts +132 -0
  27. package/dist/entities/whole-object.js +7 -0
  28. package/dist/features/choice.d.ts +1 -1
  29. package/dist/features/choice.js +2 -2
  30. package/dist/features/segmentation/box-check.d.ts +10 -0
  31. package/dist/features/segmentation/box-check.js +299 -0
  32. package/dist/features/segmentation/mask.d.ts +6 -0
  33. package/dist/features/segmentation/mask.js +89 -0
  34. package/dist/features/segmentation/packed-mask.d.ts +5 -0
  35. package/dist/features/segmentation/packed-mask.js +53 -0
  36. package/dist/index.d.ts +6 -1
  37. package/dist/infrastructure/boundary-view.d.ts +2 -0
  38. package/dist/infrastructure/boundary-view.js +263 -0
  39. package/dist/infrastructure/openrouter-common.d.ts +8 -8
  40. package/dist/infrastructure/openrouter-vision.d.ts +3 -0
  41. package/dist/infrastructure/openrouter-vision.js +5 -0
  42. package/dist/infrastructure/raster.d.ts +10 -1
  43. package/dist/infrastructure/raster.js +99 -4
  44. package/dist/infrastructure/segmentation/box-presentation.d.ts +2 -0
  45. package/dist/infrastructure/segmentation/box-presentation.js +136 -0
  46. package/dist/infrastructure/segmentation/cutout-raster.d.ts +3 -0
  47. package/dist/infrastructure/segmentation/cutout-raster.js +79 -0
  48. package/dist/infrastructure/segmentation/grabcut/index.d.ts +17 -0
  49. package/dist/infrastructure/segmentation/grabcut/index.js +121 -0
  50. package/dist/infrastructure/segmentation/grabcut/worker-inference.d.ts +47 -0
  51. package/dist/infrastructure/segmentation/grabcut/worker-inference.js +260 -0
  52. package/dist/infrastructure/segmentation/index.d.ts +2 -0
  53. package/dist/infrastructure/segmentation/index.js +2 -0
  54. package/dist/infrastructure/segmentation/mobile-sam/index.d.ts +66 -0
  55. package/dist/infrastructure/segmentation/mobile-sam/index.js +478 -0
  56. package/dist/infrastructure/segmentation/mobile-sam/worker-inference.d.ts +149 -0
  57. package/dist/infrastructure/segmentation/mobile-sam/worker-inference.js +845 -0
  58. package/dist/infrastructure/segmentation/native-child.d.ts +23 -0
  59. package/dist/infrastructure/segmentation/native-child.js +297 -0
  60. package/dist/infrastructure/segmentation/native-protocol.d.ts +923 -0
  61. package/dist/infrastructure/segmentation/native-protocol.js +242 -0
  62. package/dist/infrastructure/segmentation/native-worker.d.ts +1 -0
  63. package/dist/infrastructure/segmentation/native-worker.js +93 -0
  64. package/dist/infrastructure/segmentation/probe-backend.d.ts +1 -0
  65. package/dist/infrastructure/segmentation/probe-backend.js +31 -0
  66. package/dist/infrastructure/segmentation/proposal-presentation.d.ts +3 -0
  67. package/dist/infrastructure/segmentation/proposal-presentation.js +371 -0
  68. package/dist/infrastructure/segmentation/verify-asset.d.ts +4 -0
  69. package/dist/infrastructure/segmentation/verify-asset.js +32 -0
  70. package/dist/infrastructure/text-representation.d.ts +23 -0
  71. package/dist/infrastructure/text-representation.js +226 -0
  72. package/dist/infrastructure/vision-chat.d.ts +1 -1
  73. package/dist/infrastructure/vision-chat.js +13 -4
  74. package/dist/openai-compatible.d.ts +3 -0
  75. package/dist/openai-compatible.js +4 -0
  76. package/dist/openrouter.d.ts +2 -2
  77. package/dist/openrouter.js +1 -1
  78. package/dist/processes/boundary-state.d.ts +12 -0
  79. package/dist/processes/boundary-state.js +196 -0
  80. package/dist/processes/classify.d.ts +2 -1
  81. package/dist/processes/classify.js +21 -3
  82. package/dist/processes/extract-from-region.d.ts +19 -0
  83. package/dist/processes/extract-from-region.js +415 -0
  84. package/dist/processes/extract.d.ts +25 -0
  85. package/dist/processes/extract.js +223 -0
  86. package/dist/processes/locate.d.ts +2 -1
  87. package/dist/processes/locate.js +84 -11
  88. package/dist/processes/proposal-location.d.ts +19 -0
  89. package/dist/processes/proposal-location.js +396 -0
  90. package/dist/processes/whole-object.d.ts +7 -0
  91. package/dist/processes/whole-object.js +272 -0
  92. package/dist/segmentation.d.ts +10 -0
  93. package/dist/segmentation.js +4 -0
  94. package/dist/shared/input-budget.d.ts +7 -0
  95. package/dist/shared/input-budget.js +21 -0
  96. package/docs/0.2.0-plan.md +190 -0
  97. package/docs/README.ru.md +43 -14
  98. package/docs/acceptance.md +116 -3
  99. package/docs/api.md +12 -6
  100. package/docs/architecture.md +22 -7
  101. package/docs/benchmarks.md +10 -0
  102. package/docs/categorical-presence-port.md +26 -0
  103. package/docs/evidence/v02/baseline.json +1043 -0
  104. package/docs/evidence/v02/boundary-variants.md +17 -0
  105. package/docs/evidence/v02/box-confirmation-dev40/README.md +15 -0
  106. package/docs/evidence/v02/box-confirmation-dev40/component-refinement.json +246 -0
  107. package/docs/evidence/v02/box-confirmation-dev40/evaluation.json +1663 -0
  108. package/docs/evidence/v02/box-confirmation-dev40/provenance.json +130 -0
  109. package/docs/evidence/v02/box-confirmation-dev40/report.json +127 -0
  110. package/docs/evidence/v02/box-confirmation-dev40-freeze-20261020-v1.json +230 -0
  111. package/docs/evidence/v02/box-confirmation-method-selection-20261020-v1.json +85 -0
  112. package/docs/evidence/v02/box-heldout-cancelled-before-dispatch-20261021-v1.json +32 -0
  113. package/docs/evidence/v02/box-heldout-combined-seal-20261021-v1.json +89 -0
  114. package/docs/evidence/v02/box-heldout-evaluator-truth-seal-20261021-v1.json +61 -0
  115. package/docs/evidence/v02/box-heldout-exclusion-audit-20261020-v1.json +81 -0
  116. package/docs/evidence/v02/box-heldout-map-seal-20261021-v1.json +48 -0
  117. package/docs/evidence/v02/box-heldout-photo-seal-20261020-v1.json +62 -0
  118. package/docs/evidence/v02/box-heldout-run-freeze-20261021-v1.json +61 -0
  119. package/docs/evidence/v02/box-heldout-source-review-20261020-v1.json +134 -0
  120. package/docs/evidence/v02/box-heldout-ui-seal-20261020-v1.json +44 -0
  121. package/docs/evidence/v02/calculator-proof-root-review-20261020-v1.json +63 -0
  122. package/docs/evidence/v02/categorical-dev40-freeze.json +94 -0
  123. package/docs/evidence/v02/categorical-dev40-preserve.json +460 -0
  124. package/docs/evidence/v02/categorical-dev40-target-only.json +460 -0
  125. package/docs/evidence/v02/categorical-heldout-admission-20261020-v3.json +215 -0
  126. package/docs/evidence/v02/categorical-heldout-admission-20261020-v4.json +270 -0
  127. package/docs/evidence/v02/categorical-heldout-dispatch-authorization-20261020-v4.json +79 -0
  128. package/docs/evidence/v02/categorical-heldout-predispatch-20261020-v3.json +57 -0
  129. package/docs/evidence/v02/categorical-heldout-producer-source-map-v4.json +262 -0
  130. package/docs/evidence/v02/categorical-heldout-producer-source-map.json +263 -0
  131. package/docs/evidence/v02/categorical-heldout-run-freeze-20261020-v3.json +35 -0
  132. package/docs/evidence/v02/categorical-heldout-run-freeze-20261020-v4.json +35 -0
  133. package/docs/evidence/v02/categorical-heldout-v4/candidate-evaluation.json +2812 -0
  134. package/docs/evidence/v02/categorical-heldout-v4/candidate-physical-receipts.json +15261 -0
  135. package/docs/evidence/v02/categorical-heldout-v4/candidate-provenance.json +131 -0
  136. package/docs/evidence/v02/categorical-heldout-v4/control-evaluation.json +855 -0
  137. package/docs/evidence/v02/categorical-heldout-v4/control-physical-receipts.json +4402 -0
  138. package/docs/evidence/v02/categorical-heldout-v4/control-provenance.json +31 -0
  139. package/docs/evidence/v02/categorical-heldout-v4/mask-normalized-exploratory.json +682 -0
  140. package/docs/evidence/v02/categorical-heldout-v4/paired-qualification.json +21 -0
  141. package/docs/evidence/v02/categorical-heldout-v4/report.json +258 -0
  142. package/docs/evidence/v02/categorical-presence-dev6.json +144 -0
  143. package/docs/evidence/v02/categorical-presence-dev6.md +18 -0
  144. package/docs/evidence/v02/categorical-vision-method-selection.json +90 -0
  145. package/docs/evidence/v02/checked-region-component-v1/README.md +7 -0
  146. package/docs/evidence/v02/checked-region-component-v1/evidence.json +311 -0
  147. package/docs/evidence/v02/checked-region-resource-interrupted-2b0d09f.json +102 -0
  148. package/docs/evidence/v02/checked-region-segmentation-resource-4df544c-receipt.json +167 -0
  149. package/docs/evidence/v02/checked-region-segmentation-resource-4df544c-root-review.json +58 -0
  150. package/docs/evidence/v02/checked-region-segmentation-resource-987ac32-receipt.json +158 -0
  151. package/docs/evidence/v02/ci-012b935.json +17 -0
  152. package/docs/evidence/v02/ci-0c365cb.json +372 -0
  153. package/docs/evidence/v02/ci-185bde8.json +32 -0
  154. package/docs/evidence/v02/ci-24f849f.json +95 -0
  155. package/docs/evidence/v02/ci-25c19cd.json +375 -0
  156. package/docs/evidence/v02/ci-2922caf.json +375 -0
  157. package/docs/evidence/v02/ci-29357d7.json +29 -0
  158. package/docs/evidence/v02/ci-32aa90d.json +24 -0
  159. package/docs/evidence/v02/ci-35e3064.json +376 -0
  160. package/docs/evidence/v02/ci-4331b1b.json +384 -0
  161. package/docs/evidence/v02/ci-43b7426.json +376 -0
  162. package/docs/evidence/v02/ci-450439c.json +373 -0
  163. package/docs/evidence/v02/ci-46283fe.json +29 -0
  164. package/docs/evidence/v02/ci-4c9c09f.json +34 -0
  165. package/docs/evidence/v02/ci-5579646.json +27 -0
  166. package/docs/evidence/v02/ci-6f9cc15.json +127 -0
  167. package/docs/evidence/v02/ci-7c1051f.json +27 -0
  168. package/docs/evidence/v02/ci-9837888.json +34 -0
  169. package/docs/evidence/v02/ci-987ac32.json +29 -0
  170. package/docs/evidence/v02/ci-9d00fe5.json +25 -0
  171. package/docs/evidence/v02/ci-9f85acc.json +127 -0
  172. package/docs/evidence/v02/ci-be275a6.json +201 -0
  173. package/docs/evidence/v02/ci-c107ddf.json +372 -0
  174. package/docs/evidence/v02/ci-c35f67d.json +127 -0
  175. package/docs/evidence/v02/ci-c5eddd8.json +32 -0
  176. package/docs/evidence/v02/ci-d2042e0.json +372 -0
  177. package/docs/evidence/v02/ci-d684259.json +375 -0
  178. package/docs/evidence/v02/ci-e0c190b.json +127 -0
  179. package/docs/evidence/v02/ci-e551253.json +372 -0
  180. package/docs/evidence/v02/ci-f9d4633.json +29 -0
  181. package/docs/evidence/v02/dev1-proposal-evaluation.md +13 -0
  182. package/docs/evidence/v02/dev2-mobile-sam-proposal-oracle.md +21 -0
  183. package/docs/evidence/v02/dev2-proposal-evaluation.md +21 -0
  184. package/docs/evidence/v02/fresh-development.md +16 -0
  185. package/docs/evidence/v02/fresh-native-numeric/artifact-hashes.json +9 -0
  186. package/docs/evidence/v02/fresh-native-numeric/evaluation-root-v1.json +568 -0
  187. package/docs/evidence/v02/fresh-native-numeric/run-manifest.json +342 -0
  188. package/docs/evidence/v02/fresh-native-numeric/summary.json +5654 -0
  189. package/docs/evidence/v02/fresh-native-outline-axis/artifact-hashes.json +9 -0
  190. package/docs/evidence/v02/fresh-native-outline-axis/evaluation-root-v1.json +568 -0
  191. package/docs/evidence/v02/fresh-native-outline-axis/run-manifest.json +378 -0
  192. package/docs/evidence/v02/fresh-native-outline-axis/summary.json +5605 -0
  193. package/docs/evidence/v02/fresh-text/README.md +23 -0
  194. package/docs/evidence/v02/fresh-text/ascii-contours-v1/classify-followup-run-manifest.json +405 -0
  195. package/docs/evidence/v02/fresh-text/ascii-contours-v1/classify-followup-summary.json +1646 -0
  196. package/docs/evidence/v02/fresh-text/ascii-contours-v1/evaluation.json +568 -0
  197. package/docs/evidence/v02/fresh-text/ascii-contours-v1/original-run-manifest.json +404 -0
  198. package/docs/evidence/v02/fresh-text/ascii-contours-v1/original-summary.json +4416 -0
  199. package/docs/evidence/v02/fresh-text/ascii-luma-v1/classify-followup-run-manifest.json +405 -0
  200. package/docs/evidence/v02/fresh-text/ascii-luma-v1/classify-followup-summary.json +1646 -0
  201. package/docs/evidence/v02/fresh-text/ascii-luma-v1/evaluation.json +568 -0
  202. package/docs/evidence/v02/fresh-text/ascii-luma-v1/original-run-manifest.json +404 -0
  203. package/docs/evidence/v02/fresh-text/ascii-luma-v1/original-summary.json +4647 -0
  204. package/docs/evidence/v02/fresh-text/ascii-svg-layered-v1/classify-followup-run-manifest.json +405 -0
  205. package/docs/evidence/v02/fresh-text/ascii-svg-layered-v1/classify-followup-summary.json +846 -0
  206. package/docs/evidence/v02/fresh-text/ascii-svg-layered-v1/evaluation.json +568 -0
  207. package/docs/evidence/v02/fresh-text/ascii-svg-layered-v1/original-run-manifest.json +404 -0
  208. package/docs/evidence/v02/fresh-text/ascii-svg-layered-v1/original-summary.json +1789 -0
  209. package/docs/evidence/v02/fresh-text/no-image-control/evaluation.json +568 -0
  210. package/docs/evidence/v02/fresh-text/no-image-control/original-run-manifest.json +404 -0
  211. package/docs/evidence/v02/fresh-text/no-image-control/original-summary.json +3953 -0
  212. package/docs/evidence/v02/fresh-text/palette-grid-v1/classify-followup-run-manifest.json +405 -0
  213. package/docs/evidence/v02/fresh-text/palette-grid-v1/classify-followup-summary.json +1646 -0
  214. package/docs/evidence/v02/fresh-text/palette-grid-v1/evaluation.json +568 -0
  215. package/docs/evidence/v02/fresh-text/palette-grid-v1/original-run-manifest.json +404 -0
  216. package/docs/evidence/v02/fresh-text/palette-grid-v1/original-summary.json +3974 -0
  217. package/docs/evidence/v02/fresh-text/pixel-rle-v1/classify-followup-run-manifest.json +405 -0
  218. package/docs/evidence/v02/fresh-text/pixel-rle-v1/classify-followup-summary.json +1646 -0
  219. package/docs/evidence/v02/fresh-text/pixel-rle-v1/evaluation.json +568 -0
  220. package/docs/evidence/v02/fresh-text/pixel-rle-v1/original-run-manifest.json +404 -0
  221. package/docs/evidence/v02/fresh-text/pixel-rle-v1/original-summary.json +4945 -0
  222. package/docs/evidence/v02/fresh-text/report.json +284 -0
  223. package/docs/evidence/v02/fresh-text/svg-contours-v1/classify-followup-run-manifest.json +405 -0
  224. package/docs/evidence/v02/fresh-text/svg-contours-v1/classify-followup-summary.json +846 -0
  225. package/docs/evidence/v02/fresh-text/svg-contours-v1/evaluation.json +568 -0
  226. package/docs/evidence/v02/fresh-text/svg-contours-v1/original-run-manifest.json +404 -0
  227. package/docs/evidence/v02/fresh-text/svg-contours-v1/original-summary.json +2189 -0
  228. package/docs/evidence/v02/heldout-evaluation-20261020.md +37 -0
  229. package/docs/evidence/v02/heldout-input-derivation.md +18 -0
  230. package/docs/evidence/v02/integration-0c365cb.json +90 -0
  231. package/docs/evidence/v02/integration-25c19cd.json +52 -0
  232. package/docs/evidence/v02/integration-35e3064.json +41 -0
  233. package/docs/evidence/v02/integration-4331b1b.json +42 -0
  234. package/docs/evidence/v02/integration-4c9c09f.json +46 -0
  235. package/docs/evidence/v02/integration-8010aad.json +48 -0
  236. package/docs/evidence/v02/integration-c1aa640.json +41 -0
  237. package/docs/evidence/v02/integration-eea1790.json +46 -0
  238. package/docs/evidence/v02/integration-fa82e65.json +42 -0
  239. package/docs/evidence/v02/jpeg-transport-offline.json +268 -0
  240. package/docs/evidence/v02/jpeg-transport-offline.md +7 -0
  241. package/docs/evidence/v02/local-archive-cleanup.json +59 -0
  242. package/docs/evidence/v02/native-base64-after.json +30 -0
  243. package/docs/evidence/v02/native-base64-before.json +32 -0
  244. package/docs/evidence/v02/native-checked-region-windows-46283fe.json +248 -0
  245. package/docs/evidence/v02/native-checked-region-windows-987ac32.json +141 -0
  246. package/docs/evidence/v02/native-grabcut-windows-4c494a3-run2.json +148 -0
  247. package/docs/evidence/v02/native-grabcut-windows-4c494a3-run3.json +148 -0
  248. package/docs/evidence/v02/native-grabcut-windows-4c494a3.json +56 -0
  249. package/docs/evidence/v02/native-proposal-windows-0c365cb.json +148 -0
  250. package/docs/evidence/v02/native-proposal-windows-450439c.json +156 -0
  251. package/docs/evidence/v02/native-proposal-windows-4c9c09f-retry1.json +147 -0
  252. package/docs/evidence/v02/native-proposal-windows-4c9c09f.json +52 -0
  253. package/docs/evidence/v02/native-region-windows-efc9318.json +163 -0
  254. package/docs/evidence/v02/native-windows-eea1790-baseline.json +198 -0
  255. package/docs/evidence/v02/native-windows-eea1790.json +228 -0
  256. package/docs/evidence/v02/ordinary-luna-axis/run-manifest.json +99 -0
  257. package/docs/evidence/v02/ordinary-luna-axis/summary.json +811 -0
  258. package/docs/evidence/v02/owned-temp-cleanup-20261020-v1.json +28 -0
  259. package/docs/evidence/v02/presentation-paired-20261020.json +1438 -0
  260. package/docs/evidence/v02/proposal-resource-soak-261dc23.json +201 -0
  261. package/docs/evidence/v02/proposal-resource-soak-450439c-receipt.md +13 -0
  262. package/docs/evidence/v02/reconstructed-c03-box.json +41 -0
  263. package/docs/evidence/v02/region-seeded-dev-v1/README.md +17 -0
  264. package/docs/evidence/v02/region-seeded-dev-v1/evaluation.json +260 -0
  265. package/docs/evidence/v02/region-seeded-dev-v2/README.md +15 -0
  266. package/docs/evidence/v02/region-seeded-dev-v2/evaluation.json +232 -0
  267. package/docs/evidence/v02/region-seeded-dev-v3-candidate-only/README.md +9 -0
  268. package/docs/evidence/v02/region-seeded-dev-v3-candidate-only/control-identity-failure.json +22 -0
  269. package/docs/evidence/v02/region-seeded-dev-v3-candidate-only/evaluation.json +160 -0
  270. package/docs/evidence/v02/region-seeded-dev-v3-control-r2/README.md +9 -0
  271. package/docs/evidence/v02/region-seeded-dev-v3-control-r2/attempt-accounting.json +55 -0
  272. package/docs/evidence/v02/region-seeded-dev-v3-control-r2/evaluation.json +136 -0
  273. package/docs/evidence/v02/region-seeded-development-control-r2-freeze-20261021.json +132 -0
  274. package/docs/evidence/v02/region-seeded-development-freeze-20261021-v1.json +167 -0
  275. package/docs/evidence/v02/region-seeded-development-freeze-20261021-v2.json +186 -0
  276. package/docs/evidence/v02/region-seeded-development-freeze-20261021-v3.json +205 -0
  277. package/docs/evidence/v02/region-seeded-heldout-cancelled-before-dispatch-20261021-v2.json +20 -0
  278. package/docs/evidence/v02/region-seeded-heldout-dispatch-authorization-20261021-v3.json +47 -0
  279. package/docs/evidence/v02/region-seeded-heldout-readiness-audit-20261021-v3.json +125 -0
  280. package/docs/evidence/v02/region-seeded-heldout-run-freeze-20261021-v2.json +234 -0
  281. package/docs/evidence/v02/region-seeded-heldout-run-freeze-20261021-v3.json +357 -0
  282. package/docs/evidence/v02/region-seeded-heldout-v3/README.md +19 -0
  283. package/docs/evidence/v02/region-seeded-heldout-v3/evaluation-summary.json +445 -0
  284. package/docs/evidence/v02/region-seeded-method-selection-20261021-v2.json +66 -0
  285. package/docs/evidence/v02/region-seeded-method-selection-20261021-v3.json +120 -0
  286. package/docs/evidence/v02/region-segmentation-resource-0ba4c87-receipt.json +156 -0
  287. package/docs/evidence/v02/resource-soak-linux-8010aad.json +125 -0
  288. package/docs/evidence/v02/screen-v2-terminal-evaluation.md +22 -0
  289. package/docs/evidence/v02/seed-outline/run-manifest.json +59 -0
  290. package/docs/evidence/v02/seed-outline/summary.json +487 -0
  291. package/docs/evidence/v02/seed-unbounded/run-manifest.json +80 -0
  292. package/docs/evidence/v02/seed-unbounded/summary.json +730 -0
  293. package/docs/evidence/v02/segmentation/README.md +21 -0
  294. package/docs/evidence/v02/segmentation/component-comparison-summary.json +240 -0
  295. package/docs/evidence/v02/segmentation/provenance/MOBILE-SAM-LICENSE.txt +201 -0
  296. package/docs/evidence/v02/segmentation/provenance/OPENCV-LICENSE.txt +202 -0
  297. package/docs/evidence/v02/segmentation/provenance/mobile-sam-download-receipt.json +29 -0
  298. package/docs/evidence/v02/segmentation/provenance/mobile-sam-graph-audit.json +214 -0
  299. package/docs/evidence/v02/segmentation/provenance/mobile-sam-model-metadata.json +166 -0
  300. package/docs/evidence/v02/split-choice-noul-dev6.json +72 -0
  301. package/docs/evidence/v02/split-choice-noul-dev6.md +11 -0
  302. package/docs/evidence/v02/supported-vision-screen-20261020.md +65 -0
  303. package/docs/evidence/v02/wesnoth-1.16.11-minimap-projection-source-audit.md +56 -0
  304. package/docs/evidence/v02/wesnoth-proof-root-review-20261020-v1.json +76 -0
  305. package/docs/operations.md +8 -2
  306. package/docs/plan.md +2 -0
  307. package/docs/publishing.md +16 -1
  308. package/docs/research/text-transport-audit.md +66 -0
  309. package/docs/v02-usage.md +164 -0
  310. package/docs/vision-results.md +31 -2
  311. package/package.json +30 -5
@@ -0,0 +1,811 @@
1
+ {
2
+ "runId": "v02-ordinary-luna-axis-2026-10-20T094356905Z-5caea950",
3
+ "variantId": "ordinary-luna-axis-v1",
4
+ "variantSha256": "d83f6bfc666451123354830f968f3926582915c294413cdab00abcc35ab9dd9a",
5
+ "status": "incomplete",
6
+ "stopReason": null,
7
+ "outcomes": [
8
+ {
9
+ "caseId": "photo-dev-02",
10
+ "status": "located",
11
+ "sourceSha256": "68d92b810be3205702e9ea527654ffbbb2eab3f48fd73f66770a0a0df4f484a1",
12
+ "imageDimensions": {
13
+ "width": 1024,
14
+ "height": 683
15
+ },
16
+ "requestHashes": [
17
+ "791744854dd6f82d755e6e486a4a4943c3ff50f3871358608937a5b9f101fcc0",
18
+ "c5b0689b3342b8cc87ba7c1494bc1900f5a7298e6080755f563ac36ee021498a",
19
+ "fc9698b3531ce41cbb5f1b363f8a93e2789b1ff6c6e13768a32e87d27d9c3bb9",
20
+ "42b986459c949175acb08062f9237687206d77cc72d45f5f52ffb7d8d3d6ab83",
21
+ "65c765005637b53e8e92bf015d519a6147937128267797e51a0784f25a8bd30c"
22
+ ],
23
+ "result": {
24
+ "region": {
25
+ "left": 720,
26
+ "top": 373,
27
+ "width": 236,
28
+ "height": 141
29
+ },
30
+ "seedRegion": {
31
+ "left": 704,
32
+ "top": 369,
33
+ "width": 64,
34
+ "height": 57
35
+ },
36
+ "bounds": {
37
+ "left": {
38
+ "start": 720,
39
+ "endExclusive": 724
40
+ },
41
+ "right": {
42
+ "start": 952,
43
+ "endExclusive": 956
44
+ },
45
+ "top": {
46
+ "start": 373,
47
+ "endExclusive": 375
48
+ },
49
+ "bottom": {
50
+ "start": 512,
51
+ "endExclusive": 514
52
+ }
53
+ },
54
+ "completeness": "visible-object"
55
+ },
56
+ "durationMs": 41532.764004
57
+ },
58
+ {
59
+ "caseId": "photo-dev-03",
60
+ "status": "failed",
61
+ "sourceSha256": "974286e376815b28a70dd84fa47f03e2148db02b11d64e63c7ec39602f4b197b",
62
+ "imageDimensions": {
63
+ "width": 1024,
64
+ "height": 575
65
+ },
66
+ "requestHashes": [
67
+ "7b7168f39e4c072ca1679e4d8e1868a3a905557488383b8e8537b0d04bb97fb5",
68
+ "26d43fd72afb6004996e2e73b9ffd555056e64d0868f0a70b9514c85b3f639fb",
69
+ "bda80f85ee654160699f9ab8015a8f5a5d05e85e2c0ab3d60bae6dcbab659b9a",
70
+ "16e4dc54c93aa0ec755c46c2123420f827d70d5416a0b83cf52fd061a8ee7b66",
71
+ "dc785da2f6b26128a867daa1b36e5453ebe31214d018baba6c09ffbd78d9425e"
72
+ ],
73
+ "errorCode": "TIMEOUT",
74
+ "durationMs": 45007.516584000005
75
+ },
76
+ {
77
+ "caseId": "photo-dev-01",
78
+ "status": "failed",
79
+ "sourceSha256": "acc3b42fd4c7df4943054ba462182133f22a773e397ed91ae7896c26344ef9ac",
80
+ "imageDimensions": {
81
+ "width": 1024,
82
+ "height": 901
83
+ },
84
+ "requestHashes": [
85
+ "c5ce46d655938a776408c89ef915b5caf712387d0bd2db95a1947b347a368b1f",
86
+ "9816b690ab82c6e0368b4b4e474e705aea855c4244bcaea413e1e488eacf78ee",
87
+ "02b6bd806d3e7cab3df6a128ccb7f4c9c080cdcd0e5c0c2579c07c593c6cf553",
88
+ "78c59576e602ee8ede81f8e2e19a6c90921a70771e64eb04b62e91138a89a2d8"
89
+ ],
90
+ "errorCode": "TIMEOUT",
91
+ "durationMs": 45007.823512999996
92
+ },
93
+ {
94
+ "caseId": "photo-dev-05",
95
+ "status": "unknown",
96
+ "sourceSha256": "733472dc827ea4961a175e8bcb1c1c70b15f3cba131475eaa7721eef14ffafcc",
97
+ "imageDimensions": {
98
+ "width": 1024,
99
+ "height": 768
100
+ },
101
+ "requestHashes": [
102
+ "644be2338d04cf5442d18dbc5e109197c08c020d42e921d2890f16bb17cf1518",
103
+ "3c51d8dce4c2c0e4fdf7124750ed41afe53247dfcdfe76625d7e8b1c8bc685bc",
104
+ "b0768b8330dcab1eeb41f4334481e10f21107c47469003e42391d0897c2e6c56",
105
+ "5c75bf07142ac68b1b05ba30a6920ded43c71a1ea0c4ba42e7c5f9bbbeb42b0a",
106
+ "f5f81d0c82c08168739cdb010c38d4c9c080f4d38fe2f19c92dbdc48c256241e"
107
+ ],
108
+ "result": {
109
+ "reason": "extent-inconsistent"
110
+ },
111
+ "durationMs": 39824.222337000014
112
+ }
113
+ ],
114
+ "aggregate": {
115
+ "admittedPhysicalCalls": 19,
116
+ "knownCostUsd": 0.016908725,
117
+ "unknownCostCalls": 2,
118
+ "inFlightCalls": 0,
119
+ "accountedExposureUsd": 0.056908725,
120
+ "maxPhysicalCalls": 32,
121
+ "maxCostUsd": 1
122
+ },
123
+ "latency": {
124
+ "count": 19,
125
+ "p50Ms": 7727.036864000023,
126
+ "p95Ms": 22088.366028000004,
127
+ "maxMs": 22088.366028000004
128
+ },
129
+ "latencyEnvironment": "concurrent-with-linux-native-soak",
130
+ "latencyRankingEligible": false,
131
+ "physicalReceipts": [
132
+ {
133
+ "physicalId": 1,
134
+ "requestSha256": "791744854dd6f82d755e6e486a4a4943c3ff50f3871358608937a5b9f101fcc0",
135
+ "requestBodySha256": "b3f73ca2f711b9e525d004bb451240c02e18fce787f7d7dcf637424677baa877",
136
+ "route": {
137
+ "model": "openai/gpt-6-luna",
138
+ "provider": "openai",
139
+ "providerName": "OpenAI",
140
+ "apiEndpoint": "/api/v1/chat/completions",
141
+ "allowFallbacks": false
142
+ },
143
+ "receipt": {
144
+ "model": "openai/gpt-6-luna",
145
+ "provider": "OpenAI",
146
+ "requestId": "gen-1792489441-q149ArEXlSMujYd3LZsX",
147
+ "costUsd": 0.000485925,
148
+ "durationMs": 5069.697241,
149
+ "attempts": 1
150
+ },
151
+ "wireReceipt": {
152
+ "responseModel": "openai/gpt-6-luna",
153
+ "responseProvider": "OpenAI",
154
+ "responseId": "gen-1792489441-q149ArEXlSMujYd3LZsX",
155
+ "usageCostUsd": 0.000485925,
156
+ "errorType": null,
157
+ "errorCode": null,
158
+ "errorParameter": null,
159
+ "errorCategory": null,
160
+ "errorReason": null,
161
+ "rateLimitScope": null,
162
+ "retryAfterSeconds": null,
163
+ "responseDisposition": "chat-json-object",
164
+ "finishReason": "stop",
165
+ "bodyRead": "parsed"
166
+ },
167
+ "errorCode": null,
168
+ "durationMs": 5062.260244
169
+ },
170
+ {
171
+ "physicalId": 2,
172
+ "requestSha256": "c5b0689b3342b8cc87ba7c1494bc1900f5a7298e6080755f563ac36ee021498a",
173
+ "requestBodySha256": "6b3cdfec0a266366b52ca907d635f207ae215f500a0b23d3d6c44948f9dfc630",
174
+ "route": {
175
+ "model": "openai/gpt-6-luna",
176
+ "provider": "openai",
177
+ "providerName": "OpenAI",
178
+ "apiEndpoint": "/api/v1/chat/completions",
179
+ "allowFallbacks": false
180
+ },
181
+ "receipt": {
182
+ "model": "openai/gpt-6-luna",
183
+ "provider": "OpenAI",
184
+ "requestId": "gen-1792489449-g3tFFA8AkfU9nGr9R5Qs",
185
+ "costUsd": 0.00190555,
186
+ "durationMs": 10090.101397,
187
+ "attempts": 1
188
+ },
189
+ "wireReceipt": {
190
+ "responseModel": "openai/gpt-6-luna",
191
+ "responseProvider": "OpenAI",
192
+ "responseId": "gen-1792489449-g3tFFA8AkfU9nGr9R5Qs",
193
+ "usageCostUsd": 0.00190555,
194
+ "errorType": null,
195
+ "errorCode": null,
196
+ "errorParameter": null,
197
+ "errorCategory": null,
198
+ "errorReason": null,
199
+ "rateLimitScope": null,
200
+ "retryAfterSeconds": null,
201
+ "responseDisposition": "chat-json-object",
202
+ "finishReason": "stop",
203
+ "bodyRead": "parsed"
204
+ },
205
+ "errorCode": null,
206
+ "durationMs": 10085.585538
207
+ },
208
+ {
209
+ "physicalId": 3,
210
+ "requestSha256": "fc9698b3531ce41cbb5f1b363f8a93e2789b1ff6c6e13768a32e87d27d9c3bb9",
211
+ "requestBodySha256": "8469800b598e304b032153f031b4def8cb8293844e9e346546f61879d0952b18",
212
+ "route": {
213
+ "model": "openai/gpt-6-luna",
214
+ "provider": "openai",
215
+ "providerName": "OpenAI",
216
+ "apiEndpoint": "/api/v1/chat/completions",
217
+ "allowFallbacks": false
218
+ },
219
+ "receipt": {
220
+ "model": "openai/gpt-6-luna",
221
+ "provider": "OpenAI",
222
+ "requestId": "gen-1792489460-5aObDLcmBHpZkMOBHPs6",
223
+ "costUsd": 0.0004333,
224
+ "durationMs": 6050.189980000001,
225
+ "attempts": 1
226
+ },
227
+ "wireReceipt": {
228
+ "responseModel": "openai/gpt-6-luna",
229
+ "responseProvider": "OpenAI",
230
+ "responseId": "gen-1792489460-5aObDLcmBHpZkMOBHPs6",
231
+ "usageCostUsd": 0.0004333,
232
+ "errorType": null,
233
+ "errorCode": null,
234
+ "errorParameter": null,
235
+ "errorCategory": null,
236
+ "errorReason": null,
237
+ "rateLimitScope": null,
238
+ "retryAfterSeconds": null,
239
+ "responseDisposition": "chat-json-object",
240
+ "finishReason": "stop",
241
+ "bodyRead": "parsed"
242
+ },
243
+ "errorCode": null,
244
+ "durationMs": 6048.047912000002
245
+ },
246
+ {
247
+ "physicalId": 4,
248
+ "requestSha256": "42b986459c949175acb08062f9237687206d77cc72d45f5f52ffb7d8d3d6ab83",
249
+ "requestBodySha256": "1f2d0f663464e78b688eb969562f0880f841a498fd38b1035e9ba60482f41439",
250
+ "route": {
251
+ "model": "openai/gpt-6-luna",
252
+ "provider": "openai",
253
+ "providerName": "OpenAI",
254
+ "apiEndpoint": "/api/v1/chat/completions",
255
+ "allowFallbacks": false
256
+ },
257
+ "receipt": {
258
+ "model": "openai/gpt-6-luna",
259
+ "provider": "OpenAI",
260
+ "requestId": "gen-1792489471-xBywobYk18t56A4bKejK",
261
+ "costUsd": 0.00109655,
262
+ "durationMs": 12175.503327999999,
263
+ "attempts": 1
264
+ },
265
+ "wireReceipt": {
266
+ "responseModel": "openai/gpt-6-luna",
267
+ "responseProvider": "OpenAI",
268
+ "responseId": "gen-1792489471-xBywobYk18t56A4bKejK",
269
+ "usageCostUsd": 0.00109655,
270
+ "errorType": null,
271
+ "errorCode": null,
272
+ "errorParameter": null,
273
+ "errorCategory": null,
274
+ "errorReason": null,
275
+ "rateLimitScope": null,
276
+ "retryAfterSeconds": null,
277
+ "responseDisposition": "chat-json-object",
278
+ "finishReason": "stop",
279
+ "bodyRead": "parsed"
280
+ },
281
+ "errorCode": null,
282
+ "durationMs": 12170.859524000003
283
+ },
284
+ {
285
+ "physicalId": 5,
286
+ "requestSha256": "65c765005637b53e8e92bf015d519a6147937128267797e51a0784f25a8bd30c",
287
+ "requestBodySha256": "f2fbf6c7ea3a2ca91007740150d19a5055b68d125f1dd37f42dbf2a5967bd944",
288
+ "route": {
289
+ "model": "openai/gpt-6-luna",
290
+ "provider": "openai",
291
+ "providerName": "OpenAI",
292
+ "apiEndpoint": "/api/v1/chat/completions",
293
+ "allowFallbacks": false
294
+ },
295
+ "receipt": {
296
+ "model": "openai/gpt-6-luna",
297
+ "provider": "OpenAI",
298
+ "requestId": "gen-1792489481-LD9QL9AQUZIAiFbDMQv0",
299
+ "costUsd": 0.0011743,
300
+ "durationMs": 6761.240786000002,
301
+ "attempts": 1
302
+ },
303
+ "wireReceipt": {
304
+ "responseModel": "openai/gpt-6-luna",
305
+ "responseProvider": "OpenAI",
306
+ "responseId": "gen-1792489481-LD9QL9AQUZIAiFbDMQv0",
307
+ "usageCostUsd": 0.0011743,
308
+ "errorType": null,
309
+ "errorCode": null,
310
+ "errorParameter": null,
311
+ "errorCategory": null,
312
+ "errorReason": null,
313
+ "rateLimitScope": null,
314
+ "retryAfterSeconds": null,
315
+ "responseDisposition": "chat-json-object",
316
+ "finishReason": "stop",
317
+ "bodyRead": "parsed"
318
+ },
319
+ "errorCode": null,
320
+ "durationMs": 6759.037661999995
321
+ },
322
+ {
323
+ "physicalId": 6,
324
+ "requestSha256": "7b7168f39e4c072ca1679e4d8e1868a3a905557488383b8e8537b0d04bb97fb5",
325
+ "requestBodySha256": "19f4de71043f362ecf2bd8da9dbbb7899ed3b09025a69ed2db2b9cc481ccce0c",
326
+ "route": {
327
+ "model": "openai/gpt-6-luna",
328
+ "provider": "openai",
329
+ "providerName": "OpenAI",
330
+ "apiEndpoint": "/api/v1/chat/completions",
331
+ "allowFallbacks": false
332
+ },
333
+ "receipt": {
334
+ "model": "openai/gpt-6-luna",
335
+ "provider": "OpenAI",
336
+ "requestId": "gen-1792489489-k1ww8e1aytxXZ3tWcV6U",
337
+ "costUsd": 0.000474175,
338
+ "durationMs": 12164.688472000002,
339
+ "attempts": 1
340
+ },
341
+ "wireReceipt": {
342
+ "responseModel": "openai/gpt-6-luna",
343
+ "responseProvider": "OpenAI",
344
+ "responseId": "gen-1792489489-k1ww8e1aytxXZ3tWcV6U",
345
+ "usageCostUsd": 0.000474175,
346
+ "errorType": null,
347
+ "errorCode": null,
348
+ "errorParameter": null,
349
+ "errorCategory": null,
350
+ "errorReason": null,
351
+ "rateLimitScope": null,
352
+ "retryAfterSeconds": null,
353
+ "responseDisposition": "chat-json-object",
354
+ "finishReason": "stop",
355
+ "bodyRead": "parsed"
356
+ },
357
+ "errorCode": null,
358
+ "durationMs": 12162.435394
359
+ },
360
+ {
361
+ "physicalId": 7,
362
+ "requestSha256": "26d43fd72afb6004996e2e73b9ffd555056e64d0868f0a70b9514c85b3f639fb",
363
+ "requestBodySha256": "747b1ec4d04362c0c284d354f751fc50fa1c26350fbe4219003f29ce5365bcb2",
364
+ "route": {
365
+ "model": "openai/gpt-6-luna",
366
+ "provider": "openai",
367
+ "providerName": "OpenAI",
368
+ "apiEndpoint": "/api/v1/chat/completions",
369
+ "allowFallbacks": false
370
+ },
371
+ "receipt": {
372
+ "model": "openai/gpt-6-luna",
373
+ "provider": "OpenAI",
374
+ "requestId": "gen-1792489504-crtnRQalEwf3U2RmnXar",
375
+ "costUsd": 0.0019438,
376
+ "durationMs": 12239.424144999997,
377
+ "attempts": 1
378
+ },
379
+ "wireReceipt": {
380
+ "responseModel": "openai/gpt-6-luna",
381
+ "responseProvider": "OpenAI",
382
+ "responseId": "gen-1792489504-crtnRQalEwf3U2RmnXar",
383
+ "usageCostUsd": 0.0019438,
384
+ "errorType": null,
385
+ "errorCode": null,
386
+ "errorParameter": null,
387
+ "errorCategory": null,
388
+ "errorReason": null,
389
+ "rateLimitScope": null,
390
+ "retryAfterSeconds": null,
391
+ "responseDisposition": "chat-json-object",
392
+ "finishReason": "stop",
393
+ "bodyRead": "parsed"
394
+ },
395
+ "errorCode": null,
396
+ "durationMs": 12235.519826000003
397
+ },
398
+ {
399
+ "physicalId": 8,
400
+ "requestSha256": "bda80f85ee654160699f9ab8015a8f5a5d05e85e2c0ab3d60bae6dcbab659b9a",
401
+ "requestBodySha256": "62826710163144d4b943777c783f5a5a9e657cfaaf8aca872aefd3d5a1c38f63",
402
+ "route": {
403
+ "model": "openai/gpt-6-luna",
404
+ "provider": "openai",
405
+ "providerName": "OpenAI",
406
+ "apiEndpoint": "/api/v1/chat/completions",
407
+ "allowFallbacks": false
408
+ },
409
+ "receipt": {
410
+ "model": "openai/gpt-6-luna",
411
+ "provider": "OpenAI",
412
+ "requestId": "gen-1792489515-woFTBsQXVrcrijOlbZzM",
413
+ "costUsd": 0.000403675,
414
+ "durationMs": 6662.52416500001,
415
+ "attempts": 1
416
+ },
417
+ "wireReceipt": {
418
+ "responseModel": "openai/gpt-6-luna",
419
+ "responseProvider": "OpenAI",
420
+ "responseId": "gen-1792489515-woFTBsQXVrcrijOlbZzM",
421
+ "usageCostUsd": 0.000403675,
422
+ "errorType": null,
423
+ "errorCode": null,
424
+ "errorParameter": null,
425
+ "errorCategory": null,
426
+ "errorReason": null,
427
+ "rateLimitScope": null,
428
+ "retryAfterSeconds": null,
429
+ "responseDisposition": "chat-json-object",
430
+ "finishReason": "stop",
431
+ "bodyRead": "parsed"
432
+ },
433
+ "errorCode": null,
434
+ "durationMs": 6661.189245000001
435
+ },
436
+ {
437
+ "physicalId": 9,
438
+ "requestSha256": "16e4dc54c93aa0ec755c46c2123420f827d70d5416a0b83cf52fd061a8ee7b66",
439
+ "requestBodySha256": "f3265ce9e742fda3cbf3b4159ae99db0729fdacbe58881d4003a8a4a0feb8a23",
440
+ "route": {
441
+ "model": "openai/gpt-6-luna",
442
+ "provider": "openai",
443
+ "providerName": "OpenAI",
444
+ "apiEndpoint": "/api/v1/chat/completions",
445
+ "allowFallbacks": false
446
+ },
447
+ "receipt": {
448
+ "model": "openai/gpt-6-luna",
449
+ "provider": "OpenAI",
450
+ "requestId": "gen-1792489525-mgyRxLPDFhKveU8rCzFf",
451
+ "costUsd": 0.00109605,
452
+ "durationMs": 9659.023386,
453
+ "attempts": 1
454
+ },
455
+ "wireReceipt": {
456
+ "responseModel": "openai/gpt-6-luna",
457
+ "responseProvider": "OpenAI",
458
+ "responseId": "gen-1792489525-mgyRxLPDFhKveU8rCzFf",
459
+ "usageCostUsd": 0.00109605,
460
+ "errorType": null,
461
+ "errorCode": null,
462
+ "errorParameter": null,
463
+ "errorCategory": null,
464
+ "errorReason": null,
465
+ "rateLimitScope": null,
466
+ "retryAfterSeconds": null,
467
+ "responseDisposition": "chat-json-object",
468
+ "finishReason": "stop",
469
+ "bodyRead": "parsed"
470
+ },
471
+ "errorCode": null,
472
+ "durationMs": 9656.302324000004
473
+ },
474
+ {
475
+ "physicalId": 10,
476
+ "requestSha256": "dc785da2f6b26128a867daa1b36e5453ebe31214d018baba6c09ffbd78d9425e",
477
+ "requestBodySha256": "2de7f2c9548c9ad252a47e4b511fe8426f260c3f7bc2880eadf7edb0f1e3ccb9",
478
+ "route": {
479
+ "model": "openai/gpt-6-luna",
480
+ "provider": "openai",
481
+ "providerName": "OpenAI",
482
+ "apiEndpoint": "/api/v1/chat/completions",
483
+ "allowFallbacks": false
484
+ },
485
+ "receipt": null,
486
+ "wireReceipt": null,
487
+ "errorCode": "TIMEOUT",
488
+ "durationMs": 3263.5350929999986
489
+ },
490
+ {
491
+ "physicalId": 11,
492
+ "requestSha256": "c5ce46d655938a776408c89ef915b5caf712387d0bd2db95a1947b347a368b1f",
493
+ "requestBodySha256": "73726a3c1c6cd11fcaefac6d3a772418a149d9d79ec8412a659654cd06c99bcc",
494
+ "route": {
495
+ "model": "openai/gpt-6-luna",
496
+ "provider": "openai",
497
+ "providerName": "OpenAI",
498
+ "apiEndpoint": "/api/v1/chat/completions",
499
+ "allowFallbacks": false
500
+ },
501
+ "receipt": {
502
+ "model": "openai/gpt-6-luna",
503
+ "provider": "OpenAI",
504
+ "requestId": "gen-1792489542-h57iKcaXloADt5nfIun0",
505
+ "costUsd": 0.000471675,
506
+ "durationMs": 10064.60725999999,
507
+ "attempts": 1
508
+ },
509
+ "wireReceipt": {
510
+ "responseModel": "openai/gpt-6-luna",
511
+ "responseProvider": "OpenAI",
512
+ "responseId": "gen-1792489542-h57iKcaXloADt5nfIun0",
513
+ "usageCostUsd": 0.000471675,
514
+ "errorType": null,
515
+ "errorCode": null,
516
+ "errorParameter": null,
517
+ "errorCategory": null,
518
+ "errorReason": null,
519
+ "rateLimitScope": null,
520
+ "retryAfterSeconds": null,
521
+ "responseDisposition": "chat-json-object",
522
+ "finishReason": "stop",
523
+ "bodyRead": "parsed"
524
+ },
525
+ "errorCode": null,
526
+ "durationMs": 10059.001871999993
527
+ },
528
+ {
529
+ "physicalId": 12,
530
+ "requestSha256": "9816b690ab82c6e0368b4b4e474e705aea855c4244bcaea413e1e488eacf78ee",
531
+ "requestBodySha256": "f9c04e63bdb5bd3145405590d0e7baf6009362fca545317bb5d6d17793ebb9eb",
532
+ "route": {
533
+ "model": "openai/gpt-6-luna",
534
+ "provider": "openai",
535
+ "providerName": "OpenAI",
536
+ "apiEndpoint": "/api/v1/chat/completions",
537
+ "allowFallbacks": false
538
+ },
539
+ "receipt": {
540
+ "model": "openai/gpt-6-luna",
541
+ "provider": "OpenAI",
542
+ "requestId": "gen-1792489564-gv7mnVpZu6I7waCEsEm0",
543
+ "costUsd": 0.0019233,
544
+ "durationMs": 22097.022096999994,
545
+ "attempts": 1
546
+ },
547
+ "wireReceipt": {
548
+ "responseModel": "openai/gpt-6-luna",
549
+ "responseProvider": "OpenAI",
550
+ "responseId": "gen-1792489564-gv7mnVpZu6I7waCEsEm0",
551
+ "usageCostUsd": 0.0019233,
552
+ "errorType": null,
553
+ "errorCode": null,
554
+ "errorParameter": null,
555
+ "errorCategory": null,
556
+ "errorReason": null,
557
+ "rateLimitScope": null,
558
+ "retryAfterSeconds": null,
559
+ "responseDisposition": "chat-json-object",
560
+ "finishReason": "stop",
561
+ "bodyRead": "parsed"
562
+ },
563
+ "errorCode": null,
564
+ "durationMs": 22088.366028000004
565
+ },
566
+ {
567
+ "physicalId": 13,
568
+ "requestSha256": "02b6bd806d3e7cab3df6a128ccb7f4c9c080cdcd0e5c0c2579c07c593c6cf553",
569
+ "requestBodySha256": "b8d88f84707293e8b2b6ff77107ce74f777b3ab663643d39240567cb526c748e",
570
+ "route": {
571
+ "model": "openai/gpt-6-luna",
572
+ "provider": "openai",
573
+ "providerName": "OpenAI",
574
+ "apiEndpoint": "/api/v1/chat/completions",
575
+ "allowFallbacks": false
576
+ },
577
+ "receipt": {
578
+ "model": "openai/gpt-6-luna",
579
+ "provider": "OpenAI",
580
+ "requestId": "gen-1792489576-XLolQ7aepr0zLtB7rN5P",
581
+ "costUsd": 0.000471175,
582
+ "durationMs": 6270.761518999992,
583
+ "attempts": 1
584
+ },
585
+ "wireReceipt": {
586
+ "responseModel": "openai/gpt-6-luna",
587
+ "responseProvider": "OpenAI",
588
+ "responseId": "gen-1792489576-XLolQ7aepr0zLtB7rN5P",
589
+ "usageCostUsd": 0.000471175,
590
+ "errorType": null,
591
+ "errorCode": null,
592
+ "errorParameter": null,
593
+ "errorCategory": null,
594
+ "errorReason": null,
595
+ "rateLimitScope": null,
596
+ "retryAfterSeconds": null,
597
+ "responseDisposition": "chat-json-object",
598
+ "finishReason": "stop",
599
+ "bodyRead": "parsed"
600
+ },
601
+ "errorCode": null,
602
+ "durationMs": 6267.623319999999
603
+ },
604
+ {
605
+ "physicalId": 14,
606
+ "requestSha256": "78c59576e602ee8ede81f8e2e19a6c90921a70771e64eb04b62e91138a89a2d8",
607
+ "requestBodySha256": "80e0b6a20376d748851758b9ed710cf6b8d7bdd96ff8443ea6283f16a2e3e2b7",
608
+ "route": {
609
+ "model": "openai/gpt-6-luna",
610
+ "provider": "openai",
611
+ "providerName": "OpenAI",
612
+ "apiEndpoint": "/api/v1/chat/completions",
613
+ "allowFallbacks": false
614
+ },
615
+ "receipt": null,
616
+ "wireReceipt": null,
617
+ "errorCode": "TIMEOUT",
618
+ "durationMs": 5031.557912000018
619
+ },
620
+ {
621
+ "physicalId": 15,
622
+ "requestSha256": "644be2338d04cf5442d18dbc5e109197c08c020d42e921d2890f16bb17cf1518",
623
+ "requestBodySha256": "ff2200f52d287efae1b45471fca48559bf6b8ae105d402dbc219d69b8268522b",
624
+ "route": {
625
+ "model": "openai/gpt-6-luna",
626
+ "provider": "openai",
627
+ "providerName": "OpenAI",
628
+ "apiEndpoint": "/api/v1/chat/completions",
629
+ "allowFallbacks": false
630
+ },
631
+ "receipt": {
632
+ "model": "openai/gpt-6-luna",
633
+ "provider": "OpenAI",
634
+ "requestId": "gen-1792489587-aFdFUiWm5bxkBCvaIUJj",
635
+ "costUsd": 0.0004738,
636
+ "durationMs": 5569.686443999992,
637
+ "attempts": 1
638
+ },
639
+ "wireReceipt": {
640
+ "responseModel": "openai/gpt-6-luna",
641
+ "responseProvider": "OpenAI",
642
+ "responseId": "gen-1792489587-aFdFUiWm5bxkBCvaIUJj",
643
+ "usageCostUsd": 0.0004738,
644
+ "errorType": null,
645
+ "errorCode": null,
646
+ "errorParameter": null,
647
+ "errorCategory": null,
648
+ "errorReason": null,
649
+ "rateLimitScope": null,
650
+ "retryAfterSeconds": null,
651
+ "responseDisposition": "chat-json-object",
652
+ "finishReason": "stop",
653
+ "bodyRead": "parsed"
654
+ },
655
+ "errorCode": null,
656
+ "durationMs": 5566.089429000014
657
+ },
658
+ {
659
+ "physicalId": 16,
660
+ "requestSha256": "3c51d8dce4c2c0e4fdf7124750ed41afe53247dfcdfe76625d7e8b1c8bc685bc",
661
+ "requestBodySha256": "da211b7d0b69ad5a0f5a55653e62992915381f7131c10d6162d5dd4d89eb6fc2",
662
+ "route": {
663
+ "model": "openai/gpt-6-luna",
664
+ "provider": "openai",
665
+ "providerName": "OpenAI",
666
+ "apiEndpoint": "/api/v1/chat/completions",
667
+ "allowFallbacks": false
668
+ },
669
+ "receipt": {
670
+ "model": "openai/gpt-6-luna",
671
+ "provider": "OpenAI",
672
+ "requestId": "gen-1792489594-sTsvBqNzHaRyXH3rD8eK",
673
+ "costUsd": 0.0018643,
674
+ "durationMs": 10353.573876999988,
675
+ "attempts": 1
676
+ },
677
+ "wireReceipt": {
678
+ "responseModel": "openai/gpt-6-luna",
679
+ "responseProvider": "OpenAI",
680
+ "responseId": "gen-1792489594-sTsvBqNzHaRyXH3rD8eK",
681
+ "usageCostUsd": 0.0018643,
682
+ "errorType": null,
683
+ "errorCode": null,
684
+ "errorParameter": null,
685
+ "errorCategory": null,
686
+ "errorReason": null,
687
+ "rateLimitScope": null,
688
+ "retryAfterSeconds": null,
689
+ "responseDisposition": "chat-json-object",
690
+ "finishReason": "stop",
691
+ "bodyRead": "parsed"
692
+ },
693
+ "errorCode": null,
694
+ "durationMs": 10348.161499999987
695
+ },
696
+ {
697
+ "physicalId": 17,
698
+ "requestSha256": "b0768b8330dcab1eeb41f4334481e10f21107c47469003e42391d0897c2e6c56",
699
+ "requestBodySha256": "3e508d652475b0f485a2856ade10d891bddaa48cf48c4dbb028227282f051a80",
700
+ "route": {
701
+ "model": "openai/gpt-6-luna",
702
+ "provider": "openai",
703
+ "providerName": "OpenAI",
704
+ "apiEndpoint": "/api/v1/chat/completions",
705
+ "allowFallbacks": false
706
+ },
707
+ "receipt": {
708
+ "model": "openai/gpt-6-luna",
709
+ "provider": "OpenAI",
710
+ "requestId": "gen-1792489605-1alYVJkcAZw2EWAhEDyJ",
711
+ "costUsd": 0.000453425,
712
+ "durationMs": 5945.440193999995,
713
+ "attempts": 1
714
+ },
715
+ "wireReceipt": {
716
+ "responseModel": "openai/gpt-6-luna",
717
+ "responseProvider": "OpenAI",
718
+ "responseId": "gen-1792489605-1alYVJkcAZw2EWAhEDyJ",
719
+ "usageCostUsd": 0.000453425,
720
+ "errorType": null,
721
+ "errorCode": null,
722
+ "errorParameter": null,
723
+ "errorCategory": null,
724
+ "errorReason": null,
725
+ "rateLimitScope": null,
726
+ "retryAfterSeconds": null,
727
+ "responseDisposition": "chat-json-object",
728
+ "finishReason": "stop",
729
+ "bodyRead": "parsed"
730
+ },
731
+ "errorCode": null,
732
+ "durationMs": 5943.114808000013
733
+ },
734
+ {
735
+ "physicalId": 18,
736
+ "requestSha256": "5c75bf07142ac68b1b05ba30a6920ded43c71a1ea0c4ba42e7c5f9bbbeb42b0a",
737
+ "requestBodySha256": "810c45f72c1c60ae2149aa9354c451c96d625b156cf6620149b1cc5afaa08e07",
738
+ "route": {
739
+ "model": "openai/gpt-6-luna",
740
+ "provider": "openai",
741
+ "providerName": "OpenAI",
742
+ "apiEndpoint": "/api/v1/chat/completions",
743
+ "allowFallbacks": false
744
+ },
745
+ "receipt": {
746
+ "model": "openai/gpt-6-luna",
747
+ "provider": "OpenAI",
748
+ "requestId": "gen-1792489615-J8jNcSGMuUYId8tKMiwO",
749
+ "costUsd": 0.00106855,
750
+ "durationMs": 7731.915879000007,
751
+ "attempts": 1
752
+ },
753
+ "wireReceipt": {
754
+ "responseModel": "openai/gpt-6-luna",
755
+ "responseProvider": "OpenAI",
756
+ "responseId": "gen-1792489615-J8jNcSGMuUYId8tKMiwO",
757
+ "usageCostUsd": 0.00106855,
758
+ "errorType": null,
759
+ "errorCode": null,
760
+ "errorParameter": null,
761
+ "errorCategory": null,
762
+ "errorReason": null,
763
+ "rateLimitScope": null,
764
+ "retryAfterSeconds": null,
765
+ "responseDisposition": "chat-json-object",
766
+ "finishReason": "stop",
767
+ "bodyRead": "parsed"
768
+ },
769
+ "errorCode": null,
770
+ "durationMs": 7727.036864000023
771
+ },
772
+ {
773
+ "physicalId": 19,
774
+ "requestSha256": "f5f81d0c82c08168739cdb010c38d4c9c080f4d38fe2f19c92dbdc48c256241e",
775
+ "requestBodySha256": "31e1c47329c64e046e12b25abe4a041ac105225963e8c8fb2e10219def2e4c72",
776
+ "route": {
777
+ "model": "openai/gpt-6-luna",
778
+ "provider": "openai",
779
+ "providerName": "OpenAI",
780
+ "apiEndpoint": "/api/v1/chat/completions",
781
+ "allowFallbacks": false
782
+ },
783
+ "receipt": {
784
+ "model": "openai/gpt-6-luna",
785
+ "provider": "OpenAI",
786
+ "requestId": "gen-1792489625-RRvH06uqK6I2RymbVl9g",
787
+ "costUsd": 0.001169175,
788
+ "durationMs": 8926.25316600001,
789
+ "attempts": 1
790
+ },
791
+ "wireReceipt": {
792
+ "responseModel": "openai/gpt-6-luna",
793
+ "responseProvider": "OpenAI",
794
+ "responseId": "gen-1792489625-RRvH06uqK6I2RymbVl9g",
795
+ "usageCostUsd": 0.001169175,
796
+ "errorType": null,
797
+ "errorCode": null,
798
+ "errorParameter": null,
799
+ "errorCategory": null,
800
+ "errorReason": null,
801
+ "rateLimitScope": null,
802
+ "retryAfterSeconds": null,
803
+ "responseDisposition": "chat-json-object",
804
+ "finishReason": "stop",
805
+ "bodyRead": "parsed"
806
+ },
807
+ "errorCode": null,
808
+ "durationMs": 8923.704307999986
809
+ }
810
+ ]
811
+ }