One clock
PS5 HDMI (capture card), DualSense HID, and game situation share one monotonic clock (clock_ns / frame_seq). The capture card is the brain. Everything else is a glass: Sight Glass, Clutch Lens (OBS Browser Source), Mobile Glass, Foundry clips, AgentGlass / MCP.
OBS never owns the physical card in the recommended path. It loads overlay.html as a Browser Source. Dual-opening USB3.0 Video is how LIVE dies.
Fail-closed is the brand
Most stream overlays keep the last score on screen through pause, menu, and a frozen JPEG. That looks smooth. It is a lie.
Qoresence paints widgets only when they match the LIVE frame (Same-Seq). If title-presence is not play, or the frame is blank, Theater goes dark. Empty glyphs (□–□) are honest. Invented 0-0 is not.
Digits on the board require a confirm / VLM lock. The fast path may talk clutch. It does not invent a score.
What we will not say
Language is co-occurrence, coupling, presence evidence. Not legitimacy, humanity, eligibility, or “you threw that.” There is no live path into QorTroller / PoAC / *-truth.
Operator path
Windows starter: install guide · repo
Typical sit-down (Pattern B): close OBS Video Capture on the physical card, then:
Theater: http://127.0.0.1:8765/deck.html
Lens (OBS): http://127.0.0.1:8765/overlay.html
Every extra lobe stays OFF until you opt in.
Why a public account exists
To show Dark Theater, Ghost Stick on the HDMI frame, and Foundry clips that carry the clock. Not to run a second brain in the cloud.