38 lines
2.7 KiB
Markdown
38 lines
2.7 KiB
Markdown
# Issue #808 — agent-send sender identity
|
|
|
|
## Objective
|
|
|
|
Fix cross-socket `agent-send.sh` preambles so replies route to the real sender rather than a destination-socket holder session.
|
|
|
|
## Scope and acceptance criteria
|
|
|
|
- Prefer exported `MOSAIC_AGENT_NAME` as the authoritative sender session name.
|
|
- If it is unset, query the sender's local/default tmux socket for `#S` without destination `-L` arguments.
|
|
- Preserve `?` when sender identity cannot be determined.
|
|
- Do not alter destination socket dispatch.
|
|
- Add red-first regressions for all three identity paths.
|
|
|
|
## Plan
|
|
|
|
1. Extend `agent-send.test.sh` with deterministic fake-tmux coverage.
|
|
2. Run the test against the unpatched implementation and record RED evidence.
|
|
3. Apply the minimal sender lookup fix only.
|
|
4. Run the focused suite and repository quality gates.
|
|
5. Commit, queue-guard, push, and open an author-only PR for independent review.
|
|
|
|
## Constraints and risks
|
|
|
|
- Worker lane is author-only: no self-review or merge.
|
|
- `docs/TASKS.md` and mission state are orchestrator-owned and will not be modified.
|
|
- Pre-existing runtime changes under `.mosaic/orchestrator/` are excluded from this work.
|
|
- Budget: no explicit token cap; keep changes limited to the shell tool, sibling regression test, and this scratchpad.
|
|
|
|
## Evidence
|
|
|
|
- RED: `bash packages/mosaic/framework/tools/tmux/agent-send.test.sh` failed on the unpatched implementation with `PASS=12 FAIL=3`; it selected `destination-holder` instead of both `MOSAIC_AGENT_NAME=authoritative-agent` and local session `local-agent`. The genuinely unavailable sender case already exercised and preserved `?`.
|
|
- GREEN: `bash packages/mosaic/framework/tools/tmux/agent-send.test.sh` passed with `PASS=15 FAIL=0`; coverage includes env authority, local/default tmux fallback across a destination `-L`, explicit rejection of the destination holder, and `?` fallback.
|
|
- Syntax: `bash -n packages/mosaic/framework/tools/tmux/agent-send.sh packages/mosaic/framework/tools/tmux/agent-send.test.sh` passed.
|
|
- Quality gates: `pnpm typecheck` (42/42 tasks), `pnpm lint` (23/23 tasks), and `pnpm format:check` all passed after installing the frozen lockfile dependencies. The first install attempt failed because pnpm's configured store pointed at `/root`; retrying with the existing user-owned store (`--store-dir /home/hermes/.local/share/pnpm/store`) succeeded without changing tracked dependency files.
|
|
- Documentation: no public API or operator workflow changed; the source comment, regression-test contract, and this implementation record cover the internal bug fix.
|
|
- Independent review: intentionally pending for the reviewer assigned by `mosaic-100`; this author-only lane will not self-review or merge.
|