Tentacle enhancements.

This commit is contained in:
Storm Dragon committed 2026-11-04 13:44:13 -05:00
1 parent 4f9b89e38b
commit 9e15f8652d
12 files changed
+619 -22

No files matched your search

+8 -5
View File
@@ -141,9 +141,10 @@ abandoned work. Go also respects a shorter caller context; Python accepts a
shorter explicit timeout. Shutdown/EOF wakes pending calls and event consumers.
The process supervisor still enforces cleanup for a child ignoring cancellation.
These are lifecycle queues only. Separate key/speech queues, latest-frame Braille
coalescing, typed effect validation, and their delivery-time owner checks remain
unimplemented. Do not send those payloads through lifecycle events.
Typed speech IPC now extends this transport; see
[the speech contract](tentacle-remote-speech.md). It uses the same ordered event
queue for exported speech and a separate 64-item incoming mailbox. No production
output owner is connected. Keyboard/Braille/clipboard effects remain unsupported.
## Implemented lifecycle operations
@@ -164,6 +165,7 @@ Child calls:
| `remote.open` | `action`, `epoch`, `role`, `grants` | `lease`, `epoch` |
| `remote.heartbeat` | `lease`, `epoch`, `sequence` | `{}` |
| `remote.close` | `lease`, `epoch`, `sequence` | `{}` |
| `remote.present` | `lease`, `epoch`, `sequence`, typed `speech` | `{}` after mailbox admission; unavailable without reader owner |
The action token must match the unconsumed core approval. Role must match exactly,
and grants must be a nonempty subset of the approved install grants. Controller
@@ -187,8 +189,9 @@ does not implement all effect-owner policies. No production effects currently us
Errors are generic and contain no parameters: `-32001` permission denied,
`-32602` invalid parameters, `-32601` unsupported operation, `-32603` unavailable.
State/focus/presentation/key/Braille/clipboard methods deliberately return
unsupported-operation errors. Malformed envelopes, replayed IDs or frame/queue
State/focus/key/Braille/clipboard methods deliberately return
unsupported-operation errors. Speech mailbox overflow returns `-32002` and
revokes its lease. Malformed envelopes, replayed IDs or frame/queue
violations terminate the process session instead of attempting recovery.
## Verification