docs: plan hash routing for pushy agents
Some checks failed
tamq-ci / test (push) Failing after 6s

Assistant: codex
Assistant-Model: gpt-5.6-sol
Assistant-Session: 01a03397-4d51-7fd1-8ff2-946eb22ea2bc
This commit is contained in:
tegwick 2026-08-24 23:54:17 +02:00
parent 1a2eb2633b
commit 1144c14d16
2 changed files with 73 additions and 0 deletions

View file

@ -19,6 +19,7 @@
| workplan | TAMQ-WP-0008 | finished | — | workplans/TAMQ-WP-0008-reply-shorthand-stable-output.md |
| workplan | TAMQ-WP-0009 | finished | — | workplans/TAMQ-WP-0009-interactive-recipient-composer.md |
| workplan | TAMQ-WP-0010 | finished | — | workplans/TAMQ-WP-0010-experimental-pushy-delivery.md |
| workplan | TAMQ-WP-0011 | active | — | workplans/TAMQ-WP-0011-hash-routing-for-pushy-agents.md |
| task | TAMQ-WP-ADHOC-2026-08-24-T01 | done | — | workplans/ADHOC-2026-08-24.md |
| task | TAMQ-WP-0001-T01 | done | — | workplans/TAMQ-WP-0001-statehub-bootstrap.md |
| task | TAMQ-WP-0001-T02 | done | — | workplans/TAMQ-WP-0001-statehub-bootstrap.md |
@ -59,3 +60,6 @@
| task | TAMQ-WP-0010-T01 | done | — | workplans/TAMQ-WP-0010-experimental-pushy-delivery.md |
| task | TAMQ-WP-0010-T02 | done | — | workplans/TAMQ-WP-0010-experimental-pushy-delivery.md |
| task | TAMQ-WP-0010-T03 | done | — | workplans/TAMQ-WP-0010-experimental-pushy-delivery.md |
| task | TAMQ-WP-0011-T01 | progress | — | workplans/TAMQ-WP-0011-hash-routing-for-pushy-agents.md |
| task | TAMQ-WP-0011-T02 | todo | — | workplans/TAMQ-WP-0011-hash-routing-for-pushy-agents.md |
| task | TAMQ-WP-0011-T03 | todo | — | workplans/TAMQ-WP-0011-hash-routing-for-pushy-agents.md |

View file

@ -0,0 +1,69 @@
---
id: TAMQ-WP-0011
type: workplan
title: "Hash-prefixed routing for pushy agent sessions"
domain: communication
repo: tmux-amq
status: active
owner: codex
topic_slug: coulomb-social
planning_priority: P0
planning_order: 16
created: "2026-08-24"
updated: "2026-08-24"
---
# Hash-prefixed routing for pushy agent sessions
Avoid coding-agent `@` completion/template behavior by accepting `#repo:` as a
direct-address alias and make commanded pushy sessions observe it end to end.
## Required operator contract
Within a coding-agent session launched by
`tamq --mode pushy --command COMMAND REPO...`, typing
`#activity-core: Hello!` queues the same durable message as
`@activity-core: Hello!`. Tamq observes but does not rewrite the source input.
Pushy input delivered to the target must not itself match the routing grammar,
or the target tap would route it back and create a feedback loop. The inbound
envelope is therefore `# from sender: body [message-id]`, still a safe shell
comment and a clear coding-agent prompt.
## Add the hash routing alias
```task
id: TAMQ-WP-0011-T01
status: progress
priority: high
```
Accept exactly one leading `#` or `@` before a validated repository slug and
colon. Preserve strict start-of-line matching, non-empty bodies, registry
validation, sender identity, and ordinary-input pass-through.
## Connect pushy mode to PTY observation
```task
id: TAMQ-WP-0011-T02
status: todo
priority: high
```
Automatically wrap explicit commands in `tamq tap` when pushy mode creates new
windows, using the endpoint instance identity. Preserve neutral shells when no
command is supplied and keep legacy `--tap` behavior distinct.
## Prevent feedback and prove the full path
```task
id: TAMQ-WP-0011-T03
status: todo
priority: high
```
Change pushy input to the non-routable `# from` envelope. Add routing, broker,
CLI, PTY, and real two-window tmux coverage proving one `#repo:` source line
creates one durable message, one target submission, and no bounced message.
Document the interaction, run full checks, install, and exercise a controlled
live commanded pushy session if it can be isolated from user input.