What problem does it solve? End-to-end testing of Fredo's Mission Monitor and other UI surfaces requires triggering specific agent event states on demand, which is impractical when waiting for real agent sessions to produce them. ## Core Features & Use Cases - Mock Event Injection: Send chat, tool_use, agent_session, and other event types through the fredo emit CLI into the IPC socket, flowing through the same RTDB row classifier as real OTLP spans. - Smoke-Verified Recipes: Pre-built payload recipes for chat turns, tool lifecycles, session aggregates, and stepper-probe rows, each with verification steps against Mission Monitor or the row stores. - Test Isolation: Unique random session IDs per test run plus baseline-vs-result DOM snapshot comparison to isolate mock events from real OTLP traffic. - Use Case: A QA engineer needs to verify that Mission Monitor renders a chat node with a user message; they emit a chat event with a unique session ID, wait two seconds, and confirm the DOM snapshot shows the new node. ## Quick Start Ask the agent to emit a mock chat event with a unique session ID using the fredo CLI and verify the resulting row appears in Mission Monitor.