feat(Add dashboard integrations topology view): + Bug fixes and implementations with the current DreamServer structure.#1139
Conversation
gabsprogrammer
commented
May 8, 2026
Lightheartdevs
left a comment
There was a problem hiding this comment.
Thanks for the topology view. The build and existing dashboard tests pass locally, but I found one blocking integration issue.
ServiceMap builds every node from service.id and the known edges/categories are keyed by service id (llama-server, open-webui, dashboard-api, etc.). The page fetches /api/status, but that endpoint currently serializes services as { name, status, port, uptime } and does not include id. In the actual dashboard payload, all of these new nodes therefore get id === undefined: classification falls through to other, React keys collide, nodeById only has the undefined key, and the known edges never render.
Fix options:
- add
idto the/api/statusservice payloads, including fallback serialization, and keep this page keyed by ids; or - have the page fetch/join against an endpoint that already exposes service ids.
Please also add a focused frontend test for buildTopology or the page using a representative /api/status payload, so this does not regress silently. I verified npm test and npm run build pass, so this is a runtime contract issue rather than a compile issue.
Done. |