Changes touching this path
- the private workbench asks for the head manifest beside the repo header from the moment Clerk has a token, instead of after /me, the unlock and /api/private/repo in series: PrivateGate takes an ahead render prop, handed null while the account is read and the silent unlock runs and the session once unlocked, at the same place in the tree, and the workbench renders its header read through it; the new components/workbench/manifest.ts, where the manifest slot moved from the Files view data module, has readRepo issue the tip manifest and /api/private/repo together into the workbench cache, and the shell, where files and tickets open, still mounts only once the header and the unlock are both in. the gate starts the engine download and compile when it mounts, while Clerk loads, rather than after /me answers. the Tickets list /fetch starts from the tickets/ entries of the tip manifest beside /api/private/tickets rather than after it, and its answer is folded only when the route answers the same heads and files, else the list is fetched again over the route answer; a reread after a write leaves it off. the CSP is unchanged. pinned in the new site/test/workbench-first-reads.test.ts and 2 new tests in workbench-tickets-read.test.ts. red under named mutations, each restored, over the 5 tests of those two files: the header awaited before the manifest (4 passed and 1 failed), the list fetch waiting for the route (3 and 2), the manifest answer folded whatever heads the route answers (4 and 1), the manifest answer never folded (2 and 3). the site gate green at 886 passed; site only, no Rust touched and no cargo test run. owes a site deploy (kwlxstko)
89c6e267 · dbf3dbe6…
Renames are not followed. loot's tree maps a path to an address, so a rename is a delete and an add. This list is the history of the name, not of the bytes.