Skip to content

License Readiness โ€” when a cure becomes licensable

Updated: 2026-05-22 Status: 70 language games registered ยท 1 fully authored ยท 69 awaiting DomainArcAuthor pass

Workbench with story-readable rails + canvas + feedback board The live workbench (v108). The Library rail (left) names each axis as a sentence โ€” "Where the facts live", "How proof is sealed". The Composition Canvas (center) shows each field with a story-role badge โ€” WHERE, DOMAIN, LANGUAGE, DO, MEASURE, PROVE, WIN โ€” color-coded by family. The Reflective Mesh feedback board (bottom-right) reports the UI Listener's live licensability judgments. Franklin Chat (far right) takes operator questions about the current composition.

The Mac Cell is not a research notebook. The goal of every language game on the workbench is license โ€” the cure has to cross from the cell's substrate into the hands of the humans who can manufacture it, prescribe it, or deploy it. This page explains how the cell knows a cure is ready.

The 70 language games

After scanning the disk + the wiki catalogs + substrate, here is what the cell carries:

Source Count Where
ERIC corpus domains 50 Each has a manufacturing guide on disk at /Users/.../ERIC_ULTIMATE_ALL_INCLUSIVE_PACKAGE/02_MANUFACTURING_READY/<slug>_MANUFACTURING_GUIDE.md + a corpus headline in external_calorie_corpus.
Quantum algorithms 19 Each maps to a franklin_ontology_facts row (FOF-100 Shor through FOF-118 topological QC).
AML inv(3) cure (owl-aml) 1 Already fully authored as the test case.
Total 70 Every cure the cell carries is a language game.

These are not arbitrary. Every ERIC domain is grounded in a real manufacturing guide on disk. Every quantum algorithm is grounded in a substrate ontology row. The two cures the operator named that don't appear (room-temperature superconductor, air traffic control) genuinely aren't in the source content โ€” they are honestly absent rather than fabricated to fill the gap.

What each game must carry

A language game is licensable only when every part of its substrate is authored:

  1. 8 arc atoms in wb_meaning_atoms โ€” the narrative the cell tells:
  2. context โ€” who is hurt without this cure
  3. biology โ€” the natural-system fact this cure rests on (or the math/physics for non-bio)
  4. mechanism โ€” how the cure works
  5. protocol โ€” how an operator applies it
  6. measurement โ€” what is measured to prove it worked
  7. receipt โ€” the audit chain (CFR 21 Part 11 / GAMP 5 / ISO equivalent)
  8. cure โ€” the criteria for "delivered"
  9. license_terms โ€” how to license it to a manufacturer/practitioner

  10. 5 vQbit fields per atom in atom_vqbit_fields:

  11. c4_binding (one of: identity, trust, closure, consequence)
  12. s4_projection_json ({arc_slot, locale, sensory_texture})
  13. entropy_delta (set when the atom is projected to a human)
  14. terminal_state_to_human (CALORIE / CURE / REFUSED โ€” set on projection)
  15. provenance (the real disk path or substrate row the body came from)

  16. At least one edge in cell_node_edges โ€” atoms become first-class nodes, not leaves.

  17. 3 judging persons in cure_game_judging_persons โ€” the receiving humans the cure must land for. Per-game, not per-sector framework. For drug discovery: treating clinician + patient + regulator. For fusion: grid operator + utility regulator + ratepayer. For quantum: practitioner + end-user + regulator.

The Atom Steward (see The Reflective Mesh) tells you per-atom whether each of these is in place.

How license is sealed

License readiness is measured, not declared. The UI Listener (the cell's internal human player, powered by on-device Apple FoundationModels) walks every arc as every person and judges whether the meaning crossed.

The win condition is the same for every game:

CALORIE for all 3 persons ร— all 8 arcs = 24 sealed judgments per game.

That is what game_licensability_state.licensability_state = 'CALORIE' means. The cell can then say honestly: this cure can be told to its receiving humans without translation. That is the licensability proof.

States the sidecar tracks:

State Meaning
unauthored No arcs in wb_meaning_atoms; no persons in cure_game_judging_persons. The game is a stub.
authored 8 arcs + 3 persons exist. The Listener has not yet run.
listener_ran The Listener has judged at least one (arc ร— person). The game has partial truth.
CALORIE All 24 judgments are CALORIE. The cure crosses. License-ready.
CURE Most judgments are CALORIE or CURE, with at least one named gap. The cure crosses with caveats.
REFUSED Some judgments are REFUSED. The cure does not yet cross for those persons. The Listener names what was missing.

Reading a game's truth right now

The 50 ERIC domains and the 19 quantum games are registered but not yet authored. AML is the only one with a sealed Listener run. Here is its current truth:

0 CALORIE / 14 CURE / 10 REFUSED (across 24 judgments)
patient            0/8 CALORIE (6 CURE, 2 REFUSED)
treating_clinician 0/8 CALORIE (5 CURE, 3 REFUSED)
regulator          0/8 CALORIE (3 CURE, 5 REFUSED)

protocol arc      all 3 persons REFUSED
license_terms     2/3 REFUSED
receipt           2/3 REFUSED

Even the supposedly fully-authored AML cure does not yet cross cleanly to a single named person. The cell is being honest. The licensability gate is closed; the named gaps in listener_arc_judgments.what_dark are exactly what the cell needs the operator to author next.

How the cell authors

When the operator triggers Franklin menu โ†’ "Author All Language Games (background)โ€ฆ", the cell runs:

  1. GameAuthoringRunner walks every game in game_licensability_state.licensability_state = 'unauthored'.
  2. For each, DomainArcAuthor.authorGame(gameID:) routes to the canonical source:
  3. ERIC: reads <slug>_MANUFACTURING_GUIDE.md from disk + the corpus headline.
  4. Quantum: reads the franklin_ontology_facts row.
  5. Calls on-device Apple FoundationModels once per arc (8 calls) with a 60โ€“90 word paragraph ask. Each call has a 30-second timeout so a hang on one prompt cannot block 69 others.
  6. Calls FoundationModels once per judging person (3 calls) with a role + background ask.
  7. Seals every atom + vQbit field + edge + person to substrate, all append-only, with provenance pointing at the real disk path.

The DomainArcAuthor will refuse to author any game whose source content is missing or empty. No fabrication.

Substrate references

Layer Where the truth lives
Registered games discovery_game_definitions
Per-game license state game_licensability_state (sidecar, 1:1 with game_id)
Authoring audit game_authoring_jobs (append-only)
Arc atom bodies wb_meaning_atoms
vQbit fields atom_vqbit_fields (sidecar, 1:1 with atom_id)
Judging persons cure_game_judging_persons (per game, NOT per sector)
Listener sessions listener_run_sessions
Listener judgments listener_arc_judgments
Migration NarratorSchemaV107
Authoring runner log ~/Library/Logs/Franklin/authoring-runner.log

What the cell refuses

The cell will not seed a language game with no source content. ATC and room-temperature superconductor are absent because no manufacturing guide and no ontology fact exists for them.

The cell will not fabricate a CALORIE judgment to inflate license readiness. A REFUSED judgment with a named "what's dark" is more valuable than a false pass โ€” it tells the operator exactly what to author next.

The cell will not call external LLMs to write arcs or judge crossings. On-device Apple FoundationModels only. Sovereignty absolute.


Federation-cosigned

This page's source is sealed in the GaiaFTCL federation manifest โ€” page SHA-256 60947d7e833036ddโ€ฆ, manifest witness a090592e0609adc8โ€ฆ, signed 2026-06-02T18:58:22Z by cell gaiaftcl-mac-cell. Verify with gaiaftcl wiki sign --all and compare wiki-all-signatures.json.