9186824e87
Old runtimes meeting a newer session format now fail loud instead of misreading: version refusal names the direction (newer: upgrade the harness; older: no upgrade path) and points at the raw JSONL log, and an event type outside the generated known vocabulary refuses resume unless its envelope carries the new ignorable: true marker (default: required, so a forgotten marker over-refuses instead of silently resuming a gutted session). gen-persistence-catalog now also emits KNOWN_SESSION_EVENT_TYPES; SQLite stores the marker in a dedicated column (SCHEMA_VERSION 15). The versioning design (monotonic integer, n->n+1 upgrader chain, migrate-on-continue) is recorded in the session-log-version-mechanism Agent Note.
18 KiB
18 KiB
Event Producer And Consumer Matrix
This matrix shows which packages dispatch each harness-owned event and which packages listen to it. Events are many-to-many, so the dense relation data is presented as a table rather than one large graph. Receiver and event-name types also cover contained dispatch sites that deliberately bypass ctx.emit, such as subagent lifecycle containment.
Non-harness or undeclared event strings seen in package source
| Event string | Dispatchers | Listeners |
|---|---|---|
commands/changed |
runtime (emit) |
ui-command |
connection/reset |
runtime (emit) |
runtime, ui-command, ui-models, ui-permission, ui-settings-general |
credentials/changed |
runtime (emit) |
ui-models |
internal/dispatch |
- | commands, compact, fs, goal, goal-session, hook-protocol, llm-retry, permission, plan-mode, pty-local, runtime, sandbox-policy, scope, session, session-title, subagent, time-context, tool-todo, tools, user-approval, workflow |
internal/plugin |
- | hmr, loader, lsp-local, modules, webserver |
internal/service |
- | agent-presets, gateway |
internal/status |
- | agent |
locale/change |
locale (emit) |
locale |
models/changed |
runtime (emit) |
ui-models |
session/preset-changed |
runtime (emit) |
ui-command |
settings/changed |
runtime (emit) |
runtime, ui-models, ui-permission, ui-settings-general |
slash/input-begin-command |
- | ui-conversation |
slash/input-consume-token |
- | ui-conversation |
slash/input-insert-reference |
- | ui-conversation |
slash/input-insert-text |
- | ui-conversation |
slots/changed |
runtime (emit) |
- |
theme/change |
ui-theme (emit) |
ui-layout, ui-theme |
Maintenance mode: generated: Cordis event declarations and producer/listener edges are resolved from the repository TypeScript Program.