Rename Eagle Monitor to Ego Monitor, with an upgrade path #71

Merged
xicv merged 9 commits from refactor/ego-monitor-name into main 2026-09-23 11:52:02 +00:00
xicv commented 2026-09-23 11:51:35 +00:00 (Migrated from github.com)

Summary

Stacked on #70, and includes a merge of it. It renames Eagle Monitor to Ego Monitor everywhere: files, command (ego-monitor), the service label com.xicv.ego-chat.ego-monitor, the data folder ego-monitor/, EGO_MONITOR_DATA_DIR, the broker's supervision.monitorCommand, the MCP instructions, the notification title, the docs (including historical notes) and the skill.

Upgrade path, with tests:

  • Old service. start and stop first retire the exact legacy com.xicv.ego-chat.eagle-monitor user service and its plist, after the existing safety checks. A foreign or unsafe plist is preserved.
  • Old data folder. eagle-monitor/ moves to ego-monitor/ once, by an atomic same-filesystem rename, when the new folder is absent and no live process holds the old lease. doctor reports leftovers.
  • Old environment variable. EAGLE_MONITOR_DATA_DIR is still honoured while the new variable is unset.
  • Old schema names. Old state files and brokers are read as the new names.
  • Old monitor still running. For one release the broker keeps publishing its checkpoint as EagleSemanticCheckpoint.v1, so an Eagle Monitor still running during an upgrade keeps working. This fixes Codex's one finding. The Ego Monitor reads both names.

The only remaining "eagle" strings are those deliberate legacy values, the test pinning them, the upgrade section of docs/ego-monitor.md and one compatibility comment.

Verification

  • npm test: 1344 tests, 1343 pass, 1 skipped, with the Pro only merge.
  • npm run test:ego-monitor: 148/148. Receipt suite 16/16. cargo test 33 + 1. cargo fmt --check clean. ESLint clean on changed files.
  • Codex review of the rename: one finding, the checkpoint schema for a running old monitor, now fixed and tested.
## Summary Stacked on #70, and includes a merge of it. It renames Eagle Monitor to Ego Monitor everywhere: files, command (`ego-monitor`), the service label `com.xicv.ego-chat.ego-monitor`, the data folder `ego-monitor/`, `EGO_MONITOR_DATA_DIR`, the broker's `supervision.monitorCommand`, the MCP instructions, the notification title, the docs (including historical notes) and the skill. Upgrade path, with tests: - **Old service.** `start` and `stop` first retire the exact legacy `com.xicv.ego-chat.eagle-monitor` user service and its plist, after the existing safety checks. A foreign or unsafe plist is preserved. - **Old data folder.** `eagle-monitor/` moves to `ego-monitor/` once, by an atomic same-filesystem rename, when the new folder is absent and no live process holds the old lease. `doctor` reports leftovers. - **Old environment variable.** `EAGLE_MONITOR_DATA_DIR` is still honoured while the new variable is unset. - **Old schema names.** Old state files and brokers are read as the new names. - **Old monitor still running.** For one release the broker keeps publishing its checkpoint as `EagleSemanticCheckpoint.v1`, so an Eagle Monitor still running during an upgrade keeps working. This fixes Codex's one finding. The Ego Monitor reads both names. The only remaining "eagle" strings are those deliberate legacy values, the test pinning them, the upgrade section of `docs/ego-monitor.md` and one compatibility comment. ## Verification - `npm test`: 1344 tests, 1343 pass, 1 skipped, with the Pro only merge. - `npm run test:ego-monitor`: 148/148. Receipt suite 16/16. `cargo test` 33 + 1. `cargo fmt --check` clean. ESLint clean on changed files. - Codex review of the rename: one finding, the checkpoint schema for a running old monitor, now fixed and tested.
Sign in to join this conversation.
No description provided.