mirror of
https://github.com/storytold/photocraft.git
synced 2026-11-10 14:41:35 +00:00
Engine: droplet dependency capture skips disabled steps; a nested Batch that was cancelled or could not write its error log fails the caller; runDroplet forwards overrideOpen; actions.rename follows named Batch steps; Batch steps inside a script count against MAX_SCRIPT_STEPS; output claims compare destination identity; Save and Close never replaces a read-only source. ATN: Md must be a BlnM enumeration, adjustment-layer names must round-trip, Calculations exports a missing blending as Multiply, Apply Image refuses unnamed-layer transparency. Filters: Shape Blur records its resolved geometry, reserves its kernel memory first, and reports a preparation failure as an error, not a cancel; Crop keeps an artboard preset when the size is unchanged and fits the board on a turned crop. Codecs/cms/algo: zero-axis FITS image HDUs are empty; a GIF walk that breaks off before the trailer fails closed; two-value .3dl shaper rows are applied; fragmented custom kernels are refused and their work polls cancellation. UI: Conditional branches play through panel playback; paused actions refuse to resume after being replaced; Playback Options OK validates its fields; transform double-click ignores a hidden pivot; path boxes snap to a stationary selection; modal blocking uses the effective tool; a picker-consumed release clears snap lines and ends a Move drag; the Crop preset control shows Selection and checks only it; Crop box undo restores frame_from_selection; Bosnian fill labels. Tests: timing asserts moved to an ignored test, plus the review's coverage nitpicks. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>