{"checks":[{"applies_to":"index.html, announce.html","criterion":"Brand-Token Discipline","description":"The official CWI logo is present on every shipped visual asset. Brand rule: the logo ships on everything — no asset renders without the logo badge.","id":"brand-token-discipline","max":40},{"applies_to":"first-spin.json, verdict-template.json, sample-verdict.json, first-spin-schema.json","criterion":"First-Spin Schema Conformance","description":"The rubric config (cwi-first-spin/v1) and every verdict (first-spin-verdict/v1) validate against first-spin-schema.json: all five criteria present with weights summing to 1.0, scales 0-5 integer, confidence labels in-vocabulary, every score carries at least one source citation, all five deal-breaker flags evaluated in the sample verdict, and the worked example's weighted total matches its scores.","id":"first-spin-schema-conformance","max":30},{"applies_to":"build.py, template.html","criterion":"White-Label Config","description":"DEFAULT_CONFIG + optional config.json override flow works: a config.json with orgName/productName/colors overrides the CWI defaults and produces a branded build with no unreplaced tokens.","id":"white-label-config","max":20},{"applies_to":"give-block.md","criterion":"Give-Block Operability","description":"EQUIP / CONFIGURE / APPLY steps are copy-paste operable: every URL referenced (config, schema, card, template, sample verdict, page, hub device, contact) is live, and the APPLY block is a valid first-spin verdict snippet.","id":"give-block-operability","max":10}],"name":"THE FIRST SPIN — Evaluation Rubric","pass_threshold":85,"product":"THE FIRST SPIN","rubric_version":"1.0.0","self_evaluation":{"evidence":{"brand-token-discipline":"index.html header logo, announce.html header logo — logo.jpg on both shipped visual assets","first-spin-schema-conformance":"first-spin.json (5 criteria, weights sum 1.0) and sample-verdict.json (weighted_total 3.9, weighted_percent 78, band advance, 5/5 deal-breakers evaluated) validate in automated gate 3; verdict-template.json carries the full empty skeleton","give-block-operability":"give-block.md EQUIP/CONFIGURE/APPLY reference first-spin.json, schema, item-card, verdict template, sample verdict, page, scanner hub, hp@cumulativeweb.com — all live per gate 2","white-label-config":"gate 4 builds a temp config.json override (orgName/productName/colors) through build.py and confirms the overrides land in index.html with no leftover tokens"},"run":"automated: first-spin/test.py gate 4 evaluates the product against this rubric","score":100,"total":100}}