Skip to content

🐛 Preserve file capture identity during SHA preflight - #378

Merged
Robdel12 merged 3 commits into
mainfrom
rd/project-image-names
Oct 26, 2026
Merged

Robdel12 merged 3 commits into
mainfrom
rd/project-image-names

Conversation

@Robdel12

@Robdel12 Robdel12 commented Oct 25, 2026 •

Copy link
Copy Markdown
Contributor

File preflight removes .png from name, while multipart keeps the full filename. A SHA-capable API needs both requests to describe the same capture so upload fallback and retries preserve its identity and baseline match.

Keep the released name field and add an optional filename through the shared CLI and SDK file uploader. Older APIs can ignore the new field and receive the same names as before. Literal screenshot names and the SDK's byte-upload fallback stay unchanged.

All 277 uploader, upload-command, API transport and SDK tests pass. The real CLI command verifies the additive payload, and public SDK HTTP tests cover an older API that ignores filename, a byte-only API, and preservation of literal names such as Checkout and Checkout.png during upload fallback.

An unchanged v0.38.0 CLI also completed two builds against the local API and real comparison workers, retaining four captures while writing the original image once.

@vizzly-testing

This comment has been minimized.

@Robdel12 Robdel12 changed the title 🐛 Keep preflight and upload capture names consistent 🐛 Preserve file capture identity during SHA preflight Oct 25, 2026
@vizzly-testing

This comment has been minimized.

@Robdel12
Robdel12 marked this pull request as ready for review October 26, 2026 04:48
Keep preflight capture names identical to multipart filenames so retries and SHA reuse retain the same screenshot identity. Verify the names through the real upload command and HTTP boundary.
Keep the historical preflight name and send the complete filename as an optional field. This lets older APIs ignore the addition while updated APIs match preflight captures to multipart uploads and approved baselines.

Verify public SDK behavior against byte-only APIs and APIs that ignore the additive filename field, alongside the real upload-command request flow.
Keep HTTP fallback coverage with the endpoint tests and public file-uploader compatibility with the SDK tests. Remove the separate suite and its simulated backend deduplication test; real API workflows already verify image ownership.
@Robdel12
Robdel12 force-pushed the rd/project-image-names branch from 697e9db to dc694bd Compare October 26, 2026 04:51
@Robdel12
Robdel12 enabled auto-merge (squash) October 26, 2026 04:51
@vizzly-testing

This comment has been minimized.

@vizzly-testing

Copy link
Copy Markdown

Vizzly - Visual Test Results

CLI Reporter - Waiting for build

No builds received yet for this pull request.

CLI TUI - 4 changes need review
Result Count Review
Meaningful diffs 4 Required - inspect changed screenshots
Meaningful diffs needing review (4)

vizzly-help · 1202×1430 · 0.0% diff

vizzly-help

vizzly-tdd-help · 1202×578 · 0.1% diff

vizzly-tdd-help

vizzly-doctor · 1202×578 · 0.2% diff

vizzly-doctor

vizzly-invalid-command · 1202×578 · 0.1% diff

vizzly-invalid-command

Review changes


rd/project-image-names · dc694bd4

@Robdel12
Robdel12 merged commit 405bdaf into main Oct 26, 2026
26 of 30 checks passed
@Robdel12
Robdel12 deleted the rd/project-image-names branch October 26, 2026 04:54
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