I3960 — The initialize instructions tell the caller about itself before the board, and the board line is bounded
Bound PeerBoard::summary (each claim's intent cut, at most three claims a peer, the whole line capped, the rest counted with a pointer to majordomus_peers) and move it after the sentences about the caller in the MCP initialize instructions.
PŘIPRAVENO vlna 0 · p1 · profil implementation · bezpečné paralelně
Připraveno. Všechny závislosti jsou hotové, takže majordomus plan start I3960 bude přijato.
Cíl
Bound PeerBoard::summary (each claim's intent cut, at most three claims a peer, the whole line capped, the rest counted with a pointer to majordomus_peers) and move it after the sentences about the caller in the MCP initialize instructions.
Proč
On 2026-10-22 five peers holding twenty claims made the board line of the initialize instructions about 6 kB. Claude Code cut the instructions inside that line, so the sentences after it — the nudge to announce, which the code calls the one that matters on every reconnect — never reached the caller. Observed in session 54f32bb3 (native-acceleration pack, P01).
Aktuální stav
apps/majordomus-cli/src/mcp/protocol.rs pushes board.summary() with every claim's whole intent before the caller-specific sentences; PeerBoard::summary has no bound.
Cílový stav
The caller-specific sentences come before the board; the board line stays within SUMMARY_LINE characters whatever the board holds, counts what it does not name, and points at majordomus_peers for every word.
Rozsah
- apps/majordomus-cli/src/peers.rs
- apps/majordomus-cli/src/mcp/protocol.rs
Mimo rozsah
- The size of tool descriptions, which clients load deferred
- peers.list itself (I3961)
Závislosti
Žádné. Tento úkol je kořenem grafu.
Kritéria přijetí
- With twelve peers holding five claims of several hundred characters each, the board line stays within its bound, names the first peer, counts the rest and points at majordomus_peers
- The caller's own sentence (you have not announced anything) precedes the board line in the initialize instructions
- A small board still names every claim, as before
Validace
- cargo test --manifest-path apps/majordomus-cli/Cargo.toml --lib -- peers::tests protocol::tests
- bin/majordomus plan validate
Požadované důkazy
- the_summary_stays_bounded_however_large_the_board
- the_caller_is_told_about_itself_before_the_board_is_listed
Důkazy
Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.
Časová osa
- zahájeno
- —
- ověřeno
- —
- dokončeno
- —
Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.
Canonical record: .ai/repo/project/issues/I3960.yaml. Read it back with majordomus plan show I3960.