events
events
¶
The ClearanceEvent value type.
One flat dataclass carries every event kind the hub fans out to
subscribers. Varlink IDL can't model sum types directly, so the
type field discriminates and the remaining fields are populated
per-kind — the same pattern io.systemd.Resolve.Monitor uses.
ClearanceEvent(type, container, request_id='', dest='', port=0, proto=0, domain='', action='', ok=False, reason='')
dataclass
¶
One event fanned out to every Subscribe() caller.
type + container are always populated; the remaining fields
are filled in per-kind and default to zero-values otherwise.
Known values of type (additional fields beyond container):
connection_blocked—request_id,dest,port,proto,domain. Requires an operator verdict.verdict_applied—request_id,action,ok.container_started— no extras.container_exited—reason.shield_up/shield_down/shield_down_all— no extras.
Unknown values are forwarded unchanged so the wire format can grow without breaking clients pinned to older schemas.