C.W.K.
Stream
Lesson 02 of 04 · published

Web Is the Control Plane

~13 min · firelink, web-hub, single-writer, management

Level 0Cold Ash
0 XP0/32 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"All the scary verbs live in one room, and that room has exactly one writer."

Everything That Changes State Lives Here

The Web Hub is the full management body of Firelink. Every operation that changes anything lives in this tier: the complete managed-app catalog and drift reconciliation; disk, Git, GitHub, roster, network, version, and runtime health; read-only Git inspection (fetch, log, diff planning); commit and non-force push of files already on disk; new-repository birth from the template; registered native-app and repository-tree deploy adapters; registered service restart; durable operation plans, runs, results, and audit; favorites and filters; family PIN entry through cwkPippa; and the Pippa Sidekick mount.

That's a big surface. And per the shrine rule, that's allowed — the Web Hub is meant to be comprehensive. Its constraint isn't feature count; it's authority. It may orchestrate all of this, but it can't absorb the implementation each operation ultimately runs.

Office Is the Only Writer

Here's the load-bearing sentence for the whole tier: office is the only writer. Every mutating operation executes against office ground truth, on the one machine that hosts the engine as a launchd-owned process. This isn't about where the browser is — it's about where the write happens. A travel browser on the tailnet can drive every operation, but it drives the office engine; it never becomes a second writer with its own copy of state.

That single-writer discipline is why the control plane can be trusted. There's exactly one place where a commit, a deploy, or a roster edit actually occurs. No merge conflicts between two hubs, no 'which copy is right?', no split-brain. The browser is a remote control; the office engine is the only hand that touches the family.

Comprehensive, Under One Lock

Concentrating every mutation in one authenticated place is what makes 'comprehensive' safe. If birth, deploy, commit, and restart were scattered across clients, each client would need the full security posture and each would be a place things could go wrong. Instead there's one guarded door. The Web Hub can afford to do a lot precisely because it does all of it from a single, authenticated, single-writer position.

Put every state-changing operation behind one writer in one authenticated place. Breadth of capability is safe when it's centralized; it becomes dangerous the moment it's distributed across clients that each need to be secured and reconciled.

Code

The control plane: comprehensive, single-writer·text
  WEB HUB owns (all of it, from ONE writer):
    - census + drift reconciliation
    - disk / git / github / roster / network / version / runtime health
    - git inspect (fetch, log, diff planning)   [read-only]
    - commit + non-force push of on-disk files
    - birth a new repo shell from the template
    - deploy adapters (native app, repo tree)
    - restart adapters (registered services)
    - durable operation plans / runs / audit
    - favorites, recents, filters
    - family PIN entry (via cwkPippa)
    - the Pippa Sidekick mount

  office = the only writer.
  travel browser -> drives the office engine, never a 2nd writer.

External links

Exercise

Find a system you know that has two or more places that can write the same data (two admin panels, an app plus a sync service, a local cache that also persists). Describe one concrete split-brain bug it could hit: two writers, one truth, disagreement. Then sketch how a single-writer rule would remove that bug — and what the other surfaces become once they can only read or drive.
Hint
The bug always looks like 'both were right, briefly, and then they weren't.' Single-writer doesn't make the other surfaces useless — it turns them into remotes and readers, which is usually all they needed to be.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.