lightcraft/docs
wstock c1861e5416 Issues #164, #169: --memory sessions write nothing — no ui.json, no settings folder
`--help`, the module doc and the README promise that a `--memory` session
"writes nothing", and the desktop app broke that in two places:

- `PrefsWriter` saved `ui.json` whenever the UI state changed (issue #164),
  so a throwaway session's `thumbSize`, window layout or language replaced
  the user's saved settings — the README showcase script does exactly that.
- The GPU crash sentinel from #136 armed itself in every session except
  `LIGHTCRAFT_NO_PREFS` (issue #169); `with_init_marker` creates the
  settings folder to hold `gpu-init.marker`, removes the marker and leaves
  the folder, so a `--memory` run on a fresh home left an empty
  `Library/Application Support/LightCraft` behind.

Now `PrefsWriter` carries its target path (`None` for `--memory`,
`LIGHTCRAFT_NO_PREFS` or no home folder) and writes nothing without one; it
also writes nothing while the session is the one offered when the library
can't be opened (the question window and Continue Without Saving, which
`docs/control-protocol.md` already describes as writing nothing) and
resumes when `app.openLibrary` ends it. `gpu_crash_check(in_memory)` neither
arms the sentinel nor removes a marker in a `--memory` session; it still
reads one (new `read_init_marker`), so GPU rendering starts off there too
and the next ordinary launch reports and clears it. A `--memory` session
still reads `ui.json`, but a damaged one is reported and left in place
rather than set aside. Normal launches are unchanged.

Tests: `prefs_writer_writes_nothing_in_a_memory_or_temporary_session`,
`memory_session_leaves_the_gpu_marker_and_folder_alone`,
`memory_session_leaves_a_damaged_ui_json_alone` (apps/lightcraft), and
`read_init_marker` coverage in the gpu crate's marker test.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-08 11:17:38 +00:00
..
brand Licensing: MIT OR Apache-2.0 files, NOTICE, ArtCraft brand terms 2026-10-04 10:05:02 -04:00
images docs: README (MCP, CLI, export, status, contributing), AGENTS.md (asset enforcement, crash recovery, testing/perf), screenshots re-captured with Inter 2026-09-30 23:52:34 -04:00
showcase M1.4: crash-safe catalog persistence (op log + snapshot) 2026-09-30 23:40:40 -04:00
ai-masks.md Fetch: the model downloader is its own crate, lightcraft-fetch 2026-10-07 12:07:24 -04:00
camera-preview-colour.md LR-PROF-CAMERACOLOR: Panasonic RW2 file-local camera look 2026-10-07 16:36:06 +00:00
contributors.md About: contributor and model credits compiled in (grab bag + table, self-submitted names) (#252) 2026-10-07 21:22:08 -04:00
control-protocol.md Issue #104: keep file-system calls off the UI thread 2026-10-05 18:58:04 -04:00
gpu-pipeline.md Issues #164, #169: --memory sessions write nothing — no ui.json, no settings folder 2026-10-08 11:17:38 +00:00
localization-ja.md LR-BEHAV-LOCALIZE: compile-checked tr_format! for every language catalog 2026-10-07 06:13:44 -04:00
localization-pt-br.md i18n: add Brazilian Portuguese (pt-br) UI translation 2026-10-07 17:03:20 -03:00
localization-zh-hans.md LR-BEHAV-LOCALIZE: fill the zh-hans catalog to match zh-hant 2026-10-08 03:08:33 +08:00
localization-zh-hant.md LR-BEHAV-LOCALIZE: Traditional Chinese (Taiwan) UI, stock preset and date localisation 2026-10-07 06:54:26 -04:00
localization.md i18n: add Brazilian Portuguese (pt-br) UI translation 2026-10-07 17:03:20 -03:00
mcp.md Docs: fix release and command references 2026-10-07 15:18:44 -07:00
merge.md Merge main (Photo Merge); M1.14b: stack merge results with their sources 2026-10-01 11:00:51 -04:00
parity.md Merge main into #213 (keep main's Windows test fixes from #207; parity row combines RW2 and the downsized ARW) 2026-10-07 20:53:25 -04:00
releasing.md Docs: fix release and command references 2026-10-07 15:18:44 -07:00
web.md Fonts: use craft-fonts as an optional build input; move the Japanese fonts out 2026-10-06 11:35:02 -04:00
whats-new.md Issues #164, #169: --memory sessions write nothing — no ui.json, no settings folder 2026-10-08 11:17:38 +00:00
xmp-interop.md LR-LIB-PEOPLE: document MWG face regions in xmp-interop and the parity row 2026-10-07 06:21:27 -04:00