You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(adr-0006): migrate stapeln-mcp + hypatia-mcp to 5-symbol ABI
Third and fourth cartridges on the ADR-0006 ABI after aerie-mcp and
ml-mcp. Both were pure-stub (4 bespoke exports, zero standard ABI)
so each gained all 5 standard symbols plus shim-backed dispatch.
- stapeln-mcp: dispatches stapeln_list_stacks / stapeln_deploy /
stapeln_scale / stapeln_get_health. Tests: 8/8.
- hypatia-mcp: dispatches hypatia_scan_repo / hypatia_get_score /
hypatia_get_rule_set / hypatia_train_model. Tests: 8/8.
(Note: cartridge.json declares `hypatia_get_rule_set`; bespoke FFI
symbol is `hypatia_get_rule_count` — invoke uses the
cartridge.json name as the canonical tool surface.)
Pattern validated across three distinct shapes: ml-mcp (existing
4-symbol baseline + rich session state), aerie-mcp (reference), and
these two pure-stub cartridges. Per-cartridge shim import costs 4
lines of build.zig + ~35 LOC of dispatch — well under the 60-120 LOC
the ADR anticipated.
This unlocks the Elixir router `boj_cartridge_invoke` CLI verb
(ADR requires more than one cartridge implementing dispatch).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
0 commit comments