Repository navigation
Conversation
ApprovabilityVerdict: Needs Human Approval Macroscope's review found this PR requires human approval — This introduces a substantial user-facing Files-tree behavior change involving localStorage persistence, asynchronous parent/child restoration, and persisted reveal state across multiple components. Although focused tests cover key lifecycle and storage cases, the cross-component statefulness and remount behavior warrant human review. You can add or adjust custom eligibility rules. Learn more. |
a8cfb59 to
0d53b9c
Compare
The Files panel unmounts with its right-panel tab and on thread switch or reload, and its expansion lived only in memory, so every remount collapsed the tree. Persist the expanded folders per environment and workspace in localStorage and restore them parent-before-child as each folder is listed. Refs pingdotgg#12041 Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
0d53b9c to
74f3bf5
Compare
|
Taking over this one as maintainer for batch web-misc-06. I’ll preserve your commits, consolidate the tests, and verify folder restoration and workspace isolation in the running client. Credit to @fixfon for the fix. Mobile remains out of scope. No merge planned. |
Acknowledge explorer reveals on the persisted file surface so retained selections do not reopen collapsed folders. Fresh file opens reset the acknowledgment. Coalesce tree reconciliation and storage writes, flushing pending toggles during cleanup.
|
Note 🤖 Claude Opus 5.5 responding on behalf of Theo Closing. This PR conflicts with |
The Files tree forgets expanded folders when its panel remounts or the app reloads. This remembers expansion per environment and workspace, restores folders as their listings arrive, and keeps a user’s collapse when a file preview remains open. Missing folders are removed only after their parent lists successfully. Storage failures leave the tree usable, and saved preferences are capped at 500 paths.
Fresh file opens and tab switches still reveal the active file. A retained selection does not reopen a collapsed folder after an explorer remount. Deep search results finish loading their ancestors, and expansion reconciliation and storage writes are coalesced during bulk toggles.
Maintainer takeover of @fixfon’s #18211, preserving the original commits and merging main. Refs #12041; mobile remains outside this PR’s scope.
Publication status: current-head CI jobs that ran passed; the cancelled duplicate native fingerprint job has a successful replacement. CodeRabbit completed with no actionable findings and Macroscope correctness passed. Macroscope approvability is neutral / Needs Human Approval because the persisted, asynchronous Files-tree behavior spans components. Human approval remains outstanding; this PR is unmerged.
Validation on the rebuilt head:
Before — reopening Files loses expansion:
After — reopening Files retains both folder levels:
Reopen, reload, and workspace-isolation recording · Tab selection and retained-collapse recording · Retained selection and collapsed-parent remount recording
Verification limits: delayed listings, pruning, malformed or unavailable storage, and environment-key isolation were covered in focused tests rather than by inducing those failures on a remote server. Electron, macOS, Windows, iOS, and Android were not run. Web and desktop share the changed tree; no mobile behavior is claimed. The interrupted deep-search/remount regression uses the real directory hook with deferred query responses; natural remote latency was not exercised. Multiple windows retain last-writer-wins preferences, and workspace keys are not evicted.
Implemented in T3 Code with the Codex harness: GPT-6.1-Sol implementation and GPT-6-Astra tests. Independent reviews used Claude Opus 5.5 and GPT-6-Sol.