…n API
The sidebar (and any other consumer) can now read the engine's decision
trail without reaching into singletons: audit.query / audit.summarize for
the activity feed, policy.simulate / policy.replay for the "Why?" /
"What if?" affordances, watchdog.snapshot / watchdog.resetOrigin for
containment review and reset. chat.open also moves to requireAction so
every gated handler now flows through the engine.
Co-authored-by: Cursor <cursoragent@cursor.com>