@hraness/design-kit 0.31.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 (345) hide show
  1. package/ARTICLE_COPY.md +208 -0
  2. package/HERO_FIELDS.md +55 -0
  3. package/ICONS.md +56 -0
  4. package/LANTERN_MATERIAL.md +60 -0
  5. package/LICENSE +21 -0
  6. package/MARKETING_COPY.md +49 -0
  7. package/MARKETING_PRESET.md +108 -0
  8. package/PALETTES.md +90 -0
  9. package/PAPER_THEME.md +128 -0
  10. package/README.md +745 -0
  11. package/STATUS_PAGES.md +67 -0
  12. package/STYLE.md +245 -0
  13. package/WRITING.md +72 -0
  14. package/dist/browser/index.js +2345 -0
  15. package/dist/chunk-44djxk16.js +6872 -0
  16. package/dist/chunk-5gtx3pza.js +9 -0
  17. package/dist/chunk-77391vmq.js +454 -0
  18. package/dist/chunk-7b1586eb.js +1209 -0
  19. package/dist/chunk-8834fh4n.js +6 -0
  20. package/dist/chunk-9t8xyqte.js +870 -0
  21. package/dist/chunk-cejpzyfh.js +446 -0
  22. package/dist/chunk-eh71jz57.js +429 -0
  23. package/dist/chunk-evb02bc1.js +516 -0
  24. package/dist/chunk-h4k7yv6x.js +368 -0
  25. package/dist/chunk-he8eznb1.js +760 -0
  26. package/dist/chunk-mr1vdcjq.js +404 -0
  27. package/dist/chunk-wzvdn8ey.js +116 -0
  28. package/dist/fonts/nebula-sans/social-fonts.generated.js +53 -0
  29. package/dist/icons.js +48 -0
  30. package/dist/index.js +237 -0
  31. package/dist/launch.js +41 -0
  32. package/dist/mockups/client.js +422 -0
  33. package/dist/mockups/index.js +1850 -0
  34. package/dist/portfolio.js +1549 -0
  35. package/dist/provider-marks.js +19 -0
  36. package/dist/react/charts.js +11 -0
  37. package/dist/react/hero-backdrop.js +8 -0
  38. package/dist/react/index.js +7252 -0
  39. package/dist/react/platform-install.js +10 -0
  40. package/dist/react/server.js +137 -0
  41. package/dist/stylex-manifest.json +1 -0
  42. package/dist/stylex.css +5392 -0
  43. package/dist/syntax-highlighting.js +15 -0
  44. package/dist/testing.js +250 -0
  45. package/package.json +377 -0
  46. package/portfolio-inventory.json +31 -0
  47. package/scripts/check-lantern-material-snapshot.d.mts +26 -0
  48. package/scripts/check-lantern-material-snapshot.mjs +126 -0
  49. package/scripts/check-marketing-snapshot.d.mts +12 -0
  50. package/scripts/check-marketing-snapshot.mjs +58 -0
  51. package/scripts/lantern-material-snapshot.ts +101 -0
  52. package/scripts/marketing-textures.ts +48 -0
  53. package/scripts/paper-theme-snapshot.ts +97 -0
  54. package/scripts/product-marketing-snapshot.ts +149 -0
  55. package/src/appearance-menu.css +266 -0
  56. package/src/appearance.ts +32 -0
  57. package/src/article-html.ts +269 -0
  58. package/src/article.ts +686 -0
  59. package/src/browser/appearance-menu.ts +604 -0
  60. package/src/browser/artifact-share.ts +164 -0
  61. package/src/browser/design-palette.ts +197 -0
  62. package/src/browser/foil.ts +124 -0
  63. package/src/browser/hero-light.ts +11 -0
  64. package/src/browser/index.ts +29 -0
  65. package/src/browser/status-field.ts +432 -0
  66. package/src/browser/status-page.ts +100 -0
  67. package/src/browser/sticky-offset.ts +82 -0
  68. package/src/browser/theme-color-sync.ts +213 -0
  69. package/src/charts.css +7 -0
  70. package/src/compiler-components.css +34 -0
  71. package/src/compiler-foundation.css +18 -0
  72. package/src/compiler-palettes.css +7 -0
  73. package/src/compiler-tokens.css +342 -0
  74. package/src/components.css +3 -0
  75. package/src/design-gallery.css +431 -0
  76. package/src/effects.css +14 -0
  77. package/src/fonts/geist-mono/GeistMono[wght].woff2 +0 -0
  78. package/src/fonts/geist-mono/OFL.txt +93 -0
  79. package/src/fonts/geist-mono/PROVENANCE.md +12 -0
  80. package/src/fonts/instrument-serif/OFL.txt +93 -0
  81. package/src/fonts/instrument-serif/UPSTREAM.md +14 -0
  82. package/src/fonts/instrument-serif/instrument-serif-latin-400.woff2 +0 -0
  83. package/src/fonts/nebula-sans/LICENSE.txt +96 -0
  84. package/src/fonts/nebula-sans/NebulaSans-Black.woff2 +0 -0
  85. package/src/fonts/nebula-sans/NebulaSans-BlackItalic.woff2 +0 -0
  86. package/src/fonts/nebula-sans/NebulaSans-Bold.otf +0 -0
  87. package/src/fonts/nebula-sans/NebulaSans-Bold.woff2 +0 -0
  88. package/src/fonts/nebula-sans/NebulaSans-BoldItalic.woff2 +0 -0
  89. package/src/fonts/nebula-sans/NebulaSans-Book.otf +0 -0
  90. package/src/fonts/nebula-sans/NebulaSans-Book.woff2 +0 -0
  91. package/src/fonts/nebula-sans/NebulaSans-BookItalic.woff2 +0 -0
  92. package/src/fonts/nebula-sans/NebulaSans-Light.woff2 +0 -0
  93. package/src/fonts/nebula-sans/NebulaSans-LightItalic.woff2 +0 -0
  94. package/src/fonts/nebula-sans/NebulaSans-Medium.woff2 +0 -0
  95. package/src/fonts/nebula-sans/NebulaSans-MediumItalic.woff2 +0 -0
  96. package/src/fonts/nebula-sans/NebulaSans-Semibold.woff2 +0 -0
  97. package/src/fonts/nebula-sans/NebulaSans-SemiboldItalic.woff2 +0 -0
  98. package/src/fonts/nebula-sans/PROVENANCE.md +14 -0
  99. package/src/fonts/nebula-sans/social-fonts.generated.ts +3873 -0
  100. package/src/fonts.css +106 -0
  101. package/src/icons/act60/act60.svg +5 -0
  102. package/src/icons/act60/application.svg +9 -0
  103. package/src/icons/act60/chapter-compare.svg +3 -0
  104. package/src/icons/act60/decree-residence.svg +6 -0
  105. package/src/icons/act60/estimate.svg +7 -0
  106. package/src/icons/act60/export-services.svg +4 -0
  107. package/src/icons/act60/investor.svg +13 -0
  108. package/src/icons/act60/presence.svg +7 -0
  109. package/src/icons/aicharts/aicharts.svg +6 -0
  110. package/src/icons/aicharts/cost-compare.svg +4 -0
  111. package/src/icons/aicharts/task-audio.svg +7 -0
  112. package/src/icons/aicharts/task-coding.svg +6 -0
  113. package/src/icons/aicharts/task-images.svg +3 -0
  114. package/src/icons/aicharts/task-reasoning.svg +9 -0
  115. package/src/icons/aicharts/task-research.svg +5 -0
  116. package/src/icons/aicharts/task-video.svg +4 -0
  117. package/src/icons/manifest.json +1371 -0
  118. package/src/icons/platonik/conversation.svg +3 -0
  119. package/src/icons/platonik/creature.svg +7 -0
  120. package/src/icons/platonik/economy.svg +4 -0
  121. package/src/icons/platonik/keep-light.svg +6 -0
  122. package/src/icons/platonik/platonik.svg +7 -0
  123. package/src/icons/platonik/spark-route.svg +15 -0
  124. package/src/icons/receipts/act60-retry.receipt.json +888 -0
  125. package/src/icons/receipts/act60.receipt.json +1366 -0
  126. package/src/icons/receipts/aicharts.receipt.json +1546 -0
  127. package/src/icons/receipts/platonik.receipt.json +1011 -0
  128. package/src/icons/receipts/roughday.receipt.json +770 -0
  129. package/src/icons/receipts/shared.receipt.json +1296 -0
  130. package/src/icons/receipts/slopcamera.receipt.json +1495 -0
  131. package/src/icons/receipts/soundfish-retry.receipt.json +460 -0
  132. package/src/icons/receipts/soundfish.receipt.json +1709 -0
  133. package/src/icons/receipts/sponge.receipt.json +1743 -0
  134. package/src/icons/receipts/stripe-history-retry.receipt.json +145 -0
  135. package/src/icons/receipts/stripe-history.receipt.json +1202 -0
  136. package/src/icons/receipts/wordcell.receipt.json +1924 -0
  137. package/src/icons/roughday/finance.svg +7 -0
  138. package/src/icons/roughday/roughday.svg +6 -0
  139. package/src/icons/roughday/technology.svg +4 -0
  140. package/src/icons/roughday/world.svg +4 -0
  141. package/src/icons/sets/act60.json +63 -0
  142. package/src/icons/sets/aicharts.json +63 -0
  143. package/src/icons/sets/platonik.json +39 -0
  144. package/src/icons/sets/roughday.json +25 -0
  145. package/src/icons/sets/shared.json +12 -0
  146. package/src/icons/sets/slopcamera.json +47 -0
  147. package/src/icons/sets/soundfish.json +43 -0
  148. package/src/icons/sets/sponge.json +51 -0
  149. package/src/icons/sets/stripe-history.json +39 -0
  150. package/src/icons/sets/wordcell.json +51 -0
  151. package/src/icons/shared/agent-skill.svg +4 -0
  152. package/src/icons/shared/cli.svg +5 -0
  153. package/src/icons/shared/privacy.svg +3 -0
  154. package/src/icons/shared/research.svg +7 -0
  155. package/src/icons/shared/sdk.svg +3 -0
  156. package/src/icons/slopcamera/diagram.svg +3 -0
  157. package/src/icons/slopcamera/direct-scene.svg +5 -0
  158. package/src/icons/slopcamera/edit-video.svg +17 -0
  159. package/src/icons/slopcamera/mcp.svg +3 -0
  160. package/src/icons/slopcamera/native-world.svg +3 -0
  161. package/src/icons/slopcamera/slopcamera.svg +11 -0
  162. package/src/icons/soundfish/agent-ui.svg +7 -0
  163. package/src/icons/soundfish/collaborate.svg +5 -0
  164. package/src/icons/soundfish/compose.svg +3 -0
  165. package/src/icons/soundfish/hear.svg +6 -0
  166. package/src/icons/soundfish/human-ui.svg +6 -0
  167. package/src/icons/soundfish/share.svg +3 -0
  168. package/src/icons/soundfish/soundfish.svg +6 -0
  169. package/src/icons/sponge/api.svg +3 -0
  170. package/src/icons/sponge/documents.svg +3 -0
  171. package/src/icons/sponge/library.svg +3 -0
  172. package/src/icons/sponge/one-question.svg +5 -0
  173. package/src/icons/sponge/people-direct.svg +5 -0
  174. package/src/icons/sponge/read.svg +3 -0
  175. package/src/icons/sponge/save.svg +4 -0
  176. package/src/icons/sponge/sponge.svg +7 -0
  177. package/src/icons/stripe-history/company-history.svg +3 -0
  178. package/src/icons/stripe-history/evidence.svg +4 -0
  179. package/src/icons/stripe-history/independence.svg +7 -0
  180. package/src/icons/stripe-history/publications.svg +11 -0
  181. package/src/icons/stripe-history/sources.svg +6 -0
  182. package/src/icons/stripe-history/stripe-history.svg +3 -0
  183. package/src/icons/wordcell/backlinks.svg +6 -0
  184. package/src/icons/wordcell/capture.svg +6 -0
  185. package/src/icons/wordcell/git-provenance.svg +4 -0
  186. package/src/icons/wordcell/kb.svg +4 -0
  187. package/src/icons/wordcell/markdown.svg +4 -0
  188. package/src/icons/wordcell/scopes.svg +3 -0
  189. package/src/icons/wordcell/search.svg +7 -0
  190. package/src/icons.generated.ts +734 -0
  191. package/src/icons.ts +51 -0
  192. package/src/index.ts +275 -0
  193. package/src/lantern-material.css +213 -0
  194. package/src/launch.ts +624 -0
  195. package/src/marketing-assets/UPSTREAM.md +18 -0
  196. package/src/marketing-assets/cells.svg +1 -0
  197. package/src/marketing-assets/grain.svg +1 -0
  198. package/src/marketing-forced-colors.css +12 -0
  199. package/src/mockups/client.tsx +415 -0
  200. package/src/mockups/core.tsx +318 -0
  201. package/src/mockups/frames.tsx +368 -0
  202. package/src/mockups/index.ts +14 -0
  203. package/src/mockups/surfaces.tsx +681 -0
  204. package/src/mockups.css +2607 -0
  205. package/src/palette-appearance.ts +45 -0
  206. package/src/palette-bridge.css +124 -0
  207. package/src/palette-color.ts +41 -0
  208. package/src/palette-system.css +721 -0
  209. package/src/palette-themes.ts +23 -0
  210. package/src/palette-tokens.stylex.ts +519 -0
  211. package/src/palettes.css +3 -0
  212. package/src/palettes.ts +161 -0
  213. package/src/paper-theme.css +244 -0
  214. package/src/plain-publication.css +1241 -0
  215. package/src/plain-site.css +397 -0
  216. package/src/platforms.ts +151 -0
  217. package/src/portfolio.generated.json +1595 -0
  218. package/src/portfolio.generated.ts +1596 -0
  219. package/src/portfolio.ts +226 -0
  220. package/src/product-marketing-foundation.css +433 -0
  221. package/src/product-marketing-preset.css +261 -0
  222. package/src/product-marketing.css +2186 -0
  223. package/src/provider-marks.generated.ts +112 -0
  224. package/src/provider-marks.ts +143 -0
  225. package/src/react/animated-rail-stage.stylex.ts +15 -0
  226. package/src/react/animated-rail-stage.tsx +51 -0
  227. package/src/react/app-shell.stylex.ts +104 -0
  228. package/src/react/app-shell.tsx +121 -0
  229. package/src/react/article.tsx +602 -0
  230. package/src/react/aurora-dots-background.tsx +34 -0
  231. package/src/react/charts.stylex.ts +563 -0
  232. package/src/react/charts.tsx +610 -0
  233. package/src/react/chat.stylex.ts +34 -0
  234. package/src/react/chat.tsx +155 -0
  235. package/src/react/design-gallery.tsx +943 -0
  236. package/src/react/design-palette.stylex.ts +124 -0
  237. package/src/react/design-palette.tsx +196 -0
  238. package/src/react/design-theme-context.tsx +41 -0
  239. package/src/react/effects.stylex.ts +325 -0
  240. package/src/react/fader.stylex.ts +71 -0
  241. package/src/react/fader.tsx +151 -0
  242. package/src/react/foil-card-math.ts +100 -0
  243. package/src/react/foil-card-surface.stylex.ts +326 -0
  244. package/src/react/foil-card-surface.tsx +742 -0
  245. package/src/react/foil-mark.tsx +35 -0
  246. package/src/react/foil.stylex.ts +163 -0
  247. package/src/react/haptics.ts +228 -0
  248. package/src/react/hero-backdrop.tsx +22 -0
  249. package/src/react/index.ts +38 -0
  250. package/src/react/keyboard-shortcuts.ts +228 -0
  251. package/src/react/lantern-material-gallery.tsx +166 -0
  252. package/src/react/lantern-material.stylex.ts +39 -0
  253. package/src/react/launch-beats.tsx +73 -0
  254. package/src/react/navigation-rail.stylex.ts +130 -0
  255. package/src/react/navigation-rail.tsx +228 -0
  256. package/src/react/particle-halo.tsx +115 -0
  257. package/src/react/phaser-dots.tsx +501 -0
  258. package/src/react/platform-icons.tsx +94 -0
  259. package/src/react/platform-install.stylex.ts +385 -0
  260. package/src/react/platform-install.tsx +389 -0
  261. package/src/react/playback-transport.stylex.ts +14 -0
  262. package/src/react/playback-transport.tsx +112 -0
  263. package/src/react/procedural-backdrop.tsx +192 -0
  264. package/src/react/procedural-recipe.ts +323 -0
  265. package/src/react/product-marketing.stylex.ts +4469 -0
  266. package/src/react/product-marketing.tsx +1611 -0
  267. package/src/react/production-data-preview-notice.stylex.ts +40 -0
  268. package/src/react/production-data-preview-notice.tsx +34 -0
  269. package/src/react/provider-mark.stylex.ts +132 -0
  270. package/src/react/provider-mark.tsx +120 -0
  271. package/src/react/relative-time.tsx +117 -0
  272. package/src/react/route-state.stylex.ts +39 -0
  273. package/src/react/route-state.tsx +350 -0
  274. package/src/react/server.ts +11 -0
  275. package/src/react/social-kit-panel.tsx +103 -0
  276. package/src/react/sticky-offset.tsx +33 -0
  277. package/src/react/surfaces.stylex.ts +179 -0
  278. package/src/react/surfaces.tsx +330 -0
  279. package/src/react/syntax-code.tsx +33 -0
  280. package/src/react/theme-color-sync.ts +1 -0
  281. package/src/react/theme-resolution.ts +11 -0
  282. package/src/react/theme.stylex.ts +276 -0
  283. package/src/react/theme.tsx +402 -0
  284. package/src/reading.css +72 -0
  285. package/src/relative-time.ts +185 -0
  286. package/src/reset.css +2 -0
  287. package/src/site-shell.css +16 -0
  288. package/src/status-page-html.ts +63 -0
  289. package/src/status-page.css +276 -0
  290. package/src/status-page.ts +323 -0
  291. package/src/styles.css +21 -0
  292. package/src/syntax-code-lexers.ts +303 -0
  293. package/src/syntax-highlighting.css +78 -0
  294. package/src/syntax-highlighting.ts +477 -0
  295. package/src/syntax-tokens.ts +33 -0
  296. package/src/testing.ts +307 -0
  297. package/src/tokens.css +3 -0
  298. package/src/typography.css +86 -0
  299. package/vendor/evilcharts/LICENSE +21 -0
  300. package/vendor/evilcharts/UPSTREAM.md +14 -0
  301. package/vendor/platform-marks/LICENSE +30 -0
  302. package/vendor/platform-marks/UPSTREAM.md +15 -0
  303. package/vendor/platform-marks/apple.svg +1 -0
  304. package/vendor/platform-marks/linux.svg +1 -0
  305. package/vendor/provider-marks/CRUSH-LICENSE.md +134 -0
  306. package/vendor/provider-marks/LICENSE +21 -0
  307. package/vendor/provider-marks/UPSTREAM.md +27 -0
  308. package/vendor/provider-marks/aider.svg +3 -0
  309. package/vendor/provider-marks/crush-heartbit.svg +8 -0
  310. package/vendor/provider-marks/lobehub/alibabacloud-color.svg +1 -0
  311. package/vendor/provider-marks/lobehub/alibabacloud.svg +1 -0
  312. package/vendor/provider-marks/lobehub/amp-color.svg +1 -0
  313. package/vendor/provider-marks/lobehub/amp.svg +1 -0
  314. package/vendor/provider-marks/lobehub/anthropic.svg +1 -0
  315. package/vendor/provider-marks/lobehub/claude-color.svg +1 -0
  316. package/vendor/provider-marks/lobehub/claude.svg +1 -0
  317. package/vendor/provider-marks/lobehub/claudecode-color.svg +1 -0
  318. package/vendor/provider-marks/lobehub/claudecode.svg +1 -0
  319. package/vendor/provider-marks/lobehub/codex-color.svg +1 -0
  320. package/vendor/provider-marks/lobehub/codex.svg +1 -0
  321. package/vendor/provider-marks/lobehub/cursor.svg +1 -0
  322. package/vendor/provider-marks/lobehub/deepseek-color.svg +1 -0
  323. package/vendor/provider-marks/lobehub/deepseek.svg +1 -0
  324. package/vendor/provider-marks/lobehub/devin-color.svg +1 -0
  325. package/vendor/provider-marks/lobehub/devin.svg +1 -0
  326. package/vendor/provider-marks/lobehub/gemini-color.svg +1 -0
  327. package/vendor/provider-marks/lobehub/gemini.svg +1 -0
  328. package/vendor/provider-marks/lobehub/geminicli-color.svg +1 -0
  329. package/vendor/provider-marks/lobehub/geminicli.svg +1 -0
  330. package/vendor/provider-marks/lobehub/goose.svg +1 -0
  331. package/vendor/provider-marks/lobehub/meta-color.svg +1 -0
  332. package/vendor/provider-marks/lobehub/meta.svg +1 -0
  333. package/vendor/provider-marks/lobehub/mistral-color.svg +1 -0
  334. package/vendor/provider-marks/lobehub/mistral.svg +1 -0
  335. package/vendor/provider-marks/lobehub/moonshot.svg +1 -0
  336. package/vendor/provider-marks/lobehub/nvidia-color.svg +1 -0
  337. package/vendor/provider-marks/lobehub/nvidia.svg +1 -0
  338. package/vendor/provider-marks/lobehub/openai.svg +1 -0
  339. package/vendor/provider-marks/lobehub/opencode.svg +1 -0
  340. package/vendor/provider-marks/lobehub/perplexity-color.svg +1 -0
  341. package/vendor/provider-marks/lobehub/perplexity.svg +1 -0
  342. package/vendor/provider-marks/lobehub/qwen-color.svg +1 -0
  343. package/vendor/provider-marks/lobehub/qwen.svg +1 -0
  344. package/vendor/provider-marks/lobehub/xai.svg +1 -0
  345. package/vendor/provider-marks/lobehub/zai.svg +1 -0
@@ -0,0 +1,1709 @@
1
+ {
2
+ "context": "card",
3
+ "ink": "#2474d4",
4
+ "members": [
5
+ {
6
+ "attempts": [
7
+ {
8
+ "critiqueError": "GENERATION_FAILED",
9
+ "metrics": {
10
+ "aspectRatio": 1.025089605734767,
11
+ "bytes": 24328,
12
+ "coverageRatio": 0.16608878974470373,
13
+ "pathCount": 5,
14
+ "strokePx": 34.61072261072261
15
+ },
16
+ "requestId": "sha256:d2c616fee04a9826c2297b749f3ea74edd51e17386d2fa0f37ad04252d4c5995",
17
+ "round": 1,
18
+ "status": "candidate",
19
+ "svgSha256": "3dd03529d296f9379ae36a850c2aba14a93c3fa867d5c8b10fe5458018a7274a",
20
+ "vectorize": {
21
+ "alphaCutoff": 8,
22
+ "bytes": 24328,
23
+ "candidatesEvaluated": 1,
24
+ "format": "png",
25
+ "height": 858,
26
+ "inputBytes": 10422,
27
+ "outputMode": "color",
28
+ "pathCount": 5,
29
+ "profile": "balanced",
30
+ "provenance": {
31
+ "arch": "arm64",
32
+ "platform": "darwin",
33
+ "sharp": "0.35.3",
34
+ "sharpVersions": {
35
+ "aom": "3.14.1",
36
+ "archive": "3.8.8",
37
+ "cairo": "1.18.4",
38
+ "cgif": "0.5.3",
39
+ "exif": "0.6.26",
40
+ "expat": "2.8.2",
41
+ "ffi": "3.6.0",
42
+ "fontconfig": "2.18.1",
43
+ "freetype": "2.14.3",
44
+ "fribidi": "1.0.16",
45
+ "glib": "2.89.1",
46
+ "harfbuzz": "14.2.1",
47
+ "heif": "1.23.1",
48
+ "highway": "1.4.0",
49
+ "imagequant": "2.4.1",
50
+ "lcms": "2.19.1",
51
+ "mozjpeg": "0826579",
52
+ "pango": "1.58.0",
53
+ "pixman": "0.46.4",
54
+ "png": "1.6.58",
55
+ "proxy-libintl": "0.5",
56
+ "rsvg": "2.62.90",
57
+ "sharp": "0.35.3",
58
+ "tiff": "d01a94b",
59
+ "uhdr": "1acdbed",
60
+ "vips": "8.18.3",
61
+ "webp": "1.6.0",
62
+ "xml2": "2.15.3",
63
+ "zlib-ng": "2.3.3"
64
+ },
65
+ "vips": "8.18.3",
66
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
67
+ "vtracerSource": "official-release",
68
+ "vtracerVersion": "0.6.4"
69
+ },
70
+ "quality": {
71
+ "alphaRmse": 0.03555021,
72
+ "colorRmse": 0.02519625,
73
+ "outsideAlphaRatio": 0,
74
+ "sampleHeight": 512,
75
+ "sampleWidth": 499,
76
+ "supportRecall": 0.98291403
77
+ },
78
+ "receiptVersion": 1,
79
+ "representation": "color-paths",
80
+ "sourceSha256": "bf47e7406e7cab99dfe1d8269586fee75aa22877527c45eafed621506f6b6461",
81
+ "svgSha256": "3dd03529d296f9379ae36a850c2aba14a93c3fa867d5c8b10fe5458018a7274a",
82
+ "width": 837
83
+ },
84
+ "warnings": []
85
+ },
86
+ {
87
+ "critiqueModel": "google/gemini-3-flash",
88
+ "metrics": {
89
+ "aspectRatio": 1.0059453032104637,
90
+ "bytes": 22987,
91
+ "coverageRatio": 0.20235113551074793,
92
+ "pathCount": 5,
93
+ "strokePx": 16.94562647754137
94
+ },
95
+ "pass": false,
96
+ "problems": [
97
+ "The app window frame features a clipped corner, causing it to resemble a document or SIM card icon instead of a software interface.",
98
+ "There is a perspective mismatch between the isometric robot head and the flat 2D window frame.",
99
+ "The line work is slightly wobbly and lacks the uniform geometric precision required for a brand mark."
100
+ ],
101
+ "requestId": "sha256:024b4ff8f609f1de1f0ab6e83239f9562b42147b92c807ce9e6b4ef3527e9067",
102
+ "round": 2,
103
+ "score": 70,
104
+ "status": "candidate",
105
+ "svgSha256": "f6c81c8323a67de3242af6a7de1670e0f3ff2104a8a641c891a2dd6e47ca357a",
106
+ "vectorize": {
107
+ "alphaCutoff": 8,
108
+ "bytes": 22987,
109
+ "candidatesEvaluated": 1,
110
+ "format": "png",
111
+ "height": 846,
112
+ "inputBytes": 10839,
113
+ "outputMode": "color",
114
+ "pathCount": 5,
115
+ "profile": "balanced",
116
+ "provenance": {
117
+ "arch": "arm64",
118
+ "platform": "darwin",
119
+ "sharp": "0.35.3",
120
+ "sharpVersions": {
121
+ "aom": "3.14.1",
122
+ "archive": "3.8.8",
123
+ "cairo": "1.18.4",
124
+ "cgif": "0.5.3",
125
+ "exif": "0.6.26",
126
+ "expat": "2.8.2",
127
+ "ffi": "3.6.0",
128
+ "fontconfig": "2.18.1",
129
+ "freetype": "2.14.3",
130
+ "fribidi": "1.0.16",
131
+ "glib": "2.89.1",
132
+ "harfbuzz": "14.2.1",
133
+ "heif": "1.23.1",
134
+ "highway": "1.4.0",
135
+ "imagequant": "2.4.1",
136
+ "lcms": "2.19.1",
137
+ "mozjpeg": "0826579",
138
+ "pango": "1.58.0",
139
+ "pixman": "0.46.4",
140
+ "png": "1.6.58",
141
+ "proxy-libintl": "0.5",
142
+ "rsvg": "2.62.90",
143
+ "sharp": "0.35.3",
144
+ "tiff": "d01a94b",
145
+ "uhdr": "1acdbed",
146
+ "vips": "8.18.3",
147
+ "webp": "1.6.0",
148
+ "xml2": "2.15.3",
149
+ "zlib-ng": "2.3.3"
150
+ },
151
+ "vips": "8.18.3",
152
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
153
+ "vtracerSource": "official-release",
154
+ "vtracerVersion": "0.6.4"
155
+ },
156
+ "quality": {
157
+ "alphaRmse": 0.06230344,
158
+ "colorRmse": 0.04383033,
159
+ "outsideAlphaRatio": 0,
160
+ "sampleHeight": 512,
161
+ "sampleWidth": 509,
162
+ "supportRecall": 0.97341098
163
+ },
164
+ "receiptVersion": 1,
165
+ "representation": "color-paths",
166
+ "sourceSha256": "73ee36c23da02baaf748023e7324764f3ef4d852317427c0cf288d2aa00cd4a9",
167
+ "svgSha256": "f6c81c8323a67de3242af6a7de1670e0f3ff2104a8a641c891a2dd6e47ca357a",
168
+ "width": 841
169
+ },
170
+ "warnings": []
171
+ }
172
+ ],
173
+ "candidates": [
174
+ {
175
+ "metrics": {
176
+ "aspectRatio": 1.025089605734767,
177
+ "bytes": 24328,
178
+ "coverageRatio": 0.16608878974470373,
179
+ "pathCount": 5,
180
+ "strokePx": 34.61072261072261
181
+ },
182
+ "round": 1,
183
+ "selected": true
184
+ },
185
+ {
186
+ "metrics": {
187
+ "aspectRatio": 1.0059453032104637,
188
+ "bytes": 22987,
189
+ "coverageRatio": 0.20235113551074793,
190
+ "pathCount": 5,
191
+ "strokePx": 16.94562647754137
192
+ },
193
+ "round": 2,
194
+ "pass": false,
195
+ "score": 70,
196
+ "selected": false
197
+ }
198
+ ],
199
+ "context": "card",
200
+ "metrics": {
201
+ "aspectRatio": 1.025089605734767,
202
+ "bytes": 24328,
203
+ "coverageRatio": 0.16608878974470373,
204
+ "pathCount": 5,
205
+ "strokePx": 34.61072261072261
206
+ },
207
+ "outputPath": "/tmp/iconsets/soundfish/agent-ui.svg",
208
+ "purpose": "illustration",
209
+ "regenerated": 0,
210
+ "slug": "agent-ui",
211
+ "subject": "a friendly robot head inside an app window",
212
+ "svgSha256": "3dd03529d296f9379ae36a850c2aba14a93c3fa867d5c8b10fe5458018a7274a"
213
+ },
214
+ {
215
+ "attempts": [
216
+ {
217
+ "critiqueModel": "google/gemini-3-flash",
218
+ "metrics": {
219
+ "aspectRatio": 1.0964797913950457,
220
+ "bytes": 23195,
221
+ "coverageRatio": 0.23792374819199222,
222
+ "pathCount": 2,
223
+ "strokePx": 24.35196195005945
224
+ },
225
+ "pass": false,
226
+ "problems": [
227
+ "The speech bubbles are too abstract and lack clear tails, making them difficult to identify as the requested subject.",
228
+ "Contains unnecessary curved lines inside the bubbles that clutter the simple structure.",
229
+ "The subject is too close to the edges of the frame, lacking a modest clear margin."
230
+ ],
231
+ "requestId": "sha256:ce9cc3bc061e82e04b72b250b7cefb89e7a1e66afe7e6534bfce3882161d2e98",
232
+ "round": 1,
233
+ "score": 60,
234
+ "status": "candidate",
235
+ "svgSha256": "6bd63632760f251576a1e0a73e4ed37be1b5d04f3ae3aade2c8176d2dffef973",
236
+ "vectorize": {
237
+ "alphaCutoff": 8,
238
+ "bytes": 23195,
239
+ "candidatesEvaluated": 1,
240
+ "format": "png",
241
+ "height": 767,
242
+ "inputBytes": 10378,
243
+ "outputMode": "color",
244
+ "pathCount": 2,
245
+ "profile": "balanced",
246
+ "provenance": {
247
+ "arch": "arm64",
248
+ "platform": "darwin",
249
+ "sharp": "0.35.3",
250
+ "sharpVersions": {
251
+ "aom": "3.14.1",
252
+ "archive": "3.8.8",
253
+ "cairo": "1.18.4",
254
+ "cgif": "0.5.3",
255
+ "exif": "0.6.26",
256
+ "expat": "2.8.2",
257
+ "ffi": "3.6.0",
258
+ "fontconfig": "2.18.1",
259
+ "freetype": "2.14.3",
260
+ "fribidi": "1.0.16",
261
+ "glib": "2.89.1",
262
+ "harfbuzz": "14.2.1",
263
+ "heif": "1.23.1",
264
+ "highway": "1.4.0",
265
+ "imagequant": "2.4.1",
266
+ "lcms": "2.19.1",
267
+ "mozjpeg": "0826579",
268
+ "pango": "1.58.0",
269
+ "pixman": "0.46.4",
270
+ "png": "1.6.58",
271
+ "proxy-libintl": "0.5",
272
+ "rsvg": "2.62.90",
273
+ "sharp": "0.35.3",
274
+ "tiff": "d01a94b",
275
+ "uhdr": "1acdbed",
276
+ "vips": "8.18.3",
277
+ "webp": "1.6.0",
278
+ "xml2": "2.15.3",
279
+ "zlib-ng": "2.3.3"
280
+ },
281
+ "vips": "8.18.3",
282
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
283
+ "vtracerSource": "official-release",
284
+ "vtracerVersion": "0.6.4"
285
+ },
286
+ "quality": {
287
+ "alphaRmse": 0.03934011,
288
+ "colorRmse": 0.02751134,
289
+ "outsideAlphaRatio": 0,
290
+ "sampleHeight": 467,
291
+ "sampleWidth": 512,
292
+ "supportRecall": 0.99617481
293
+ },
294
+ "receiptVersion": 1,
295
+ "representation": "color-paths",
296
+ "sourceSha256": "32040a12c767586bd8dbfaa8d3c557f0f4899fe92ac50266e2fb26ec1e68fd1e",
297
+ "svgSha256": "6bd63632760f251576a1e0a73e4ed37be1b5d04f3ae3aade2c8176d2dffef973",
298
+ "width": 841
299
+ },
300
+ "warnings": []
301
+ },
302
+ {
303
+ "critiqueModel": "google/gemini-3-flash",
304
+ "metrics": {
305
+ "aspectRatio": 1.5931818181818183,
306
+ "bytes": 20065,
307
+ "coverageRatio": 0.20967773310854623,
308
+ "pathCount": 3,
309
+ "strokePx": 27.754636233951498
310
+ },
311
+ "pass": false,
312
+ "problems": [
313
+ "The note is a flat 2D square, which breaks the isometric perspective of the speech bubbles.",
314
+ "The speech bubble outlines are broken with large gaps, making the structure feel incomplete.",
315
+ "The composition is fragmented and lacks the cohesive, solid feel required for a brand illustration."
316
+ ],
317
+ "requestId": "sha256:809d68dfeb077f6eaff20e9b897f44d327597770d946bb4c121a57073d8c8d75",
318
+ "round": 2,
319
+ "score": 60,
320
+ "status": "candidate",
321
+ "svgSha256": "6fb5ea16260cd5e603f0345544bc6a6e2f909ea1561a92ff910357611d247f5e",
322
+ "vectorize": {
323
+ "alphaCutoff": 8,
324
+ "bytes": 20065,
325
+ "candidatesEvaluated": 1,
326
+ "format": "png",
327
+ "height": 440,
328
+ "inputBytes": 5761,
329
+ "outputMode": "color",
330
+ "pathCount": 3,
331
+ "profile": "balanced",
332
+ "provenance": {
333
+ "arch": "arm64",
334
+ "platform": "darwin",
335
+ "sharp": "0.35.3",
336
+ "sharpVersions": {
337
+ "aom": "3.14.1",
338
+ "archive": "3.8.8",
339
+ "cairo": "1.18.4",
340
+ "cgif": "0.5.3",
341
+ "exif": "0.6.26",
342
+ "expat": "2.8.2",
343
+ "ffi": "3.6.0",
344
+ "fontconfig": "2.18.1",
345
+ "freetype": "2.14.3",
346
+ "fribidi": "1.0.16",
347
+ "glib": "2.89.1",
348
+ "harfbuzz": "14.2.1",
349
+ "heif": "1.23.1",
350
+ "highway": "1.4.0",
351
+ "imagequant": "2.4.1",
352
+ "lcms": "2.19.1",
353
+ "mozjpeg": "0826579",
354
+ "pango": "1.58.0",
355
+ "pixman": "0.46.4",
356
+ "png": "1.6.58",
357
+ "proxy-libintl": "0.5",
358
+ "rsvg": "2.62.90",
359
+ "sharp": "0.35.3",
360
+ "tiff": "d01a94b",
361
+ "uhdr": "1acdbed",
362
+ "vips": "8.18.3",
363
+ "webp": "1.6.0",
364
+ "xml2": "2.15.3",
365
+ "zlib-ng": "2.3.3"
366
+ },
367
+ "vips": "8.18.3",
368
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
369
+ "vtracerSource": "official-release",
370
+ "vtracerVersion": "0.6.4"
371
+ },
372
+ "quality": {
373
+ "alphaRmse": 0.05283147,
374
+ "colorRmse": 0.03717511,
375
+ "outsideAlphaRatio": 0,
376
+ "sampleHeight": 321,
377
+ "sampleWidth": 512,
378
+ "supportRecall": 0.98318398
379
+ },
380
+ "receiptVersion": 1,
381
+ "representation": "color-paths",
382
+ "sourceSha256": "9f9226d3f14d59dd9897cf07f1ad061bde0f7994b46999e7eec68b8d1080ca9a",
383
+ "svgSha256": "6fb5ea16260cd5e603f0345544bc6a6e2f909ea1561a92ff910357611d247f5e",
384
+ "width": 701
385
+ },
386
+ "warnings": []
387
+ }
388
+ ],
389
+ "candidates": [
390
+ {
391
+ "metrics": {
392
+ "aspectRatio": 1.0964797913950457,
393
+ "bytes": 23195,
394
+ "coverageRatio": 0.23792374819199222,
395
+ "pathCount": 2,
396
+ "strokePx": 24.35196195005945
397
+ },
398
+ "round": 1,
399
+ "pass": false,
400
+ "score": 60,
401
+ "selected": false
402
+ },
403
+ {
404
+ "metrics": {
405
+ "aspectRatio": 1.5931818181818183,
406
+ "bytes": 20065,
407
+ "coverageRatio": 0.20967773310854623,
408
+ "pathCount": 3,
409
+ "strokePx": 27.754636233951498
410
+ },
411
+ "round": 2,
412
+ "pass": false,
413
+ "score": 60,
414
+ "selected": true
415
+ }
416
+ ],
417
+ "context": "card",
418
+ "metrics": {
419
+ "aspectRatio": 1.5931818181818183,
420
+ "bytes": 20065,
421
+ "coverageRatio": 0.20967773310854623,
422
+ "pathCount": 3,
423
+ "strokePx": 27.754636233951498
424
+ },
425
+ "outputPath": "/tmp/iconsets/soundfish/collaborate.svg",
426
+ "purpose": "illustration",
427
+ "regenerated": 0,
428
+ "slug": "collaborate",
429
+ "subject": "two speech bubbles exchanging a note",
430
+ "svgSha256": "6fb5ea16260cd5e603f0345544bc6a6e2f909ea1561a92ff910357611d247f5e"
431
+ },
432
+ {
433
+ "attempts": [
434
+ {
435
+ "critiqueModel": "google/gemini-3-flash",
436
+ "metrics": {
437
+ "aspectRatio": 1.302504816955684,
438
+ "bytes": 22170,
439
+ "coverageRatio": 0.2527248577715452,
440
+ "pathCount": 2,
441
+ "strokePx": 22.72189349112426
442
+ },
443
+ "pass": false,
444
+ "problems": [
445
+ "The illustration is not isometric; the grid and pencil lack a consistent 3D perspective.",
446
+ "The line quality is wobbly and lacks the clean, uniform medium-weight structure required for a professional brand mark.",
447
+ "The subject is not clearly a piano-roll; the grid looks like a generic table or bar chart rather than a musical interface with horizontal note blocks.",
448
+ "The composition is not well-centered, with the bottom of the grid nearly touching the edge of the frame."
449
+ ],
450
+ "requestId": "sha256:4f6e7e4c726e908b5bcfce7442e023b79d9c99a2fffb0a4101a7d985d1e99d1c",
451
+ "round": 1,
452
+ "score": 40,
453
+ "status": "candidate",
454
+ "svgSha256": "27e3a3e1cada032c9bf5245c174a9cb5f418baff49093b4b1ef11950bb2b614b",
455
+ "vectorize": {
456
+ "alphaCutoff": 8,
457
+ "bytes": 22170,
458
+ "candidatesEvaluated": 1,
459
+ "format": "png",
460
+ "height": 676,
461
+ "inputBytes": 6089,
462
+ "outputMode": "color",
463
+ "pathCount": 2,
464
+ "profile": "balanced",
465
+ "provenance": {
466
+ "arch": "arm64",
467
+ "platform": "darwin",
468
+ "sharp": "0.35.3",
469
+ "sharpVersions": {
470
+ "aom": "3.14.1",
471
+ "archive": "3.8.8",
472
+ "cairo": "1.18.4",
473
+ "cgif": "0.5.3",
474
+ "exif": "0.6.26",
475
+ "expat": "2.8.2",
476
+ "ffi": "3.6.0",
477
+ "fontconfig": "2.18.1",
478
+ "freetype": "2.14.3",
479
+ "fribidi": "1.0.16",
480
+ "glib": "2.89.1",
481
+ "harfbuzz": "14.2.1",
482
+ "heif": "1.23.1",
483
+ "highway": "1.4.0",
484
+ "imagequant": "2.4.1",
485
+ "lcms": "2.19.1",
486
+ "mozjpeg": "0826579",
487
+ "pango": "1.58.0",
488
+ "pixman": "0.46.4",
489
+ "png": "1.6.58",
490
+ "proxy-libintl": "0.5",
491
+ "rsvg": "2.62.90",
492
+ "sharp": "0.35.3",
493
+ "tiff": "d01a94b",
494
+ "uhdr": "1acdbed",
495
+ "vips": "8.18.3",
496
+ "webp": "1.6.0",
497
+ "xml2": "2.15.3",
498
+ "zlib-ng": "2.3.3"
499
+ },
500
+ "vips": "8.18.3",
501
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
502
+ "vtracerSource": "official-release",
503
+ "vtracerVersion": "0.6.4"
504
+ },
505
+ "quality": {
506
+ "alphaRmse": 0.04143254,
507
+ "colorRmse": 0.02949458,
508
+ "outsideAlphaRatio": 0,
509
+ "sampleHeight": 512,
510
+ "sampleWidth": 393,
511
+ "supportRecall": 0.98885948
512
+ },
513
+ "receiptVersion": 1,
514
+ "representation": "color-paths",
515
+ "sourceSha256": "f5695dbe486a45d8490a14092b4bba84878f9df7a5ccebd72def9d4f3fd2a62e",
516
+ "svgSha256": "27e3a3e1cada032c9bf5245c174a9cb5f418baff49093b4b1ef11950bb2b614b",
517
+ "width": 519
518
+ },
519
+ "warnings": []
520
+ },
521
+ {
522
+ "critiqueModel": "google/gemini-3-flash",
523
+ "metrics": {
524
+ "aspectRatio": 1.1296625222024868,
525
+ "bytes": 36654,
526
+ "coverageRatio": 0.1311957505278327,
527
+ "pathCount": 1,
528
+ "strokePx": 30.59119496855346
529
+ },
530
+ "pass": false,
531
+ "problems": [
532
+ "Contains tiny repeated details in the piano-roll grid that will likely blur at 64px.",
533
+ "Exceeds the limit of three filled planes by using many small filled rectangles for the notes."
534
+ ],
535
+ "requestId": "sha256:ed84ce57dac2e7316325b36528608dfad1b9432697d3867778b5219505999e62",
536
+ "round": 2,
537
+ "score": 75,
538
+ "status": "candidate",
539
+ "svgSha256": "9a213933478788fda724f58ac985681d2c3da4f1919386b4b1feb3aa12a014f2",
540
+ "vectorize": {
541
+ "alphaCutoff": 8,
542
+ "bytes": 36654,
543
+ "candidatesEvaluated": 2,
544
+ "format": "png",
545
+ "height": 563,
546
+ "inputBytes": 6591,
547
+ "outputMode": "color",
548
+ "pathCount": 1,
549
+ "profile": "balanced",
550
+ "provenance": {
551
+ "arch": "arm64",
552
+ "platform": "darwin",
553
+ "sharp": "0.35.3",
554
+ "sharpVersions": {
555
+ "aom": "3.14.1",
556
+ "archive": "3.8.8",
557
+ "cairo": "1.18.4",
558
+ "cgif": "0.5.3",
559
+ "exif": "0.6.26",
560
+ "expat": "2.8.2",
561
+ "ffi": "3.6.0",
562
+ "fontconfig": "2.18.1",
563
+ "freetype": "2.14.3",
564
+ "fribidi": "1.0.16",
565
+ "glib": "2.89.1",
566
+ "harfbuzz": "14.2.1",
567
+ "heif": "1.23.1",
568
+ "highway": "1.4.0",
569
+ "imagequant": "2.4.1",
570
+ "lcms": "2.19.1",
571
+ "mozjpeg": "0826579",
572
+ "pango": "1.58.0",
573
+ "pixman": "0.46.4",
574
+ "png": "1.6.58",
575
+ "proxy-libintl": "0.5",
576
+ "rsvg": "2.62.90",
577
+ "sharp": "0.35.3",
578
+ "tiff": "d01a94b",
579
+ "uhdr": "1acdbed",
580
+ "vips": "8.18.3",
581
+ "webp": "1.6.0",
582
+ "xml2": "2.15.3",
583
+ "zlib-ng": "2.3.3"
584
+ },
585
+ "vips": "8.18.3",
586
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
587
+ "vtracerSource": "official-release",
588
+ "vtracerVersion": "0.6.4"
589
+ },
590
+ "quality": {
591
+ "alphaRmse": 0.05836809,
592
+ "colorRmse": 0.04158523,
593
+ "outsideAlphaRatio": 0,
594
+ "sampleHeight": 453,
595
+ "sampleWidth": 512,
596
+ "supportRecall": 0.94474706
597
+ },
598
+ "receiptVersion": 1,
599
+ "representation": "color-paths",
600
+ "sourceSha256": "51ce5d99815100519057a183c4dc2474966ef9df863be7340228803b8c08ca1a",
601
+ "svgSha256": "9a213933478788fda724f58ac985681d2c3da4f1919386b4b1feb3aa12a014f2",
602
+ "width": 636
603
+ },
604
+ "warnings": []
605
+ }
606
+ ],
607
+ "candidates": [
608
+ {
609
+ "metrics": {
610
+ "aspectRatio": 1.302504816955684,
611
+ "bytes": 22170,
612
+ "coverageRatio": 0.2527248577715452,
613
+ "pathCount": 2,
614
+ "strokePx": 22.72189349112426
615
+ },
616
+ "round": 1,
617
+ "pass": false,
618
+ "score": 40,
619
+ "selected": false
620
+ },
621
+ {
622
+ "metrics": {
623
+ "aspectRatio": 1.1296625222024868,
624
+ "bytes": 36654,
625
+ "coverageRatio": 0.1311957505278327,
626
+ "pathCount": 1,
627
+ "strokePx": 30.59119496855346
628
+ },
629
+ "round": 2,
630
+ "pass": false,
631
+ "score": 75,
632
+ "selected": true
633
+ }
634
+ ],
635
+ "context": "card",
636
+ "metrics": {
637
+ "aspectRatio": 1.1296625222024868,
638
+ "bytes": 36654,
639
+ "coverageRatio": 0.1311957505278327,
640
+ "pathCount": 1,
641
+ "strokePx": 30.59119496855346
642
+ },
643
+ "outputPath": "/tmp/iconsets/soundfish/compose.svg",
644
+ "purpose": "illustration",
645
+ "regenerated": 0,
646
+ "slug": "compose",
647
+ "subject": "a pencil over a small piano-roll grid",
648
+ "svgSha256": "9a213933478788fda724f58ac985681d2c3da4f1919386b4b1feb3aa12a014f2"
649
+ },
650
+ {
651
+ "attempts": [
652
+ {
653
+ "critiqueModel": "google/gemini-3-flash",
654
+ "metrics": {
655
+ "aspectRatio": 1.525179856115108,
656
+ "bytes": 48361,
657
+ "coverageRatio": 0.1740586398805484,
658
+ "pathCount": 36,
659
+ "strokePx": 28.015094339622642
660
+ },
661
+ "pass": false,
662
+ "problems": [
663
+ "Contains hairlines (thin white lines) defining the headphone structure",
664
+ "Contains tiny repeated detail in the waveform bars",
665
+ "Structure is not uniform medium-weight",
666
+ "Internal details will disappear at 64px"
667
+ ],
668
+ "requestId": "sha256:47322ef1160232b46ab617e43dc885e032bd268a0193436c3dab00395367e132",
669
+ "round": 1,
670
+ "score": 45,
671
+ "status": "candidate",
672
+ "svgSha256": "214bed415b449e636421c07312cc65e4d2b40af7be169039ff3b53e519bf2e6d",
673
+ "vectorize": {
674
+ "alphaCutoff": 8,
675
+ "bytes": 48361,
676
+ "candidatesEvaluated": 1,
677
+ "format": "png",
678
+ "height": 695,
679
+ "inputBytes": 12176,
680
+ "outputMode": "color",
681
+ "pathCount": 36,
682
+ "profile": "balanced",
683
+ "provenance": {
684
+ "arch": "arm64",
685
+ "platform": "darwin",
686
+ "sharp": "0.35.3",
687
+ "sharpVersions": {
688
+ "aom": "3.14.1",
689
+ "archive": "3.8.8",
690
+ "cairo": "1.18.4",
691
+ "cgif": "0.5.3",
692
+ "exif": "0.6.26",
693
+ "expat": "2.8.2",
694
+ "ffi": "3.6.0",
695
+ "fontconfig": "2.18.1",
696
+ "freetype": "2.14.3",
697
+ "fribidi": "1.0.16",
698
+ "glib": "2.89.1",
699
+ "harfbuzz": "14.2.1",
700
+ "heif": "1.23.1",
701
+ "highway": "1.4.0",
702
+ "imagequant": "2.4.1",
703
+ "lcms": "2.19.1",
704
+ "mozjpeg": "0826579",
705
+ "pango": "1.58.0",
706
+ "pixman": "0.46.4",
707
+ "png": "1.6.58",
708
+ "proxy-libintl": "0.5",
709
+ "rsvg": "2.62.90",
710
+ "sharp": "0.35.3",
711
+ "tiff": "d01a94b",
712
+ "uhdr": "1acdbed",
713
+ "vips": "8.18.3",
714
+ "webp": "1.6.0",
715
+ "xml2": "2.15.3",
716
+ "zlib-ng": "2.3.3"
717
+ },
718
+ "vips": "8.18.3",
719
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
720
+ "vtracerSource": "official-release",
721
+ "vtracerVersion": "0.6.4"
722
+ },
723
+ "quality": {
724
+ "alphaRmse": 0.0441478,
725
+ "colorRmse": 0.03095352,
726
+ "outsideAlphaRatio": 0,
727
+ "sampleHeight": 336,
728
+ "sampleWidth": 512,
729
+ "supportRecall": 0.99558866
730
+ },
731
+ "receiptVersion": 1,
732
+ "representation": "color-paths",
733
+ "sourceSha256": "ab856bce29d04e252323b7fbcfb021eee4f5bc2eb992f0b91f345d48279e5bca",
734
+ "svgSha256": "214bed415b449e636421c07312cc65e4d2b40af7be169039ff3b53e519bf2e6d",
735
+ "width": 1060
736
+ },
737
+ "warnings": []
738
+ },
739
+ {
740
+ "critiqueModel": "google/gemini-3-flash",
741
+ "metrics": {
742
+ "aspectRatio": 1.0113636363636365,
743
+ "bytes": 18018,
744
+ "coverageRatio": 0.23372318692543412,
745
+ "pathCount": 12,
746
+ "strokePx": 36.81797752808989
747
+ },
748
+ "pass": false,
749
+ "problems": [
750
+ "The illustration is a flat 2D icon rather than an isometric drawing.",
751
+ "The waveform consists of multiple small repeated bars, which violates the 'no tiny repeated detail' and 'at most three large filled planes' constraints.",
752
+ "The headphones do not appear to be 'resting over' the waveform in a spatial sense."
753
+ ],
754
+ "requestId": "sha256:3c28c9610a18b6acb125a401cf664718aa66fb7d5b8a722ce6a034c2045463c1",
755
+ "round": 2,
756
+ "score": 40,
757
+ "status": "candidate",
758
+ "svgSha256": "c3299e15c2c850353433012cdf3a132aed0306c4f008c9cbd1b746c0d8ec9064",
759
+ "vectorize": {
760
+ "alphaCutoff": 8,
761
+ "bytes": 18018,
762
+ "candidatesEvaluated": 1,
763
+ "format": "png",
764
+ "height": 890,
765
+ "inputBytes": 10870,
766
+ "outputMode": "color",
767
+ "pathCount": 12,
768
+ "profile": "balanced",
769
+ "provenance": {
770
+ "arch": "arm64",
771
+ "platform": "darwin",
772
+ "sharp": "0.35.3",
773
+ "sharpVersions": {
774
+ "aom": "3.14.1",
775
+ "archive": "3.8.8",
776
+ "cairo": "1.18.4",
777
+ "cgif": "0.5.3",
778
+ "exif": "0.6.26",
779
+ "expat": "2.8.2",
780
+ "ffi": "3.6.0",
781
+ "fontconfig": "2.18.1",
782
+ "freetype": "2.14.3",
783
+ "fribidi": "1.0.16",
784
+ "glib": "2.89.1",
785
+ "harfbuzz": "14.2.1",
786
+ "heif": "1.23.1",
787
+ "highway": "1.4.0",
788
+ "imagequant": "2.4.1",
789
+ "lcms": "2.19.1",
790
+ "mozjpeg": "0826579",
791
+ "pango": "1.58.0",
792
+ "pixman": "0.46.4",
793
+ "png": "1.6.58",
794
+ "proxy-libintl": "0.5",
795
+ "rsvg": "2.62.90",
796
+ "sharp": "0.35.3",
797
+ "tiff": "d01a94b",
798
+ "uhdr": "1acdbed",
799
+ "vips": "8.18.3",
800
+ "webp": "1.6.0",
801
+ "xml2": "2.15.3",
802
+ "zlib-ng": "2.3.3"
803
+ },
804
+ "vips": "8.18.3",
805
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
806
+ "vtracerSource": "official-release",
807
+ "vtracerVersion": "0.6.4"
808
+ },
809
+ "quality": {
810
+ "alphaRmse": 0.0297249,
811
+ "colorRmse": 0.02076071,
812
+ "outsideAlphaRatio": 0,
813
+ "sampleHeight": 512,
814
+ "sampleWidth": 506,
815
+ "supportRecall": 0.99881516
816
+ },
817
+ "receiptVersion": 1,
818
+ "representation": "color-paths",
819
+ "sourceSha256": "e7b70db01af1a4eaffc479e58592497cbac1908806bfb6f2280f8710e70405f4",
820
+ "svgSha256": "c3299e15c2c850353433012cdf3a132aed0306c4f008c9cbd1b746c0d8ec9064",
821
+ "width": 880
822
+ },
823
+ "warnings": []
824
+ }
825
+ ],
826
+ "candidates": [
827
+ {
828
+ "metrics": {
829
+ "aspectRatio": 1.525179856115108,
830
+ "bytes": 48361,
831
+ "coverageRatio": 0.1740586398805484,
832
+ "pathCount": 36,
833
+ "strokePx": 28.015094339622642
834
+ },
835
+ "round": 1,
836
+ "pass": false,
837
+ "score": 45,
838
+ "selected": true
839
+ },
840
+ {
841
+ "metrics": {
842
+ "aspectRatio": 1.0113636363636365,
843
+ "bytes": 18018,
844
+ "coverageRatio": 0.23372318692543412,
845
+ "pathCount": 12,
846
+ "strokePx": 36.81797752808989
847
+ },
848
+ "round": 2,
849
+ "pass": false,
850
+ "score": 40,
851
+ "selected": false
852
+ }
853
+ ],
854
+ "context": "card",
855
+ "metrics": {
856
+ "aspectRatio": 1.525179856115108,
857
+ "bytes": 48361,
858
+ "coverageRatio": 0.1740586398805484,
859
+ "pathCount": 36,
860
+ "strokePx": 28.015094339622642
861
+ },
862
+ "outputPath": "/tmp/iconsets/soundfish/hear.svg",
863
+ "purpose": "illustration",
864
+ "regenerated": 0,
865
+ "slug": "hear",
866
+ "subject": "headphones resting over a waveform",
867
+ "svgSha256": "214bed415b449e636421c07312cc65e4d2b40af7be169039ff3b53e519bf2e6d"
868
+ },
869
+ {
870
+ "attempts": [
871
+ {
872
+ "critiqueModel": "google/gemini-3-flash",
873
+ "metrics": {
874
+ "aspectRatio": 1.0202312138728324,
875
+ "bytes": 10493,
876
+ "coverageRatio": 0.289545432216018,
877
+ "pathCount": 1,
878
+ "strokePx": 46.41359773371105
879
+ },
880
+ "pass": false,
881
+ "problems": [
882
+ "The illustration is flat and 2D, missing the required isometric perspective.",
883
+ "The design is too generic and icon-like, lacking the character of a brand illustration."
884
+ ],
885
+ "requestId": "sha256:f583be4d69adcede0d0e04f04f0443a05b4783976d2848f1d1508502efed310c",
886
+ "round": 1,
887
+ "score": 40,
888
+ "status": "candidate",
889
+ "svgSha256": "0673027d73af2596df0e8d1b3fba3822c3dcb146c4653a7b52f0ba07367a3853",
890
+ "vectorize": {
891
+ "alphaCutoff": 8,
892
+ "bytes": 10493,
893
+ "candidatesEvaluated": 1,
894
+ "format": "png",
895
+ "height": 706,
896
+ "inputBytes": 5764,
897
+ "outputMode": "color",
898
+ "pathCount": 1,
899
+ "profile": "balanced",
900
+ "provenance": {
901
+ "arch": "arm64",
902
+ "platform": "darwin",
903
+ "sharp": "0.35.3",
904
+ "sharpVersions": {
905
+ "aom": "3.14.1",
906
+ "archive": "3.8.8",
907
+ "cairo": "1.18.4",
908
+ "cgif": "0.5.3",
909
+ "exif": "0.6.26",
910
+ "expat": "2.8.2",
911
+ "ffi": "3.6.0",
912
+ "fontconfig": "2.18.1",
913
+ "freetype": "2.14.3",
914
+ "fribidi": "1.0.16",
915
+ "glib": "2.89.1",
916
+ "harfbuzz": "14.2.1",
917
+ "heif": "1.23.1",
918
+ "highway": "1.4.0",
919
+ "imagequant": "2.4.1",
920
+ "lcms": "2.19.1",
921
+ "mozjpeg": "0826579",
922
+ "pango": "1.58.0",
923
+ "pixman": "0.46.4",
924
+ "png": "1.6.58",
925
+ "proxy-libintl": "0.5",
926
+ "rsvg": "2.62.90",
927
+ "sharp": "0.35.3",
928
+ "tiff": "d01a94b",
929
+ "uhdr": "1acdbed",
930
+ "vips": "8.18.3",
931
+ "webp": "1.6.0",
932
+ "xml2": "2.15.3",
933
+ "zlib-ng": "2.3.3"
934
+ },
935
+ "vips": "8.18.3",
936
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
937
+ "vtracerSource": "official-release",
938
+ "vtracerVersion": "0.6.4"
939
+ },
940
+ "quality": {
941
+ "alphaRmse": 0.035152,
942
+ "colorRmse": 0.02541647,
943
+ "outsideAlphaRatio": 0,
944
+ "sampleHeight": 512,
945
+ "sampleWidth": 502,
946
+ "supportRecall": 0.9916569
947
+ },
948
+ "receiptVersion": 1,
949
+ "representation": "color-paths",
950
+ "sourceSha256": "64247a4c702fb8ae92a092788e40341b9063a95076b5715871d5d82440b8836f",
951
+ "svgSha256": "0673027d73af2596df0e8d1b3fba3822c3dcb146c4653a7b52f0ba07367a3853",
952
+ "width": 692
953
+ },
954
+ "warnings": []
955
+ },
956
+ {
957
+ "critiqueModel": "google/gemini-3-flash",
958
+ "metrics": {
959
+ "aspectRatio": 1.2370517928286853,
960
+ "bytes": 22874,
961
+ "coverageRatio": 0.1728256057894028,
962
+ "pathCount": 2,
963
+ "strokePx": 14.840579710144928
964
+ },
965
+ "pass": false,
966
+ "problems": [
967
+ "Line weight is not uniform; strokes appear wobbly and hand-drawn rather than clean vector paths",
968
+ "Perspective distortion on the top edge of the window frame is inconsistent with the isometric projection",
969
+ "The extrusion of the person silhouette is irregular and lacks geometric precision"
970
+ ],
971
+ "requestId": "sha256:3198476e663c614292e7908bffea782e142a3ec7bb0875cb5115cea7b19fd898",
972
+ "round": 2,
973
+ "score": 65,
974
+ "status": "candidate",
975
+ "svgSha256": "e15aca6d2d68a14437d05233aab557c6b042f4885984c8e675e6821c5d3c392c",
976
+ "vectorize": {
977
+ "alphaCutoff": 8,
978
+ "bytes": 22874,
979
+ "candidatesEvaluated": 2,
980
+ "format": "png",
981
+ "height": 621,
982
+ "inputBytes": 6003,
983
+ "outputMode": "color",
984
+ "pathCount": 2,
985
+ "profile": "balanced",
986
+ "provenance": {
987
+ "arch": "arm64",
988
+ "platform": "darwin",
989
+ "sharp": "0.35.3",
990
+ "sharpVersions": {
991
+ "aom": "3.14.1",
992
+ "archive": "3.8.8",
993
+ "cairo": "1.18.4",
994
+ "cgif": "0.5.3",
995
+ "exif": "0.6.26",
996
+ "expat": "2.8.2",
997
+ "ffi": "3.6.0",
998
+ "fontconfig": "2.18.1",
999
+ "freetype": "2.14.3",
1000
+ "fribidi": "1.0.16",
1001
+ "glib": "2.89.1",
1002
+ "harfbuzz": "14.2.1",
1003
+ "heif": "1.23.1",
1004
+ "highway": "1.4.0",
1005
+ "imagequant": "2.4.1",
1006
+ "lcms": "2.19.1",
1007
+ "mozjpeg": "0826579",
1008
+ "pango": "1.58.0",
1009
+ "pixman": "0.46.4",
1010
+ "png": "1.6.58",
1011
+ "proxy-libintl": "0.5",
1012
+ "rsvg": "2.62.90",
1013
+ "sharp": "0.35.3",
1014
+ "tiff": "d01a94b",
1015
+ "uhdr": "1acdbed",
1016
+ "vips": "8.18.3",
1017
+ "webp": "1.6.0",
1018
+ "xml2": "2.15.3",
1019
+ "zlib-ng": "2.3.3"
1020
+ },
1021
+ "vips": "8.18.3",
1022
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
1023
+ "vtracerSource": "official-release",
1024
+ "vtracerVersion": "0.6.4"
1025
+ },
1026
+ "quality": {
1027
+ "alphaRmse": 0.07565098,
1028
+ "colorRmse": 0.05348017,
1029
+ "outsideAlphaRatio": 0,
1030
+ "sampleHeight": 512,
1031
+ "sampleWidth": 414,
1032
+ "supportRecall": 0.94897352
1033
+ },
1034
+ "receiptVersion": 1,
1035
+ "representation": "color-paths",
1036
+ "sourceSha256": "25a2cc96034210b315ae732892a561e166b25d7edc69315aa7fe2969c9e63669",
1037
+ "svgSha256": "e15aca6d2d68a14437d05233aab557c6b042f4885984c8e675e6821c5d3c392c",
1038
+ "width": 502
1039
+ },
1040
+ "warnings": []
1041
+ },
1042
+ {
1043
+ "critiqueModel": "google/gemini-3-flash",
1044
+ "metrics": {
1045
+ "aspectRatio": 1.1011730205278591,
1046
+ "bytes": 15303,
1047
+ "coverageRatio": 0.4094032980463976,
1048
+ "pathCount": 1,
1049
+ "strokePx": 43.63249001331558
1050
+ },
1051
+ "pass": false,
1052
+ "problems": [
1053
+ "The 'app window' is depicted as a wireframe cube rather than a recognizable software interface.",
1054
+ "Line work is wobbly and lacks the professional uniform structure required by the contract.",
1055
+ "The intersection of the filled plane and the silhouette is visually confusing and lacks clean execution."
1056
+ ],
1057
+ "requestId": "sha256:bef84ca43e339eb1964a9c8818f0b63ba7beb4115d4474763832e4a0d78b22af",
1058
+ "round": 1,
1059
+ "score": 60,
1060
+ "status": "candidate",
1061
+ "svgSha256": "6911cb3944029e6cf8c50b3783c470d482d807c818171dae57fdfc01b1727dd2",
1062
+ "vectorize": {
1063
+ "alphaCutoff": 8,
1064
+ "bytes": 15303,
1065
+ "candidatesEvaluated": 1,
1066
+ "format": "png",
1067
+ "height": 751,
1068
+ "inputBytes": 8169,
1069
+ "outputMode": "color",
1070
+ "pathCount": 1,
1071
+ "profile": "balanced",
1072
+ "provenance": {
1073
+ "arch": "arm64",
1074
+ "platform": "darwin",
1075
+ "sharp": "0.35.3",
1076
+ "sharpVersions": {
1077
+ "aom": "3.14.1",
1078
+ "archive": "3.8.8",
1079
+ "cairo": "1.18.4",
1080
+ "cgif": "0.5.3",
1081
+ "exif": "0.6.26",
1082
+ "expat": "2.8.2",
1083
+ "ffi": "3.6.0",
1084
+ "fontconfig": "2.18.1",
1085
+ "freetype": "2.14.3",
1086
+ "fribidi": "1.0.16",
1087
+ "glib": "2.89.1",
1088
+ "harfbuzz": "14.2.1",
1089
+ "heif": "1.23.1",
1090
+ "highway": "1.4.0",
1091
+ "imagequant": "2.4.1",
1092
+ "lcms": "2.19.1",
1093
+ "mozjpeg": "0826579",
1094
+ "pango": "1.58.0",
1095
+ "pixman": "0.46.4",
1096
+ "png": "1.6.58",
1097
+ "proxy-libintl": "0.5",
1098
+ "rsvg": "2.62.90",
1099
+ "sharp": "0.35.3",
1100
+ "tiff": "d01a94b",
1101
+ "uhdr": "1acdbed",
1102
+ "vips": "8.18.3",
1103
+ "webp": "1.6.0",
1104
+ "xml2": "2.15.3",
1105
+ "zlib-ng": "2.3.3"
1106
+ },
1107
+ "vips": "8.18.3",
1108
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
1109
+ "vtracerSource": "official-release",
1110
+ "vtracerVersion": "0.6.4"
1111
+ },
1112
+ "quality": {
1113
+ "alphaRmse": 0.05134014,
1114
+ "colorRmse": 0.03626135,
1115
+ "outsideAlphaRatio": 0,
1116
+ "sampleHeight": 512,
1117
+ "sampleWidth": 465,
1118
+ "supportRecall": 0.9888626
1119
+ },
1120
+ "receiptVersion": 1,
1121
+ "representation": "color-paths",
1122
+ "sourceSha256": "f20db23e1e299e17d8c0911553de920136cbf9c96d3814e995775cea6d6b170d",
1123
+ "svgSha256": "6911cb3944029e6cf8c50b3783c470d482d807c818171dae57fdfc01b1727dd2",
1124
+ "width": 682
1125
+ },
1126
+ "warnings": []
1127
+ },
1128
+ {
1129
+ "critiqueModel": "google/gemini-3-flash",
1130
+ "metrics": {
1131
+ "aspectRatio": 1.0348101265822784,
1132
+ "bytes": 16194,
1133
+ "coverageRatio": 0.21427534548832888,
1134
+ "pathCount": 4,
1135
+ "strokePx": 50.103975535168196
1136
+ },
1137
+ "pass": false,
1138
+ "problems": [
1139
+ "The illustration is flat (orthographic) rather than isometric as required by the contract.",
1140
+ "The person is rendered as an outline instead of a silhouette.",
1141
+ "The diagonal fill in the background does not represent a clear isometric plane."
1142
+ ],
1143
+ "requestId": "sha256:f508b84cdcf24f9eb838e3e77cb927210191391a434d5b07fc06c53e125b6e64",
1144
+ "round": 2,
1145
+ "score": 40,
1146
+ "status": "candidate",
1147
+ "svgSha256": "526a31c3365f3bb6188430557d6d184be21facc988578ef904e395093a859020",
1148
+ "vectorize": {
1149
+ "alphaCutoff": 8,
1150
+ "bytes": 16194,
1151
+ "candidatesEvaluated": 1,
1152
+ "format": "png",
1153
+ "height": 654,
1154
+ "inputBytes": 6161,
1155
+ "outputMode": "color",
1156
+ "pathCount": 4,
1157
+ "profile": "balanced",
1158
+ "provenance": {
1159
+ "arch": "arm64",
1160
+ "platform": "darwin",
1161
+ "sharp": "0.35.3",
1162
+ "sharpVersions": {
1163
+ "aom": "3.14.1",
1164
+ "archive": "3.8.8",
1165
+ "cairo": "1.18.4",
1166
+ "cgif": "0.5.3",
1167
+ "exif": "0.6.26",
1168
+ "expat": "2.8.2",
1169
+ "ffi": "3.6.0",
1170
+ "fontconfig": "2.18.1",
1171
+ "freetype": "2.14.3",
1172
+ "fribidi": "1.0.16",
1173
+ "glib": "2.89.1",
1174
+ "harfbuzz": "14.2.1",
1175
+ "heif": "1.23.1",
1176
+ "highway": "1.4.0",
1177
+ "imagequant": "2.4.1",
1178
+ "lcms": "2.19.1",
1179
+ "mozjpeg": "0826579",
1180
+ "pango": "1.58.0",
1181
+ "pixman": "0.46.4",
1182
+ "png": "1.6.58",
1183
+ "proxy-libintl": "0.5",
1184
+ "rsvg": "2.62.90",
1185
+ "sharp": "0.35.3",
1186
+ "tiff": "d01a94b",
1187
+ "uhdr": "1acdbed",
1188
+ "vips": "8.18.3",
1189
+ "webp": "1.6.0",
1190
+ "xml2": "2.15.3",
1191
+ "zlib-ng": "2.3.3"
1192
+ },
1193
+ "vips": "8.18.3",
1194
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
1195
+ "vtracerSource": "official-release",
1196
+ "vtracerVersion": "0.6.4"
1197
+ },
1198
+ "quality": {
1199
+ "alphaRmse": 0.04707377,
1200
+ "colorRmse": 0.03316148,
1201
+ "outsideAlphaRatio": 0,
1202
+ "sampleHeight": 512,
1203
+ "sampleWidth": 495,
1204
+ "supportRecall": 0.98418921
1205
+ },
1206
+ "receiptVersion": 1,
1207
+ "representation": "color-paths",
1208
+ "sourceSha256": "03537b737d437be87763058fd2efd87e1df8f587cc84d2c8940db69f9725155f",
1209
+ "svgSha256": "526a31c3365f3bb6188430557d6d184be21facc988578ef904e395093a859020",
1210
+ "width": 632
1211
+ },
1212
+ "warnings": []
1213
+ },
1214
+ {
1215
+ "critiqueModel": "google/gemini-3-flash",
1216
+ "metrics": {
1217
+ "aspectRatio": 1.3290870488322717,
1218
+ "bytes": 18643,
1219
+ "coverageRatio": 0.1963024765470788,
1220
+ "pathCount": 4,
1221
+ "strokePx": 29.44408945686901
1222
+ },
1223
+ "pass": false,
1224
+ "problems": [
1225
+ "The line structure is not uniform, featuring broken segments and inconsistent weights",
1226
+ "The app window is represented by messy overlapping frames rather than a single clear container",
1227
+ "The subject is not centered, with insufficient margins at the bottom and left",
1228
+ "The stenciled/broken line style deviates from the required solid medium-weight structure"
1229
+ ],
1230
+ "requestId": "sha256:3a5c50097a591f9fc674e69f176214b802c6b01b1bd0198a70c48af6fd7efa3c",
1231
+ "round": 1,
1232
+ "score": 60,
1233
+ "status": "candidate",
1234
+ "svgSha256": "78739ccd0e69a09d3dc5e067f79ddf6b763341b0bd72be8ae8aff132c4d5e933",
1235
+ "vectorize": {
1236
+ "alphaCutoff": 8,
1237
+ "bytes": 18643,
1238
+ "candidatesEvaluated": 1,
1239
+ "format": "png",
1240
+ "height": 626,
1241
+ "inputBytes": 5844,
1242
+ "outputMode": "color",
1243
+ "pathCount": 4,
1244
+ "profile": "balanced",
1245
+ "provenance": {
1246
+ "arch": "arm64",
1247
+ "platform": "darwin",
1248
+ "sharp": "0.35.3",
1249
+ "sharpVersions": {
1250
+ "aom": "3.14.1",
1251
+ "archive": "3.8.8",
1252
+ "cairo": "1.18.4",
1253
+ "cgif": "0.5.3",
1254
+ "exif": "0.6.26",
1255
+ "expat": "2.8.2",
1256
+ "ffi": "3.6.0",
1257
+ "fontconfig": "2.18.1",
1258
+ "freetype": "2.14.3",
1259
+ "fribidi": "1.0.16",
1260
+ "glib": "2.89.1",
1261
+ "harfbuzz": "14.2.1",
1262
+ "heif": "1.23.1",
1263
+ "highway": "1.4.0",
1264
+ "imagequant": "2.4.1",
1265
+ "lcms": "2.19.1",
1266
+ "mozjpeg": "0826579",
1267
+ "pango": "1.58.0",
1268
+ "pixman": "0.46.4",
1269
+ "png": "1.6.58",
1270
+ "proxy-libintl": "0.5",
1271
+ "rsvg": "2.62.90",
1272
+ "sharp": "0.35.3",
1273
+ "tiff": "d01a94b",
1274
+ "uhdr": "1acdbed",
1275
+ "vips": "8.18.3",
1276
+ "webp": "1.6.0",
1277
+ "xml2": "2.15.3",
1278
+ "zlib-ng": "2.3.3"
1279
+ },
1280
+ "vips": "8.18.3",
1281
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
1282
+ "vtracerSource": "official-release",
1283
+ "vtracerVersion": "0.6.4"
1284
+ },
1285
+ "quality": {
1286
+ "alphaRmse": 0.05641019,
1287
+ "colorRmse": 0.03944431,
1288
+ "outsideAlphaRatio": 0,
1289
+ "sampleHeight": 512,
1290
+ "sampleWidth": 385,
1291
+ "supportRecall": 0.99191732
1292
+ },
1293
+ "receiptVersion": 1,
1294
+ "representation": "color-paths",
1295
+ "sourceSha256": "9cb0a0ef0f5e29aeab13adf8b9b782e72905ff5117f3ee38cb712c5fbab39df1",
1296
+ "svgSha256": "78739ccd0e69a09d3dc5e067f79ddf6b763341b0bd72be8ae8aff132c4d5e933",
1297
+ "width": 471
1298
+ },
1299
+ "warnings": []
1300
+ },
1301
+ {
1302
+ "critiqueModel": "google/gemini-3-flash",
1303
+ "metrics": {
1304
+ "aspectRatio": 1.4485165794066317,
1305
+ "bytes": 12263,
1306
+ "coverageRatio": 0.18230198280031118,
1307
+ "pathCount": 3,
1308
+ "strokePx": 39.47951807228916
1309
+ },
1310
+ "pass": true,
1311
+ "problems": [],
1312
+ "requestId": "sha256:c73e7bfbc4fdcc0aa6086b236a12baab024f9ca9f867279e59db63014c0b9b7a",
1313
+ "round": 2,
1314
+ "score": 100,
1315
+ "status": "candidate",
1316
+ "svgSha256": "8b8ff7cbc59449d1c855279659d9077761f1678542ca842b44b69f5942d5ff22",
1317
+ "vectorize": {
1318
+ "alphaCutoff": 8,
1319
+ "bytes": 12263,
1320
+ "candidatesEvaluated": 1,
1321
+ "format": "png",
1322
+ "height": 830,
1323
+ "inputBytes": 7424,
1324
+ "outputMode": "color",
1325
+ "pathCount": 3,
1326
+ "profile": "balanced",
1327
+ "provenance": {
1328
+ "arch": "arm64",
1329
+ "platform": "darwin",
1330
+ "sharp": "0.35.3",
1331
+ "sharpVersions": {
1332
+ "aom": "3.14.1",
1333
+ "archive": "3.8.8",
1334
+ "cairo": "1.18.4",
1335
+ "cgif": "0.5.3",
1336
+ "exif": "0.6.26",
1337
+ "expat": "2.8.2",
1338
+ "ffi": "3.6.0",
1339
+ "fontconfig": "2.18.1",
1340
+ "freetype": "2.14.3",
1341
+ "fribidi": "1.0.16",
1342
+ "glib": "2.89.1",
1343
+ "harfbuzz": "14.2.1",
1344
+ "heif": "1.23.1",
1345
+ "highway": "1.4.0",
1346
+ "imagequant": "2.4.1",
1347
+ "lcms": "2.19.1",
1348
+ "mozjpeg": "0826579",
1349
+ "pango": "1.58.0",
1350
+ "pixman": "0.46.4",
1351
+ "png": "1.6.58",
1352
+ "proxy-libintl": "0.5",
1353
+ "rsvg": "2.62.90",
1354
+ "sharp": "0.35.3",
1355
+ "tiff": "d01a94b",
1356
+ "uhdr": "1acdbed",
1357
+ "vips": "8.18.3",
1358
+ "webp": "1.6.0",
1359
+ "xml2": "2.15.3",
1360
+ "zlib-ng": "2.3.3"
1361
+ },
1362
+ "vips": "8.18.3",
1363
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
1364
+ "vtracerSource": "official-release",
1365
+ "vtracerVersion": "0.6.4"
1366
+ },
1367
+ "quality": {
1368
+ "alphaRmse": 0.04294942,
1369
+ "colorRmse": 0.02997856,
1370
+ "outsideAlphaRatio": 0,
1371
+ "sampleHeight": 512,
1372
+ "sampleWidth": 353,
1373
+ "supportRecall": 0.99020511
1374
+ },
1375
+ "receiptVersion": 1,
1376
+ "representation": "color-paths",
1377
+ "sourceSha256": "148b037cca773a13133eaf6399ca45e961628bdb12828faa25e68a8036cb6233",
1378
+ "svgSha256": "8b8ff7cbc59449d1c855279659d9077761f1678542ca842b44b69f5942d5ff22",
1379
+ "width": 573
1380
+ },
1381
+ "warnings": []
1382
+ }
1383
+ ],
1384
+ "candidates": [
1385
+ {
1386
+ "metrics": {
1387
+ "aspectRatio": 1.0202312138728324,
1388
+ "bytes": 10493,
1389
+ "coverageRatio": 0.289545432216018,
1390
+ "pathCount": 1,
1391
+ "strokePx": 46.41359773371105
1392
+ },
1393
+ "round": 1,
1394
+ "pass": false,
1395
+ "score": 40,
1396
+ "selected": false
1397
+ },
1398
+ {
1399
+ "metrics": {
1400
+ "aspectRatio": 1.2370517928286853,
1401
+ "bytes": 22874,
1402
+ "coverageRatio": 0.1728256057894028,
1403
+ "pathCount": 2,
1404
+ "strokePx": 14.840579710144928
1405
+ },
1406
+ "round": 2,
1407
+ "pass": false,
1408
+ "score": 65,
1409
+ "selected": false
1410
+ },
1411
+ {
1412
+ "metrics": {
1413
+ "aspectRatio": 1.1011730205278591,
1414
+ "bytes": 15303,
1415
+ "coverageRatio": 0.4094032980463976,
1416
+ "pathCount": 1,
1417
+ "strokePx": 43.63249001331558
1418
+ },
1419
+ "round": 1,
1420
+ "pass": false,
1421
+ "score": 60,
1422
+ "selected": false
1423
+ },
1424
+ {
1425
+ "metrics": {
1426
+ "aspectRatio": 1.0348101265822784,
1427
+ "bytes": 16194,
1428
+ "coverageRatio": 0.21427534548832888,
1429
+ "pathCount": 4,
1430
+ "strokePx": 50.103975535168196
1431
+ },
1432
+ "round": 2,
1433
+ "pass": false,
1434
+ "score": 40,
1435
+ "selected": false
1436
+ },
1437
+ {
1438
+ "metrics": {
1439
+ "aspectRatio": 1.3290870488322717,
1440
+ "bytes": 18643,
1441
+ "coverageRatio": 0.1963024765470788,
1442
+ "pathCount": 4,
1443
+ "strokePx": 29.44408945686901
1444
+ },
1445
+ "round": 1,
1446
+ "pass": false,
1447
+ "score": 60,
1448
+ "selected": true
1449
+ },
1450
+ {
1451
+ "metrics": {
1452
+ "aspectRatio": 1.4485165794066317,
1453
+ "bytes": 12263,
1454
+ "coverageRatio": 0.18230198280031118,
1455
+ "pathCount": 3,
1456
+ "strokePx": 39.47951807228916
1457
+ },
1458
+ "round": 2,
1459
+ "pass": true,
1460
+ "score": 100,
1461
+ "selected": false
1462
+ }
1463
+ ],
1464
+ "context": "card",
1465
+ "metrics": {
1466
+ "aspectRatio": 1.3290870488322717,
1467
+ "bytes": 18643,
1468
+ "coverageRatio": 0.1963024765470788,
1469
+ "pathCount": 4,
1470
+ "strokePx": 29.44408945686901
1471
+ },
1472
+ "outputPath": "/tmp/iconsets/soundfish/human-ui.svg",
1473
+ "purpose": "illustration",
1474
+ "regenerated": 2,
1475
+ "slug": "human-ui",
1476
+ "subject": "a person silhouette inside an app window",
1477
+ "svgSha256": "78739ccd0e69a09d3dc5e067f79ddf6b763341b0bd72be8ae8aff132c4d5e933"
1478
+ },
1479
+ {
1480
+ "attempts": [
1481
+ {
1482
+ "critiqueModel": "google/gemini-3-flash",
1483
+ "metrics": {
1484
+ "aspectRatio": 1.2756024096385543,
1485
+ "bytes": 11006,
1486
+ "coverageRatio": 0.1743769647657928,
1487
+ "pathCount": 1,
1488
+ "strokePx": 38.68713105076741
1489
+ },
1490
+ "pass": false,
1491
+ "problems": [
1492
+ "The disc side has an inconsistent partial fill and a stray vertical line that breaks the uniform structure.",
1493
+ "The illustration uses more than three filled planes (arrow head side, arrow stem side, and two segments on the disc side).",
1494
+ "The intersection where the arrow meets the disc has overlapping lines that are not clean."
1495
+ ],
1496
+ "requestId": "sha256:c2ff8e28a021d7a8fee701cadaae49bb87b2fe53369943fb05b583e8929f77bb",
1497
+ "round": 1,
1498
+ "score": 70,
1499
+ "status": "candidate",
1500
+ "svgSha256": "0027d0197e83a4f8d4646c135af91c2eaaa9d776686057b53b3c794c254d62fe",
1501
+ "vectorize": {
1502
+ "alphaCutoff": 8,
1503
+ "bytes": 11006,
1504
+ "candidatesEvaluated": 1,
1505
+ "format": "png",
1506
+ "height": 847,
1507
+ "inputBytes": 8306,
1508
+ "outputMode": "color",
1509
+ "pathCount": 1,
1510
+ "profile": "balanced",
1511
+ "provenance": {
1512
+ "arch": "arm64",
1513
+ "platform": "darwin",
1514
+ "sharp": "0.35.3",
1515
+ "sharpVersions": {
1516
+ "aom": "3.14.1",
1517
+ "archive": "3.8.8",
1518
+ "cairo": "1.18.4",
1519
+ "cgif": "0.5.3",
1520
+ "exif": "0.6.26",
1521
+ "expat": "2.8.2",
1522
+ "ffi": "3.6.0",
1523
+ "fontconfig": "2.18.1",
1524
+ "freetype": "2.14.3",
1525
+ "fribidi": "1.0.16",
1526
+ "glib": "2.89.1",
1527
+ "harfbuzz": "14.2.1",
1528
+ "heif": "1.23.1",
1529
+ "highway": "1.4.0",
1530
+ "imagequant": "2.4.1",
1531
+ "lcms": "2.19.1",
1532
+ "mozjpeg": "0826579",
1533
+ "pango": "1.58.0",
1534
+ "pixman": "0.46.4",
1535
+ "png": "1.6.58",
1536
+ "proxy-libintl": "0.5",
1537
+ "rsvg": "2.62.90",
1538
+ "sharp": "0.35.3",
1539
+ "tiff": "d01a94b",
1540
+ "uhdr": "1acdbed",
1541
+ "vips": "8.18.3",
1542
+ "webp": "1.6.0",
1543
+ "xml2": "2.15.3",
1544
+ "zlib-ng": "2.3.3"
1545
+ },
1546
+ "vips": "8.18.3",
1547
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
1548
+ "vtracerSource": "official-release",
1549
+ "vtracerVersion": "0.6.4"
1550
+ },
1551
+ "quality": {
1552
+ "alphaRmse": 0.04087418,
1553
+ "colorRmse": 0.02892004,
1554
+ "outsideAlphaRatio": 0,
1555
+ "sampleHeight": 512,
1556
+ "sampleWidth": 401,
1557
+ "supportRecall": 0.98042542
1558
+ },
1559
+ "receiptVersion": 1,
1560
+ "representation": "color-paths",
1561
+ "sourceSha256": "c713b9d3a04db553d6527d110a784491744b748521051202b05a3865325ec392",
1562
+ "svgSha256": "0027d0197e83a4f8d4646c135af91c2eaaa9d776686057b53b3c794c254d62fe",
1563
+ "width": 664
1564
+ },
1565
+ "warnings": []
1566
+ },
1567
+ {
1568
+ "critiqueModel": "google/gemini-3-flash",
1569
+ "metrics": {
1570
+ "aspectRatio": 1.5422222222222222,
1571
+ "bytes": 10872,
1572
+ "coverageRatio": 0.15994876721101506,
1573
+ "pathCount": 1,
1574
+ "strokePx": 35.41210374639769
1575
+ },
1576
+ "pass": false,
1577
+ "problems": [
1578
+ "The line work is inconsistent in weight and appears wobbly rather than having a clean, geometric vector finish.",
1579
+ "The intersection where the arrow meets the disc is poorly executed, with the disc's top edge line visible through the arrow shaft.",
1580
+ "The vertical margins are too tight, causing the subject to feel cramped within the frame."
1581
+ ],
1582
+ "requestId": "sha256:bb4a3cb422e61877ae38780a4b810b3dc24a44b9cb435b0027b945e3a83c8626",
1583
+ "round": 2,
1584
+ "score": 80,
1585
+ "status": "candidate",
1586
+ "svgSha256": "eda6d6c0c5a7bbe9cae7794e95cf3a0d103f40c1f4e58389dd412e32f332dc8f",
1587
+ "vectorize": {
1588
+ "alphaCutoff": 8,
1589
+ "bytes": 10872,
1590
+ "candidatesEvaluated": 1,
1591
+ "format": "png",
1592
+ "height": 694,
1593
+ "inputBytes": 5351,
1594
+ "outputMode": "color",
1595
+ "pathCount": 1,
1596
+ "profile": "balanced",
1597
+ "provenance": {
1598
+ "arch": "arm64",
1599
+ "platform": "darwin",
1600
+ "sharp": "0.35.3",
1601
+ "sharpVersions": {
1602
+ "aom": "3.14.1",
1603
+ "archive": "3.8.8",
1604
+ "cairo": "1.18.4",
1605
+ "cgif": "0.5.3",
1606
+ "exif": "0.6.26",
1607
+ "expat": "2.8.2",
1608
+ "ffi": "3.6.0",
1609
+ "fontconfig": "2.18.1",
1610
+ "freetype": "2.14.3",
1611
+ "fribidi": "1.0.16",
1612
+ "glib": "2.89.1",
1613
+ "harfbuzz": "14.2.1",
1614
+ "heif": "1.23.1",
1615
+ "highway": "1.4.0",
1616
+ "imagequant": "2.4.1",
1617
+ "lcms": "2.19.1",
1618
+ "mozjpeg": "0826579",
1619
+ "pango": "1.58.0",
1620
+ "pixman": "0.46.4",
1621
+ "png": "1.6.58",
1622
+ "proxy-libintl": "0.5",
1623
+ "rsvg": "2.62.90",
1624
+ "sharp": "0.35.3",
1625
+ "tiff": "d01a94b",
1626
+ "uhdr": "1acdbed",
1627
+ "vips": "8.18.3",
1628
+ "webp": "1.6.0",
1629
+ "xml2": "2.15.3",
1630
+ "zlib-ng": "2.3.3"
1631
+ },
1632
+ "vips": "8.18.3",
1633
+ "vtracerSha256": "77e495bbe212448240387fba3b6d8bc62ba20ecfb6f3c22967e51600f1cc6e66",
1634
+ "vtracerSource": "official-release",
1635
+ "vtracerVersion": "0.6.4"
1636
+ },
1637
+ "quality": {
1638
+ "alphaRmse": 0.05269634,
1639
+ "colorRmse": 0.03707519,
1640
+ "outsideAlphaRatio": 0,
1641
+ "sampleHeight": 512,
1642
+ "sampleWidth": 332,
1643
+ "supportRecall": 0.97513909
1644
+ },
1645
+ "receiptVersion": 1,
1646
+ "representation": "color-paths",
1647
+ "sourceSha256": "bf803e6d53d919f79933826d5d6c954066824d19ce1b7b89b7c7a99896f7a87b",
1648
+ "svgSha256": "eda6d6c0c5a7bbe9cae7794e95cf3a0d103f40c1f4e58389dd412e32f332dc8f",
1649
+ "width": 450
1650
+ },
1651
+ "warnings": []
1652
+ }
1653
+ ],
1654
+ "candidates": [
1655
+ {
1656
+ "metrics": {
1657
+ "aspectRatio": 1.2756024096385543,
1658
+ "bytes": 11006,
1659
+ "coverageRatio": 0.1743769647657928,
1660
+ "pathCount": 1,
1661
+ "strokePx": 38.68713105076741
1662
+ },
1663
+ "round": 1,
1664
+ "pass": false,
1665
+ "score": 70,
1666
+ "selected": false
1667
+ },
1668
+ {
1669
+ "metrics": {
1670
+ "aspectRatio": 1.5422222222222222,
1671
+ "bytes": 10872,
1672
+ "coverageRatio": 0.15994876721101506,
1673
+ "pathCount": 1,
1674
+ "strokePx": 35.41210374639769
1675
+ },
1676
+ "round": 2,
1677
+ "pass": false,
1678
+ "score": 80,
1679
+ "selected": true
1680
+ }
1681
+ ],
1682
+ "context": "card",
1683
+ "metrics": {
1684
+ "aspectRatio": 1.5422222222222222,
1685
+ "bytes": 10872,
1686
+ "coverageRatio": 0.15994876721101506,
1687
+ "pathCount": 1,
1688
+ "strokePx": 35.41210374639769
1689
+ },
1690
+ "outputPath": "/tmp/iconsets/soundfish/share.svg",
1691
+ "purpose": "illustration",
1692
+ "regenerated": 0,
1693
+ "slug": "share",
1694
+ "subject": "an upload arrow rising over a disc",
1695
+ "svgSha256": "eda6d6c0c5a7bbe9cae7794e95cf3a0d103f40c1f4e58389dd412e32f332dc8f"
1696
+ }
1697
+ ],
1698
+ "model": "recraft/recraft-v4.1-utility",
1699
+ "name": "soundfish",
1700
+ "outputDir": "/tmp/iconsets/soundfish",
1701
+ "receiptVersion": 1,
1702
+ "setCritiques": [],
1703
+ "setCritiqueErrors": 1,
1704
+ "setRoundsUsed": 3,
1705
+ "target": {
1706
+ "coverageRatio": 0.1740586398805484,
1707
+ "strokePx": 30.59119496855346
1708
+ }
1709
+ }