# Computer Use Host Events Contract This layer connects only events with a typed, attributable source. ## Connected producers - Typed dispatch outcomes: - `user_intervened` -> re-observe - `screen_locked` -> locked - `blocked_url` -> terminal URL block - `outcome_unknown`, service unavailable, or service mismatch -> re-observe - Executor service release: - clears executor-local observations and keyboard ownership - advances the corresponding Runtime session to re-observe - Turn/session terminal events: - synchronously clear Runtime, executor, and overlay ownership ## Deliberate gaps - Maka does not infer physical user input from AX or DOM content changes. - Maka does not claim a global physical-input producer until it has a reliable, attributable macOS event source. - Maka does not invoke Codex's signed `turn-ended` helper. That helper uses an Apple Event lifecycle specific to the Codex native service, and helper process exit is not proof that service cleanup completed. - Runtime URL, lock, and intervention states require typed driver outcomes; raw error-message matching is not an accepted producer. - The current driver exposes no trustworthy intervention debounce deadline, so a typed intervention advances directly to re-observe. The two-stage debounce state remains reserved for a future attributable deadline producer. - Maka currently binds targets by PID/window/content/page identity. The V10 reverse-engineered boundary is stronger: canonical app path plus the current live process instance. Maka does not claim that boundary until the executor or a native host API can provide an atomic, high-precision process identity. ## Verification The cross-layer deterministic harness covers: - bound target propagation; - observation-bound presentation and dispatch; - fresh post-action observation; - duplicate and stale rejection; - typed target-change cancellation; - unknown outcome requiring re-observation; - explicit session cleanup; - private UI content omission from persisted tool text while current-turn model projection retains the UI evidence needed for action. Target/decoy execution, real process restart, persistence-level privacy, Desktop terminal lifecycle, real macOS event production, and real-window cumulative Electron verification remain separate release gates.