feat(silo): handle DAG and job SSE events in event listener #218

Closed
opened 2026-02-14 19:40:31 +00:00 by forbes · 0 comments
Owner

Summary

Extend SiloEventListener to handle the new DAG and job lifecycle SSE events.

New Events

Event Action
dag.updated Emit signal with part_number, node_count, edge_count
dag.validated Emit signal with part_number, valid, failed_count
job.created Log to console, update activity panel
job.claimed Log runner assignment
job.progress Update progress display if visible
job.completed Log completion, refresh activity
job.failed Log error, notify user
job.cancelled Log cancellation

Deliverables

  1. Add new Qt signals to SiloEventListener for each event type.
  2. Parse event payloads and emit appropriate signals.
  3. Connect signals to Activity panel for real-time display.

Location

mods/silo/freecad/silo_commands.py -- SiloEventListener class.

Ref

docs/MULTI_USER_CLIENT.md Section 9

## Summary Extend `SiloEventListener` to handle the new DAG and job lifecycle SSE events. ## New Events | Event | Action | |-------|--------| | `dag.updated` | Emit signal with part_number, node_count, edge_count | | `dag.validated` | Emit signal with part_number, valid, failed_count | | `job.created` | Log to console, update activity panel | | `job.claimed` | Log runner assignment | | `job.progress` | Update progress display if visible | | `job.completed` | Log completion, refresh activity | | `job.failed` | Log error, notify user | | `job.cancelled` | Log cancellation | ## Deliverables 1. Add new Qt signals to `SiloEventListener` for each event type. 2. Parse event payloads and emit appropriate signals. 3. Connect signals to Activity panel for real-time display. ## Location `mods/silo/freecad/silo_commands.py` -- `SiloEventListener` class. ## Ref `docs/MULTI_USER_CLIENT.md` Section 9
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kindred/create#218