fix: support current Kimi history and native session identity - #113
Yt4aZaveta wants to merge 1 commit into
Conversation
|
Thanks for adding support for the current Kimi Code store and native session identities. One history regression needs to be fixed before this can merge. P2 — An existing but empty modern store hides legacy conversations. At I reproduced this against the actual reader with one valid legacy conversation and an empty modern Please retain legacy conversations that have not been migrated. Reading both stores and deduplicating corresponding conversations is one option; at minimum, an empty modern result must not suppress valid legacy history. If both stores are supported together, the behavior should also cover partial migration rather than hiding all old conversations as soon as one modern conversation exists. Keep the modern native ID for a migrated entry so exact resume remains correct. Please cover these cases in the history tests:
Separately, please update the branch against the current |
Summary
Current Kimi Code conversations were missing from chat history, ordinary Pi launches did not report a conversation ID, and resumed OpenCode sessions never reported working/idle status. This follow-up to #106 fixes those cases without changing the history panel's UI.
KIMI_CODE_HOME/~/.kimi-code, accept nativesession_<UUID>IDs for hooks and exact resume, and derive unnamed titles from main-agent user prompts. Exclude child sessions and retain the legacy Python Kimi reader as a fallback; migrated legacy copies are not listed twice.session.updated, which precedes native status events even when nosession.createdevent occurs. Child and unrelated session updates cannot replace the tracked root.Verification
npm run test:even: 47 passed, 0 failed.npm teston basec85cdd1plus this change: 1,279 passed, 10 failed, 2 skipped (1,291 total). The 10 failures are also reproducible in a clean checkout of the base commit, without this change: shortcut/settings expectations, native TUI fixture assumptions and the repository-path audit. No new failure was observed in the history/runtime tests.npm run build: passed on macOS arm64, including Node, renderer and mobile TypeScript checks.AgentChatHistoryService, and resumed the exact IDs for Codex, Claude, Qwen, Kimi Code, OpenCode, Hermes, Grok, OMP, Pi and MiniMax. Nine used a loopback model server with dummy credentials; OpenCode used its free model without login. Kimi/Pi native identity and OpenCode resumed working/idle signals were observed through the real runtime gateway.git diff --check: passed. No plans, native test homes or local reports are included.Review note
npm run audit:secretsreports a pre-existing personal home path indocs/linux-native-editing.mdon the base branch. The built application has no audit findings; none of the reported source files are modified here.