Files

1.9 KiB

Remote 0.1.1 UI and interaction host

The matching Tentacle uses a compact connection form and completes credentials and certificate preflight before asking for reader approval. See the adjacent Tentacles repository's remote/command.md for the complete workflow and live acceptance procedure. This reader change must be present before installing Remote 0.1.1; the Tentacle cannot upgrade the reader or its helpers.

The wire request adds optional_grants. These are role-checked and offered only within the session's installed grants. Required grants retain strict checking; all consent boxes remain unchecked. The session binding, single-use action, 30-second expiry and local-origin checks are unchanged.

Form polling may transition to another form, reader consent, or the existing remote_background terminal result. Poll results are decoded normally; the main interaction loop rechecks continuation registration and lease ownership after closing the previous form. Sources and reader-settings effects remain rejected from polling. Existing polling notices and ordinary interaction completion keep their behavior.

Private checks: Remote race tests, make check in cthulhu-tentacles, existing interaction/consent/wire and Go/Python SDK conformance tests, plus the actual source-command tests for both roles. They verify optional grant filtering, forged selection rejection, key-free certificate preflight, cancellation before lease creation, automatic desktop return, isolated speech and lifecycle cleanup.

Live checks remain required: Tab/Shift+Tab, key masking in speech/Braille, connect/cancel/status Close/Escape/Disconnect, Alt+Tab and F11, held-modifier recovery, local speech priority, remote mute/unmute without replay, clipboard acceptance, physical Braille and real NVDA/Orca peers. Recheck ordinary forms, Wormhole polling/settings, Hello World, Battery Status, learn mode and remapped shortcuts. This change does not replace the active reader or claim live acceptance.