tmux-amq/workplans/TAMQ-WP-0010-experimental-pushy-delivery.md
repo-manager 5cce5e920d
Some checks failed
tamq-ci / test (push) Failing after 31s
chore(registrar): assign State Hub identifiers
Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a03397-4d51-7fd1-8ff2-946eb22ea2bc
2026-08-24 23:41:31 +02:00

75 lines
2.5 KiB
Markdown

---
id: TAMQ-WP-0010
type: workplan
title: "Experimental pushy input delivery mode"
domain: communication
repo: tmux-amq
status: active
owner: codex
topic_slug: coulomb-social
planning_priority: P0
planning_order: 15
created: "2026-08-24"
updated: "2026-08-24"
state_hub_workstream_id: "6a6ec6f1-c704-5543-8879-6f6f7a09699c"
---
# Experimental pushy input delivery mode
Add an explicit, experimental mode that submits routed messages to the target
pane's input for interactive coding agents that manage queued user prompts.
## Required operator contract
`tamq --mode pushy REPO...` opts the whole managed endpoint into pushy
delivery. The default remains `--mode output`; `--mode inbox` retains durable
inbox-only behavior, and `--no-display` remains a compatibility alias for
inbox mode.
Pushy delivery injects exactly one sanitized, single-line comment of the form
`#sender: body [message-id]` and then one Enter key. This is deliberately safe
as a no-op when an ordinary shell has an empty prompt, while coding-agent TUIs
can receive it as submitted user input. The message becomes `injected` after
tmux accepts both operations. Pushy mode may append to input already being
edited and is therefore experimental and explicitly opt-in.
## Add explicit endpoint modes
```task
id: TAMQ-WP-0010-T01
status: progress
priority: high
state_hub_task_id: "ce704aaf-faf6-58d5-8a34-0e0a3c12f472"
```
Add `--mode output|inbox|pushy`, retain compatible `--no-display` behavior,
reject conflicting mode flags, register the selected endpoint mode, expose a
pushy service capability, and report the selected mode in startup status.
## Submit safely framed input
```task
id: TAMQ-WP-0010-T02
status: todo
priority: high
state_hub_task_id: "6b03d6fa-78e5-5a72-ad4c-65a035fb16ab"
```
Sanitize all controls and collapse multiline messages into escaped text. Use
one checked tmux command list to send the literal comment and a distinct Enter
operation. Do not reuse the terminal-output path, and mark the durable record
`injected` only after tmux accepts both operations.
## Prove and document the experiment
```task
id: TAMQ-WP-0010-T03
status: todo
priority: high
state_hub_task_id: "3957a42a-6151-5db2-af47-283789687eac"
```
Cover CLI conflicts and capability restart, store validation, exact framing,
one-time service delivery, and real tmux input submission. Update help, README,
and SCOPE with the risk boundary; run full checks, install, and exercise a
controlled live pushy session without altering user messages.