{
 "schema_version": "1.0",
 "page_kind": "article",
 "pack_kind": "generate",
 "slug": "how-the-print-lab-works",
 "title": "How the print lab works",
 "dek": "A darkroom that develops three pictures a day for your household, a board that fills up and then finishes for good, and an archive where nobody has a name.",
 "published": "2026-09-11",
 "series": [
  "guide"
 ],
 "licence": "CC BY 4.0",
 "status": "pending-judge",
 "pack_note": "no judge is seated, so every chip is held",
 "notice": "items with published:false are held and are not this page's published words",
 "source": {
  "url": "https://research.strata2signal.com/how-the-print-lab-works/",
  "md_url": "https://research.strata2signal.com/how-the-print-lab-works/index.md",
  "md_sha": "697980bbaef2f3c5da9ce80720c5c9426ae62e215acc4f3adb358ae00f3bc490",
  "html_sha": "dea677ac2dbf1bcebe3508eac9c4664515ad66613aeacd3aee4dd5f58a9ad326",
  "anchors_sha": "192063cbcdeb95ef14f453c6a54628b2d59b333ee7cf2a98ec96b5549bfd505e"
 },
 "short": {
  "paragraph": "a public art board with a darkroom attached, built for friends and family on a tablet on the couch. you give it two words, an image model on a card we own draws three plates in about eighteen seconds, and you keep one or none. three pictures a day for your household, no account, and nothing kept about you but a hashed address that lives two days. every word is read by two models before it draws and the picture by a third before it hangs; the board of a hundred and forty-four fills, freezes, cures for three days in public, and seals for good. this page says what the lab keeps, for how long, what it measured, and what it cannot take back.",
  "from_dek": false,
  "counts": {
   "words": 10407,
   "minutes": 47,
   "tables": 1,
   "kit": false
  },
  "bullets": [
   {
    "text": "the darkroom developed everything it had today on 2026-09-07",
    "figure": "2026-09-07",
    "cite": "what-it-is",
    "quote": "That was re-cut on 2026-09-07 after walking the live lab, because a world that painted its own stock scene and garnished it with your words made every print look the same; now your words are the subject and the world is the skin it wears.",
    "span": [
     4466,
     4477
    ]
   },
   {
    "text": "the board sprite on the set that hangs measures 5,191,824 bytes",
    "figure": "5,191,824 bytes",
    "cite": "numbers-so-it-isnt-just-talk",
    "quote": "The same clause: this seat did not move, and its seconds do not move with the plates the doorman against the words that must stop at the door measured 2026-09-03: 13 of 13 held (real people, offices, brands, deities, a steering word, an artist's name); 0 of 175 harmless words refused, after three of the lab's own suggested words were rewritten because the doorman refused them; of five deliberately loaded descriptions of a person, the description reading held one - the picture gate is the layer behind it the picture gate against hand labels 157 pictures over two rounds (2026-09-01/02), 156 of them labelled by hand: missed 9 of the 33 we would have held back (none in the firm band - 11 of 11 caught; seven of the nine held back to be safe, not wrong), 1 false alarm in 123 harmless pictures the whole board as one sprite, 144 cells 5,330,428 bytes (5.3 MB), 1.12 s to encode, on a full board built from the first set's twelve first-light renders used twelve times each (2026-09-02); 5,191,824 bytes (5.2 MB), 1.12 s, on the set that hangs, the same way (2026-09-09 - the dated note below) The rule behind every number: warm means the model was already loaded; a median is taken over the run named in the row; nothing is rounded to make it read better than it measured.",
    "span": [
     49924,
     49942
    ]
   },
   {
    "text": "the whole picture on the card that draws today takes about 18.5 s",
    "figure": "18.5 s",
    "cite": "numbers-so-it-isnt-just-talk",
    "quote": "The lab draws on the second of those - that is the card it is pinned to - so at eight passes a picture cost about ten seconds of card time (9.86 s median for the three drawn as one batch, measured on that same card); the first plate after a cold start on that card measured 27 s by the same clock three plates drawn as one batch versus three drawn one at a time, at the old eight-pass setting (2026-09-01) 2.07× the throughput per plate, measured on the card that draws today; not re-measured at thirty-two passes, and the block below does not need it - it measures the batch directly a whole picture - three plates - on the card that draws today measured, not derived: 18.5 s a picture - the dated block below carries the window, the twelve readings' spread, the cold first draw and the charge the picture gate judging one finished plate 1.93 s per judgement (median over 471 judgements, 2026-09-02); three judgements per plate, about 5.8 s of the card's time.",
    "span": [
     48180,
     48187
    ]
   }
  ]
 },
 "sections": [
  {
   "id": "what-it-is",
   "heading": "What it is",
   "level": 2,
   "span": [
    1700,
    7690
   ],
   "chunks": [
    [
     1700,
     7690
    ]
   ],
   "chars": 5990,
   "digest": "the print lab is a public art board with a darkroom where users provide words to receive three drawings. users pick a world, a subject, and words to create a picture. once a set of 144 slots is filled, the set freezes, cures for three days, and is then sealed into a tapestry for the archive.",
   "digest_skipped": null
  },
  {
   "id": "where-your-words-go-and-who-draws",
   "heading": "Where your words go, and who draws",
   "level": 2,
   "span": [
    7690,
    12269
   ],
   "chunks": [
    [
     7690,
     12269
    ]
   ],
   "chars": 4579,
   "digest": "words are sent to a web server and then to a workshop where models run on owned graphics cards. the plates are drawn by an open-weight image model, FLUX.2 klein, at 512 by 512 pixels. the back of every tile prints the model, its licence, and the specific settings used for the drawing.",
   "digest_skipped": null
  },
  {
   "id": "three-pictures-a-day-and-the-hours-the-darkroom-keeps",
   "heading": "Three pictures a day — and the hours the darkroom keeps",
   "level": 2,
   "span": [
    12269,
    19411
   ],
   "chunks": [
    [
     12269,
     19411
    ]
   ],
   "chars": 7142,
   "digest": "the darkroom develops three pictures for a household each day, with each picture consisting of three plates. there is a daily limit of two hours and ten minutes of drawing time. the system uses hashed network addresses to manage allowances, and the darkroom is only open when the drawing machine and reading models are active.",
   "digest_skipped": null
  },
  {
   "id": "what-happens-to-your-words",
   "heading": "What happens to your words",
   "level": 2,
   "span": [
    19411,
    24856
   ],
   "chunks": [
    [
     19411,
     24856
    ]
   ],
   "chars": 5445,
   "digest": "words are checked by a doorman model to ensure they are safe for a family board. the finished description and the picture are also read by models to prevent inappropriate content. if a picture is refused due to an accident, it is refunded, but the lab limits these refunds to one per household each day.",
   "digest_skipped": null
  },
  {
   "id": "the-board",
   "heading": "The board",
   "level": 2,
   "span": [
    24856,
    29937
   ],
   "chunks": [
    [
     24856,
     29937
    ]
   ],
   "chars": 5081,
   "digest": "the board consists of 144 slots that are shuffled at the close of each day. users can sign a tile to claim it and use a claim key to take it down. the board is fetched as a single 5.2 megabytes sprite when full, and the archive preserves the final shape of each sealed set.",
   "digest_skipped": null
  },
  {
   "id": "when-a-set-fills-freeze-cure-seal",
   "heading": "When a set fills: freeze, cure, seal",
   "level": 2,
   "span": [
    29937,
    32765
   ],
   "chunks": [
    [
     29937,
     32765
    ]
   ],
   "chars": 2828,
   "digest": null,
   "digest_skipped": null
  },
  {
   "id": "what-the-lab-does-with-what-you-give-it",
   "heading": "What the lab does with what you give it",
   "level": 2,
   "span": [
    32765,
    45842
   ],
   "chunks": [
    [
     32765,
     45842
    ]
   ],
   "chars": 13077,
   "digest": "the lab keeps words on the back of prints and uses hashed addresses for counting. plates not chosen are deleted quickly, though nightly machine copies may hold them briefly. the lab also maintains database dumps and nightly copies, with specific retention rules for words, descriptions, and the finished manifest of a sealed set.",
   "digest_skipped": null
  },
  {
   "id": "numbers-so-it-isnt-just-talk",
   "heading": "Numbers, so it isn't just talk",
   "level": 2,
   "span": [
    45842,
    55544
   ],
   "chunks": [
    [
     45842,
     55544
    ]
   ],
   "chars": 9702,
   "digest": "the article provides measured data for various processes, including plate rendering, picture gate judgements, and doorman readings. it details how a whole picture takes 18.5 s on the current card and notes that the board sprite measures 5,191,824 bytes on the current set.",
   "digest_skipped": null
  },
  {
   "id": "what-to-take-with-you",
   "heading": "What to take with you",
   "level": 2,
   "span": [
    55544,
    56067
   ],
   "chunks": [
    [
     55544,
     56067
    ]
   ],
   "chars": 523,
   "digest": "the print lab allows users to put art and words on a public board. once a set is sealed, the archive keeps the work. the darkroom is accessible at the provided web address.",
   "digest_skipped": null
  },
  {
   "id": "who-ran-this-and-thanks",
   "heading": "Who ran this, and thanks",
   "level": 2,
   "span": [
    56067,
    57682
   ],
   "chunks": [
    [
     56067,
     57682
    ]
   ],
   "chars": 1615,
   "digest": null,
   "digest_skipped": "credits"
  }
 ],
 "chips": [
  {
   "id": "c-369ec2bf",
   "q": "how does the print lab process a user's input?",
   "a": "A user provides a word or two, and an image model draws three pictures. The user keeps one plate or none. The process involves selecting a world, a subject, and words through a series of steps before confirming the final print.",
   "cites": [
    "what-it-is"
   ],
   "published": false,
   "publish_state": "held",
   "quote": "",
   "quote_cite": ""
  },
  {
   "id": "c-1333b533",
   "q": "how are user words and prompts handled by the server?",
   "a": "Words are sent to a rented virtual machine and passed over encrypted links to a workshop where models run. No AI company sees the words, and no picture or prompt reaches any machine outside the described infrastructure.",
   "cites": [
    "where-your-words-go-and-who-draws"
   ],
   "published": false,
   "publish_state": "held",
   "quote": "",
   "quote_cite": ""
  },
  {
   "id": "c-17f66270",
   "q": "what criteria must words meet to be published?",
   "a": "Words must be one to twenty-four unaccented English letters, potentially including one internal hyphen or an apostrophe. A language model reads the word to ensure it is safe for a family board before the full prompt is processed.",
   "cites": [
    "what-happens-to-your-words"
   ],
   "published": false,
   "publish_state": "held",
   "quote": "",
   "quote_cite": ""
  },
  {
   "id": "c-3b8aa7b0",
   "q": "how is the board's privacy maintained during shuffles?",
   "a": "At the close of each day (UTC), tiles from that day are shuffled among themselves. This ensures the order of arrival disappears from the board, though the pictures and the small mark for browser identification remain.",
   "cites": [
    "the-board"
   ],
   "published": false,
   "publish_state": "held",
   "quote": "",
   "quote_cite": ""
  },
  {
   "id": "c-069ebe82",
   "q": "what happens after the hundred and forty-fourth tile lands?",
   "a": "The set freezes, then cures for seventy-two hours. During this time, tiles can be reported or withdrawn. Once the cure ends, the tiles are joined into a single tapestry for the archive.",
   "cites": [
    "when-a-set-fills-freeze-cure-seal"
   ],
   "published": false,
   "publish_state": "held",
   "quote": "",
   "quote_cite": ""
  },
  {
   "id": "c-62b18995",
   "q": "what information is retained on a user's device?",
   "a": "A device may keep claim keys for signed tiles, handles for pictures in progress, typed words in an open tab for up to six hours, and preferences regarding the light or dark page.",
   "cites": [
    "what-the-lab-does-with-what-you-give-it"
   ],
   "published": false,
   "publish_state": "held",
   "quote": "",
   "quote_cite": ""
  },
  {
   "id": "c-f352180c",
   "q": "how long does a single picture take to draw?",
   "a": "A whole picture consisting of three plates takes about 18.5 seconds by the tool's own clock. The lab charges twenty-two seconds of the card's time, based on the slowest draw in a batch rounded up to the next second.",
   "cites": [
    "numbers-so-it-isnt-just-talk"
   ],
   "published": false,
   "publish_state": "held",
   "quote": "",
   "quote_cite": ""
  }
 ],
 "related": [
  {
   "slug": "how-the-beat-lab-works",
   "why": "shares ground with § What to take with you · § What the lab does with what you give it"
  },
  {
   "slug": "six-worlds-painted-large",
   "why": "shares ground with § What it is · § Six worlds for a print lab that is coming soon"
  },
  {
   "slug": "the-beat-lab-asked-and-answered",
   "why": "shares ground with § What it is · § What is the board?"
  }
 ],
 "thanks": "## Who ran this, and thanks {#who-ran-this-and-thanks}\n\nThe plates are drawn by **FLUX.2 klein 4B** (Black Forest Labs, Apache-2.0) through **ComfyUI** (GPL-3.0), on **PyTorch** (BSD-3-Clause) over **CUDA** (NVIDIA, proprietary — the CUDA Toolkit EULA): the one closed piece in the stack, and it comes with the cards. Words are read by **Mistral Small 3.2** (Mistral AI, Apache-2.0) and pictures by **Gemma 4** (Google DeepMind, Apache-2.0), both served by **Ollama** (MIT). The lab itself is **Python** from the standard library (PSF-2.0), with **psycopg** (LGPL-3.0) talking to **PostgreSQL** (PostgreSQL licence); the metadata-stripping re-encode is written against Python's own zlib and struct, so no image library runs on the public host, and **zlib** (zlib licence) is the compressor underneath it. The front door is **Caddy** (Apache-2.0). Every licence named here was opened first-hand and recorded in the lab's own ledger with the hash of what was fetched — a licence file where the project publishes one, and for three of them a vendor's page or a model card's own licence line, which the ledger marks as the weaker receipt and quotes rather than merely hashing. None of them asks for this credit, which is exactly why we give it. The tile receipts and the bench numbers were checked and signed by the humans in the workshop; so are the gate labels, by hand, before any rate from them appears above. None of these projects owed us anything.\n\n*Corrections and later measurements will be added below, each dated (UTC), with a window at both ends where one applies and saying in plain words what it counts.*",
 "kit": null,
 "seat_class": {
  "writer": "gemma-class",
  "judge": null,
  "writer_runtime": "vllm"
 },
 "bench": {
  "bullets_written": 3,
  "bullets_kept": 3,
  "digests_written": 9,
  "digests_kept": 8,
  "chips_written": 8,
  "chips_kept": 7,
  "chips_grounded": 0,
  "chips_published": 0,
  "dropped_by": {
   "new_noun": 2,
   "figure": 0,
   "length": 0,
   "cite": 0,
   "judge": 0,
   "quote": 0,
   "directive": 0,
   "redaction": 0,
   "profanity": 0,
   "identifier": 0
  },
  "new_noun_tokens_checked": [
   "144",
   "18.5",
   "191",
   "2026-09-07",
   "5",
   "5.2",
   "512",
   "824",
   "AI",
   "English",
   "FLUX.2",
   "UTC"
  ],
  "new_noun_tokens_withheld": 2,
  "figure_definition": "v3",
  "drops": [
   {
    "kind": "digest",
    "reason": "new_noun",
    "item": null,
    "item_chars": 5,
    "withheld": "a string naming something the article does not",
    "detail": ""
   },
   {
    "kind": "chip",
    "reason": "new_noun",
    "item": null,
    "item_chars": 3,
    "withheld": "a string naming something the article does not",
    "detail": ""
   }
  ]
 },
 "generated_utc": "2026-09-12T18:55:18Z"
}
