Files
timmy-config/wizards/shared_context.yaml

67 lines
2.1 KiB
YAML
Raw Normal View History

# Wizard-to-Wizard Shared Context — v1.0
# Issue: timmy-config#441 | Wizard Communication Protocol
#
# This file is the single source of truth for fleet-wide summons and status.
# All wizards read this on each turn; Alexander edits via wizard-summon.py.
# DO NOT manually edit except through the canonical tooling.
version: "1.0"
updated_at: 2026-04-26T00:00:00Z
# ── Active Summon ──
# When Alexander needs all wizards' attention, a summon occupies this slot.
# Wizards must acknowledge by setting their own status to 'acked_summon' and
# optionally adding notes to their acknowledgement payload.
active_summon:
summon_id: null # e.g., SUM-20260426-001
priority: null # P0 (critical) | P1 (high) | P2 (routine)
topic: null # short imperative topic string
summoner: null # Alexander
summoned_at: null # ISO8601
deadline: null # optional ISO8601 or null
status: null # open | acknowledged | completed | cancelled
acknowledgements: # per-wizard ack state (ISO8601 when acked)
timmy: null
allegro: null
bezalel: null
ezra: null
# ── Wizard Heartbeat/Status ──
# Each wizard updates their own entry on a regular cadence (ideally every turn).
# status: idle | busy | acked_summon | error | unreachable
# last_seen: ISO8601 timestamp of last update
# current_task: short description of what the wizard is doing (or null)
# notes: free-text state-change explanation (only on change)
wizard_status:
timmy:
status: idle
last_seen: null
current_task: null
notes: null
allegro:
status: idle
last_seen: null
current_task: null
notes: null
bezalel:
status: idle
last_seen: null
current_task: null
notes: null
ezra:
status: idle
last_seen: null
current_task: null
notes: null
# ── Message Log (append-only history) ──
# The tooling appends significant state-change events here.
# Consumers: Emacs desk view, Telegram digest bots, audit trails.
message_log: []
# Example:
# - timestamp: 2026-04-26T01:45:00Z
# source: timmy
# type: status_update
# priority: P2
# content: "Switched to idle — waiting for summons"