effectcraft/docs
Brandon Thomas 590f2f67ba M3.7: auto-save + crash recovery
PRJ-7. `engine::autosave` with the session hooks the frontends call:

- Auto-save: every N minutes a dirty project is written to "EffectCraft Auto-Save" next to
  it (or a custom folder; untitled projects use the custom folder or the config dir) as
  "<name> auto-save N.ecproj", rotating through max versions (oldest overwritten, extra
  slots dropped when the maximum shrinks). Optional save when the render queue starts.
- Atomic writes for projects, auto-saves and config files: temp file + fsync + rename; a
  failed write removes the temp file and leaves the previous file intact.
- Crash recovery: a session.lock sentinel in the config dir records the open project and
  its latest auto-save; a clean exit removes it. At launch a leftover sentinel offers the
  latest auto-save in a Recover Project dialog (Settings > Startup can turn it off).
- File > Open Recent (stored in the settings) with Clear Recent Projects; Increment and
  Save uses After Effects naming ("Intro 2.ecproj"); Revert reloads the saved file.
- Commands: file.autoSave, file.recoveryInfo, file.openRecent {index|path},
  file.clearRecent.
- Tests: rotation, interval/dirty tick, simulated crash mid-write, unclean-exit detection
  and recovery, Open Recent / Increment and Save / Revert.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 09:15:04 -04:00
..
brand M0.1: cargo xtask (layers, assets, wasm, ci); attribute ArtCraft brand marks 2026-10-01 20:49:29 -04:00
images M0.11: README rewrite with headless screenshots (hero, graph editor, effects, 3D, render queue) 2026-10-01 23:31:40 -04:00
agents.md M14.1: ship .mcp.json (headless + bridge servers) 2026-10-01 21:49:20 -04:00
architecture.md M3.7: auto-save + crash recovery 2026-10-02 09:15:04 -04:00
control-protocol.md M11.2: audio playback + waveforms + audio effects 2026-10-02 00:16:34 -04:00
preferences.md M3.7: auto-save + crash recovery 2026-10-02 09:15:04 -04:00
testing.md M0.11: ROADMAP, CONTRIBUTING, docs/architecture and docs/testing 2026-10-01 23:07:08 -04:00
web.md M15.1: web build (eframe wasm) + xtask web 2026-10-02 00:19:35 -04:00