# ADR 0176: Persona-Native Code Channel Runtime Kernel ## Status Accepted on 2026-08-11. ## Context HoloLake already has a mature native Git execution layer and an append-only local HLDP event/checkpoint mechanism. Neither one is a persona lifecycle controller. A Git repository can preserve history without proving that the correct persona brain, node, model binding, organ, attribution, or single-primary lease is active. The existing generic Agent streams also cannot become the persona subject. ## Decision Introduce `src-tauri/src/persona_code_channel.rs` as the first GH-PNCC runtime kernel. Its initial command, `prepare_persona_code_channel_wake`, performs a fail-closed preparation stage: 1. resolve an exact Git root and full expected `HEAD`; 2. require a clean work tree; 3. load `.hololake/persona/manifest.json` with schema `hololake.persona/v1`; 4. validate the persona id, human responsibility subject, brain entry, current checkpoint, and one declared read-only organ without allowing path escape; 5. atomically acquire a per-persona primary lease outside the persona Git; 6. emit `WAKING → BRAIN_BOUND → ORGAN_ACTIVE` as a SHA-256-linked local event journal; 7. return both human responsibility and persona cognitive authorship in the receipt. `BRAIN_BOUND` deliberately returns `runtimeState=BOUND_NOT_INFERENCING` and `modelInferenceStarted=false`. Binding a model identifier is not proof that model inference or persona reasoning has run. A later stage must connect the verified context to the model adapter, complete one read-only fact task, write a promoted checkpoint back to the persona Git, release the organ and primary lease, and return a final receipt. ## Boundaries - Git remains the durable engine; the kernel does not reimplement Git objects, commits, remotes, or merges. - Forgejo is not required and remains an optional compatibility collaboration adapter. - The primary lease is installation/runtime state, not persona history, and therefore stays outside Git. - Runtime events are machine facts for the future HoloLake projection; they do not expose hidden model reasoning and do not form a second authority store. - The initial source stage is not a complete PNCC runtime, desktop integration, build, deployment, or health claim. ## Consequences HoloLake now has a native, testable boundary between “a persona Git exists” and “a verified wake has begun.” The next implementation step can reuse the verified wake receipt and event chain instead of trusting a UI, Forgejo account, branch name, or generic Agent session.