Preserve provider event identity through the shared WebSocket route #63
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem and evidence
RuntimeEventincrates/agent/src/provider_runtime.rs:84-92omits the provider event summary; watch batches then reconcile the complete inventory throughrefreshat:680-725. The stream serializer incrates/agent/src/lib.rs:2113-2155reduces the event to legacykind/action/actor_id/scopefields. It does not carry the complete generic host/instance/kind/native-resource identity or the provider summary to consumers. A lagged broadcast sends a resync hint.Recommendation
Preserve bounded generic event identity and change data through the existing shared WebSocket event route, and let the server cache apply deltas while retaining hint-and-relist recovery for gaps. Route web, REST clients, CLI, MCP and future Apple clients through that one event path. Include loss, high-latency and connection-refused cases in the network-fault acceptance tests.
Payoff and estimate
Makes remote state and freshness truthful without polling every host or creating adapter-specific push routes. Estimate: 3–5 engineering days after generic resource DTOs, including bounded event and resync tests.
Priority: Next milestone (PLAN steps 5–6).
2026-10-04 owner decisions: Direct match: the owner chose event-driven server cache and one event route over the WebSocket for every adapter, with failure modes visible and tested. Keep the current bounded/resync behavior.
Report: arch-review report
Source: arch-review 2026-10-04