zorya-classifier 0.0.0-stage → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (369) hide show
  1. package/LICENSE +21 -0
  2. package/NOTICE.md +13 -0
  3. package/README.md +139 -2
  4. package/dist/app/cli-arguments.d.ts +40 -0
  5. package/dist/app/cli-arguments.js +67 -0
  6. package/dist/app/cli-route.d.ts +3 -0
  7. package/dist/app/cli-route.js +40 -0
  8. package/dist/app/create-classifier.d.ts +33 -0
  9. package/dist/app/create-classifier.js +312 -0
  10. package/dist/app/extraction-files.d.ts +9 -0
  11. package/dist/app/extraction-files.js +28 -0
  12. package/dist/cli.d.ts +2 -0
  13. package/dist/cli.js +77 -0
  14. package/dist/entities/boundary-view.d.ts +29 -0
  15. package/dist/entities/boundary-view.js +1 -0
  16. package/dist/entities/contracts.d.ts +471 -0
  17. package/dist/entities/contracts.js +97 -0
  18. package/dist/entities/cutout-raster.d.ts +7 -0
  19. package/dist/entities/cutout-raster.js +1 -0
  20. package/dist/entities/errors.d.ts +7 -0
  21. package/dist/entities/errors.js +16 -0
  22. package/dist/entities/object-proposals.d.ts +53 -0
  23. package/dist/entities/object-proposals.js +8 -0
  24. package/dist/entities/representation.d.ts +225 -0
  25. package/dist/entities/representation.js +33 -0
  26. package/dist/entities/segmentation-metadata.d.ts +11 -0
  27. package/dist/entities/segmentation-metadata.js +1 -0
  28. package/dist/entities/segmentation-verification.d.ts +30 -0
  29. package/dist/entities/segmentation-verification.js +1 -0
  30. package/dist/entities/segmentation.d.ts +159 -0
  31. package/dist/entities/segmentation.js +5 -0
  32. package/dist/entities/whole-object.d.ts +128 -0
  33. package/dist/entities/whole-object.js +7 -0
  34. package/dist/features/choice-beam-layout.d.ts +18 -0
  35. package/dist/features/choice-beam-layout.js +136 -0
  36. package/dist/features/choice.d.ts +4 -0
  37. package/dist/features/choice.js +83 -0
  38. package/dist/features/prompts.d.ts +8 -0
  39. package/dist/features/prompts.js +56 -0
  40. package/dist/features/segmentation/box-check.d.ts +10 -0
  41. package/dist/features/segmentation/box-check.js +299 -0
  42. package/dist/features/segmentation/mask.d.ts +6 -0
  43. package/dist/features/segmentation/mask.js +89 -0
  44. package/dist/features/segmentation/packed-mask.d.ts +5 -0
  45. package/dist/features/segmentation/packed-mask.js +53 -0
  46. package/dist/features/uniform-grid.d.ts +3 -0
  47. package/dist/features/uniform-grid.js +35 -0
  48. package/dist/index.d.ts +10 -0
  49. package/dist/index.js +2 -0
  50. package/dist/infrastructure/boundary-view.d.ts +2 -0
  51. package/dist/infrastructure/boundary-view.js +263 -0
  52. package/dist/infrastructure/openrouter-common.d.ts +130 -0
  53. package/dist/infrastructure/openrouter-common.js +317 -0
  54. package/dist/infrastructure/openrouter-vision.d.ts +11 -0
  55. package/dist/infrastructure/openrouter-vision.js +17 -0
  56. package/dist/infrastructure/openrouter.d.ts +19 -0
  57. package/dist/infrastructure/openrouter.js +207 -0
  58. package/dist/infrastructure/raster.d.ts +11 -0
  59. package/dist/infrastructure/raster.js +216 -0
  60. package/dist/infrastructure/segmentation/box-presentation.d.ts +2 -0
  61. package/dist/infrastructure/segmentation/box-presentation.js +136 -0
  62. package/dist/infrastructure/segmentation/cutout-raster.d.ts +3 -0
  63. package/dist/infrastructure/segmentation/cutout-raster.js +79 -0
  64. package/dist/infrastructure/segmentation/grabcut/index.d.ts +13 -0
  65. package/dist/infrastructure/segmentation/grabcut/index.js +118 -0
  66. package/dist/infrastructure/segmentation/grabcut/worker-inference.d.ts +47 -0
  67. package/dist/infrastructure/segmentation/grabcut/worker-inference.js +260 -0
  68. package/dist/infrastructure/segmentation/index.d.ts +2 -0
  69. package/dist/infrastructure/segmentation/index.js +2 -0
  70. package/dist/infrastructure/segmentation/mobile-sam/index.d.ts +58 -0
  71. package/dist/infrastructure/segmentation/mobile-sam/index.js +472 -0
  72. package/dist/infrastructure/segmentation/mobile-sam/worker-inference.d.ts +149 -0
  73. package/dist/infrastructure/segmentation/mobile-sam/worker-inference.js +845 -0
  74. package/dist/infrastructure/segmentation/native-child.d.ts +23 -0
  75. package/dist/infrastructure/segmentation/native-child.js +297 -0
  76. package/dist/infrastructure/segmentation/native-protocol.d.ts +923 -0
  77. package/dist/infrastructure/segmentation/native-protocol.js +242 -0
  78. package/dist/infrastructure/segmentation/native-worker.d.ts +1 -0
  79. package/dist/infrastructure/segmentation/native-worker.js +93 -0
  80. package/dist/infrastructure/segmentation/probe-backend.d.ts +1 -0
  81. package/dist/infrastructure/segmentation/probe-backend.js +31 -0
  82. package/dist/infrastructure/segmentation/proposal-presentation.d.ts +3 -0
  83. package/dist/infrastructure/segmentation/proposal-presentation.js +371 -0
  84. package/dist/infrastructure/segmentation/verify-asset.d.ts +4 -0
  85. package/dist/infrastructure/segmentation/verify-asset.js +32 -0
  86. package/dist/infrastructure/text-representation.d.ts +23 -0
  87. package/dist/infrastructure/text-representation.js +226 -0
  88. package/dist/infrastructure/vision-chat.d.ts +64 -0
  89. package/dist/infrastructure/vision-chat.js +318 -0
  90. package/dist/openai-compatible.d.ts +8 -0
  91. package/dist/openai-compatible.js +11 -0
  92. package/dist/openrouter.d.ts +4 -0
  93. package/dist/openrouter.js +2 -0
  94. package/dist/processes/boundary-state.d.ts +12 -0
  95. package/dist/processes/boundary-state.js +196 -0
  96. package/dist/processes/classify.d.ts +3 -0
  97. package/dist/processes/classify.js +39 -0
  98. package/dist/processes/extract-from-region.d.ts +19 -0
  99. package/dist/processes/extract-from-region.js +415 -0
  100. package/dist/processes/extract.d.ts +25 -0
  101. package/dist/processes/extract.js +223 -0
  102. package/dist/processes/locate.d.ts +3 -0
  103. package/dist/processes/locate.js +274 -0
  104. package/dist/processes/proposal-location.d.ts +19 -0
  105. package/dist/processes/proposal-location.js +396 -0
  106. package/dist/processes/whole-object.d.ts +7 -0
  107. package/dist/processes/whole-object.js +272 -0
  108. package/dist/segmentation.d.ts +10 -0
  109. package/dist/segmentation.js +4 -0
  110. package/dist/shared/choice-mass.d.ts +2 -0
  111. package/dist/shared/choice-mass.js +19 -0
  112. package/dist/shared/gate.d.ts +11 -0
  113. package/dist/shared/gate.js +52 -0
  114. package/dist/shared/input-budget.d.ts +7 -0
  115. package/dist/shared/input-budget.js +21 -0
  116. package/dist/shared/scope.d.ts +12 -0
  117. package/dist/shared/scope.js +29 -0
  118. package/docs/0.2.0-plan.md +190 -0
  119. package/docs/README.ru.md +258 -0
  120. package/docs/acceptance.md +144 -0
  121. package/docs/api.md +49 -0
  122. package/docs/architecture.md +45 -0
  123. package/docs/benchmarks.md +63 -0
  124. package/docs/categorical-presence-port.md +26 -0
  125. package/docs/evidence/current-linux-check.json +15 -0
  126. package/docs/evidence/decisions-completion-v1-manifest.json +96 -0
  127. package/docs/evidence/decisions-completion-v1-report.json +1205 -0
  128. package/docs/evidence/decisions-selection-v1-manifest.json +96 -0
  129. package/docs/evidence/decisions-selection-v1-report.json +1457 -0
  130. package/docs/evidence/jev-pricing-2026-10-18.json +69 -0
  131. package/docs/evidence/linux-check.json +20 -0
  132. package/docs/evidence/linux-check.txt +205 -0
  133. package/docs/evidence/live-release-smoke-manifest.json +82 -0
  134. package/docs/evidence/live-release-smoke-provenance.json +9 -0
  135. package/docs/evidence/live-release-smoke-report.json +2136 -0
  136. package/docs/evidence/live-v1-manifest.json +84 -0
  137. package/docs/evidence/live-v1-provenance.json +9 -0
  138. package/docs/evidence/live-v1-report.json +15555 -0
  139. package/docs/evidence/luna-decisions-fine-probe.json +19 -0
  140. package/docs/evidence/luna-decisions-locator-smoke-manifest.json +39 -0
  141. package/docs/evidence/luna-decisions-locator-smoke-report.json +149 -0
  142. package/docs/evidence/pack-check.json +26 -0
  143. package/docs/evidence/protocol-probes.json +61 -0
  144. package/docs/evidence/rejected-vision-selection-v1-qwen-photo-dev-01.json +42 -0
  145. package/docs/evidence/rejected-vision-selection-v1-qwen-photo-dev-17.json +42 -0
  146. package/docs/evidence/rejected-vision-selection-v1-qwen-photo-heldout-09.json +42 -0
  147. package/docs/evidence/rejected-vision-selection-v2-haiku-photo-dev-16.json +42 -0
  148. package/docs/evidence/rejected-vision-selection-v2-haiku-support-heldout-016.json +42 -0
  149. package/docs/evidence/v02/baseline.json +1043 -0
  150. package/docs/evidence/v02/boundary-variants.md +17 -0
  151. package/docs/evidence/v02/box-confirmation-dev40/README.md +15 -0
  152. package/docs/evidence/v02/box-confirmation-dev40/component-refinement.json +246 -0
  153. package/docs/evidence/v02/box-confirmation-dev40/evaluation.json +1663 -0
  154. package/docs/evidence/v02/box-confirmation-dev40/provenance.json +130 -0
  155. package/docs/evidence/v02/box-confirmation-dev40/report.json +127 -0
  156. package/docs/evidence/v02/box-confirmation-dev40-freeze-20261020-v1.json +230 -0
  157. package/docs/evidence/v02/box-confirmation-method-selection-20261020-v1.json +85 -0
  158. package/docs/evidence/v02/box-heldout-cancelled-before-dispatch-20261021-v1.json +32 -0
  159. package/docs/evidence/v02/box-heldout-combined-seal-20261021-v1.json +89 -0
  160. package/docs/evidence/v02/box-heldout-evaluator-truth-seal-20261021-v1.json +61 -0
  161. package/docs/evidence/v02/box-heldout-exclusion-audit-20261020-v1.json +81 -0
  162. package/docs/evidence/v02/box-heldout-map-seal-20261021-v1.json +48 -0
  163. package/docs/evidence/v02/box-heldout-photo-seal-20261020-v1.json +62 -0
  164. package/docs/evidence/v02/box-heldout-run-freeze-20261021-v1.json +61 -0
  165. package/docs/evidence/v02/box-heldout-source-review-20261020-v1.json +134 -0
  166. package/docs/evidence/v02/box-heldout-ui-seal-20261020-v1.json +44 -0
  167. package/docs/evidence/v02/calculator-proof-root-review-20261020-v1.json +63 -0
  168. package/docs/evidence/v02/categorical-dev40-freeze.json +94 -0
  169. package/docs/evidence/v02/categorical-dev40-preserve.json +460 -0
  170. package/docs/evidence/v02/categorical-dev40-target-only.json +460 -0
  171. package/docs/evidence/v02/categorical-heldout-admission-20261020-v3.json +215 -0
  172. package/docs/evidence/v02/categorical-heldout-admission-20261020-v4.json +270 -0
  173. package/docs/evidence/v02/categorical-heldout-dispatch-authorization-20261020-v4.json +79 -0
  174. package/docs/evidence/v02/categorical-heldout-predispatch-20261020-v3.json +57 -0
  175. package/docs/evidence/v02/categorical-heldout-producer-source-map-v4.json +262 -0
  176. package/docs/evidence/v02/categorical-heldout-producer-source-map.json +263 -0
  177. package/docs/evidence/v02/categorical-heldout-run-freeze-20261020-v3.json +35 -0
  178. package/docs/evidence/v02/categorical-heldout-run-freeze-20261020-v4.json +35 -0
  179. package/docs/evidence/v02/categorical-heldout-v4/README.md +35 -0
  180. package/docs/evidence/v02/categorical-heldout-v4/candidate-evaluation.json +2812 -0
  181. package/docs/evidence/v02/categorical-heldout-v4/candidate-physical-receipts.json +15261 -0
  182. package/docs/evidence/v02/categorical-heldout-v4/candidate-provenance.json +131 -0
  183. package/docs/evidence/v02/categorical-heldout-v4/control-evaluation.json +855 -0
  184. package/docs/evidence/v02/categorical-heldout-v4/control-physical-receipts.json +4402 -0
  185. package/docs/evidence/v02/categorical-heldout-v4/control-provenance.json +31 -0
  186. package/docs/evidence/v02/categorical-heldout-v4/mask-normalized-exploratory.json +682 -0
  187. package/docs/evidence/v02/categorical-heldout-v4/paired-qualification.json +21 -0
  188. package/docs/evidence/v02/categorical-heldout-v4/report.json +258 -0
  189. package/docs/evidence/v02/categorical-presence-dev6.json +144 -0
  190. package/docs/evidence/v02/categorical-presence-dev6.md +18 -0
  191. package/docs/evidence/v02/categorical-vision-method-selection.json +90 -0
  192. package/docs/evidence/v02/checked-region-component-v1/README.md +7 -0
  193. package/docs/evidence/v02/checked-region-component-v1/evidence.json +311 -0
  194. package/docs/evidence/v02/checked-region-resource-interrupted-2b0d09f.json +102 -0
  195. package/docs/evidence/v02/checked-region-segmentation-resource-4df544c-receipt.json +167 -0
  196. package/docs/evidence/v02/checked-region-segmentation-resource-4df544c-root-review.json +58 -0
  197. package/docs/evidence/v02/checked-region-segmentation-resource-987ac32-receipt.json +158 -0
  198. package/docs/evidence/v02/ci-012b935.json +17 -0
  199. package/docs/evidence/v02/ci-0c365cb.json +372 -0
  200. package/docs/evidence/v02/ci-185bde8.json +32 -0
  201. package/docs/evidence/v02/ci-24f849f.json +95 -0
  202. package/docs/evidence/v02/ci-25c19cd.json +375 -0
  203. package/docs/evidence/v02/ci-2922caf.json +375 -0
  204. package/docs/evidence/v02/ci-29357d7.json +29 -0
  205. package/docs/evidence/v02/ci-32aa90d.json +24 -0
  206. package/docs/evidence/v02/ci-35e3064.json +376 -0
  207. package/docs/evidence/v02/ci-4331b1b.json +384 -0
  208. package/docs/evidence/v02/ci-43b7426.json +376 -0
  209. package/docs/evidence/v02/ci-450439c.json +373 -0
  210. package/docs/evidence/v02/ci-46283fe.json +29 -0
  211. package/docs/evidence/v02/ci-4c9c09f.json +34 -0
  212. package/docs/evidence/v02/ci-5579646.json +27 -0
  213. package/docs/evidence/v02/ci-6f9cc15.json +127 -0
  214. package/docs/evidence/v02/ci-7c1051f.json +27 -0
  215. package/docs/evidence/v02/ci-9837888.json +34 -0
  216. package/docs/evidence/v02/ci-987ac32.json +29 -0
  217. package/docs/evidence/v02/ci-9d00fe5.json +25 -0
  218. package/docs/evidence/v02/ci-9f85acc.json +127 -0
  219. package/docs/evidence/v02/ci-be275a6.json +201 -0
  220. package/docs/evidence/v02/ci-c107ddf.json +372 -0
  221. package/docs/evidence/v02/ci-c35f67d.json +127 -0
  222. package/docs/evidence/v02/ci-c5eddd8.json +32 -0
  223. package/docs/evidence/v02/ci-d2042e0.json +372 -0
  224. package/docs/evidence/v02/ci-d684259.json +375 -0
  225. package/docs/evidence/v02/ci-e0c190b.json +127 -0
  226. package/docs/evidence/v02/ci-e551253.json +372 -0
  227. package/docs/evidence/v02/ci-f9d4633.json +29 -0
  228. package/docs/evidence/v02/dev1-proposal-evaluation.md +13 -0
  229. package/docs/evidence/v02/dev2-mobile-sam-proposal-oracle.md +21 -0
  230. package/docs/evidence/v02/dev2-proposal-evaluation.md +21 -0
  231. package/docs/evidence/v02/fresh-development.md +16 -0
  232. package/docs/evidence/v02/fresh-native-numeric/artifact-hashes.json +9 -0
  233. package/docs/evidence/v02/fresh-native-numeric/evaluation-root-v1.json +568 -0
  234. package/docs/evidence/v02/fresh-native-numeric/run-manifest.json +342 -0
  235. package/docs/evidence/v02/fresh-native-numeric/summary.json +5654 -0
  236. package/docs/evidence/v02/fresh-native-outline-axis/artifact-hashes.json +9 -0
  237. package/docs/evidence/v02/fresh-native-outline-axis/evaluation-root-v1.json +568 -0
  238. package/docs/evidence/v02/fresh-native-outline-axis/run-manifest.json +378 -0
  239. package/docs/evidence/v02/fresh-native-outline-axis/summary.json +5605 -0
  240. package/docs/evidence/v02/fresh-text/README.md +23 -0
  241. package/docs/evidence/v02/fresh-text/ascii-contours-v1/classify-followup-run-manifest.json +405 -0
  242. package/docs/evidence/v02/fresh-text/ascii-contours-v1/classify-followup-summary.json +1646 -0
  243. package/docs/evidence/v02/fresh-text/ascii-contours-v1/evaluation.json +568 -0
  244. package/docs/evidence/v02/fresh-text/ascii-contours-v1/original-run-manifest.json +404 -0
  245. package/docs/evidence/v02/fresh-text/ascii-contours-v1/original-summary.json +4416 -0
  246. package/docs/evidence/v02/fresh-text/ascii-luma-v1/classify-followup-run-manifest.json +405 -0
  247. package/docs/evidence/v02/fresh-text/ascii-luma-v1/classify-followup-summary.json +1646 -0
  248. package/docs/evidence/v02/fresh-text/ascii-luma-v1/evaluation.json +568 -0
  249. package/docs/evidence/v02/fresh-text/ascii-luma-v1/original-run-manifest.json +404 -0
  250. package/docs/evidence/v02/fresh-text/ascii-luma-v1/original-summary.json +4647 -0
  251. package/docs/evidence/v02/fresh-text/ascii-svg-layered-v1/classify-followup-run-manifest.json +405 -0
  252. package/docs/evidence/v02/fresh-text/ascii-svg-layered-v1/classify-followup-summary.json +846 -0
  253. package/docs/evidence/v02/fresh-text/ascii-svg-layered-v1/evaluation.json +568 -0
  254. package/docs/evidence/v02/fresh-text/ascii-svg-layered-v1/original-run-manifest.json +404 -0
  255. package/docs/evidence/v02/fresh-text/ascii-svg-layered-v1/original-summary.json +1789 -0
  256. package/docs/evidence/v02/fresh-text/no-image-control/evaluation.json +568 -0
  257. package/docs/evidence/v02/fresh-text/no-image-control/original-run-manifest.json +404 -0
  258. package/docs/evidence/v02/fresh-text/no-image-control/original-summary.json +3953 -0
  259. package/docs/evidence/v02/fresh-text/palette-grid-v1/classify-followup-run-manifest.json +405 -0
  260. package/docs/evidence/v02/fresh-text/palette-grid-v1/classify-followup-summary.json +1646 -0
  261. package/docs/evidence/v02/fresh-text/palette-grid-v1/evaluation.json +568 -0
  262. package/docs/evidence/v02/fresh-text/palette-grid-v1/original-run-manifest.json +404 -0
  263. package/docs/evidence/v02/fresh-text/palette-grid-v1/original-summary.json +3974 -0
  264. package/docs/evidence/v02/fresh-text/pixel-rle-v1/classify-followup-run-manifest.json +405 -0
  265. package/docs/evidence/v02/fresh-text/pixel-rle-v1/classify-followup-summary.json +1646 -0
  266. package/docs/evidence/v02/fresh-text/pixel-rle-v1/evaluation.json +568 -0
  267. package/docs/evidence/v02/fresh-text/pixel-rle-v1/original-run-manifest.json +404 -0
  268. package/docs/evidence/v02/fresh-text/pixel-rle-v1/original-summary.json +4945 -0
  269. package/docs/evidence/v02/fresh-text/report.json +284 -0
  270. package/docs/evidence/v02/fresh-text/svg-contours-v1/classify-followup-run-manifest.json +405 -0
  271. package/docs/evidence/v02/fresh-text/svg-contours-v1/classify-followup-summary.json +846 -0
  272. package/docs/evidence/v02/fresh-text/svg-contours-v1/evaluation.json +568 -0
  273. package/docs/evidence/v02/fresh-text/svg-contours-v1/original-run-manifest.json +404 -0
  274. package/docs/evidence/v02/fresh-text/svg-contours-v1/original-summary.json +2189 -0
  275. package/docs/evidence/v02/heldout-evaluation-20261020.md +37 -0
  276. package/docs/evidence/v02/heldout-input-derivation.md +18 -0
  277. package/docs/evidence/v02/integration-0c365cb.json +90 -0
  278. package/docs/evidence/v02/integration-25c19cd.json +52 -0
  279. package/docs/evidence/v02/integration-35e3064.json +41 -0
  280. package/docs/evidence/v02/integration-4331b1b.json +42 -0
  281. package/docs/evidence/v02/integration-4c9c09f.json +46 -0
  282. package/docs/evidence/v02/integration-8010aad.json +48 -0
  283. package/docs/evidence/v02/integration-c1aa640.json +41 -0
  284. package/docs/evidence/v02/integration-eea1790.json +46 -0
  285. package/docs/evidence/v02/integration-fa82e65.json +42 -0
  286. package/docs/evidence/v02/jpeg-transport-offline.json +268 -0
  287. package/docs/evidence/v02/jpeg-transport-offline.md +7 -0
  288. package/docs/evidence/v02/local-archive-cleanup.json +59 -0
  289. package/docs/evidence/v02/native-base64-after.json +30 -0
  290. package/docs/evidence/v02/native-base64-before.json +32 -0
  291. package/docs/evidence/v02/native-checked-region-windows-46283fe.json +248 -0
  292. package/docs/evidence/v02/native-checked-region-windows-987ac32.json +141 -0
  293. package/docs/evidence/v02/native-grabcut-windows-4c494a3-run2.json +148 -0
  294. package/docs/evidence/v02/native-grabcut-windows-4c494a3-run3.json +148 -0
  295. package/docs/evidence/v02/native-grabcut-windows-4c494a3.json +56 -0
  296. package/docs/evidence/v02/native-proposal-windows-0c365cb.json +148 -0
  297. package/docs/evidence/v02/native-proposal-windows-450439c.json +156 -0
  298. package/docs/evidence/v02/native-proposal-windows-4c9c09f-retry1.json +147 -0
  299. package/docs/evidence/v02/native-proposal-windows-4c9c09f.json +52 -0
  300. package/docs/evidence/v02/native-region-windows-efc9318.json +163 -0
  301. package/docs/evidence/v02/native-windows-eea1790-baseline.json +198 -0
  302. package/docs/evidence/v02/native-windows-eea1790.json +228 -0
  303. package/docs/evidence/v02/ordinary-luna-axis/run-manifest.json +99 -0
  304. package/docs/evidence/v02/ordinary-luna-axis/summary.json +811 -0
  305. package/docs/evidence/v02/owned-temp-cleanup-20261020-v1.json +28 -0
  306. package/docs/evidence/v02/presentation-paired-20261020.json +1438 -0
  307. package/docs/evidence/v02/proposal-resource-soak-261dc23.json +201 -0
  308. package/docs/evidence/v02/proposal-resource-soak-261dc23.md +15 -0
  309. package/docs/evidence/v02/proposal-resource-soak-450439c-receipt.md +13 -0
  310. package/docs/evidence/v02/reconstructed-c03-box.json +41 -0
  311. package/docs/evidence/v02/region-seeded-dev-v1/README.md +17 -0
  312. package/docs/evidence/v02/region-seeded-dev-v1/evaluation.json +260 -0
  313. package/docs/evidence/v02/region-seeded-dev-v2/README.md +15 -0
  314. package/docs/evidence/v02/region-seeded-dev-v2/evaluation.json +232 -0
  315. package/docs/evidence/v02/region-seeded-dev-v3-candidate-only/README.md +9 -0
  316. package/docs/evidence/v02/region-seeded-dev-v3-candidate-only/control-identity-failure.json +22 -0
  317. package/docs/evidence/v02/region-seeded-dev-v3-candidate-only/evaluation.json +160 -0
  318. package/docs/evidence/v02/region-seeded-dev-v3-control-r2/README.md +9 -0
  319. package/docs/evidence/v02/region-seeded-dev-v3-control-r2/attempt-accounting.json +55 -0
  320. package/docs/evidence/v02/region-seeded-dev-v3-control-r2/evaluation.json +136 -0
  321. package/docs/evidence/v02/region-seeded-development-control-r2-freeze-20261021.json +132 -0
  322. package/docs/evidence/v02/region-seeded-development-freeze-20261021-v1.json +167 -0
  323. package/docs/evidence/v02/region-seeded-development-freeze-20261021-v2.json +186 -0
  324. package/docs/evidence/v02/region-seeded-development-freeze-20261021-v3.json +205 -0
  325. package/docs/evidence/v02/region-seeded-heldout-cancelled-before-dispatch-20261021-v2.json +20 -0
  326. package/docs/evidence/v02/region-seeded-heldout-dispatch-authorization-20261021-v3.json +47 -0
  327. package/docs/evidence/v02/region-seeded-heldout-readiness-audit-20261021-v3.json +125 -0
  328. package/docs/evidence/v02/region-seeded-heldout-run-freeze-20261021-v2.json +234 -0
  329. package/docs/evidence/v02/region-seeded-heldout-run-freeze-20261021-v3.json +357 -0
  330. package/docs/evidence/v02/region-seeded-heldout-v3/README.md +19 -0
  331. package/docs/evidence/v02/region-seeded-heldout-v3/evaluation-summary.json +445 -0
  332. package/docs/evidence/v02/region-seeded-method-selection-20261021-v2.json +66 -0
  333. package/docs/evidence/v02/region-seeded-method-selection-20261021-v3.json +120 -0
  334. package/docs/evidence/v02/region-segmentation-resource-0ba4c87-receipt.json +156 -0
  335. package/docs/evidence/v02/resource-soak-linux-8010aad.json +125 -0
  336. package/docs/evidence/v02/screen-v2-terminal-evaluation.md +22 -0
  337. package/docs/evidence/v02/seed-outline/run-manifest.json +59 -0
  338. package/docs/evidence/v02/seed-outline/summary.json +487 -0
  339. package/docs/evidence/v02/seed-unbounded/run-manifest.json +80 -0
  340. package/docs/evidence/v02/seed-unbounded/summary.json +730 -0
  341. package/docs/evidence/v02/segmentation/README.md +21 -0
  342. package/docs/evidence/v02/segmentation/component-comparison-summary.json +240 -0
  343. package/docs/evidence/v02/segmentation/provenance/MOBILE-SAM-LICENSE.txt +201 -0
  344. package/docs/evidence/v02/segmentation/provenance/OPENCV-LICENSE.txt +202 -0
  345. package/docs/evidence/v02/segmentation/provenance/mobile-sam-download-receipt.json +29 -0
  346. package/docs/evidence/v02/segmentation/provenance/mobile-sam-graph-audit.json +214 -0
  347. package/docs/evidence/v02/segmentation/provenance/mobile-sam-model-metadata.json +166 -0
  348. package/docs/evidence/v02/split-choice-noul-dev6.json +72 -0
  349. package/docs/evidence/v02/split-choice-noul-dev6.md +11 -0
  350. package/docs/evidence/v02/supported-vision-screen-20261020.md +65 -0
  351. package/docs/evidence/v02/wesnoth-1.16.11-minimap-projection-source-audit.md +56 -0
  352. package/docs/evidence/v02/wesnoth-proof-root-review-20261020-v1.json +76 -0
  353. package/docs/evidence/vision-cost-reconciliation.json +37 -0
  354. package/docs/evidence/vision-model-summary.json +562 -0
  355. package/docs/evidence/vision-selection-v1-manifest.json +95 -0
  356. package/docs/evidence/vision-selection-v1-report.json +4598 -0
  357. package/docs/evidence/vision-selection-v2-manifest.json +95 -0
  358. package/docs/evidence/vision-selection-v2-report.json +1139 -0
  359. package/docs/evidence/windows-native.json +73 -0
  360. package/docs/evidence/windows-secrets.json +46 -0
  361. package/docs/operations.md +21 -0
  362. package/docs/plan.md +27 -0
  363. package/docs/provenance.json +32 -0
  364. package/docs/publishing.md +30 -0
  365. package/docs/research/text-transport-audit.md +66 -0
  366. package/docs/results.md +69 -0
  367. package/docs/v02-usage.md +162 -0
  368. package/docs/vision-results.md +78 -0
  369. package/package.json +114 -4
@@ -0,0 +1,76 @@
1
+ {
2
+ "schema": "independent-wesnoth-excluded-proof-review-v1",
3
+ "sourceMapSha256": "41d2b65d3098c77c68d560832938c9e38bf2a549496e338cb158835ebbdff417",
4
+ "imageSha256": {
5
+ "a": "560f6f6fa5b69e0ff30f5416457f537ede44c2d023cd9096785ad98865d19c86",
6
+ "b": "cc7763407c1084802c3ab5e78c538ce7da6c7c1186d396c4daae6304bfabd569",
7
+ "a2": "0a89337c48966476368131328402d056940da7fefc67071e6883b825a5b27917"
8
+ },
9
+ "roiRawSha256": {
10
+ "a": "49416ea53f982154205b2a0e6c04deea74c5a34db6d3eddfa6e706793e14927a",
11
+ "b": "440809bfeff0badb16815394f64ee40b62d1c3ee904c3670e97bf927d40546e1",
12
+ "a2": "49416ea53f982154205b2a0e6c04deea74c5a34db6d3eddfa6e706793e14927a"
13
+ },
14
+ "captureSize": {
15
+ "width": 1024,
16
+ "height": 768
17
+ },
18
+ "contentRect": {
19
+ "left": 856,
20
+ "top": 11,
21
+ "width": 160,
22
+ "height": 212
23
+ },
24
+ "bitmapRoi": {
25
+ "left": 856,
26
+ "top": 11,
27
+ "width": 159,
28
+ "height": 212
29
+ },
30
+ "sameStateRoiByteIdentical": true,
31
+ "markerCount": 51,
32
+ "changedPixels": 1297,
33
+ "float32RepeatedSampler": {
34
+ "projectedPixels": 1363,
35
+ "deltaInside": 1297,
36
+ "outside": [],
37
+ "projectedUnchanged": 66,
38
+ "allMarkerProjectionsIntersectDelta": true,
39
+ "sampledSourceYAtRow53": 215,
40
+ "cursorAtRow53": 215.9999237060547
41
+ },
42
+ "idealRationalSampler": {
43
+ "projectedPixels": 1363,
44
+ "deltaInside": 1294,
45
+ "outside": [
46
+ [923, 64],
47
+ [924, 64],
48
+ [925, 64]
49
+ ],
50
+ "projectedUnchanged": 69,
51
+ "allMarkerProjectionsIntersectDelta": true,
52
+ "sampledSourceYAtRow53": 216
53
+ },
54
+ "providerCalls": 0,
55
+ "freshCohortImagesRead": false,
56
+ "freshCohortTruthRead": false,
57
+ "scope": "Excluded proof only. Projection is an upper bound, not an exact foreground mask; painter overdraw leaves projected pixels unchanged. Full-frame A/A2 stability is not claimed.",
58
+ "operatorSha256": "b37bfea4abeeb2b25c4fb630129bd1da483b798f5df8bba2846ca4e15c171a1f",
59
+ "rawReviewSha256": "c0e359dd2811ee90d1a356b7ac8357fd50d3bf2182f68380f249c40230c4928d",
60
+ "sourceTransform": {
61
+ "map": "Wesnoth 1.16.11 official 4p_Siege_Castles.map",
62
+ "rawGrid": [38, 38],
63
+ "defaultBorderSize": 1,
64
+ "unscaledBitmap": [648, 864],
65
+ "markerRect": "L=18*x-6; T=24*y+(odd(x)?0:-12); width=18; height=24; half-open",
66
+ "sampling": "float32(source/destination); float32 accumulator initialized0; truncation before each float32 addition",
67
+ "sourceAudit": "wesnoth-1.16.11-minimap-projection-source-audit.md"
68
+ },
69
+ "limits": [
70
+ "This proof is excluded from the new blind cohort.",
71
+ "Same-state stability is established only for the minimap bitmap ROI.",
72
+ "Whole-source projection covers markers, including pixels hidden by later terrain painting. It is not an exact foreground mask.",
73
+ "Controlled Wesnoth rendering is one source family; this is not a diverse natural-game accuracy benchmark.",
74
+ "No model request or localization accuracy was measured by this proof."
75
+ ]
76
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "priorReportSha256": "25c463dc9b005c2702dd94e78b12cee861e5f27827c5093cda857771837b19c7",
3
+ "reconciled": [
4
+ {
5
+ "path": ".run/vision-selection-v1/qwen/photo/photo-dev-01/wire-response-1.json",
6
+ "sha256": "2fa3b79d85a81fc392c13a68b3174e28e40f7c1c8502f89c7e534b218a8cc686",
7
+ "costUsd": 0.00004498
8
+ },
9
+ {
10
+ "path": ".run/vision-selection-v1/qwen/photo/photo-dev-17/wire-response-1.json",
11
+ "sha256": "483a9270a3f91cddc71bd819ddd2b146dce3d5176b516fe651984d444033d94c",
12
+ "costUsd": 0.00004114
13
+ },
14
+ {
15
+ "path": ".run/vision-selection-v1/qwen/photo/photo-heldout-09/wire-response-1.json",
16
+ "sha256": "f4cf9a5021bafd083d0620b91ccf95a0f77a31317333610510b394af71c4dbb2",
17
+ "costUsd": 0.00003826
18
+ },
19
+ {
20
+ "path": ".run/vision-selection-v2/haiku/photo/photo-dev-16/wire-response-1.json",
21
+ "sha256": "a27afbda79dbfa8bcaab0a2cedb958ffe848292fb1792e89c3f32476352d0d85",
22
+ "costUsd": 0.0001922
23
+ },
24
+ {
25
+ "path": ".run/vision-selection-v2/haiku/text/support-heldout-016/wire-response-1.json",
26
+ "sha256": "a51ad18129c35d4d788a69a933b0fa25edb64d47979c6d5cf0a29f513f8606be",
27
+ "costUsd": 0.0001622
28
+ }
29
+ ],
30
+ "seed": {
31
+ "admittedProviderCalls": 288,
32
+ "knownCostUsd": 0.029322660000000056,
33
+ "unknownCostCalls": 3,
34
+ "inFlightCalls": 0
35
+ },
36
+ "note": "Billing metadata only; failed classifications remain failures. Two auth errors and one provider error still retain unknown-cost reservations."
37
+ }
@@ -0,0 +1,562 @@
1
+ {
2
+ "protocols": {
3
+ "vision-selection-v1": "v1 requires min4 ranks for every categorical question",
4
+ "vision-selection-v2": "v2 requires one classification/final rank, four beam ranks",
5
+ "decisions-selection-v1": "native typed Choice/Noul",
6
+ "decisions-completion-v1": "same native runtime, missing development photos/heldout texts only"
7
+ },
8
+ "summary": {
9
+ "nex": {
10
+ "photo": {
11
+ "count": 10,
12
+ "correct": 6,
13
+ "errors": 0,
14
+ "p50Ms": 1599.773122999999,
15
+ "p95Ms": 3901.195785,
16
+ "knownValidatedCostUsd": 0.00030315,
17
+ "cases": [
18
+ "photo-dev-01",
19
+ "photo-dev-02",
20
+ "photo-dev-03",
21
+ "photo-dev-04",
22
+ "photo-dev-05",
23
+ "photo-dev-06",
24
+ "photo-dev-07",
25
+ "photo-dev-08",
26
+ "photo-dev-09",
27
+ "photo-dev-10"
28
+ ],
29
+ "mistakes": ["photo-dev-05", "photo-dev-06", "photo-dev-07", "photo-dev-08"]
30
+ },
31
+ "text": {
32
+ "count": 0,
33
+ "correct": 0,
34
+ "errors": 0,
35
+ "p50Ms": null,
36
+ "p95Ms": null,
37
+ "knownValidatedCostUsd": 0,
38
+ "cases": [],
39
+ "mistakes": []
40
+ },
41
+ "heldout": {
42
+ "count": 0,
43
+ "correct": 0
44
+ }
45
+ },
46
+ "qwen": {
47
+ "photo": {
48
+ "count": 60,
49
+ "correct": 53,
50
+ "errors": 3,
51
+ "p50Ms": 3939.7940679999883,
52
+ "p95Ms": 5315.089853000012,
53
+ "knownValidatedCostUsd": 0.00230825,
54
+ "cases": [
55
+ "photo-dev-01",
56
+ "photo-dev-02",
57
+ "photo-dev-03",
58
+ "photo-dev-04",
59
+ "photo-dev-05",
60
+ "photo-dev-06",
61
+ "photo-dev-07",
62
+ "photo-dev-08",
63
+ "photo-dev-09",
64
+ "photo-dev-10",
65
+ "photo-dev-11",
66
+ "photo-dev-12",
67
+ "photo-dev-13",
68
+ "photo-dev-14",
69
+ "photo-dev-15",
70
+ "photo-dev-16",
71
+ "photo-dev-17",
72
+ "photo-dev-18",
73
+ "photo-dev-19",
74
+ "photo-dev-20",
75
+ "photo-heldout-01",
76
+ "photo-heldout-02",
77
+ "photo-heldout-03",
78
+ "photo-heldout-04",
79
+ "photo-heldout-05",
80
+ "photo-heldout-06",
81
+ "photo-heldout-07",
82
+ "photo-heldout-08",
83
+ "photo-heldout-09",
84
+ "photo-heldout-10",
85
+ "photo-heldout-11",
86
+ "photo-heldout-12",
87
+ "photo-heldout-13",
88
+ "photo-heldout-14",
89
+ "photo-heldout-15",
90
+ "photo-heldout-16",
91
+ "photo-heldout-17",
92
+ "photo-heldout-18",
93
+ "photo-heldout-19",
94
+ "photo-heldout-20",
95
+ "photo-heldout-21",
96
+ "photo-heldout-22",
97
+ "photo-heldout-23",
98
+ "photo-heldout-24",
99
+ "photo-heldout-25",
100
+ "photo-heldout-26",
101
+ "photo-heldout-27",
102
+ "photo-heldout-28",
103
+ "photo-heldout-29",
104
+ "photo-heldout-30",
105
+ "photo-heldout-31",
106
+ "photo-heldout-32",
107
+ "photo-heldout-33",
108
+ "photo-heldout-34",
109
+ "photo-heldout-35",
110
+ "photo-heldout-36",
111
+ "photo-heldout-37",
112
+ "photo-heldout-38",
113
+ "photo-heldout-39",
114
+ "photo-heldout-40"
115
+ ],
116
+ "mistakes": [
117
+ "photo-dev-01",
118
+ "photo-dev-05",
119
+ "photo-dev-06",
120
+ "photo-dev-17",
121
+ "photo-heldout-07",
122
+ "photo-heldout-09",
123
+ "photo-heldout-11"
124
+ ]
125
+ },
126
+ "text": {
127
+ "count": 30,
128
+ "correct": 26,
129
+ "errors": 0,
130
+ "p50Ms": 1101.8768629999831,
131
+ "p95Ms": 1246.0037309999461,
132
+ "knownValidatedCostUsd": 0.00099663,
133
+ "cases": [
134
+ "support-dev-001",
135
+ "support-dev-002",
136
+ "support-dev-003",
137
+ "support-dev-004",
138
+ "support-dev-005",
139
+ "support-dev-006",
140
+ "support-dev-007",
141
+ "support-dev-008",
142
+ "support-dev-009",
143
+ "support-dev-010",
144
+ "support-heldout-001",
145
+ "support-heldout-002",
146
+ "support-heldout-003",
147
+ "support-heldout-004",
148
+ "support-heldout-005",
149
+ "support-heldout-006",
150
+ "support-heldout-007",
151
+ "support-heldout-008",
152
+ "support-heldout-009",
153
+ "support-heldout-010",
154
+ "support-heldout-011",
155
+ "support-heldout-012",
156
+ "support-heldout-013",
157
+ "support-heldout-014",
158
+ "support-heldout-015",
159
+ "support-heldout-016",
160
+ "support-heldout-017",
161
+ "support-heldout-018",
162
+ "support-heldout-019",
163
+ "support-heldout-020"
164
+ ],
165
+ "mistakes": [
166
+ "support-dev-009",
167
+ "support-heldout-009",
168
+ "support-heldout-014",
169
+ "support-heldout-019"
170
+ ]
171
+ },
172
+ "heldout": {
173
+ "count": 40,
174
+ "correct": 37
175
+ }
176
+ },
177
+ "luna": {
178
+ "photo": {
179
+ "count": 60,
180
+ "correct": 54,
181
+ "errors": 1,
182
+ "p50Ms": 3202.183490000025,
183
+ "p95Ms": 4788.130577999982,
184
+ "knownValidatedCostUsd": 0.01018445,
185
+ "cases": [
186
+ "photo-dev-01",
187
+ "photo-dev-02",
188
+ "photo-dev-03",
189
+ "photo-dev-04",
190
+ "photo-dev-05",
191
+ "photo-dev-06",
192
+ "photo-dev-07",
193
+ "photo-dev-08",
194
+ "photo-dev-09",
195
+ "photo-dev-10",
196
+ "photo-dev-11",
197
+ "photo-dev-12",
198
+ "photo-dev-13",
199
+ "photo-dev-14",
200
+ "photo-dev-15",
201
+ "photo-dev-16",
202
+ "photo-dev-17",
203
+ "photo-dev-18",
204
+ "photo-dev-19",
205
+ "photo-dev-20",
206
+ "photo-heldout-01",
207
+ "photo-heldout-02",
208
+ "photo-heldout-03",
209
+ "photo-heldout-04",
210
+ "photo-heldout-05",
211
+ "photo-heldout-06",
212
+ "photo-heldout-07",
213
+ "photo-heldout-08",
214
+ "photo-heldout-09",
215
+ "photo-heldout-10",
216
+ "photo-heldout-11",
217
+ "photo-heldout-12",
218
+ "photo-heldout-13",
219
+ "photo-heldout-14",
220
+ "photo-heldout-15",
221
+ "photo-heldout-16",
222
+ "photo-heldout-17",
223
+ "photo-heldout-18",
224
+ "photo-heldout-19",
225
+ "photo-heldout-20",
226
+ "photo-heldout-21",
227
+ "photo-heldout-22",
228
+ "photo-heldout-23",
229
+ "photo-heldout-24",
230
+ "photo-heldout-25",
231
+ "photo-heldout-26",
232
+ "photo-heldout-27",
233
+ "photo-heldout-28",
234
+ "photo-heldout-29",
235
+ "photo-heldout-30",
236
+ "photo-heldout-31",
237
+ "photo-heldout-32",
238
+ "photo-heldout-33",
239
+ "photo-heldout-34",
240
+ "photo-heldout-35",
241
+ "photo-heldout-36",
242
+ "photo-heldout-37",
243
+ "photo-heldout-38",
244
+ "photo-heldout-39",
245
+ "photo-heldout-40"
246
+ ],
247
+ "mistakes": [
248
+ "photo-dev-01",
249
+ "photo-dev-05",
250
+ "photo-dev-15",
251
+ "photo-dev-17",
252
+ "photo-heldout-07",
253
+ "photo-heldout-27"
254
+ ]
255
+ },
256
+ "text": {
257
+ "count": 30,
258
+ "correct": 30,
259
+ "errors": 0,
260
+ "p50Ms": 962.3370350000332,
261
+ "p95Ms": 1260.0757910000393,
262
+ "knownValidatedCostUsd": 0.0029629,
263
+ "cases": [
264
+ "support-dev-001",
265
+ "support-dev-002",
266
+ "support-dev-003",
267
+ "support-dev-004",
268
+ "support-dev-005",
269
+ "support-dev-006",
270
+ "support-dev-007",
271
+ "support-dev-008",
272
+ "support-dev-009",
273
+ "support-dev-010",
274
+ "support-heldout-001",
275
+ "support-heldout-002",
276
+ "support-heldout-003",
277
+ "support-heldout-004",
278
+ "support-heldout-005",
279
+ "support-heldout-006",
280
+ "support-heldout-007",
281
+ "support-heldout-008",
282
+ "support-heldout-009",
283
+ "support-heldout-010",
284
+ "support-heldout-011",
285
+ "support-heldout-012",
286
+ "support-heldout-013",
287
+ "support-heldout-014",
288
+ "support-heldout-015",
289
+ "support-heldout-016",
290
+ "support-heldout-017",
291
+ "support-heldout-018",
292
+ "support-heldout-019",
293
+ "support-heldout-020"
294
+ ],
295
+ "mistakes": []
296
+ },
297
+ "heldout": {
298
+ "count": 40,
299
+ "correct": 38
300
+ }
301
+ },
302
+ "haiku": {
303
+ "photo": {
304
+ "count": 16,
305
+ "correct": 11,
306
+ "errors": 2,
307
+ "p50Ms": 3094.087862999999,
308
+ "p95Ms": 4186.938432999999,
309
+ "knownValidatedCostUsd": 0.0025682,
310
+ "cases": [
311
+ "photo-dev-01",
312
+ "photo-dev-02",
313
+ "photo-dev-03",
314
+ "photo-dev-04",
315
+ "photo-dev-05",
316
+ "photo-dev-06",
317
+ "photo-dev-07",
318
+ "photo-dev-08",
319
+ "photo-dev-09",
320
+ "photo-dev-10",
321
+ "photo-dev-11",
322
+ "photo-dev-12",
323
+ "photo-dev-13",
324
+ "photo-dev-14",
325
+ "photo-dev-15",
326
+ "photo-dev-16"
327
+ ],
328
+ "mistakes": ["photo-dev-01", "photo-dev-05", "photo-dev-07", "photo-dev-15", "photo-dev-16"]
329
+ },
330
+ "text": {
331
+ "count": 30,
332
+ "correct": 29,
333
+ "errors": 1,
334
+ "p50Ms": 757.0049549999967,
335
+ "p95Ms": 1003.6543539999984,
336
+ "knownValidatedCostUsd": 0.0046254,
337
+ "cases": [
338
+ "support-dev-001",
339
+ "support-dev-002",
340
+ "support-dev-003",
341
+ "support-dev-004",
342
+ "support-dev-005",
343
+ "support-dev-006",
344
+ "support-dev-007",
345
+ "support-dev-008",
346
+ "support-dev-009",
347
+ "support-dev-010",
348
+ "support-heldout-001",
349
+ "support-heldout-002",
350
+ "support-heldout-003",
351
+ "support-heldout-004",
352
+ "support-heldout-005",
353
+ "support-heldout-006",
354
+ "support-heldout-007",
355
+ "support-heldout-008",
356
+ "support-heldout-009",
357
+ "support-heldout-010",
358
+ "support-heldout-011",
359
+ "support-heldout-012",
360
+ "support-heldout-013",
361
+ "support-heldout-014",
362
+ "support-heldout-015",
363
+ "support-heldout-016",
364
+ "support-heldout-017",
365
+ "support-heldout-018",
366
+ "support-heldout-019",
367
+ "support-heldout-020"
368
+ ],
369
+ "mistakes": ["support-heldout-016"]
370
+ },
371
+ "heldout": {
372
+ "count": 0,
373
+ "correct": 0
374
+ }
375
+ },
376
+ "luna-decisions": {
377
+ "photo": {
378
+ "count": 60,
379
+ "correct": 55,
380
+ "errors": 0,
381
+ "p50Ms": 1434.9253419999986,
382
+ "p95Ms": 3436.2048670000004,
383
+ "knownValidatedCostUsd": 0.0059048,
384
+ "cases": [
385
+ "photo-heldout-01",
386
+ "photo-heldout-02",
387
+ "photo-heldout-03",
388
+ "photo-heldout-04",
389
+ "photo-heldout-05",
390
+ "photo-heldout-06",
391
+ "photo-heldout-07",
392
+ "photo-heldout-08",
393
+ "photo-heldout-09",
394
+ "photo-heldout-10",
395
+ "photo-heldout-11",
396
+ "photo-heldout-12",
397
+ "photo-heldout-13",
398
+ "photo-heldout-14",
399
+ "photo-heldout-15",
400
+ "photo-heldout-16",
401
+ "photo-heldout-17",
402
+ "photo-heldout-18",
403
+ "photo-heldout-19",
404
+ "photo-heldout-20",
405
+ "photo-heldout-21",
406
+ "photo-heldout-22",
407
+ "photo-heldout-23",
408
+ "photo-heldout-24",
409
+ "photo-heldout-25",
410
+ "photo-heldout-26",
411
+ "photo-heldout-27",
412
+ "photo-heldout-28",
413
+ "photo-heldout-29",
414
+ "photo-heldout-30",
415
+ "photo-heldout-31",
416
+ "photo-heldout-32",
417
+ "photo-heldout-33",
418
+ "photo-heldout-34",
419
+ "photo-heldout-35",
420
+ "photo-heldout-36",
421
+ "photo-heldout-37",
422
+ "photo-heldout-38",
423
+ "photo-heldout-39",
424
+ "photo-heldout-40",
425
+ "photo-dev-01",
426
+ "photo-dev-02",
427
+ "photo-dev-03",
428
+ "photo-dev-04",
429
+ "photo-dev-05",
430
+ "photo-dev-06",
431
+ "photo-dev-07",
432
+ "photo-dev-08",
433
+ "photo-dev-09",
434
+ "photo-dev-10",
435
+ "photo-dev-11",
436
+ "photo-dev-12",
437
+ "photo-dev-13",
438
+ "photo-dev-14",
439
+ "photo-dev-15",
440
+ "photo-dev-16",
441
+ "photo-dev-17",
442
+ "photo-dev-18",
443
+ "photo-dev-19",
444
+ "photo-dev-20"
445
+ ],
446
+ "mistakes": [
447
+ "photo-heldout-07",
448
+ "photo-dev-01",
449
+ "photo-dev-05",
450
+ "photo-dev-06",
451
+ "photo-dev-17"
452
+ ]
453
+ },
454
+ "text": {
455
+ "count": 30,
456
+ "correct": 30,
457
+ "errors": 0,
458
+ "p50Ms": 216.72845600000073,
459
+ "p95Ms": 407.2245180000027,
460
+ "knownValidatedCostUsd": 0.0020347,
461
+ "cases": [
462
+ "support-dev-001",
463
+ "support-dev-002",
464
+ "support-dev-003",
465
+ "support-dev-004",
466
+ "support-dev-005",
467
+ "support-dev-006",
468
+ "support-dev-007",
469
+ "support-dev-008",
470
+ "support-dev-009",
471
+ "support-dev-010",
472
+ "support-heldout-001",
473
+ "support-heldout-002",
474
+ "support-heldout-003",
475
+ "support-heldout-004",
476
+ "support-heldout-005",
477
+ "support-heldout-006",
478
+ "support-heldout-007",
479
+ "support-heldout-008",
480
+ "support-heldout-009",
481
+ "support-heldout-010",
482
+ "support-heldout-011",
483
+ "support-heldout-012",
484
+ "support-heldout-013",
485
+ "support-heldout-014",
486
+ "support-heldout-015",
487
+ "support-heldout-016",
488
+ "support-heldout-017",
489
+ "support-heldout-018",
490
+ "support-heldout-019",
491
+ "support-heldout-020"
492
+ ],
493
+ "mistakes": []
494
+ },
495
+ "heldout": {
496
+ "count": 40,
497
+ "correct": 39
498
+ }
499
+ }
500
+ },
501
+ "evidencePins": [
502
+ {
503
+ "path": "docs/evidence/vision-selection-v1-report.json",
504
+ "sha256": "9ca1fb956c2d937f14e55ca264b09c33d26707693fcf1095243c5e4fb5adc1b5",
505
+ "originalLocalRunSha256": "a340e426671b59dd5725ff4bd52f8535f559688ccabb4e270dfe22ddba0fc80f"
506
+ },
507
+ {
508
+ "path": "docs/evidence/vision-selection-v1-manifest.json",
509
+ "sha256": "1818066f005f116d61721ed31a82c3c816ecdfe019fc8d2e498904656c121d58",
510
+ "originalLocalRunSha256": "1818066f005f116d61721ed31a82c3c816ecdfe019fc8d2e498904656c121d58"
511
+ },
512
+ {
513
+ "path": "docs/evidence/vision-selection-v2-report.json",
514
+ "sha256": "cc5f454157872ebf96c9297960d994d813a3fb95dce74ea38c1232c7dd31634c",
515
+ "originalLocalRunSha256": "7281a7a98b09be42397daea563a3f81eabb0ef8e315a65ff413c3c2ee5524fce"
516
+ },
517
+ {
518
+ "path": "docs/evidence/vision-selection-v2-manifest.json",
519
+ "sha256": "8ac42170f6afbd14aa7c79b8709e7e24413eb9003231d920f99e24386a565ca9",
520
+ "originalLocalRunSha256": "8ac42170f6afbd14aa7c79b8709e7e24413eb9003231d920f99e24386a565ca9"
521
+ },
522
+ {
523
+ "path": "docs/evidence/decisions-selection-v1-report.json",
524
+ "sha256": "45b4b2a22e42cae9e879d95f557a9c0fb03f291862d51a044c6337ec61ad093e",
525
+ "originalLocalRunSha256": "25c463dc9b005c2702dd94e78b12cee861e5f27827c5093cda857771837b19c7"
526
+ },
527
+ {
528
+ "path": "docs/evidence/decisions-selection-v1-manifest.json",
529
+ "sha256": "4c9288d1142971bbbe3313bd25ca449bf6554051a2fe7d39fbe3d9f5cb8edec0",
530
+ "originalLocalRunSha256": "4c9288d1142971bbbe3313bd25ca449bf6554051a2fe7d39fbe3d9f5cb8edec0"
531
+ },
532
+ {
533
+ "path": "docs/evidence/decisions-completion-v1-report.json",
534
+ "sha256": "60475bf7148fa3392a844cb263f5cb4f1754d9b446a0b46e7498da7b9ae0f444",
535
+ "originalLocalRunSha256": "15c728c3614d34f21a30c0de5bb62253d097ed316b4d80c5a8d1d485d257f76b"
536
+ },
537
+ {
538
+ "path": "docs/evidence/decisions-completion-v1-manifest.json",
539
+ "sha256": "c2c8dbabf1799fe365cf959a6fae7eba120598264dcbc8d5c1b65b05b152337a",
540
+ "originalLocalRunSha256": "c2c8dbabf1799fe365cf959a6fae7eba120598264dcbc8d5c1b65b05b152337a"
541
+ }
542
+ ],
543
+ "costs": "Rejected responses with cost metadata are reconciled for budget only; their classifications remain failures. Non-numeric/missing costs retain reservations. No invoice verification.",
544
+ "publication": "Public JSON is formatted for repository style; both original local bytes and published file hashes are pinned. No recorded model outcomes are changed.",
545
+ "finalComparisonBudget": {
546
+ "admittedProviderCalls": 332,
547
+ "maxCalls": 1000,
548
+ "maxCostUsd": 0.5,
549
+ "knownCostUsd": 0.03456876000000009,
550
+ "unknownCostCalls": 4,
551
+ "inFlightCalls": 0,
552
+ "reservationPerUnknownUsd": 0.05,
553
+ "accountedExposureUsd": 0.2345687600000001,
554
+ "exceededByReportedCost": false
555
+ },
556
+ "localizationSmoke": {
557
+ "caseId": "photo-dev-02",
558
+ "status": "located",
559
+ "physicalCalls": 3,
560
+ "report": "luna-decisions-locator-smoke-report.json"
561
+ }
562
+ }