Review follow-ups on the composite salvage (whole-bug-class sweep): - session.branch and _persist_branch_seed copied parent history without display_kind/display_metadata, so a tagged timeline marker (personality pivot, model switch, auto-continue) re-entered the branched session as a bare role=user row after a restart — re-planting the phantom-ordinal class this PR fixes. Both projection dicts now carry the tags; regression asserts added to both branch tests (mutation-checked: fail without the fix). - ui-tui renderer learns display_kind=personality_switch (was falling through to an opaque user bubble; desktop got the case in commit 1). - programmatic-integration docs: document the two new 4004 refusals (boolean ordinal, bare confirm_truncate). - hermes_state comment: archived rows are searchable only with include_inactive=True, not by default search — align comment with the actual FTS filter. - strip stray trailing blank line in test_tui_gateway_server.py |
||
|---|---|---|
| .. | ||
| plugins | ||
| _category_.json | ||
| acp-internals.md | ||
| adding-platform-adapters.md | ||
| adding-providers.md | ||
| adding-tools.md | ||
| agent-loop.md | ||
| architecture.md | ||
| browser-provider-plugin.md | ||
| browser-supervisor.md | ||
| codebase-ownership.md | ||
| context-compression-and-caching.md | ||
| context-engine-plugin.md | ||
| contributing.md | ||
| creating-skills.md | ||
| cron-internals.md | ||
| desktop-plugin-sdk.md | ||
| egress-internals.md | ||
| extending-the-cli.md | ||
| gateway-internals.md | ||
| image-gen-provider-plugin.md | ||
| memory-provider-plugin.md | ||
| model-provider-plugin.md | ||
| plugin-llm-access.md | ||
| programmatic-integration.md | ||
| prompt-assembly.md | ||
| provider-runtime.md | ||
| secret-source-plugin.md | ||
| session-storage.md | ||
| subagent-lifecycle-api.md | ||
| tools-runtime.md | ||
| trajectory-format.md | ||
| video-gen-provider-plugin.md | ||
| web-search-provider-plugin.md | ||
| worktree-ui-dev.md | ||