Skip to content

fix(journey): atomic memory writes + desktop lint fixups (follow-up to #55859) - #55863

Merged
OutThisLife merged 3 commits into
mainfrom
bb/journey-edit-delete-followup
Jun 30, 2026
Merged

fix(journey): atomic memory writes + desktop lint fixups (follow-up to #55859)#55863
OutThisLife merged 3 commits into
mainfrom
bb/journey-edit-delete-followup

Conversation

@OutThisLife

Copy link
Copy Markdown
Collaborator

Fast-follow to #55859 (merged). Three small, independent fixes surfaced in review.

Summary

  • fix#55859 left two perfectionist sort violations in apps/desktop/.../star-map.tsx (the NodeContextMenu import + the canvas onContextMenu prop), failing npm run lint in the desktop workspace. Reordered both.
  • refactoragent/learning_mutations.py had re-implemented the §-delimited read/write that tools/memory_tool already owns, and its writer used a plain write_text (truncate-then-write), reintroducing the partial-file race that MemoryStore._write_file deliberately avoids with atomic temp-file + rename. Now routes both reads and writes through MemoryStore._read_file/_write_file — atomic against concurrent readers, single-sourced format, indices still aligned with the graph.
  • test — locks format-parity: a journey edit leaves MEMORY.md byte-identical to MemoryStore's own §-join and round-trips through _read_file, so the two surfaces can't drift.

Test plan

  • scripts/run_tests.sh tests/agent/test_learning_mutations.py (14 pass)
  • apps/desktop typecheck + eslint (no new errors; the two remaining are pre-existing in projects.ts/titlebar-overlay-width.cjs, untouched here)

The merged #55859 left the star-map NodeContextMenu import and the
canvas onContextMenu prop out of perfectionist's required order, failing
`npm run lint` in the desktop workspace. Reorder both.
learning_mutations re-implemented the §-delimited read/write that
tools/memory_tool already owns, and its writer used a plain write_text
(truncate-then-write) — reintroducing exactly the partial-file race that
MemoryStore._write_file engineered away with atomic temp-file + rename.
Reuse MemoryStore._read_file/_write_file so the format is single-sourced,
the write is atomic against concurrent readers, and journey indices stay
aligned with the graph.
Assert a journey edit leaves MEMORY.md byte-identical to MemoryStore's
own §-join (no trailing-newline drift) and round-trips through
MemoryStore._read_file, so the two surfaces can never diverge on format.
@OutThisLife
OutThisLife enabled auto-merge June 30, 2026 20:16
@OutThisLife
OutThisLife merged commit d1af7e1 into main Jun 30, 2026
34 checks passed
@OutThisLife
OutThisLife deleted the bb/journey-edit-delete-followup branch June 30, 2026 20:21
@alt-glitch alt-glitch added type/bug Something isn't working comp/agent Core agent runtime: loop, agent_init, prompt builder, context-compression, responses endpoint comp/desktop Electron desktop app (apps/desktop/*) tool/memory Memory tool and memory providers P3 Low — cosmetic, nice to have labels Jun 30, 2026
waefrebeorn pushed a commit to waefrebeorn/slermes that referenced this pull request Jul 2, 2026
…it-delete-followup

fix(journey): atomic memory writes + desktop lint fixups (follow-up to NousResearch#55859)
habarmc1223-sudo pushed a commit to habarmc1223-sudo/hermes-agent-fluxmem that referenced this pull request Jul 8, 2026
…it-delete-followup

fix(journey): atomic memory writes + desktop lint fixups (follow-up to NousResearch#55859)
santhreal pushed a commit to santhreal/hermes-agent that referenced this pull request Jul 13, 2026
…it-delete-followup

fix(journey): atomic memory writes + desktop lint fixups (follow-up to NousResearch#55859)
Gravezzz pushed a commit to Gravezzz/hermes-agent that referenced this pull request Jul 21, 2026
…it-delete-followup

fix(journey): atomic memory writes + desktop lint fixups (follow-up to NousResearch#55859)
leewenjie pushed a commit to leewenjie/hermes-agent that referenced this pull request Aug 7, 2026
…it-delete-followup

fix(journey): atomic memory writes + desktop lint fixups (follow-up to NousResearch#55859)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/agent Core agent runtime: loop, agent_init, prompt builder, context-compression, responses endpoint comp/desktop Electron desktop app (apps/desktop/*) P3 Low — cosmetic, nice to have tool/memory Memory tool and memory providers type/bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants