Phase 8 networking security - #3
Conversation
…vent QUIC panic on restart
…elta sync + MCP wiring
…/SyncResponse for edge sync
…ckStore tracking, MCP wiring
…edge proto methods, legacy compatibility
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (28)
📝 WalkthroughWalkthroughThis pull request implements Phase 9 (Skill Loader MCP Tool) and Phase 10 (Distributed Knowledge Graph Sync), adding conversational skill loading via trigger detection and extending peer synchronization to propagate knowledge-graph edges through gossip and delta sync mechanisms. Updates planning documents, introduces a new Go skill package, extends protocol buffers with Edge messages, and integrates edge broadcasting into daemon and MCP infrastructure. Changes
Sequence Diagram(s)sequenceDiagram
participant Peer1 as Peer A<br/>(creates edge)
participant Daemon1 as Daemon A
participant Gossip1 as Gossip<br/>Manager A
participant Network as Network/<br/>GossipSub
participant Peer2 as Peer B<br/>(receives)
participant Gossip2 as Gossip<br/>Manager B
participant Daemon2 as Daemon B
participant Storage2 as Storage B
Peer1->>Daemon1: link_memories<br/>(from_id, to_id, weight)
Daemon1->>Daemon1: create Edge protobuf<br/>& store in storage
Daemon1->>Gossip1: edgeBroadcaster callback<br/>broadcastEdge(fromID, toID,...)
Gossip1->>Gossip1: marshal Edge to bytes
Gossip1->>Gossip1: increment & persist<br/>edge sequence
Gossip1->>Network: publish GossipMessage<br/>type="new_edge"<br/>edge=serialized_bytes
Network->>Gossip2: receive GossipMessage
Gossip2->>Gossip2: decode edge bytes<br/>to Edge protobuf
Gossip2->>Daemon2: onEdgeReceive callback<br/>validate & store edge
Daemon2->>Storage2: SaveEdgeWithMeta(edge)
Daemon2->>Daemon2: update edgeVV<br/>sequence tracking
Note over Peer2: Edge now in graph<br/>for local queries
rect rgba(100, 150, 200, 0.5)
Peer2->>Daemon2: delta sync with Peer A
Daemon2->>Daemon2: compute missing edges<br/>using edge version vectors
Daemon2->>Daemon1: SyncRequest<br/>edge_version_vector
Daemon1->>Daemon1: GetEdgesAfter(peerID, seq)
Daemon1->>Daemon2: SyncResponse<br/>repeated edges
Daemon2->>Storage2: persist edges
Daemon2->>Daemon2: merge edge version<br/>vectors & update vvStore
end
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Poem
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary by CodeRabbit
Release Notes
load_skillMCP tool for retrieving complete skill context on demand.