application/json, 10377 bytes · https://autechsolutions-game-factory.pages.dev/ideas/counterweight-choir/files/artifacts/board-spec.json
{
"version": 1,
"title": "Counterweight Choir",
"subtitle": "Realistic weight-swap mobile puzzle โ structural Art Bible and implementation guide",
"theme": {
"background": "#f4f1e8",
"surface": "#292d31",
"paper": "#f4f1e8",
"ink": "#292d31",
"muted": "#a8adb3",
"accent": "#1557ff",
"danger": "#dd5b45",
"gold": "#b7d62e"
},
"overview": [
{
"label": "Fantasy",
"text": "Restore a credible gallery-scale kinetic sculpture by swapping physical counterweights in the right order.",
"sourceRefs": [
"ENV-SCULPTURE-GALLERY",
"M-SWAP"
]
},
{
"label": "Genre",
"text": "Portrait tactile order puzzle with immediate drag readability and authored causal depth.",
"sourceRefs": [
"SCR-GAMEPLAY",
"M-PREVIEW"
]
},
{
"label": "Core loop",
"text": "Read target pose, pick weight, preview settle, place or swap, watch shutter, match sculpture.",
"sourceRefs": [
"UI-TARGET-CARD",
"M-PICK",
"M-SWAP",
"M-CHECK"
]
},
{
"label": "Consequence",
"text": "Each committed swap changes the mobile and future legal hooks, making visible order matter.",
"sourceRefs": [
"P-ORDER",
"M-SETTLE",
"V-HOOK-CHANGE"
]
},
{
"label": "Visual identity",
"text": "Architectural daylight, anodized metal, fine cable, porcelain, stone, acrylic, white panels, cobalt action.",
"sourceRefs": [
"ENV-ARCHITECTURAL-BACKDROP",
"E-BEAM",
"E-WEIGHT-1"
]
},
{
"label": "Hard exclusions",
"text": "No weight numbers, equations, torque, M/H/L, resonance tokens, phrase rail, calibration UI, or soft toy blobs.",
"sourceRefs": [
"SCR-GAMEPLAY",
"UI-PRIMARY"
]
}
],
"gameplayFlow": [
{
"step": 1,
"title": "Read the pose",
"description": "Compare the dense complete mobile with the compact target thumbnail and move budget.",
"assetId": "ART-GAMEPLAY",
"sourceRefs": [
"UI-TARGET-CARD",
"UI-MOVE-COUNT"
]
},
{
"step": 2,
"title": "Pick a weight",
"description": "Select one physical counterweight; legal open rings halo and occupied hooks say Swap.",
"assetId": "ART-ONBOARDING",
"sourceRefs": [
"M-PICK",
"E-WEIGHT-2",
"E-HOOK"
]
},
{
"step": 3,
"title": "Preview the settle",
"description": "Ghost the exact final hierarchy, displaced weight, target changes, and future shutter state.",
"assetId": "ART-GAMEPLAY-STATES",
"sourceRefs": [
"M-PREVIEW",
"V-GHOST",
"V-HOOK-CHANGE"
]
},
{
"step": 4,
"title": "Place or swap",
"description": "Release on an open ring; an occupied destination exchanges both weights atomically.",
"assetId": "ART-GAMEPLAY",
"sourceRefs": [
"M-SWAP",
"M-SETTLE"
]
},
{
"step": 5,
"title": "Watch what opens",
"description": "Affected beams settle leaf to root and reveal or close the next physical hook.",
"assetId": "ART-GAMEPLAY-STATES",
"sourceRefs": [
"ST-HOOK-REVEAL",
"E-SHUTTER",
"P-ORDER"
]
},
{
"step": 6,
"title": "Match or recover",
"description": "Complete the pose, or inspect mismatches and use Undo or Retry without penalty.",
"assetId": "ART-SUCCESS",
"sourceRefs": [
"M-CHECK",
"M-UNDO",
"M-RETRY"
]
}
],
"tutorial": [
{
"title": "Target",
"instruction": "Match the pictured mobile before moves reach zero.",
"sourceRefs": [
"UI-TARGET-CARD",
"UI-MOVE-COUNT"
]
},
{
"title": "Physical cues",
"instruction": "Size, silhouette, material, and separate dots distinguish weights without printed values.",
"sourceRefs": [
"E-WEIGHT-1",
"E-WEIGHT-2",
"E-WEIGHT-3"
]
},
{
"title": "Select",
"instruction": "Open rings halo; closed destinations remain physically shuttered.",
"sourceRefs": [
"M-PICK",
"E-HOOK",
"E-SHUTTER"
]
},
{
"title": "Preview",
"instruction": "The translucent mobile is the exact post-release state, including the displaced weight.",
"sourceRefs": [
"M-PREVIEW",
"V-GHOST"
]
},
{
"title": "Swap",
"instruction": "Dropping on an occupied open hook exchanges both visible counterweights for one move.",
"sourceRefs": [
"M-SWAP",
"UI-HOOK-BADGE"
]
},
{
"title": "Reveal",
"instruction": "After settle, the affected shutter explicitly shows Opens or Closed.",
"sourceRefs": [
"ST-HOOK-REVEAL",
"V-HOOK-CHANGE"
]
},
{
"title": "Blocked",
"instruction": "Physical obstruction is outlined; the weight returns and no move is used.",
"sourceRefs": [
"ST-PREVIEW-BLOCKED",
"V-BOUNCE"
]
},
{
"title": "Recover",
"instruction": "Undo restores the exact prior sculpture; Retry restores the authored start.",
"sourceRefs": [
"M-UNDO",
"M-RETRY"
]
}
],
"entityCards": [
{
"title": "Counterweights",
"description": "Seven to ten credible porcelain, stone, and metal forms use scale, silhouette, and dots without numbers.",
"sourceRefs": [
"E-WEIGHT-1",
"E-WEIGHT-2",
"E-WEIGHT-3",
"E-TRAY"
]
},
{
"title": "Beam and bearing",
"description": "Slender anodized beam and oversized bearing communicate pose without degree ticks.",
"sourceRefs": [
"E-BEAM",
"E-PIVOT",
"E-TARGET-ARC"
]
},
{
"title": "Hooks and shutter",
"description": "Open, occupied, one-way, and covered destinations differ physically and textually.",
"sourceRefs": [
"E-HOOK",
"E-SHUTTER",
"E-ONEWAY"
]
},
{
"title": "Glass and bell",
"description": "Clear blockers have strong edges; one real bell confirms only completed restoration.",
"sourceRefs": [
"E-GLASS",
"E-BELL"
]
}
],
"systemCards": [
{
"title": "Exact ghost",
"description": "Preview and commit share one deterministic resolver, so visible settled state is trustworthy.",
"sourceRefs": [
"M-PREVIEW",
"M-SETTLE",
"V-GHOST"
]
},
{
"title": "Occupied swap",
"description": "A drop on an occupied open ring exchanges both physical counterweights for one move.",
"sourceRefs": [
"M-SWAP",
"UI-HOOK-BADGE"
]
},
{
"title": "Order changes access",
"description": "Settled linked beams open or close physical shutters, changing the next legal hook.",
"sourceRefs": [
"P-ORDER",
"E-SHUTTER",
"V-HOOK-CHANGE"
]
},
{
"title": "Forgiving recovery",
"description": "Blocked previews cost nothing; Undo and Retry support immediate experimentation.",
"sourceRefs": [
"V-BOUNCE",
"M-UNDO",
"M-RETRY"
]
}
],
"screenAssetIds": [
"ART-ONBOARDING",
"ART-HOME",
"ART-GAMEPLAY",
"ART-GAMEPLAY-STATES",
"ART-PAUSE",
"ART-SUCCESS",
"ART-FAILURE",
"ART-SETTINGS",
"ART-ACCESSIBILITY",
"ART-LEGAL"
],
"implementationNotes": [
{
"label": "Layout",
"text": "Keep target, seven-to-ten-weight mobile, staging rail, moves, Undo, and Retry visible at 360x800.",
"sourceRefs": [
"SCR-GAMEPLAY",
"UI-WEIGHT-TRAY"
]
},
{
"label": "Touch",
"text": "Visible forms can stay slender while invisible weight/hook hit regions remain at least 64x64.",
"sourceRefs": [
"E-HOOK",
"A-TAP"
]
},
{
"label": "Type",
"text": "Modern grotesk, 17 px body minimum, tabular UI counts, 35 percent expansion, 150 percent reflow.",
"sourceRefs": [
"A-TEXT",
"UI-MOVE-COUNT"
]
},
{
"label": "Motion",
"text": "Settle within 500 ms; reduced motion uses stepped before/after frames and no camera movement.",
"sourceRefs": [
"M-SETTLE",
"A-MOTION"
]
},
{
"label": "Access",
"text": "Scale, material, dots, geometry, labels, speech, and optional haptics repeat critical state.",
"sourceRefs": [
"A-COLOR",
"A-READER",
"A-HAPTIC"
]
},
{
"label": "Export",
"text": "Rebuild UI natively; preserve sRGB sources, layered sculpture pieces, baked light, and shared resolver.",
"sourceRefs": [
"ENV-SCULPTURE-GALLERY",
"UI-SETTING-ROW"
]
}
],
"sourceRefs": [
"SCR-ONBOARDING",
"SCR-HOME",
"SCR-GAMEPLAY",
"SCR-PAUSE",
"SCR-SUCCESS",
"SCR-FAILURE",
"SCR-SETTINGS",
"SCR-ACCESSIBILITY",
"SCR-LEGAL",
"ST-FRESH",
"ST-SELECTED",
"ST-DRAGGING",
"ST-PREVIEW-SAFE",
"ST-PREVIEW-BLOCKED",
"ST-SETTLING",
"ST-HOOK-REVEAL",
"ST-TARGET-MATCH",
"ST-PAUSED",
"ST-SUCCESS",
"ST-FAILURE",
"ST-ERROR",
"ST-LOADING",
"ST-DISABLED",
"ST-INTERRUPTED",
"M-PICK",
"M-DRAG",
"M-PREVIEW",
"M-SWAP",
"M-SETTLE",
"M-CHECK",
"M-UNDO",
"M-RETRY",
"E-BEAM",
"E-PIVOT",
"E-HOOK",
"E-WEIGHT-1",
"E-WEIGHT-2",
"E-WEIGHT-3",
"E-SHUTTER",
"E-ONEWAY",
"E-GLASS",
"E-TARGET-ARC",
"E-BELL",
"E-TRAY",
"ENV-SCULPTURE-GALLERY",
"ENV-GALLERY-ARCHIVE",
"ENV-ARCHITECTURAL-BACKDROP",
"UI-TARGET-CARD",
"UI-MOVE-COUNT",
"UI-WEIGHT-TRAY",
"UI-HOOK-BADGE",
"UI-PRIMARY",
"UI-FROST-SHEET",
"UI-LEVEL-PATH",
"UI-HOW-TO",
"UI-SETTING-ROW",
"UI-ERROR-SHEET",
"UI-LEGAL-LIST",
"A-COLOR",
"A-MOTION",
"A-TEXT",
"A-HAPTIC",
"A-READER",
"A-TAP",
"V-GHOST",
"V-HOOK-CHANGE",
"V-BOUNCE",
"V-TARGET-LOCK",
"V-SETTLE",
"V-SUCCESS"
]
}application/json, 27150 bytes · https://autechsolutions-game-factory.pages.dev/ideas/counterweight-choir/files/validation/asset-manifest.json
{
"version": 3,
"status": "complete",
"model": "gpt-image-2",
"lineage": {
"runId": "2026-08-pipeline-flow-test-en-us",
"conceptId": "counterweight-choir"
},
"authorship": {
"designBy": "Codex visual design operator"
},
"documents": {
"gdd": "gdd.md",
"uxFlow": "ux-flow.md",
"visualBrief": "visual-brief.md",
"artBible": "art-bible.md"
},
"boardSpec": "board-spec.json",
"sourceBindings": {
"gdd": {
"source": "02-gdd/gdd.md",
"snapshot": "gdd.md",
"sha256": "9fae203d233394552ce875648d404921879b5879d3e475a65538fca33f239f59"
},
"gddAudit": {
"source": "03-gdd-audit/audit.json",
"snapshot": "gdd-audit.json",
"sha256": "0d8d112ead3cad15d5db95e0ec65781e20920a06d2e284e4d9d2b49401a924c7"
},
"marketAnalysis": {
"source": "04-market-analysis/market-analysis.json",
"snapshot": "market-analysis.json",
"sha256": "73c6365d8bbd18f0ac286bf7f87b5e8d106b31244a343e220e40d98e8ced4014"
},
"productDirection": {
"source": "05-product-direction/product-direction.json",
"snapshot": "product-direction.json",
"sha256": "4c93983134728202cf088806344a6e056aab1c7dfb9f923164c532a373639c40"
},
"uxFlow": {
"source": "06-ux/ux-flow.md",
"snapshot": "ux-flow.md",
"sha256": "0dea84c3a9e956b8ac97cee2a4d60c1a071884e2702613285e9299a210f6d02f"
}
},
"inventory": {
"screens": [
{
"id": "SCR-ONBOARDING",
"role": "onboarding",
"sourceRefs": [
"SCR-ONBOARDING",
"M-PICK",
"M-PREVIEW",
"M-SWAP",
"P-ORDER"
]
},
{
"id": "SCR-HOME",
"role": "home",
"sourceRefs": [
"SCR-HOME",
"ENV-GALLERY-ARCHIVE",
"UI-LEVEL-PATH",
"UI-HOW-TO"
]
},
{
"id": "SCR-GAMEPLAY",
"role": "gameplay",
"sourceRefs": [
"SCR-GAMEPLAY",
"ENV-SCULPTURE-GALLERY",
"UI-TARGET-CARD",
"UI-MOVE-COUNT",
"M-PREVIEW"
]
},
{
"id": "SCR-PAUSE",
"role": "pause",
"sourceRefs": [
"SCR-PAUSE",
"ST-PAUSED",
"UI-FROST-SHEET"
]
},
{
"id": "SCR-SUCCESS",
"role": "success",
"sourceRefs": [
"SCR-SUCCESS",
"ST-SUCCESS",
"V-TARGET-LOCK",
"E-BELL"
]
},
{
"id": "SCR-FAILURE",
"role": "failure",
"sourceRefs": [
"SCR-FAILURE",
"ST-FAILURE",
"UI-TARGET-CARD",
"M-UNDO",
"M-RETRY"
]
},
{
"id": "SCR-SETTINGS",
"role": "settings",
"sourceRefs": [
"SCR-SETTINGS",
"A-HAPTIC",
"A-TEXT",
"UI-SETTING-ROW"
]
},
{
"id": "SCR-ACCESSIBILITY",
"role": "accessibility",
"sourceRefs": [
"SCR-ACCESSIBILITY",
"A-COLOR",
"A-MOTION",
"A-TEXT",
"A-READER",
"A-TAP"
]
},
{
"id": "SCR-LEGAL",
"role": "legal",
"sourceRefs": [
"SCR-LEGAL",
"UI-LEGAL-LIST",
"ST-ERROR"
]
}
],
"states": [
{
"id": "ST-FRESH",
"role": "fresh",
"important": true,
"sourceRefs": [
"ST-FRESH",
"ENV-SCULPTURE-GALLERY",
"UI-TARGET-CARD"
]
},
{
"id": "ST-SELECTED",
"role": "selected",
"important": false,
"sourceRefs": [
"ST-SELECTED",
"M-PICK",
"E-WEIGHT-1",
"E-HOOK"
]
},
{
"id": "ST-DRAGGING",
"role": "dragging",
"important": false,
"sourceRefs": [
"ST-DRAGGING",
"M-DRAG",
"E-HOOK",
"E-SHUTTER"
]
},
{
"id": "ST-PREVIEW-SAFE",
"role": "active",
"important": true,
"sourceRefs": [
"ST-PREVIEW-SAFE",
"M-PREVIEW",
"V-GHOST",
"V-HOOK-CHANGE"
]
},
{
"id": "ST-PREVIEW-BLOCKED",
"role": "preview-blocked",
"important": false,
"sourceRefs": [
"ST-PREVIEW-BLOCKED",
"E-SHUTTER",
"E-ONEWAY",
"E-GLASS",
"V-BOUNCE"
]
},
{
"id": "ST-SETTLING",
"role": "settling",
"important": false,
"sourceRefs": [
"ST-SETTLING",
"M-SETTLE",
"A-MOTION"
]
},
{
"id": "ST-HOOK-REVEAL",
"role": "hook-reveal",
"important": false,
"sourceRefs": [
"ST-HOOK-REVEAL",
"P-ORDER",
"E-SHUTTER",
"V-HOOK-CHANGE"
]
},
{
"id": "ST-TARGET-MATCH",
"role": "target-match",
"important": false,
"sourceRefs": [
"ST-TARGET-MATCH",
"M-CHECK",
"E-TARGET-ARC",
"V-TARGET-LOCK"
]
},
{
"id": "ST-PAUSED",
"role": "paused",
"important": true,
"sourceRefs": [
"ST-PAUSED",
"SCR-PAUSE"
]
},
{
"id": "ST-SUCCESS",
"role": "success",
"important": true,
"sourceRefs": [
"ST-SUCCESS",
"SCR-SUCCESS",
"V-SUCCESS"
]
},
{
"id": "ST-FAILURE",
"role": "failure",
"important": true,
"sourceRefs": [
"ST-FAILURE",
"SCR-FAILURE",
"M-UNDO",
"M-RETRY"
]
},
{
"id": "ST-ERROR",
"role": "error",
"important": true,
"sourceRefs": [
"ST-ERROR",
"UI-ERROR-SHEET"
]
},
{
"id": "ST-LOADING",
"role": "loading",
"important": false,
"sourceRefs": [
"ST-LOADING",
"ENV-GALLERY-ARCHIVE"
]
},
{
"id": "ST-DISABLED",
"role": "disabled",
"important": false,
"sourceRefs": [
"ST-DISABLED",
"E-SHUTTER",
"UI-PRIMARY"
]
},
{
"id": "ST-INTERRUPTED",
"role": "interrupted",
"important": false,
"sourceRefs": [
"ST-INTERRUPTED",
"ST-DRAGGING",
"ST-SETTLING",
"ST-PAUSED"
]
}
],
"mechanics": [
{
"id": "M-PICK",
"sourceRefs": [
"M-PICK"
]
},
{
"id": "M-DRAG",
"sourceRefs": [
"M-DRAG"
]
},
{
"id": "M-PREVIEW",
"sourceRefs": [
"M-PREVIEW"
]
},
{
"id": "M-SWAP",
"sourceRefs": [
"M-SWAP"
]
},
{
"id": "M-SETTLE",
"sourceRefs": [
"M-SETTLE"
]
},
{
"id": "M-CHECK",
"sourceRefs": [
"M-CHECK"
]
},
{
"id": "M-UNDO",
"sourceRefs": [
"M-UNDO"
]
},
{
"id": "M-RETRY",
"sourceRefs": [
"M-RETRY"
]
}
],
"entities": [
{
"id": "E-BEAM",
"sourceRefs": [
"E-BEAM"
]
},
{
"id": "E-PIVOT",
"sourceRefs": [
"E-PIVOT"
]
},
{
"id": "E-HOOK",
"sourceRefs": [
"E-HOOK"
]
},
{
"id": "E-WEIGHT-1",
"sourceRefs": [
"E-WEIGHT-1"
]
},
{
"id": "E-WEIGHT-2",
"sourceRefs": [
"E-WEIGHT-2"
]
},
{
"id": "E-WEIGHT-3",
"sourceRefs": [
"E-WEIGHT-3"
]
},
{
"id": "E-SHUTTER",
"sourceRefs": [
"E-SHUTTER"
]
},
{
"id": "E-ONEWAY",
"sourceRefs": [
"E-ONEWAY"
]
},
{
"id": "E-GLASS",
"sourceRefs": [
"E-GLASS"
]
},
{
"id": "E-TARGET-ARC",
"sourceRefs": [
"E-TARGET-ARC"
]
},
{
"id": "E-BELL",
"sourceRefs": [
"E-BELL"
]
},
{
"id": "E-TRAY",
"sourceRefs": [
"E-TRAY"
]
}
],
"environments": [
{
"id": "ENV-SCULPTURE-GALLERY",
"sourceRefs": [
"ENV-SCULPTURE-GALLERY"
]
},
{
"id": "ENV-GALLERY-ARCHIVE",
"sourceRefs": [
"ENV-GALLERY-ARCHIVE"
]
},
{
"id": "ENV-ARCHITECTURAL-BACKDROP",
"sourceRefs": [
"ENV-ARCHITECTURAL-BACKDROP"
]
}
],
"ui": [
{
"id": "UI-TARGET-CARD",
"sourceRefs": [
"UI-TARGET-CARD"
]
},
{
"id": "UI-MOVE-COUNT",
"sourceRefs": [
"UI-MOVE-COUNT"
]
},
{
"id": "UI-WEIGHT-TRAY",
"sourceRefs": [
"UI-WEIGHT-TRAY"
]
},
{
"id": "UI-HOOK-BADGE",
"sourceRefs": [
"UI-HOOK-BADGE"
]
},
{
"id": "UI-PRIMARY",
"sourceRefs": [
"UI-PRIMARY"
]
},
{
"id": "UI-FROST-SHEET",
"sourceRefs": [
"UI-FROST-SHEET"
]
},
{
"id": "UI-LEVEL-PATH",
"sourceRefs": [
"UI-LEVEL-PATH"
]
},
{
"id": "UI-HOW-TO",
"sourceRefs": [
"UI-HOW-TO"
]
},
{
"id": "UI-SETTING-ROW",
"sourceRefs": [
"UI-SETTING-ROW"
]
},
{
"id": "UI-ERROR-SHEET",
"sourceRefs": [
"UI-ERROR-SHEET"
]
},
{
"id": "UI-LEGAL-LIST",
"sourceRefs": [
"UI-LEGAL-LIST"
]
}
],
"accessibility": [
{
"id": "A-COLOR",
"sourceRefs": [
"A-COLOR"
]
},
{
"id": "A-MOTION",
"sourceRefs": [
"A-MOTION"
]
},
{
"id": "A-TEXT",
"sourceRefs": [
"A-TEXT"
]
},
{
"id": "A-HAPTIC",
"sourceRefs": [
"A-HAPTIC"
]
},
{
"id": "A-READER",
"sourceRefs": [
"A-READER"
]
},
{
"id": "A-TAP",
"sourceRefs": [
"A-TAP"
]
}
],
"vfx": [
{
"id": "V-GHOST",
"sourceRefs": [
"V-GHOST"
]
},
{
"id": "V-HOOK-CHANGE",
"sourceRefs": [
"V-HOOK-CHANGE"
]
},
{
"id": "V-BOUNCE",
"sourceRefs": [
"V-BOUNCE"
]
},
{
"id": "V-TARGET-LOCK",
"sourceRefs": [
"V-TARGET-LOCK"
]
},
{
"id": "V-SETTLE",
"sourceRefs": [
"V-SETTLE"
]
},
{
"id": "V-SUCCESS",
"sourceRefs": [
"V-SUCCESS"
]
}
]
},
"logicalLayouts": {
"portrait": {
"width": 360,
"height": 800,
"aspectRatio": "9:20"
}
},
"supportedOrientations": [
"portrait"
],
"assets": [
{
"id": "ART-GAMEPLAY",
"standalone": true,
"orientation": "portrait",
"dimensions": {
"width": 360,
"height": 800
},
"prompt": "image-prompts/gameplay-active.txt",
"output": "art-bible/gameplay-active.png",
"references": [],
"sourceRefs": [
"SCR-GAMEPLAY",
"ST-PREVIEW-SAFE",
"M-PICK",
"M-DRAG",
"M-PREVIEW",
"M-SWAP",
"M-SETTLE",
"M-CHECK",
"M-UNDO",
"M-RETRY",
"E-BEAM",
"E-PIVOT",
"E-HOOK",
"E-WEIGHT-1",
"E-WEIGHT-2",
"E-WEIGHT-3",
"E-SHUTTER",
"E-ONEWAY",
"E-GLASS",
"E-TARGET-ARC",
"E-BELL",
"E-TRAY",
"ENV-SCULPTURE-GALLERY",
"UI-TARGET-CARD",
"UI-MOVE-COUNT",
"UI-WEIGHT-TRAY",
"UI-HOOK-BADGE",
"UI-PRIMARY",
"A-COLOR",
"A-MOTION",
"A-HAPTIC",
"A-READER",
"A-TAP",
"V-GHOST",
"V-HOOK-CHANGE",
"V-BOUNCE",
"V-TARGET-LOCK",
"V-SETTLE",
"V-SUCCESS"
],
"covers": {
"screens": [
"SCR-GAMEPLAY"
],
"states": [
"ST-PREVIEW-SAFE"
],
"mechanics": [
"M-PICK",
"M-DRAG",
"M-PREVIEW",
"M-SWAP",
"M-SETTLE",
"M-CHECK",
"M-UNDO",
"M-RETRY"
],
"entities": [
"E-BEAM",
"E-PIVOT",
"E-HOOK",
"E-WEIGHT-1",
"E-WEIGHT-2",
"E-WEIGHT-3",
"E-SHUTTER",
"E-ONEWAY",
"E-GLASS",
"E-TARGET-ARC",
"E-BELL",
"E-TRAY"
],
"environments": [
"ENV-SCULPTURE-GALLERY"
],
"ui": [
"UI-TARGET-CARD",
"UI-MOVE-COUNT",
"UI-WEIGHT-TRAY",
"UI-HOOK-BADGE",
"UI-PRIMARY"
],
"accessibility": [
"A-COLOR",
"A-MOTION",
"A-HAPTIC",
"A-READER",
"A-TAP"
],
"vfx": [
"V-GHOST",
"V-HOOK-CHANGE",
"V-BOUNCE",
"V-TARGET-LOCK",
"V-SETTLE",
"V-SUCCESS"
]
},
"provenance": {
"createdBy": "OpenAI gpt-image-2 via Codex",
"createdAt": "2026-08-21T00:29:06.575Z"
},
"machineQa": {
"status": "passed",
"checks": [
"valid PNG",
"360x800 portrait",
"realistic final visually inspected",
"v0.4 source refs bound",
"rejected variants excluded"
]
},
"master": true
},
{
"id": "ART-GAMEPLAY-STATES",
"standalone": false,
"orientation": "portrait",
"dimensions": {
"width": 360,
"height": 800
},
"prompt": "image-prompts/gameplay-state-matrix.txt",
"output": "art-bible/gameplay-state-matrix.png",
"references": [
"art-bible/gameplay-active.png"
],
"sourceRefs": [
"ST-SELECTED",
"ST-DRAGGING",
"ST-PREVIEW-BLOCKED",
"ST-SETTLING",
"ST-HOOK-REVEAL",
"ST-TARGET-MATCH",
"ST-LOADING",
"ST-DISABLED",
"ST-INTERRUPTED"
],
"covers": {
"screens": [],
"states": [
"ST-SELECTED",
"ST-DRAGGING",
"ST-PREVIEW-BLOCKED",
"ST-SETTLING",
"ST-HOOK-REVEAL",
"ST-TARGET-MATCH",
"ST-LOADING",
"ST-DISABLED",
"ST-INTERRUPTED"
],
"mechanics": [],
"entities": [],
"environments": [],
"ui": [],
"accessibility": [],
"vfx": []
},
"provenance": {
"createdBy": "OpenAI gpt-image-2 via Codex",
"createdAt": "2026-08-21T00:29:06.575Z"
},
"machineQa": {
"status": "passed",
"checks": [
"valid PNG",
"360x800 portrait",
"realistic final visually inspected",
"v0.4 source refs bound",
"rejected variants excluded"
]
}
},
{
"id": "ART-ONBOARDING",
"standalone": true,
"orientation": "portrait",
"dimensions": {
"width": 360,
"height": 800
},
"prompt": "image-prompts/onboarding.txt",
"output": "art-bible/onboarding.png",
"references": [
"art-bible/gameplay-active.png"
],
"sourceRefs": [
"SCR-ONBOARDING",
"ST-FRESH",
"UI-HOW-TO"
],
"covers": {
"screens": [
"SCR-ONBOARDING"
],
"states": [
"ST-FRESH"
],
"mechanics": [],
"entities": [],
"environments": [],
"ui": [
"UI-HOW-TO"
],
"accessibility": [],
"vfx": []
},
"provenance": {
"createdBy": "OpenAI gpt-image-2 via Codex",
"createdAt": "2026-08-21T00:29:06.575Z"
},
"machineQa": {
"status": "passed",
"checks": [
"valid PNG",
"360x800 portrait",
"realistic final visually inspected",
"v0.4 source refs bound",
"rejected variants excluded"
]
}
},
{
"id": "ART-HOME",
"standalone": true,
"orientation": "portrait",
"dimensions": {
"width": 360,
"height": 800
},
"prompt": "image-prompts/home.txt",
"output": "art-bible/home.png",
"references": [
"art-bible/gameplay-active.png"
],
"sourceRefs": [
"SCR-HOME",
"ENV-GALLERY-ARCHIVE",
"ENV-ARCHITECTURAL-BACKDROP",
"UI-LEVEL-PATH"
],
"covers": {
"screens": [
"SCR-HOME"
],
"states": [],
"mechanics": [],
"entities": [],
"environments": [
"ENV-GALLERY-ARCHIVE",
"ENV-ARCHITECTURAL-BACKDROP"
],
"ui": [
"UI-LEVEL-PATH"
],
"accessibility": [],
"vfx": []
},
"provenance": {
"createdBy": "OpenAI gpt-image-2 via Codex",
"createdAt": "2026-08-21T00:29:06.575Z"
},
"machineQa": {
"status": "passed",
"checks": [
"valid PNG",
"360x800 portrait",
"realistic final visually inspected",
"v0.4 source refs bound",
"rejected variants excluded"
]
}
},
{
"id": "ART-PAUSE",
"standalone": true,
"orientation": "portrait",
"dimensions": {
"width": 360,
"height": 800
},
"prompt": "image-prompts/pause.txt",
"output": "art-bible/pause.png",
"references": [
"art-bible/gameplay-active.png"
],
"sourceRefs": [
"SCR-PAUSE",
"ST-PAUSED",
"UI-FROST-SHEET"
],
"covers": {
"screens": [
"SCR-PAUSE"
],
"states": [
"ST-PAUSED"
],
"mechanics": [],
"entities": [],
"environments": [],
"ui": [
"UI-FROST-SHEET"
],
"accessibility": [],
"vfx": []
},
"provenance": {
"createdBy": "OpenAI gpt-image-2 via Codex",
"createdAt": "2026-08-21T00:29:06.575Z"
},
"machineQa": {
"status": "passed",
"checks": [
"valid PNG",
"360x800 portrait",
"realistic final visually inspected",
"v0.4 source refs bound",
"rejected variants excluded"
]
}
},
{
"id": "ART-SUCCESS",
"standalone": true,
"orientation": "portrait",
"dimensions": {
"width": 360,
"height": 800
},
"prompt": "image-prompts/success.txt",
"output": "art-bible/success.png",
"references": [
"art-bible/gameplay-active.png"
],
"sourceRefs": [
"SCR-SUCCESS",
"ST-SUCCESS"
],
"covers": {
"screens": [
"SCR-SUCCESS"
],
"states": [
"ST-SUCCESS"
],
"mechanics": [],
"entities": [],
"environments": [],
"ui": [],
"accessibility": [],
"vfx": []
},
"provenance": {
"createdBy": "OpenAI gpt-image-2 via Codex",
"createdAt": "2026-08-21T00:29:06.575Z"
},
"machineQa": {
"status": "passed",
"checks": [
"valid PNG",
"360x800 portrait",
"realistic final visually inspected",
"v0.4 source refs bound",
"rejected variants excluded"
]
}
},
{
"id": "ART-FAILURE",
"standalone": true,
"orientation": "portrait",
"dimensions": {
"width": 360,
"height": 800
},
"prompt": "image-prompts/failure.txt",
"output": "art-bible/failure.png",
"references": [
"art-bible/gameplay-active.png"
],
"sourceRefs": [
"SCR-FAILURE",
"ST-FAILURE"
],
"covers": {
"screens": [
"SCR-FAILURE"
],
"states": [
"ST-FAILURE"
],
"mechanics": [],
"entities": [],
"environments": [],
"ui": [],
"accessibility": [],
"vfx": []
},
"provenance": {
"createdBy": "OpenAI gpt-image-2 via Codex",
"createdAt": "2026-08-21T00:29:06.575Z"
},
"machineQa": {
"status": "passed",
"checks": [
"valid PNG",
"360x800 portrait",
"realistic final visually inspected",
"v0.4 source refs bound",
"rejected variants excluded"
]
}
},
{
"id": "ART-SETTINGS",
"standalone": true,
"orientation": "portrait",
"dimensions": {
"width": 360,
"height": 800
},
"prompt": "image-prompts/settings.txt",
"output": "art-bible/settings.png",
"references": [
"art-bible/gameplay-active.png"
],
"sourceRefs": [
"SCR-SETTINGS",
"UI-SETTING-ROW",
"A-TEXT"
],
"covers": {
"screens": [
"SCR-SETTINGS"
],
"states": [],
"mechanics": [],
"entities": [],
"environments": [],
"ui": [
"UI-SETTING-ROW"
],
"accessibility": [
"A-TEXT"
],
"vfx": []
},
"provenance": {
"createdBy": "OpenAI gpt-image-2 via Codex",
"createdAt": "2026-08-21T00:29:06.575Z"
},
"machineQa": {
"status": "passed",
"checks": [
"valid PNG",
"360x800 portrait",
"realistic final visually inspected",
"v0.4 source refs bound",
"rejected variants excluded"
]
}
},
{
"id": "ART-ACCESSIBILITY",
"standalone": true,
"orientation": "portrait",
"dimensions": {
"width": 360,
"height": 800
},
"prompt": "image-prompts/accessibility.txt",
"output": "art-bible/accessibility.png",
"references": [
"art-bible/gameplay-active.png"
],
"sourceRefs": [
"SCR-ACCESSIBILITY",
"A-COLOR",
"A-MOTION",
"A-TEXT",
"A-HAPTIC",
"A-READER",
"A-TAP"
],
"covers": {
"screens": [
"SCR-ACCESSIBILITY"
],
"states": [],
"mechanics": [],
"entities": [],
"environments": [],
"ui": [],
"accessibility": [
"A-COLOR",
"A-MOTION",
"A-TEXT",
"A-HAPTIC",
"A-READER",
"A-TAP"
],
"vfx": []
},
"provenance": {
"createdBy": "OpenAI gpt-image-2 via Codex",
"createdAt": "2026-08-21T00:29:06.575Z"
},
"machineQa": {
"status": "passed",
"checks": [
"valid PNG",
"360x800 portrait",
"realistic final visually inspected",
"v0.4 source refs bound",
"rejected variants excluded"
]
}
},
{
"id": "ART-LEGAL",
"standalone": true,
"orientation": "portrait",
"dimensions": {
"width": 360,
"height": 800
},
"prompt": "image-prompts/legal-error.txt",
"output": "art-bible/legal-error.png",
"references": [
"art-bible/gameplay-active.png"
],
"sourceRefs": [
"SCR-LEGAL",
"ST-ERROR",
"UI-ERROR-SHEET",
"UI-LEGAL-LIST"
],
"covers": {
"screens": [
"SCR-LEGAL"
],
"states": [
"ST-ERROR"
],
"mechanics": [],
"entities": [],
"environments": [],
"ui": [
"UI-ERROR-SHEET",
"UI-LEGAL-LIST"
],
"accessibility": [],
"vfx": []
},
"provenance": {
"createdBy": "OpenAI gpt-image-2 via Codex",
"createdAt": "2026-08-21T00:29:06.575Z"
},
"machineQa": {
"status": "passed",
"checks": [
"valid PNG",
"360x800 portrait",
"realistic final visually inspected",
"v0.4 source refs bound",
"rejected variants excluded"
]
}
}
],
"visualBoards": [
{
"id": "BOARD-VISUAL-BLUEPRINT",
"role": "generation-blueprint",
"output": "art-bible/visual-blueprint.png",
"dimensions": {
"width": 2048,
"height": 1152
},
"assetIds": [
"ART-GAMEPLAY"
],
"sourceRefs": [
"M-PREVIEW",
"M-SWAP",
"P-ORDER",
"E-WEIGHT-1",
"E-HOOK",
"UI-TARGET-CARD",
"V-GHOST"
],
"provenance": {
"createdBy": "deterministic board compositor",
"createdAt": "2026-08-21T00:29:06.575Z"
},
"machineQa": {
"status": "passed",
"checks": [
"valid PNG",
"2048x1152 exact dimensions",
"realistic gameplay master included",
"GDD v0.4 structural copy"
]
}
},
{
"id": "BOARD-IMPLEMENTATION-OVERVIEW",
"role": "implementation-overview",
"output": "art-bible/implementation-board.png",
"dimensions": {
"width": 3840,
"height": 2160
},
"assetIds": [
"ART-GAMEPLAY",
"ART-GAMEPLAY-STATES",
"ART-ONBOARDING",
"ART-HOME",
"ART-PAUSE",
"ART-SUCCESS",
"ART-FAILURE",
"ART-SETTINGS",
"ART-ACCESSIBILITY",
"ART-LEGAL"
],
"sourceRefs": [
"M-PICK",
"M-PREVIEW",
"M-SWAP",
"M-SETTLE",
"P-ORDER",
"M-UNDO",
"A-COLOR",
"A-MOTION",
"A-TEXT",
"A-READER"
],
"provenance": {
"createdBy": "deterministic board compositor",
"createdAt": "2026-08-21T00:29:06.575Z"
},
"machineQa": {
"status": "passed",
"checks": [
"valid PNG",
"3840x2160 exact dimensions",
"all ten realistic assets represented",
"deterministic text legible at full resolution"
]
}
}
]
}