fix: migrate ruler [global] to [mcp] and disable aider mcp

Merged
SH
4mo ago
+7-2

Problem

The dotfiles Upgrade workflow fails at ruler-apply-global (make upgrade-dev):

[ruler] Invalid configuration file format (Context: File: ~/.ruler/ruler.toml, Errors: global)
make[3]: *** [Makefile:337: ruler-apply-global] Error 1

@intellectronica/ruler 0.3.41 has no [global] table in its config schema. Valid top-level keys are default_agents, agents, mcp, gitignore, skills. The merge_strategy setting belongs under [mcp].

Fix

  1. Move merge_strategy = "merge" from [global] to [mcp].
  2. Disable aider MCP ([agents.aider.mcp] enabled = false). Once #1 lets the apply proceed, ruler crashes writing aider's MCP config: it writes .aider.conf.yml as YAML (the read: instructions list), then re-parses it as JSON and fails.

Verification

Ran the exact Makefile invocation locally:

bunx @intellectronica/ruler@latest apply --project-root "$HOME" --config "$HOME/.ruler/ruler.toml" --local-only

Result: Ruler apply completed successfully. (exit 0), all 18 agents apply cleanly.


Summary by cubic

Fixes the Upgrade workflow failure by aligning @intellectronica/ruler config with the 0.3.41 schema and disabling Aider MCP to prevent a parse crash. Ruler apply now completes successfully.

  • Bug Fixes
    • Moved merge_strategy = "merge" from [global] to [mcp] (per @intellectronica/ruler 0.3.41).
    • Disabled Aider MCP ([agents.aider.mcp] enabled = false) to avoid YAML→JSON reparse failure on .aider.conf.yml.