Skip to content

fix: preserve shared state on read and replacement failures - #37

Open
imxyanua wants to merge 2 commits into
EvoMap:mainfrom
imxyanua:codex/preserve-shared-state
Open

imxyanua wants to merge 2 commits into
EvoMap:mainfrom
imxyanua:codex/preserve-shared-state

Conversation

@imxyanua

@imxyanua imxyanua commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Summary

An unreadable or corrupt state file stops the update and stays available for repair. If the filesystem rejects a replacement, Evolver retries the rename within its existing budget and preserves the prior file. Command hooks emit a diagnostic on stderr for state read or lock failures while keeping their normal JSON response.

Evidence

  • Fault-injection tests cover malformed state, denied reads, failed and transient replacement, and lock release.
  • A store test checks draft preservation for every profile on main. A command-hook test checks the diagnostic and verifies that state contents stay private.
  • 17 targeted Windows tests passed.

Merge Danger

Two-way door. Shared persistence affects all hosts. This separates the read and replacement safety work from MiniMax #19. Admission and recovery for state locks are reviewed in #29.

@evomap-aiqa-bot

evomap-aiqa-bot Bot commented Nov 3, 2026 •

Copy link
Copy Markdown

Sentinel 已审核此变更,未发现需要报告的问题。

开发 agent 查询详情: 调用 MCP 工具 sentinel_pr_review_context,传入 owner_repo="evomap/evolver-agent-plugin"、pr_number=37、head_sha="25a7227eb1af3fc31cb024753b8c5ae12c6c1478",并按条目追加 finding_id 或 finding_key。

由 Sentinel 审核 · 目标提交 25a7227eb1af

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant