forgedock 1.0.16 → 1.0.18

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 (190) hide show
  1. package/README.md +54 -3
  2. package/bin/cross-publish.mjs +344 -0
  3. package/bin/forgedock.mjs +2205 -541
  4. package/bin/github-app-manifest.json.license +2 -0
  5. package/bin/hooks/session-start.mjs +4 -5
  6. package/bin/registry.mjs +20 -0
  7. package/bin/tui.mjs +172 -96
  8. package/commands/adopt.md +433 -0
  9. package/commands/analytics.md +2 -0
  10. package/commands/audit-agents.md +2 -0
  11. package/commands/audit.md +2 -0
  12. package/commands/autopilot.md +77 -0
  13. package/commands/changelog.md +354 -0
  14. package/commands/cleanup.md +2 -0
  15. package/commands/compat-audit.md +330 -0
  16. package/commands/deploy-info.md +6 -5
  17. package/commands/design-bench.md +176 -0
  18. package/commands/design-render-critique-loop.md +103 -0
  19. package/commands/design.md +259 -0
  20. package/commands/diagnose.md +483 -0
  21. package/commands/explain.md +349 -0
  22. package/commands/forge-stats.md +2 -0
  23. package/commands/forgedock-init.md +2 -0
  24. package/commands/geo-audit.md +2 -0
  25. package/commands/incident-response.md +2 -0
  26. package/commands/issue.md +9 -3
  27. package/commands/milestone.md +2 -0
  28. package/commands/optimize.md +411 -0
  29. package/commands/orchestrate.md +239 -0
  30. package/commands/pipeline-health.md +60 -1
  31. package/commands/qa-sweep.md +39 -2
  32. package/commands/quality-gate.md +67 -0
  33. package/commands/replay.md +263 -0
  34. package/commands/resume.md +264 -0
  35. package/commands/review-pr-agents.md +5 -1
  36. package/commands/review-pr-staging.md +160 -2
  37. package/commands/review-pr.md +85 -3
  38. package/commands/rollback.md +2 -0
  39. package/commands/scope.md +280 -0
  40. package/commands/security-audit.md +2 -0
  41. package/commands/status.md +262 -0
  42. package/commands/sync-ecosystem.md +2 -0
  43. package/commands/test-gate.md +929 -0
  44. package/commands/validate.md +2 -0
  45. package/commands/work-on/build/architect.md +128 -18
  46. package/commands/work-on/build/context.md +130 -17
  47. package/commands/work-on/build/implement.md +7 -3
  48. package/commands/work-on/build/validate.md +2 -0
  49. package/commands/work-on/build.md +32 -7
  50. package/commands/work-on/close.md +85 -0
  51. package/commands/work-on/decompose.md +2 -0
  52. package/commands/work-on/investigate.md +30 -3
  53. package/commands/work-on/review.md +13 -1
  54. package/commands/work-on-monolithic.md +2 -0
  55. package/commands/work-on.md +676 -38
  56. package/docs/BRAND.md +51 -0
  57. package/docs/CI.md +177 -0
  58. package/docs/CONFIG.md +94 -0
  59. package/docs/FORGE-PROTOCOL.md +324 -0
  60. package/docs/articles/b-vs-c-baseline.md +210 -0
  61. package/docs/articles/full-abc-benchmark.md +205 -0
  62. package/docs/articles/per-repo-adaptive-scripts-token-savings.md +174 -0
  63. package/docs/articles/selective-spec-loading-token-savings.md +140 -0
  64. package/docs/claude-breakpoints.json +47 -0
  65. package/docs/design/abc-benchmark.md +195 -0
  66. package/docs/design/design-architect-rationale.md +123 -0
  67. package/docs/design/design-memory.md +61 -0
  68. package/docs/design/design-spec-schema.md +248 -0
  69. package/docs/design/design-system-lint.md +150 -0
  70. package/docs/design/divergent-generation.md +106 -0
  71. package/docs/design/effects-appropriateness.md +133 -0
  72. package/docs/design/fixtures/briefs/README.md +47 -0
  73. package/docs/design/fixtures/briefs/cadence.md +39 -0
  74. package/docs/design/fixtures/briefs/plume.md +39 -0
  75. package/docs/design/fixtures/briefs/slipstream.md +39 -0
  76. package/docs/design/fixtures/briefs/tender.md +39 -0
  77. package/docs/design/fixtures/briefs/voltage.md +39 -0
  78. package/docs/design/fixtures/runs/b-vs-c-baseline/cadence/arm-b/run-1.html +364 -0
  79. package/docs/design/fixtures/runs/b-vs-c-baseline/cadence/arm-b/run-2.html +420 -0
  80. package/docs/design/fixtures/runs/b-vs-c-baseline/cadence/arm-b/run-3.html +506 -0
  81. package/docs/design/fixtures/runs/b-vs-c-baseline/plume/arm-b/run-1.html +611 -0
  82. package/docs/design/fixtures/runs/b-vs-c-baseline/plume/arm-b/run-2.html +594 -0
  83. package/docs/design/fixtures/runs/b-vs-c-baseline/plume/arm-b/run-3.html +817 -0
  84. package/docs/design/fixtures/runs/b-vs-c-baseline/runs.json +175 -0
  85. package/docs/design/fixtures/runs/b-vs-c-baseline/scorecard.json +138 -0
  86. package/docs/design/fixtures/runs/b-vs-c-baseline/slipstream/arm-b/run-1.html +373 -0
  87. package/docs/design/fixtures/runs/b-vs-c-baseline/slipstream/arm-b/run-2.html +398 -0
  88. package/docs/design/fixtures/runs/b-vs-c-baseline/slipstream/arm-b/run-3.html +595 -0
  89. package/docs/design/fixtures/runs/b-vs-c-baseline/tender/arm-b/run-1.html +531 -0
  90. package/docs/design/fixtures/runs/b-vs-c-baseline/tender/arm-b/run-2.html +565 -0
  91. package/docs/design/fixtures/runs/b-vs-c-baseline/tender/arm-b/run-3.html +674 -0
  92. package/docs/design/fixtures/runs/b-vs-c-baseline/voltage/arm-b/run-1.html +388 -0
  93. package/docs/design/fixtures/runs/b-vs-c-baseline/voltage/arm-b/run-2.html +463 -0
  94. package/docs/design/fixtures/runs/b-vs-c-baseline/voltage/arm-b/run-3.html +568 -0
  95. package/docs/design/fixtures/runs/full-abc/cadence/arm-a/run-1.html +562 -0
  96. package/docs/design/fixtures/runs/full-abc/cadence/arm-a/run-2.html +618 -0
  97. package/docs/design/fixtures/runs/full-abc/cadence/arm-a/run-3.html +618 -0
  98. package/docs/design/fixtures/runs/full-abc/cadence/arm-b/run-1.html +364 -0
  99. package/docs/design/fixtures/runs/full-abc/cadence/arm-b/run-2.html +420 -0
  100. package/docs/design/fixtures/runs/full-abc/cadence/arm-b/run-3.html +506 -0
  101. package/docs/design/fixtures/runs/full-abc/plume/arm-a/run-1.html +527 -0
  102. package/docs/design/fixtures/runs/full-abc/plume/arm-a/run-2.html +445 -0
  103. package/docs/design/fixtures/runs/full-abc/plume/arm-a/run-3.html +483 -0
  104. package/docs/design/fixtures/runs/full-abc/plume/arm-b/run-1.html +611 -0
  105. package/docs/design/fixtures/runs/full-abc/plume/arm-b/run-2.html +594 -0
  106. package/docs/design/fixtures/runs/full-abc/plume/arm-b/run-3.html +817 -0
  107. package/docs/design/fixtures/runs/full-abc/runs.json +190 -0
  108. package/docs/design/fixtures/runs/full-abc/scorecard.json +144 -0
  109. package/docs/design/fixtures/runs/full-abc/slipstream/arm-a/run-1.html +496 -0
  110. package/docs/design/fixtures/runs/full-abc/slipstream/arm-a/run-2.html +447 -0
  111. package/docs/design/fixtures/runs/full-abc/slipstream/arm-a/run-3.html +564 -0
  112. package/docs/design/fixtures/runs/full-abc/slipstream/arm-b/run-1.html +373 -0
  113. package/docs/design/fixtures/runs/full-abc/slipstream/arm-b/run-2.html +398 -0
  114. package/docs/design/fixtures/runs/full-abc/slipstream/arm-b/run-3.html +595 -0
  115. package/docs/design/fixtures/runs/full-abc/tender/arm-a/run-1.html +622 -0
  116. package/docs/design/fixtures/runs/full-abc/tender/arm-a/run-2.html +475 -0
  117. package/docs/design/fixtures/runs/full-abc/tender/arm-a/run-3.html +660 -0
  118. package/docs/design/fixtures/runs/full-abc/tender/arm-b/run-1.html +531 -0
  119. package/docs/design/fixtures/runs/full-abc/tender/arm-b/run-2.html +565 -0
  120. package/docs/design/fixtures/runs/full-abc/tender/arm-b/run-3.html +674 -0
  121. package/docs/design/fixtures/runs/full-abc/voltage/arm-a/run-1.html +525 -0
  122. package/docs/design/fixtures/runs/full-abc/voltage/arm-a/run-2.html +446 -0
  123. package/docs/design/fixtures/runs/full-abc/voltage/arm-a/run-3.html +463 -0
  124. package/docs/design/fixtures/runs/full-abc/voltage/arm-b/run-1.html +388 -0
  125. package/docs/design/fixtures/runs/full-abc/voltage/arm-b/run-2.html +463 -0
  126. package/docs/design/fixtures/runs/full-abc/voltage/arm-b/run-3.html +568 -0
  127. package/docs/design/fixtures/runs/full-abc-opus/cadence/arm-a/run-1.html +1068 -0
  128. package/docs/design/fixtures/runs/full-abc-opus/cadence/arm-a/run-2.html +1423 -0
  129. package/docs/design/fixtures/runs/full-abc-opus/cadence/arm-a/run-3.html +1245 -0
  130. package/docs/design/fixtures/runs/full-abc-opus/cadence/arm-b/run-1.html +305 -0
  131. package/docs/design/fixtures/runs/full-abc-opus/cadence/arm-b/run-2.html +327 -0
  132. package/docs/design/fixtures/runs/full-abc-opus/cadence/arm-b/run-3.html +428 -0
  133. package/docs/design/fixtures/runs/full-abc-opus/plume/arm-a/run-1.html +1270 -0
  134. package/docs/design/fixtures/runs/full-abc-opus/plume/arm-a/run-2.html +1172 -0
  135. package/docs/design/fixtures/runs/full-abc-opus/plume/arm-a/run-3.html +1532 -0
  136. package/docs/design/fixtures/runs/full-abc-opus/plume/arm-b/run-1.html +315 -0
  137. package/docs/design/fixtures/runs/full-abc-opus/plume/arm-b/run-2.html +342 -0
  138. package/docs/design/fixtures/runs/full-abc-opus/plume/arm-b/run-3.html +353 -0
  139. package/docs/design/fixtures/runs/full-abc-opus/runs.json +190 -0
  140. package/docs/design/fixtures/runs/full-abc-opus/scorecard.json +144 -0
  141. package/docs/design/fixtures/runs/full-abc-opus/slipstream/arm-a/run-1.html +345 -0
  142. package/docs/design/fixtures/runs/full-abc-opus/slipstream/arm-a/run-2.html +396 -0
  143. package/docs/design/fixtures/runs/full-abc-opus/slipstream/arm-a/run-3.html +502 -0
  144. package/docs/design/fixtures/runs/full-abc-opus/slipstream/arm-b/run-1.html +408 -0
  145. package/docs/design/fixtures/runs/full-abc-opus/slipstream/arm-b/run-2.html +446 -0
  146. package/docs/design/fixtures/runs/full-abc-opus/slipstream/arm-b/run-3.html +496 -0
  147. package/docs/design/fixtures/runs/full-abc-opus/tender/arm-a/run-1.html +813 -0
  148. package/docs/design/fixtures/runs/full-abc-opus/tender/arm-a/run-2.html +711 -0
  149. package/docs/design/fixtures/runs/full-abc-opus/tender/arm-a/run-3.html +721 -0
  150. package/docs/design/fixtures/runs/full-abc-opus/tender/arm-b/run-1.html +280 -0
  151. package/docs/design/fixtures/runs/full-abc-opus/tender/arm-b/run-2.html +291 -0
  152. package/docs/design/fixtures/runs/full-abc-opus/tender/arm-b/run-3.html +366 -0
  153. package/docs/design/fixtures/runs/full-abc-opus/voltage/arm-a/run-1.html +1010 -0
  154. package/docs/design/fixtures/runs/full-abc-opus/voltage/arm-a/run-2.html +836 -0
  155. package/docs/design/fixtures/runs/full-abc-opus/voltage/arm-a/run-3.html +930 -0
  156. package/docs/design/fixtures/runs/full-abc-opus/voltage/arm-b/run-1.html +407 -0
  157. package/docs/design/fixtures/runs/full-abc-opus/voltage/arm-b/run-2.html +396 -0
  158. package/docs/design/fixtures/runs/full-abc-opus/voltage/arm-b/run-3.html +529 -0
  159. package/docs/design/foundations/brutalist.css +294 -0
  160. package/docs/design/foundations/editorial.css +300 -0
  161. package/docs/design/foundations/minimal-luxury.css +295 -0
  162. package/docs/design/foundations/technical.css +293 -0
  163. package/docs/design/foundations/warm-photo.css +299 -0
  164. package/docs/design/reference-corpus.md +1726 -0
  165. package/docs/design/render-critique-loop.md +57 -0
  166. package/docs/site/getting-started.md +21 -0
  167. package/docs/spec-graph-schema.md +397 -0
  168. package/package.json +3 -3
  169. package/scripts/bench-scorecard.mjs +239 -0
  170. package/scripts/build-spec-graph.mjs +509 -0
  171. package/scripts/classify-lane.sh +138 -0
  172. package/scripts/design-system-lint.mjs +993 -0
  173. package/scripts/graph-query.sh +486 -0
  174. package/scripts/transition-label.sh +169 -0
  175. package/scripts/validate-pr-target.sh +30 -0
  176. package/scripts/validate-spec-graph.sh +423 -0
  177. package/templates/devdocs/README.md +72 -0
  178. package/templates/devdocs/agent/using-forgedock.md +3 -0
  179. package/templates/devdocs/agent/using-github.md +3 -0
  180. package/templates/devdocs/index.yaml +162 -0
  181. package/templates/devdocs/project/architecture.md +3 -0
  182. package/templates/devdocs/project/conventions.md +3 -0
  183. package/templates/devdocs/project/custom-instructions.md +3 -0
  184. package/templates/devdocs/project/glossary.md +3 -0
  185. package/templates/devdocs/project/stack.md +3 -0
  186. package/templates/devdocs/templates/commit-convention.md +3 -0
  187. package/templates/devdocs/templates/issue.md +3 -0
  188. package/templates/devdocs/templates/pull-request.md +3 -0
  189. package/templates/devdocs/templates/review-finding.md +3 -0
  190. package/templates/workflows/forgedock-review.yml +96 -0
@@ -0,0 +1,190 @@
1
+ {
2
+ "corpus_version": "seed-v1",
3
+ "generation_model": "claude-sonnet-4-6",
4
+ "judge_model": "claude-sonnet-4-6",
5
+ "benchmark_date": "2026-06-22",
6
+ "note": "Full A-vs-B-vs-C benchmark. Arm A = ForgeDock harness (archetype sampling + anti-slop + critique). Arm B = raw one-shot. Slipstream arm C viewport-only (vercel.com rendering issue).",
7
+ "products": [
8
+ {
9
+ "product": "cadence",
10
+ "reference": "resend.com",
11
+ "runs": [
12
+ {
13
+ "run": 1,
14
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "B"},
15
+ "rubric": {
16
+ "A": {"hierarchy": 3, "typography": 3, "color": 3, "whitespace": 2, "originality": 2, "mobile": 3},
17
+ "B": {"hierarchy": 4, "typography": 4, "color": 4, "whitespace": 3, "originality": 3, "mobile": 4},
18
+ "C": {"hierarchy": 5, "typography": 5, "color": 5, "whitespace": 5, "originality": 5, "mobile": 5}
19
+ },
20
+ "slop": {"A": 4, "B": 3, "C": 0}
21
+ },
22
+ {
23
+ "run": 2,
24
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "tie"},
25
+ "rubric": {
26
+ "A": {"hierarchy": 3, "typography": 4, "color": 3, "whitespace": 3, "originality": 3, "mobile": 3},
27
+ "B": {"hierarchy": 4, "typography": 4, "color": 4, "whitespace": 4, "originality": 3, "mobile": 4},
28
+ "C": {"hierarchy": 5, "typography": 5, "color": 5, "whitespace": 5, "originality": 5, "mobile": 5}
29
+ },
30
+ "slop": {"A": 3, "B": 4, "C": 0}
31
+ },
32
+ {
33
+ "run": 3,
34
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "B"},
35
+ "rubric": {
36
+ "A": {"hierarchy": 3, "typography": 3, "color": 2, "whitespace": 2, "originality": 2, "mobile": 3},
37
+ "B": {"hierarchy": 4, "typography": 4, "color": 3, "whitespace": 3, "originality": 3, "mobile": 4},
38
+ "C": {"hierarchy": 5, "typography": 5, "color": 5, "whitespace": 5, "originality": 5, "mobile": 5}
39
+ },
40
+ "slop": {"A": 5, "B": 3, "C": 0}
41
+ }
42
+ ]
43
+ },
44
+ {
45
+ "product": "tender",
46
+ "reference": "stripe.com",
47
+ "runs": [
48
+ {
49
+ "run": 1,
50
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "A"},
51
+ "rubric": {
52
+ "A": {"hierarchy": 4, "typography": 4, "color": 4, "whitespace": 4, "originality": 3, "mobile": 3},
53
+ "B": {"hierarchy": 3, "typography": 3, "color": 2, "whitespace": 3, "originality": 2, "mobile": 3},
54
+ "C": {"hierarchy": 5, "typography": 5, "color": 5, "whitespace": 4, "originality": 5, "mobile": 4}
55
+ },
56
+ "slop": {"A": 1, "B": 3, "C": 1}
57
+ },
58
+ {
59
+ "run": 2,
60
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "B"},
61
+ "rubric": {
62
+ "A": {"hierarchy": 3, "typography": 4, "color": 3, "whitespace": 2, "originality": 3, "mobile": 2},
63
+ "B": {"hierarchy": 4, "typography": 4, "color": 3, "whitespace": 3, "originality": 3, "mobile": 3},
64
+ "C": {"hierarchy": 5, "typography": 5, "color": 5, "whitespace": 4, "originality": 5, "mobile": 4}
65
+ },
66
+ "slop": {"A": 2, "B": 2, "C": 1}
67
+ },
68
+ {
69
+ "run": 3,
70
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "A"},
71
+ "rubric": {
72
+ "A": {"hierarchy": 4, "typography": 4, "color": 4, "whitespace": 4, "originality": 4, "mobile": 3},
73
+ "B": {"hierarchy": 3, "typography": 3, "color": 3, "whitespace": 3, "originality": 2, "mobile": 3},
74
+ "C": {"hierarchy": 5, "typography": 5, "color": 5, "whitespace": 4, "originality": 5, "mobile": 4}
75
+ },
76
+ "slop": {"A": 1, "B": 3, "C": 1}
77
+ }
78
+ ]
79
+ },
80
+ {
81
+ "product": "slipstream",
82
+ "reference": "vercel.com",
83
+ "note": "Arm C viewport-only (vercel.com rendering timeout). A_vs_C and B_vs_C comparisons may be miscalibrated.",
84
+ "runs": [
85
+ {
86
+ "run": 1,
87
+ "pairwise": {"A_vs_C": "A", "B_vs_C": "B", "A_vs_B": "A"},
88
+ "rubric": {
89
+ "A": {"hierarchy": 4, "typography": 4, "color": 4, "whitespace": 3, "originality": 5, "mobile": 3},
90
+ "B": {"hierarchy": 4, "typography": 3, "color": 3, "whitespace": 3, "originality": 3, "mobile": 3},
91
+ "C": {"hierarchy": 5, "typography": 5, "color": 4, "whitespace": 5, "originality": 4, "mobile": 4}
92
+ },
93
+ "slop": {"A": 1, "B": 2, "C": 0}
94
+ },
95
+ {
96
+ "run": 2,
97
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "A"},
98
+ "rubric": {
99
+ "A": {"hierarchy": 4, "typography": 4, "color": 3, "whitespace": 4, "originality": 3, "mobile": 3},
100
+ "B": {"hierarchy": 4, "typography": 4, "color": 4, "whitespace": 4, "originality": 3, "mobile": 4},
101
+ "C": {"hierarchy": 5, "typography": 5, "color": 4, "whitespace": 5, "originality": 4, "mobile": 4}
102
+ },
103
+ "slop": {"A": 2, "B": 1, "C": 0}
104
+ },
105
+ {
106
+ "run": 3,
107
+ "pairwise": {"A_vs_C": "A", "B_vs_C": "B", "A_vs_B": "A"},
108
+ "rubric": {
109
+ "A": {"hierarchy": 5, "typography": 4, "color": 4, "whitespace": 4, "originality": 4, "mobile": 4},
110
+ "B": {"hierarchy": 4, "typography": 3, "color": 3, "whitespace": 3, "originality": 3, "mobile": 3},
111
+ "C": {"hierarchy": 5, "typography": 5, "color": 4, "whitespace": 5, "originality": 4, "mobile": 4}
112
+ },
113
+ "slop": {"A": 1, "B": 3, "C": 0}
114
+ }
115
+ ]
116
+ },
117
+ {
118
+ "product": "voltage",
119
+ "reference": "modal.com",
120
+ "runs": [
121
+ {
122
+ "run": 1,
123
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "A"},
124
+ "rubric": {
125
+ "A": {"hierarchy": 4, "typography": 4, "color": 4, "whitespace": 4, "originality": 3, "mobile": 3},
126
+ "B": {"hierarchy": 3, "typography": 3, "color": 3, "whitespace": 3, "originality": 2, "mobile": 3},
127
+ "C": {"hierarchy": 5, "typography": 4, "color": 5, "whitespace": 4, "originality": 4, "mobile": 4}
128
+ },
129
+ "slop": {"A": 1, "B": 3, "C": 1}
130
+ },
131
+ {
132
+ "run": 2,
133
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "A"},
134
+ "rubric": {
135
+ "A": {"hierarchy": 5, "typography": 5, "color": 5, "whitespace": 4, "originality": 5, "mobile": 3},
136
+ "B": {"hierarchy": 3, "typography": 3, "color": 3, "whitespace": 3, "originality": 3, "mobile": 3},
137
+ "C": {"hierarchy": 5, "typography": 4, "color": 5, "whitespace": 4, "originality": 4, "mobile": 4}
138
+ },
139
+ "slop": {"A": 0, "B": 2, "C": 1}
140
+ },
141
+ {
142
+ "run": 3,
143
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "A"},
144
+ "rubric": {
145
+ "A": {"hierarchy": 4, "typography": 5, "color": 4, "whitespace": 5, "originality": 4, "mobile": 4},
146
+ "B": {"hierarchy": 3, "typography": 2, "color": 2, "whitespace": 2, "originality": 2, "mobile": 2},
147
+ "C": {"hierarchy": 5, "typography": 4, "color": 5, "whitespace": 4, "originality": 4, "mobile": 4}
148
+ },
149
+ "slop": {"A": 1, "B": 4, "C": 1}
150
+ }
151
+ ]
152
+ },
153
+ {
154
+ "product": "plume",
155
+ "reference": "linear.app",
156
+ "runs": [
157
+ {
158
+ "run": 1,
159
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "B"},
160
+ "rubric": {
161
+ "A": {"hierarchy": 2, "typography": 3, "color": 2, "whitespace": 3, "originality": 3, "mobile": 2},
162
+ "B": {"hierarchy": 4, "typography": 4, "color": 4, "whitespace": 3, "originality": 3, "mobile": 4},
163
+ "C": {"hierarchy": 5, "typography": 5, "color": 5, "whitespace": 4, "originality": 4, "mobile": 4}
164
+ },
165
+ "slop": {"A": 1, "B": 3, "C": 2}
166
+ },
167
+ {
168
+ "run": 2,
169
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "A"},
170
+ "rubric": {
171
+ "A": {"hierarchy": 4, "typography": 4, "color": 4, "whitespace": 3, "originality": 5, "mobile": 3},
172
+ "B": {"hierarchy": 4, "typography": 4, "color": 4, "whitespace": 4, "originality": 4, "mobile": 4},
173
+ "C": {"hierarchy": 5, "typography": 5, "color": 5, "whitespace": 4, "originality": 4, "mobile": 4}
174
+ },
175
+ "slop": {"A": 2, "B": 3, "C": 2}
176
+ },
177
+ {
178
+ "run": 3,
179
+ "pairwise": {"A_vs_C": "C", "B_vs_C": "C", "A_vs_B": "B"},
180
+ "rubric": {
181
+ "A": {"hierarchy": 3, "typography": 4, "color": 3, "whitespace": 4, "originality": 4, "mobile": 2},
182
+ "B": {"hierarchy": 5, "typography": 4, "color": 4, "whitespace": 4, "originality": 4, "mobile": 4},
183
+ "C": {"hierarchy": 5, "typography": 5, "color": 5, "whitespace": 4, "originality": 4, "mobile": 4}
184
+ },
185
+ "slop": {"A": 1, "B": 2, "C": 2}
186
+ }
187
+ ]
188
+ }
189
+ ]
190
+ }
@@ -0,0 +1,144 @@
1
+ {
2
+ "corpus_version": "seed-v1",
3
+ "generation_model": "claude-sonnet-4-6",
4
+ "judge_model": "claude-sonnet-4-6",
5
+ "n_products": 5,
6
+ "n_runs_per_product": 3,
7
+ "win_rate_vs_C": {
8
+ "A": {
9
+ "mean": 0.133,
10
+ "by_product": {
11
+ "cadence": 0,
12
+ "tender": 0,
13
+ "slipstream": 0.667,
14
+ "voltage": 0,
15
+ "plume": 0
16
+ }
17
+ },
18
+ "B": {
19
+ "mean": 0.133,
20
+ "by_product": {
21
+ "cadence": 0,
22
+ "tender": 0,
23
+ "slipstream": 0.667,
24
+ "voltage": 0,
25
+ "plume": 0
26
+ }
27
+ }
28
+ },
29
+ "a_vs_b_win_rate": 0.633,
30
+ "rubric": {
31
+ "A": {
32
+ "hierarchy": {
33
+ "mean": 3.667,
34
+ "stdev": 0.816
35
+ },
36
+ "typography": {
37
+ "mean": 3.933,
38
+ "stdev": 0.594
39
+ },
40
+ "color": {
41
+ "mean": 3.467,
42
+ "stdev": 0.834
43
+ },
44
+ "whitespace": {
45
+ "mean": 3.4,
46
+ "stdev": 0.91
47
+ },
48
+ "originality": {
49
+ "mean": 3.533,
50
+ "stdev": 0.99
51
+ },
52
+ "mobile": {
53
+ "mean": 2.933,
54
+ "stdev": 0.594
55
+ }
56
+ },
57
+ "B": {
58
+ "hierarchy": {
59
+ "mean": 3.733,
60
+ "stdev": 0.594
61
+ },
62
+ "typography": {
63
+ "mean": 3.467,
64
+ "stdev": 0.64
65
+ },
66
+ "color": {
67
+ "mean": 3.267,
68
+ "stdev": 0.704
69
+ },
70
+ "whitespace": {
71
+ "mean": 3.2,
72
+ "stdev": 0.561
73
+ },
74
+ "originality": {
75
+ "mean": 2.867,
76
+ "stdev": 0.64
77
+ },
78
+ "mobile": {
79
+ "mean": 3.4,
80
+ "stdev": 0.632
81
+ }
82
+ },
83
+ "C": {
84
+ "hierarchy": {
85
+ "mean": 5,
86
+ "stdev": 0
87
+ },
88
+ "typography": {
89
+ "mean": 4.8,
90
+ "stdev": 0.414
91
+ },
92
+ "color": {
93
+ "mean": 4.8,
94
+ "stdev": 0.414
95
+ },
96
+ "whitespace": {
97
+ "mean": 4.4,
98
+ "stdev": 0.507
99
+ },
100
+ "originality": {
101
+ "mean": 4.4,
102
+ "stdev": 0.507
103
+ },
104
+ "mobile": {
105
+ "mean": 4.2,
106
+ "stdev": 0.414
107
+ }
108
+ }
109
+ },
110
+ "slop": {
111
+ "A": 1.733,
112
+ "B": 2.733,
113
+ "C": 0.8
114
+ },
115
+ "judge_calibration": {
116
+ "miscalibrated_runs": [
117
+ {
118
+ "product": "slipstream",
119
+ "run": 1,
120
+ "comparison": "A_vs_C",
121
+ "winner": "A"
122
+ },
123
+ {
124
+ "product": "slipstream",
125
+ "run": 1,
126
+ "comparison": "B_vs_C",
127
+ "winner": "B"
128
+ },
129
+ {
130
+ "product": "slipstream",
131
+ "run": 3,
132
+ "comparison": "A_vs_C",
133
+ "winner": "A"
134
+ },
135
+ {
136
+ "product": "slipstream",
137
+ "run": 3,
138
+ "comparison": "B_vs_C",
139
+ "winner": "B"
140
+ }
141
+ ],
142
+ "ok": false
143
+ }
144
+ }