remove-amplifier-executor

Remove amplifier executor support — untested, dangerous to leave in

Metadata

Statusdone
Assignedagent-1241
Agent identityf51439356729d112a6c404803d88015d5b44832c6c584c62b96732b63c2b0c7e
Created2026-04-30T02:27:00.966501975+00:00
Started2026-04-30T02:27:42.393812089+00:00
Completed2026-04-30T02:52:16.645653299+00:00
Tagspriority-high,fix,executor,cleanup, eval-scheduled
Eval score0.88
└ blocking impact0.88
└ completeness0.90
└ coordination overhead0.90
└ correctness0.88
└ downstream usability0.85
└ efficiency0.85
└ intent fidelity0.93
└ style adherence0.87

Description

Description

The amplifier executor is listed in CLAUDE.md as 'amplifier (delegation + bundles)' but the user reports it's untested in current code. Today we hit it as a footgun: the deprecated dispatcher.executor = "amplifier" config key (legacy, supposed to be derived from model spec now) caused 4 audit tasks to fail with 'Agent exited with code 1' when spawned with --executor amplifier.

User direct quote: 'we should stop using amplifier... it's not tested. dangerous to leave.'

Scope — full removal

  1. src/dispatch/handler_for_model.rs (or wherever handler dispatch happens): remove the amplifier arm. Model specs starting with amplifier: should now error with 'amplifier executor was removed in ; use claude:/codex:/nex: instead' (clear migration message, not a silent fallback).

  2. src/commands/ anywhere amplifier-specific spawn logic lives — delete the handler binary file (e.g., amplifier_handler.rs if it exists) and any code paths that route through it.

  3. Config schema: any toml fields that reference amplifier (deprecated executor = "amplifier", agent.executor, etc.) — remove acceptance entirely. wg migrate config should auto-rewrite executor = "amplifier" to remove the line and replace with model-prefix-based config.

  4. CLAUDE.md / docs: remove all references to amplifier as a valid executor type. Update the 'Executor types' line.

  5. CLI help: any -x amplifier / --executor amplifier documentation gets removed.

  6. Tests: any tests that reference amplifier executor — remove or migrate.

Per the user's 'skip back-compat ceremony' standing rule (memory: feedback_skip_backcompat_ceremony.md): hard removal, no deprecation window. Single user, no distribution channel that would be affected.

Validation

  • Failing test written first: model spec amplifier:foo produces an error with the migration message; previously-accepted config with executor = "amplifier" is auto-rewritten by wg migrate config
  • grep across the codebase: zero remaining references to amplifier outside of: - the migration-rewrite logic in wg migrate config (which needs to recognize and remove the legacy key) - one-line CHANGELOG / release note - tests that exercise the migration
  • CLAUDE.md no longer lists amplifier as a valid executor type
  • Live smoke: wg add + wg publish with default config produces a worker spawned via claude (not amplifier); historical fail mode (the audit tasks today) cannot reproduce
  • cargo build + cargo test pass (with amplifier-related tests removed or migrated)
  • cargo install --path . was run before claiming done

Process note

This is a feature removal, not a feature change. The deprecation warning we shipped earlier (legacy dispatcher.executor deprecation) was the soft path; this is the hard path. After this lands, the config edit I made earlier today (removing the amplifier line from the user's config) becomes redundant — wg would have refused to load it anyway.

Depends on

Required by

Log