Repository navigation
fix(agent): rewrite present schema for Muse Spark - #1305
TheGreatAxios merged 1 commit into
Conversation
Muse Spark's Responses API rejects recursive $ref cycles on tool parameters, so the parent session dies before inference and parked ask_director questions never get answered. The acyclic present rewrite already existed for Kimi; apply it for muse-spark too.
TheGreatAxios
left a comment
There was a problem hiding this comment.
Review · Approve
Muse Spark (OpenCode Go / Zen) advertises the same acyclic present schema Kimi already uses; switching away restores the canonical recursive $ref.
Findings
No findings.
isMuseSparkLeafProvider is /^muse-spark/i on the model id, which matches the Go/Zen catalog ids in the new table and leaves opencode-go + gpt-5.1 on the identity path. refreshAdvertisedSchemas still re-normalizes from canonical defs, so a live /model switch onto Muse Spark rewrites and switching away restores. Checked bun test ./src/agent/tool-schema-normalize.test.ts ./src/session/live-model-switch.test.ts (17 pass).
TheGreatAxios
left a comment
There was a problem hiding this comment.
Independent code review finds no actionable defects across all five changed files. Muse Spark reuses the acyclic present schema, model switching rebuilds from canonical definitions, and other providers retain their existing schemas. Full bun run check passes against current main: 8,205 tests, zero failures. No live Muse Spark API inference runs in this review; provider smoke acceptance remains unverified. Shared normalizer changes must be composed when the worker-schema PR lands.
Summary
presentwire schema as Kimi, without changing runtime validation./modelswitching rebuilds tool definitions from the canonical registry: Muse Spark gets the acyclic shape and switching away restores provider-appropriate schemas.Verification
bun run checkpasses: 8,205 tests, zero failures.26406dee5d0ad37e93b99cf0e59f0dea2260a988.Refs CL-9812