#!/usr/bin/env python3 """Observation output emitter and formatting utilities for agent-task dispatcher.""" from __future__ import annotations SEP = "-" * 42 def banner(event: str, task: str, lines: list[str] | None = None) -> None: display_task = task.rsplit("/", 1)[-1] print(SEP, flush=True) print(f"{event}: {display_task}", flush=True) print(SEP, flush=True) if display_task != task: print(f"task={task}", flush=True) for line in lines or []: print(line, flush=True) def attempt_event(prefix: str, message: str) -> None: print(f"{prefix} {message}", flush=True) def validation_claim(path: str) -> None: """Emit one canonical write claim for standalone PLAN validation.""" print(path, flush=True)