Skip to content

Fix file recovery, AI permissions, terminal lifetimes and UI regressions - #9

Merged
terrorproforma merged 5 commits into
masterfrom
codex/review-fixes
Sep 8, 2026
Merged

terrorproforma merged 5 commits into
masterfrom
codex/review-fixes

Conversation

@terrorproforma

@terrorproforma terrorproforma commented Sep 8, 2026

Copy link
Copy Markdown
Owner

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.

  • Preserve text encodings and original Undo bytes; stage ZIP replacements; verify interrupted moves; journal bulk renames; keep same-volume moves fast.
  • Fix pending-save drafts, clipboard ownership, filter-history memory, focus continuity, accessible virtual rows and model-worker preparation.
  • Bind MCP previews, retained operations and implicit UI targets to current scope; preserve Unicode framing, cancellation accounting, text pagination and client configuration edits.
  • Reserve terminal ownership through startup, retain initial output and early exits, clean up on reload, and await native shutdown. Preserve raw folder markers and Windows launch argument boundaries.
  • Publish MCP metadata from verified existing release bytes; fail closed on release lookup/upload errors and never replace existing assets. Preserve CI diagnostics.

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.

@terrorproforma
terrorproforma marked this pull request as ready for review September 8, 2026 16:07
@terrorproforma
terrorproforma merged commit d27467f into master Sep 8, 2026
1 check passed
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