M5c-1 plan: task 04, bxctl chat --speaker NAME, opt-in, no default
The speaker goes on every turn of the chat: interactive, --say and --say's retry. Without the flag it is None. A name that is empty or holds whitespace or a control character (Unicode), or a second --speaker, is a usage error: the usage text on stderr and exit status 2. The usage text gains the flag and one line explaining it. Given: chat_speaker.rs (new) and new versions of chat.rs, chat_approvals.rs and cli.rs. Task 01 now copies chat.rs-task01, the older chat.rs. Checks: every before block found once at ref 03; replayed from the task text on a fresh ref-03 worktree with its own build directory, byte-identical to the reference, gate ok with 1158 tests (1148 + 10); /tmp unchanged around the reference's and the replay's gate runs; 20 of 20 mutations caught; the new tests passed 40 of 40 runs under CPU load; given files pass fmt and the 500-line check; no chat-template tag in the plan or the given files. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -70,7 +70,8 @@ This is the complete list. Each one is covered by an edit below or by a given fi
|
||||
`crates/loopd/tests/baseline.rs`, `channel.rs`, `instance.rs`, `memory.rs`,
|
||||
`neutralise_replay.rs`, `session.rs`, `turn_done_untrusted.rs`;
|
||||
`crates/memoryd/tests/serve.rs`, `crates/memoryd/tests/support/logs.rs`. Your `loopd`
|
||||
`memory.rs` is the given `memory.rs-task01`: the given `memory.rs` is task 02's.
|
||||
`memory.rs` is the given `memory.rs-task01`: the given `memory.rs` is task 02's. Your `bxctl`
|
||||
`chat.rs` is the given `chat.rs-task01`: the given `chat.rs` is task 04's.
|
||||
- Do not copy anything under `docs/plans/M5c1/files/crates/memoryd/tests/fixtures/honcho/`:
|
||||
it is for later tasks.
|
||||
- Modify: `crates/bxcore/src/wire.rs`, `crates/bxcore/src/log.rs`, `crates/bxcore/src/memory.rs`,
|
||||
@@ -426,7 +427,8 @@ becomes
|
||||
cp docs/plans/M5c1/files/crates/bxcore/tests/records.rs crates/bxcore/tests/
|
||||
cp docs/plans/M5c1/files/crates/bxcore/tests/strict.rs crates/bxcore/tests/
|
||||
cp docs/plans/M5c1/files/crates/brokerd/tests/broker.rs crates/brokerd/tests/
|
||||
cp docs/plans/M5c1/files/crates/bxctl/tests/chat.rs crates/bxctl/tests/
|
||||
cp docs/plans/M5c1/files/crates/bxctl/tests/chat.rs-task01 \
|
||||
crates/bxctl/tests/chat.rs
|
||||
cp docs/plans/M5c1/files/crates/loopd/tests/baseline.rs crates/loopd/tests/
|
||||
cp docs/plans/M5c1/files/crates/loopd/tests/channel.rs crates/loopd/tests/
|
||||
cp docs/plans/M5c1/files/crates/loopd/tests/instance.rs crates/loopd/tests/
|
||||
|
||||
Reference in New Issue
Block a user