Repository navigation
feat(picker): New folder button for Create New's custom folder picker - #761
Conversation
Turns on the picker's New folder button for "Choose the folder to create the case in", the folder picker behind Create New's custom folder option.
|
Thank you for this one. It turns on the New folder button in Create New's custom folder picker, so a new case can go into a folder that does not exist yet without a trip to a shell. I ran the whole flow in Chromium (Browse, New folder, Select, Create) on this branch and on a merge with master, and it works. The new test fails when the flag is removed, so it pins the right thing. Three small items are left:
I will apply all three at merge, so no push is needed from you. |
…ker in the New folder test
1598dd2 to
b89de12
Compare
|
Thanks for the review. Rebased onto 1.48.0 (
Checked here: |
|
Thank you for this one, and for the quick rebase. It turns on the New folder button in Create New's custom folder picker, so a new case can go into a folder that does not exist yet without a trip to a shell. All three items from the last round are in. I ran the rebased head in Chromium (Browse, New folder, Select, Create, including a folder name with a space) and the case landed in the new folder, scaffolded and listed. CI is green, and the new test fails when the flag is removed. Three small things are left, and none of them needs a push from you:
I will apply all three at merge. |
…lder picker Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…eview) Clone Repo's custom folder became a parent that must already exist (#774), while its picker still had no New folder button (#761 turned it on for Create New only). A parent that does not exist yet was refused with no way to make it from the form, so the same job worked on one tab and dead-ended on the other. The test pin that kept Clone off dated from when the field was the exact target, which could be a folder not yet created. Clone moves to the on side of that pin, so every picker in the file stays covered. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Thank you, this is in the 1.49.0 release. The three items from my last comment went in at merge, and the status line now wraps so a long refusal can be read. Since #774 makes Clone Repo's field a parent, its picker has the New folder button too, and the refusal in the cases folder now names both tabs. |
Context
Create New has a Create in a custom folder option whose Browse opens the path picker ("Choose the folder to create the case in"). Like Link Existing's picker, it could only choose a folder that already exists, so putting a new case in a new folder meant making that folder in a shell first.
This turns on the New folder button for that picker.
Stacked on #745, which adds the button, the
POST /api/filesystem/mkdirroute and their tests. Until #745 merges this PR's diff also shows that commit; the change that is new here is one line insession-ui.js(allowNewFolder: trueonopenNewCasePathPicker()), a test, and the docs line naming the second caller. I will rebase onto master once #745 merges so the diff is only that.What changed
openNewCasePathPicker()passesallowNewFolder: true. The folder made inside the viewed folder is selected, and Create New's existing rules still judge it when the case is created (prepareNewCasePath(): not a system or credentials folder, not the cases folder, and so on), so a folder made here is no more trusted than one picked from the list.test/path-picker-new-folder.test.ts: one more case, that this picker opts in.CLAUDE.mdanddocs/architecture-invariants.mdnames both callers.Verification
test/path-picker-new-folder.test.tsandtest/path-picker-hidden.test.ts: 16 passed.npm testran on feat(picker): New folder button in the path picker, on for Link Existing #745's commit (668 files, 13,523 passed, 0 failed); this PR adds one flag and one test on top of it and was not re-run in full.