Přeskočit na obsah

Tato stránka byla automaticky přeložena z angličtiny, jediného jazyka, ve kterém se tento web píše. Číst originál.

I2704 — Dialer nečte odpověď nad mez odkazu ani víc kandidátů, než dovoluje mez, a odmítající peer se zkouší znovu naměřenou, rozptýlenou frekvencí

Omezit odpovědi na link a rendezvous, které dialer čte, na hranici zprávy linku a počet kandidátů, které přijímá, na hranici registrace, přidat linku backoff s jitterem a změřit v testu míru opakování unknown_link.

PŘIPRAVENO vlna 1 · p1 · profil implementation · běží samostatně

Součást runtime-trust — Runtime je bezpečné zpřístupnit z jiného stroje a připojení k mesh nikomu nevěří omylem.

Připraveno. Všechny závislosti jsou hotové, takže majordomus plan start I2704 bude přijato.

Cíl

Omezit odpovědi na link a rendezvous, které dialer čte, na hranici zprávy linku a počet kandidátů, které přijímá, na hranici registrace, přidat linku backoff s jitterem a změřit v testu míru opakování unknown_link.

Proč

Odděleno od I2133 dne 2026-10-14. I2133 omezilo frontu objevování, na odmítnutou registraci odpovědělo samotným odmítnutím a zpomalilo opakování unknown_link; jeho desired_state o omezení odpovědi, kterou dialer čte, a počtu přijatých kandidátů, jitteru backoffu linku a testu, který měří míru opakování unknown_link, říkal „Not done here“, zatímco jeho kritéria přijetí je stále vyžadovala, takže se nemohlo nikdy uzavřít. Audit základního stavu z 2026-10-09 na masteru 1fb8d6be44, mezery mesh 5 a 11, hrozby T4 a T13.

Aktuální stav

Každá odpověď, kterou bridge::request čte, je omezena na MAX_REPLY_BYTES, 32 MiB (apps/majordomus-cli/src/mcp/bridge.rs, I2147), ne na MAX_LINK_MESSAGE (900 KiB, apps/majordomus-cli/src/mesh/link.rs), které omezuje jen to, co přijímá odpovídající a co posílá volající. Klient rendezvous bere každého kandidáta, kterého odpověď nese (apps/majordomus-cli/src/mesh/rendezvous.rs); MAX_CANDIDATES (32) omezuje jen to, co tento uzel odpovídá (apps/majordomus-cli/src/mesh/manager.rs). Cooperation::backoff (apps/majordomus-cli/src/mesh/cooperation.rs) je heartbeat krát 2^selhání bez jitteru. Žádný test neměří, jak často se opakuje peer, který odpovídá na hello a odmítá každou synchronizaci.

Cílový stav

Odpověď linku nad MAX_LINK_MESSAGE a odpověď rendezvous s více než MAX_CANDIDATES kandidáty jsou odmítnuty jako typované chyby dřív, než se parsují; backoff linku nese omezený jitter; test řídí peera, který vítá a odmítá každou synchronizaci, a měří četnost opakování.

Rozsah

  • apps/majordomus-cli/src/mesh/link.rs
  • apps/majordomus-cli/src/mesh/rendezvous.rs
  • apps/majordomus-cli/src/mesh/manager.rs
  • apps/majordomus-cli/src/mesh/cooperation.rs
  • apps/majordomus-cli/src/mcp/bridge.rs
  • apps/majordomus-cli/tests/mesh.rs
  • apps/majordomus-cli/tests/mesh_cooperation.rs
  • docs/MESH.md

Mimo rozsah

  • Ohraničená fronta objevování a odpověď na registraci, kterou dodal I2133
  • Obecný limit MAX_REPLY_BYTES v bridge::request, který patří I2147

Závislosti

Kritéria přijetí

  • Odpověď o jeden bajt přes MAX_LINK_MESSAGE a rendezvous odpověď s více než MAX_CANDIDATES kandidáty se odmítají jako typované chyby
  • Peer, který odpoví na hello a odmítne každou synchronizaci, je opakován nejvýše jednou za heartbeat
  • Dva runtimes, jejichž odkazy k jednomu peeru selžou společně, ho nezkoušejí znovu ve stejném okamžiku: backoff odkazu nese omezený jitter

Validace

  • bin/majordomus plan validate
  • cargo test --lib mesh
  • cargo test --test mesh --test mesh_cooperation

Požadované důkazy

  • reply_bound_test
  • unknown_link_retry_rate_test

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.

Kanonický záznam: .ai/repo/project/issues/I2704.yaml. Zpětně ho přečtete pomocí majordomus plan show I2704.

Prohledává názvy a popisy všech stránek, které tento web publikuje.