Attach Remote keyboard injection to approved controlled sessions

Local launch and managed startup now start the incoming-key owner for
sessions installed with keyboard-inject, using one input-helper
Supervisor retained for the reader lifetime. Delivery rechecks lock,
XTerm handoff and internal reader UI in addition to lease, grant and
deadline. build-cthulhu.sh and both Arch packages build and install
cthulhu-input-helper; a missing helper leaves keyboard input
unavailable without affecting startup.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Chase CichorzandClaude Opus 5.5 committed 2026-11-06 16:06:38 -05:00
1 parent c1333c2fdb
commit 27017bef11
13 files changed
+362 -66

No files matched your search

+4 -4
View File
@@ -26,10 +26,10 @@ var (
const operationTimeout = time.Second
const retirementTimeout = Watchdog + time.Second
// Supervisor is a quarantined reader-side process owner. It grants no consent
// and is not attached to the production key mailbox. A future owner must bind
// ctx/epoch to an approved lease and recheck native policy before every Apply.
// Unconfirmed cleanup permanently blocks replacement on this Supervisor.
// Supervisor is the reader-side helper process owner. It grants no consent.
// Its production owner binds ctx/epoch to an approved lease and rechecks
// native policy before every Apply. Unconfirmed cleanup permanently blocks
// replacement on this Supervisor.
type Supervisor struct {
mu sync.Mutex
active bool