Fix file recovery, AI permissions, terminal lifetimes and UI regressions - #9
Merged
Merged
Conversation
terrorproforma
marked this pull request as ready for review
September 8, 2026 16:07
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.
Interrupted moves, archive overwrites and editor saves could lose data, while AI operations could retain permissions after a profile changed. This change adds transactional recovery, current-policy checks, and regression coverage for all twenty findings documented in PRODUCT_TESTING.md.
Local validation includes 20 backend integrity checks, 25 renderer state checks, 18 terminal lifecycle tests, 16 policy checks, six client-root cases, 43 MCP views plus seven preconditions, 22 semantic actions, 70 client-config ordering cases, and 19 release workflow cases. Existing operation, navigation, layout, editor, model, accessibility and protocol suites also pass. Node syntax, Go test/vet, privacy/brand and npm audit pass. The desktop package builds with all new modules and workers included.
The three-run 100,000-entry browser check passed: median first paint 134 ms, complete hydration 583 ms and 47 mounted rows. Repeated filtering retained approximately 2.7 MiB against the review's 213 MiB reproduction.
The native terminal dependency is exactly pinned to
node-pty@1.2.0-beta.14, which includes Microsoft's Windows handle-registry race fix. Both shell profiles and 12 repeated pairs of native sessions pass, including 24 actual exits and binary identity checks. The original local crash had no captured stack, so correspondence to that known upstream race remains an inference.The refreshed desktop package passes all 13 terminal checks (Command Prompt first-prompt median 84 ms), eight native filesystem-helper checks, and the MCP contract/hash check. The MCPB bundle also passes. Native MCP builds now omit checkout-dependent VCS metadata, and rebuilding after commit produces identical bytes. Windows CI passed on the final commit, including the official SDK conformance, real terminal lifetimes, UI regressions and release workflow fixtures. CI, release builds and SDK conformance use the same pinned Go 1.25.12 toolchain.
The post-merge Windows CI run on master also passed all steps at merge commit
d27467f2e52ca308b077caabcda20d60808315b2.Recovery limits: older interrupted moves without snapshots need manual reconciliation; unsupported legacy encodings stay read-only. Cross-volume integrity adds hashing. Administrator quoting uses a non-elevated fixture; raw active-content isolation uses harmless header checks.