feat(arje-link): transporte arje-bus → bus de agente, cierra B.2 end-to-end

hammerd::arje_link se suscribe al bus del init (ENTE_BUS_SOCK), relee el frame
postcard de arje-bus con un mirror mínimo de suscriptor (sin arrastrar el
crate-graph de arje ⇒ hammer sigue standalone) y reenvía cada BusEvent →
crashes → Event::Crashed → agent.sock. Wire verificado byte-a-byte contra
arje-bus real (ulid string, frame Subscribe=[00,01,00,0d]); 2 tests de round-trip
local + frame. Se lanza en thread si ENTE_BUS_SOCK está definido (no-op si no).
Roadmap B.2 marcado  (resta sólo el smoke contra init vivo).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Sergio
2026-06-14 03:30:04 +00:00
co-authored by Claude Opus 4.8
parent f6b337f6cb
commit a23630c50d
6 changed files with 584 additions and 13 deletions
+4
View File
@@ -33,6 +33,10 @@ serde = { version = "1", features = ["derive"] }
serde_json = "1"
serde_yaml = "0.9"
toml = "0.8"
# postcard + ulid: SÓLO para releer el frame del bus de arje (hammerd::arje_link). Versiones
# alineadas con las que usa arje-bus (postcard 1.1.x, ulid 1.2.x) para garantizar el mismo wire.
postcard = { version = "1", features = ["use-std"] }
ulid = { version = "1", features = ["serde"] }
blake3 = "1"
sha2 = "0.10"
hex = "0.4"