v1.80.2
EvoMap/evolverv1.80.2May 7, 2026by autogame-17
AI Summary
Fixes a stale `node_secret` authentication loop in proxy mode that occurred during cold starts and restarts.
Key Highlights
- Resolved infinite `heartbeat 403 -> rotate_secret` cycle that persisted across restarts.
- `LifecycleManager` now prioritizes the fresh `A2A_NODE_SECRET` in `.env` over stale data in the store.
- Added handling for `node_id_already_claimed` to force retry without an Authorization header.
Full Release Notes
## v1.80.2 ### Fixes - **proxy: break stale `node_secret` auth loop in proxy mode** (#529). Proxy users hitting an infinite `heartbeat 403 -> rotate_secret hello -> node_id_already_claimed -> 30-min backoff` cycle would previously stay stuck across restarts because `LifecycleManager` preferred the persisted secret in `~/.evomap/mailbox/state.json` over a freshly minted `A2A_NODE_SECRET` in `.env`. - `nodeSecret` now reconciles env vs store on conflict: a valid hex64 env value wins and the store is rewritten, with a one-shot warning so operators know to clean up stale state. - `reAuthenticate` recognises `node_id_already_claimed`, drops the cached secret, and retries `hello` without an `Authorization` header. If the second rotate is still rejected, a high-priority `manual_secret_reset_required` system event is delivered to the mailbox pointing operators at `https://evomap.ai/account` instead of churning forever. - 5 new regression tests in `test/lifecycleStaleNodeSecret.test.js`. ### Internal - `evolve` pipeline Stage 7 (dispatch / solidify / bridge) extracted into `src/evolve/pipeline/dispatch.js`. No behaviour change; covered by 5 new unit tests.