Skip to content

Fix preset/snapshot Undo integrity and preserve 16-bit images through GPU upload - #212

Merged
reno- merged 4 commits into
mainfrom
codex/preset-integrity-image16
Oct 19, 2026
Merged

reno- merged 4 commits into
mainfrom
codex/preset-integrity-image16

Conversation

@reno-

@reno- reno- commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Undoing a preset during a mesh fade restored its shape only until the next tick. Snapshot Undo retained added animation definitions and lost runtime phase/transport; Redo also used a mutable list index. This cancels owned pending work, restores exact animation state with Undo-only metadata, removes layers recreated by a recall when undoing it, and follows stable snapshot IDs. Parameter outputs and owned animation clocks restore atomically under the engine lock. Unrelated animation clocks keep advancing; driver-only presets restore their parameter outputs immediately. Animation-card folding/pinning stays independent of recall Undo. Mask presets, partial snapshot updates, recall and concordance now include layer mattes.

Integer image sources wider than eight bits now retain RGBA64 samples through layer import and ISF image inputs/imports, uploading into normalized GL_RGBA16 textures. Eight-bit images keep RGBA8. Texture allocation now tracks storage format as well as dimensions, including equal-size 8/16/float switches.

Validation: native macOS application and engine test executable compile; 19 local headless/widget CTest areas pass. The three new/extended CPU/UI regression areas also pass under ASan + UBSan (leak detection disabled). The initial Undo regressions failed on three assertions before correction. New targeted GL areas cover actual PNG16 source upload, more than 1000 ramp levels, exact color/alpha/orientation, image inputs/imports, format switches, source replacement and recreated-layer Undo/Redo. The final-commit Linux and Windows CI suites pass, including the targeted GL regressions and packaged-application smoke tests. Linux reports 64 passing CTest tests. CI memory safety, ThreadSanitizer, UI scenario and fuzzing also pass. The macOS CI engine tests are still running; the PR remains draft pending that result. The exhaustive ISF library sweep stays disabled.

The one-page docs roadmap reflects completed work. This preserves source precision; it does not add color management, floating-point HDR import or physical 10-bit output. RGBA16 source textures use twice the memory of RGBA8.

@reno-
reno- marked this pull request as ready for review October 19, 2026 13:26
@reno-
reno- merged commit b39a38e into main Oct 19, 2026
12 checks passed
@reno-
reno- deleted the codex/preset-integrity-image16 branch October 20, 2026 11:01
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