Skip to content

v0.35.0

Choose a tag to compare

@github-actions github-actions released this 09 Aug 17:33
· 1258 commits to master since this release

Magic Context v0.35.0

Prompt-surface presets (#268)

The agent-facing prompt surface (guidance block + ctx_* tool descriptions) is now configurable. The existing surface is unchanged and remains the default; a new light preset delivers the same rules at roughly half the tokens (~1.8k vs ~3.7k), verified rule-by-rule against a 49-rule checklist and validated on weaker models before shipping.

{
  "prompt_surface": {
    "default": "full",
    "models": { "anthropic/claude-opus-4-6": "light" }
  }
}
  • default: "full" (unchanged surface) or "light".
  • models: per-model routing (provider/model or provider/*). On OpenCode and Pi this routes the guidance block; tool descriptions follow default (plugin v1 registers tools once per process — per-model tool descriptions are planned for the OpenCode v2 plugin API, tracked in #260).
  • guidance_override_path / tool_descriptions: user-level custom overrides for the guidance section and per-tool description text.
  • Preset changes ride the normal prompt-cache bust path; upgrading with no config sees byte-identical prompts and no cache impact.

Fixes

  • Historian fold boundaries, validation, and manual wrapup now keep completed tool invocation/result pairs atomic — a boundary can no longer separate a tool call from its result (the class behind rare provider 400s on folded sessions; fixed across OpenCode, Pi, and the Rust module).
  • Dreamer verify tasks now classify provider-outage responses as transient provider failures instead of manifest validation errors, retry with backoff, and abort a run after repeated identical provider failures instead of failing every remaining batch. Banked verification progress survives an outage and resumes.
  • verify-broad runs as a resumable cycle on large memory pools: progress banks incrementally across runs instead of restarting and timing out every week.
  • compress-cues no longer wedges on memories that reference GitHub issue/PR numbers, and terminates cleanly after repeated rejections.
  • Mural cue compression works on projects running module memory authority.
  • Synthetic todo state is preserved across turns where the model makes no tool calls (Rust transform mode).
  • Windows: stale RPC discovery files from PID reuse or unreadable port files no longer block database migrations (completes the #281 fix).

Behavior notes

  • cache_ttl per-model matching now uses the same lookup walk as prompt_surface.models: exact key → bare model id → progressive suffix-stripping → provider/* wildcard → default. Configs that previously carried an inert provider/* cache_ttl key will now match it.
  • The deprecated experimental.mural config key migrates in place to top-level mural; run doctor to persist.