{
  "schemaVersion": "japheth.collaborative-canvas.v2",
  "experimentId": "2026-08-26-babel-fifty-thousand-collaboration",
  "title": "Babel: Fifty Thousand Voices",
  "publishedAt": "2026-08-25",
  "description": "One deterministic Tower of Babel code painting developed through five parallel model routes, visual critique, complete-source revision branches, four synthesis passes, local 8K rendering, and a granular source-operation GIF replay.",
  "brief": "Tower of Babel as a civilization building one impossible vertical city while language fractures into weather, light, procession, and living masonry. The painting should feel monumental at a distance and reward close inspection with human-scale life. Tasteful, strange, emotionally legible, full creative freedom; at least 50,000 meaningful paint primitives, 8K final canvas, and an authentic granular GIF replay.",
  "method": {
    "imageGenerationModelUsed": false,
    "fixedSceneTemplateUsed": false,
    "protocol": [
      "five parallel independent art directions",
      "locally authored and rendered version 1",
      "parallel image-and-source visual critique",
      "four parallel complete-source revision responses",
      "local validation and rendering of three viable revision branches",
      "Codex synthesis into versions 2 and 3",
      "second parallel image-and-source visual critique",
      "final visual jury and surgical version 4 revision",
      "instrumented operation-count verification",
      "local UHD 8K render and granular source-operation GIF replay"
    ],
    "tools": [
      "OpenRouter",
      "OpenCode Go",
      "p5.js",
      "p5.brush",
      "Playwright Chromium",
      "ImageMagick",
      "cwebp"
    ],
    "providerLedger": {
      "rounds": 5,
      "attempted": 24,
      "succeeded": 18,
      "failed": 6,
      "promptTokens": 96721,
      "completionTokens": 33650,
      "totalTokens": 130371,
      "recordedCostUsd": 0.1901019,
      "accounting": "Top-level usage from each provider attempt was counted once; duplicated raw response usage was excluded."
    }
  },
  "contributors": [
    {
      "name": "GPT-5.6 Luna",
      "modelId": "openai/gpt-5.6-luna",
      "providers": ["OpenRouter", "OpenCode Go"],
      "role": "direction, two visual critiques, complete-source revision branch; final-jury OpenCode Go request was quota-blocked"
    },
    {
      "name": "Inkling",
      "modelId": "thinkingmachines/inkling",
      "providers": ["OpenRouter"],
      "role": "direction, three visual critiques, complete-source revision branch; final jury supplied the accepted surgical directives"
    },
    {
      "name": "Ox Alpha",
      "modelId": "stealth/ox-alpha",
      "providers": ["OpenRouter"],
      "role": "independent direction; four later collaboration requests returned HTTP 429"
    },
    {
      "name": "DeepSeek V4 Flash",
      "modelId": "deepseek/deepseek-v4-flash",
      "providers": ["OpenRouter", "OpenCode Go"],
      "role": "direction, source-aware critiques, complete-source revision branch; image input fell back to source only and the final-jury OpenCode Go request was quota-blocked"
    },
    {
      "name": "Qwen 3.8 Max",
      "modelId": "qwen/qwen3.8-max",
      "providers": ["OpenRouter"],
      "role": "direction and two critiques; complete-source revision response was retained but failed JavaScript validation"
    },
    {
      "name": "Codex",
      "modelId": "codex",
      "provider": "OpenAI",
      "role": "orchestration, art direction, branch rendering, four-pass synthesis, measurement, replay, and publication"
    }
  ],
  "collaborationRounds": [
    {
      "id": "round-00-parallel-direction",
      "phase": "direction",
      "attempted": 5,
      "succeeded": 5,
      "failed": 0,
      "tokens": 6058,
      "recordedCostUsd": 0.01146414,
      "results": [
        {"provider": "OpenRouter", "modelId": "openai/gpt-5.6-luna", "status": "success", "generationId": "gen-1787705742-p23Kug869P6uQNoUxUUc"},
        {"provider": "OpenRouter", "modelId": "thinkingmachines/inkling", "status": "success", "generationId": "gen-1787705742-zOpHv4SLIfgmddEFWKvN"},
        {"provider": "OpenRouter", "modelId": "stealth/ox-alpha", "status": "success", "generationId": "gen-1787705742-xosEFctZyTeImr0WElzv"},
        {"provider": "OpenRouter", "modelId": "deepseek/deepseek-v4-flash", "status": "success", "generationId": "gen-1787705742-avSSd1f20RYH3ADcCVeN"},
        {"provider": "OpenRouter", "modelId": "qwen/qwen3.8-max", "status": "success", "generationId": "gen-1787705742-5k8DsyKYWnK8hrzhQk9f"}
      ]
    },
    {
      "id": "round-01-v1-visual-critique",
      "phase": "critique",
      "attempted": 5,
      "succeeded": 4,
      "failed": 1,
      "tokens": 27379,
      "recordedCostUsd": 0.03204806,
      "results": [
        {"provider": "OpenRouter", "modelId": "openai/gpt-5.6-luna", "status": "success", "generationId": "gen-1787705941-5SZ78MhW9rn4pYnP3IzK"},
        {"provider": "OpenRouter", "modelId": "thinkingmachines/inkling", "status": "success", "generationId": "gen-1787705941-1jpxuBMkYM7PhTqG3g89"},
        {"provider": "OpenRouter", "modelId": "stealth/ox-alpha", "status": "failure", "error": "HTTP 429"},
        {"provider": "OpenRouter", "modelId": "deepseek/deepseek-v4-flash", "status": "success", "generationId": "gen-1787705952-iaXVPSgK3vQe2qQw0z1x", "input": "source-only fallback after no endpoint accepted image input"},
        {"provider": "OpenRouter", "modelId": "qwen/qwen3.8-max", "status": "success", "generationId": "gen-1787705941-SbFplDAKPVXCmk1LNZEA"}
      ]
    },
    {
      "id": "round-02-parallel-revision",
      "phase": "complete-source revision",
      "attempted": 5,
      "succeeded": 4,
      "failed": 1,
      "tokens": 49641,
      "recordedCostUsd": 0.09493492,
      "results": [
        {"provider": "OpenRouter", "modelId": "openai/gpt-5.6-luna", "status": "success", "generationId": "gen-1787706083-nIaCXXTi66Eny3YVTxUg", "validation": "rendered"},
        {"provider": "OpenRouter", "modelId": "thinkingmachines/inkling", "status": "success", "generationId": "gen-1787706083-tqSWVGNLAmzyjUcenI5D", "validation": "rendered"},
        {"provider": "OpenRouter", "modelId": "stealth/ox-alpha", "status": "failure", "error": "HTTP 429"},
        {"provider": "OpenRouter", "modelId": "deepseek/deepseek-v4-flash", "status": "success", "generationId": "gen-1787706115-4aeox3mIlM5ZaZBAgfXU", "input": "source-only fallback after no endpoint accepted image input", "validation": "rendered"},
        {"provider": "OpenRouter", "modelId": "qwen/qwen3.8-max", "status": "success", "generationId": "gen-1787706083-h7ReP5Wx6degcCiXC6v5", "validation": "failed: incomplete JavaScript, no proof render"}
      ]
    },
    {
      "id": "round-03-v2-visual-critique",
      "phase": "critique",
      "attempted": 5,
      "succeeded": 4,
      "failed": 1,
      "tokens": 37953,
      "recordedCostUsd": 0.04172778,
      "results": [
        {"provider": "OpenRouter", "modelId": "openai/gpt-5.6-luna", "status": "success", "generationId": "gen-1787706418-WCwDuc2yaVEBxTExZofB"},
        {"provider": "OpenRouter", "modelId": "thinkingmachines/inkling", "status": "success", "generationId": "gen-1787706417-VeH1u8TXyEJPH28jfw4c"},
        {"provider": "OpenRouter", "modelId": "stealth/ox-alpha", "status": "failure", "error": "HTTP 429"},
        {"provider": "OpenRouter", "modelId": "deepseek/deepseek-v4-flash", "status": "success", "generationId": "gen-1787706431-bnUBhUTIaGQvgJkiA4xA", "input": "source-only fallback after no endpoint accepted image input"},
        {"provider": "OpenRouter", "modelId": "qwen/qwen3.8-max", "status": "success", "generationId": "gen-1787706417-GtneRd7dlDoTYFSsigca"}
      ]
    },
    {
      "id": "round-04-v3-final-visual-jury",
      "phase": "final critique",
      "attempted": 4,
      "succeeded": 1,
      "failed": 3,
      "tokens": 9340,
      "recordedCostUsd": 0.009927,
      "results": [
        {"provider": "OpenCode Go", "modelId": "gpt-5.6-luna", "status": "failure", "error": "weekly usage limit"},
        {"provider": "OpenCode Go", "modelId": "deepseek-v4-flash", "status": "failure", "error": "weekly usage limit"},
        {"provider": "OpenRouter", "modelId": "thinkingmachines/inkling", "status": "success", "generationId": "gen-1787706825-viXURTdpMzXC6IVMx1DF"},
        {"provider": "OpenRouter", "modelId": "stealth/ox-alpha", "status": "failure", "error": "HTTP 429"}
      ]
    }
  ],
  "final": {
    "attemptId": "2026-08-26T01-16-28-ffa29e8f-ead1-4bc7-82f6-d8a6442d70fd",
    "sourceVersion": 4,
    "renderedSourceSha256": "bb5ee8ceb6a4e1566bc65f4699a772080d4049e3b70ca36185759a58348d0e12",
    "authoredCanvas": {"width": 2048, "height": 1152},
    "output": {"width": 7680, "height": 4320, "label": "UHD 8K"},
    "replay": {
      "processSpec": "source-checkpoints-v2",
      "strategy": "granular",
      "rawOperations": 55137,
      "granularStride": 700,
      "capturedCheckpoints": 93,
      "discardedWarmupCheckpoints": 1,
      "selectedFrames": 80,
      "encodedFrames": 96,
      "requestedFps": 8,
      "effectiveFps": 7.6923,
      "holdSeconds": 2,
      "holdFrames": 16,
      "width": 1024,
      "height": 576,
      "finalCheckpoint": "exact downsample of the approved 7680 × 4320 painting"
    },
    "rendererBuild": "vendored-p5.brush+atelier-v2-composition+offscreen-composite+centroid-fallback-fix+polygon-quad-fix+page-bound-readback-v1+exact-output-resample-v1"
  },
  "limitations": [
    "The 55,137 count is the instrumented total of wrapped p5 drawing operations and structural checkpoints, not a claim of 55,137 individually hand-painted brush dabs.",
    "Ox Alpha completed the initial direction, but its four later calls returned OpenRouter HTTP 429.",
    "The final OpenCode Go jury calls for Luna and DeepSeek were attempted after that account reached its weekly limit and returned no model response.",
    "DeepSeek V4 Flash's OpenRouter endpoint did not accept image input, so its successful critique and revision calls received the complete source but not the rendered proof.",
    "Qwen 3.8 Max returned a nominally successful revision response whose extracted JavaScript was incomplete; it failed local syntax validation and produced no proof image.",
    "The 1024 × 576 GIF is a downscaled replay; its final visible state is derived directly from the approved 8K master."
  ],
  "artifacts": [
    {"path": "babel-fifty-thousand-8k.png", "role": "lossless UHD 8K master", "bytes": 12275014, "width": 7680, "height": 4320, "sha256": "cbece35f1d8ff314de8dbe541bd29fc5dd4233c9c2afaefd53aa7991b2a3fc0f"},
    {"path": "babel-fifty-thousand-8k.webp", "role": "compressed UHD 8K master", "bytes": 2103962, "width": 7680, "height": 4320, "sha256": "b7f64aeb42ee9f79950b5d179aac9e4230144dc232cbfa350a67b3a456f9b239"},
    {"path": "babel-fifty-thousand-display.webp", "role": "article and gallery display", "bytes": 671558, "width": 3840, "height": 2160, "sha256": "7075ccf783c16c5b70070e2de37234dd96910f4fecd92c2393d01e753cca08c2"},
    {"path": "babel-fifty-thousand-process.gif", "role": "animated granular source-operation replay", "bytes": 688844, "width": 1024, "height": 576, "frames": 96, "sha256": "4a249411fc3a75dc264b88bf410512220e8619a1b5b3a4d70f62bf17adc36e9d"},
    {"path": "babel-fifty-thousand-source.js.txt", "role": "complete deterministic painting source with publication-only path comments removed", "bytes": 17000, "lines": 432, "sha256": "907caa5a228e2845dc13c25ac25ba7ca63a6c5a0513a2484435dedc3663228ff"}
  ]
}
