Repository navigation
fix(ui): preserve native open actions and password prompts - #1914
Merged
Merged
Conversation
M3: carry chosen tools through native preparation and password retries, defer startup intake during pending opens, and await actual native completion in tests.
M3: wait for the intended native target refusal, retain document state checks, and compare against the exact once-generated bytes written to disk.
Contributor
Author
|
Windows CI caught one linked-PDF fixture expecting an error after three frames. The held-worker trace confirms validation is still pending then. The tests now await the intended refusal and compare the exact bytes written to disk, retaining the original document checks. All local gates pass; I’m waiting for complete CI on the new head before merging. |
skylartaylor
added a commit
to jcl-bit/printcraft
that referenced
this pull request
Oct 13, 2026
Merge the native-opening fixes from storytold#1914, retaining its production code and readiness/security assertions. Preserve the independent opening barriers and the bounded native-print validation note from storytold#1132.
sanyamsingh001
added a commit
to sanyamsingh001/pdfcraft
that referenced
this pull request
Oct 13, 2026
Check admission before each prepared result so a modal or queued picker keeps its document recipient. Wake retained replies once after picker consumption or worker abandonment. Preserve merged storytold#1914 continuation/startup behavior and the three worker regressions from upstream 3f044b6 (jcl-bit and its recorded coauthors). Keep the inherited printing/dependency changes intact; add only the remaining ownership barrier, wakes and focused regressions. Co-authored-by: Codex <codex@openai.com>
19 tasks done
echelon
added a commit
that referenced
this pull request
Oct 15, 2026
Check admission before each prepared result so a modal or queued picker keeps its document recipient. Wake retained replies once after picker consumption or worker abandonment. Preserve merged #1914 continuation/startup behavior and the three worker regressions from upstream 3f044b6 (jcl-bit and its recorded coauthors). Keep the inherited printing/dependency changes intact; add only the remaining ownership barrier, wakes and focused regressions. Co-authored-by: sanyamsingh001 <314051937+sanyamsingh001@users.noreply.github.com> Co-authored-by: Codex <codex@openai.com> Co-authored-by: Brandon Thomas <echelon@gmail.com>
13 tasks done
3 tasks done
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this changes
Choosing Export Text from Home opened the picked PDF on the native worker but forgot the selected tool. The request now retains its command through preparation and password retries, and runs it after the requested document commits. Successful text/image conversion uses the same continuation; cancellation and failed opening leave existing documents alone.
A startup download could also create its password prompt while local authentication was pending. Completing the local open cleared that unrelated prompt. Startup intake now waits for pending native preparation while retaining the existing modal and remote-link permission guards.
The native UI tests now wait for document/password completion and interactive controls, retaining their content, active-document, dirty-state, destination and recovery checks. Refused linked-PDF targets now await their specific validation error and verify the source document stays intact. The byte comparison retains the exact generated fixture written to disk, including its timestamp. The wheel test follows the configured platform speed. The invalid-filename fixture reports macOS EILSEQ capability limits explicitly and runs a valid-Unicode batch companion; supporting filesystems still exercise the original invalid-name case, and other I/O errors fail.
How you verified it
cargo xtask ci: all eight gates passed; 3,018 native tests passed, 14 existing ignored, zero failures. The 31 library crates compiled for Wasm. Strict native Clippy passed; inherited target-specific Wasm warnings remain.Review and scope
The broader opening work in #1634 overlaps these continuations; this is a focused repair of the two regressions on current main following #1493. Product changes are confined to the UI opening path, with permanent regressions and scoped test/documentation updates. Parity statuses and estimates are unchanged.
No new dependencies, assets, fonts, unsafe code, product panic paths or network access. The existing opt-in control/MCP behavior and root confinement are retained.