fix(hosts): close kimi adapter review follow-ups - #57
Merged
Conversation
- Sink plugin symlink containment into shared collectSkillFiles so all hosts drop plugin skills whose realpath escapes the component root - Add KimiSessionAnalyzer.currentSessionId() reading KIMI_SESSION_ID (undocumented; null when unset), noted in the kimi-host-support spec - Include sourceRef.agentId in the wire dedupe key so main and subagent records sharing a tool call id no longer dedupe across agents
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #56, which was merged before these review-driven fixes landed on the branch.
collectSkillFilesnow appliesfilterItemsInsideRootforpluginscope, so every host (Claude, Kimi, and future providers) drops plugin skills whose realpath escapes the component root. User/project scopes are intentionally unaffected — symlink-installed skills there are a documented setup.KimiSessionAnalyzer.currentSessionId(): readsKIMI_SESSION_IDwith a null fallback, matching the other seven platforms. The variable is not yet published in Kimi Code's docs; noted as a NEEDS CLARIFICATION in the kimi-host-support spec.agentIdin the wire dedupe key: main and subagent wire records sharing a tool call id no longer dedupe across agents; repeats within one agent still collapse. Also fixes an existing test that had pinned the cross-agent dedupe as its expectation.Validation:
node --test test/agent-customize.test.mjs test/session-analysis-providers.test.mjs test/session-analysis-fs.test.mjs test/support-declarations.test.mjs test/plugin-manifests.test.mjs— 109/109 pass, including 3 new tests.