Clarify first-document creation #153
- KC
## Summary
Fixes #148.
- Create in the current or sole writable project, with a dedicated project chooser and access guidance when needed. - Add an explicit first-document action, pencil tooltips, and visible creating/opening feedback on desktop and compact layouts. - Keep per-project creation guards through opening, retry existing documents after opening failures, and prevent late responses or competing landing redirects from taking over newer navigation. - Document the behavior and add browser regression coverage for first use, permissions, retries, overlapping requests, and focus.
## Validation
- [x] 39 focused unit tests - [x] 50 targeted Chromium tests across creation, document navigation, and hosted flows - [x] Re-ran all 13 creation tests after the final empty-state adjustment - [x] `bun run types` - [x] `bun run ci` - [x] Production web build - [x] CI validation, full browser integration, and container build - [x] Live preview creation/navigation smoke test (scope and limits below)
## Review refresh — 30 September
Merged current `main` into this branch at `633f930a`, preserving the newer tooltip and dialog changes. Added a documented 1 KB compressed JavaScript allowance for creation controls after the Linux build measured 80,886 bytes against the former 80,500-byte limit. Reviewed the creation behavior and renewed the two existing design boundary checksums.
Passed on the updated branch: 39 focused unit tests, 50 targeted Chromium tests, TypeScript checks, `bun run ci`, and the production build. The image below was captured from the updated local application with production authentication and navigation flows and fake GitHub responses. The live deployment smoke test below applies to the original commit. Updated the sidebar loading regression to check its specific loading status; all 9 interface-quality browser tests pass. The reviewed contents were folded into one commit on current `main` for the repository’s rebase-only merge policy; file contents are identical. Final review head: `7d380db3`.
## Live preview verification
Tested https://153-chopin.githubnext.com at `7a37d629f052a3b5753b96e2e10996e113d23744`. The trusted deployment-ready timestamp followed PR creation, with no intervening push.
The restricted browser worker verified the configured dedicated test identity (`CHOPIN_PREVIEW_GITHUB_USERNAME`) and sole writable sandbox (`CHOPIN_PREVIEW_REPOSITORY`). Three empty sandbox documents were created within the approved scope.
Passed:
- Empty project displays its explicit first-document action. - Global **New document** creates and opens the first document directly. - The project pencil creates and opens a second document. - Switching documents and reloading preserve the created documents. - Global creation works at 390×844; compact sidebar navigation and document controls remain reachable.
No application or interaction failures were observed, and no manual authentication step remains. The browser was restored to desktop size.
Limits: native tooltip display and transient creating/opening feedback were not observed with the restricted browser tools; pixel-level overflow/layout was not verifiable. Multi-project selection and forced delay/failure/race scenarios remain covered by local E2E rather than the single-sandbox live smoke test.
## UI preview

MaggieAppletonhead-ref-force-pushed bedab2d6ea8flast month on GitHub
The preview deployment for **chopin** failed. 🔴
[Open Build Logs](https://next-appserver.tail49836a.ts.net/project/l9buznc9ua1if0vflxrjwajs/environment/lxqsvczv19eopxk29vfb46mj/application/hb85gdd9mwqqlfwcteflvpbj/deployment/fxbgyk5wtmj17qdjcpsrjrop) | [Open Application Logs](https://next-appserver.tail49836a.ts.net/project/l9buznc9ua1if0vflxrjwajs/environment/lxqsvczv19eopxk29vfb46mj/application/hb85gdd9mwqqlfwcteflvpbj/logs)
Last updated at: 2026-09-30 10:51:42 CET
MaggieAppletonmerged 45e36b09eb28last month on GitHub
MaggieAppletonhead-ref-deletedlast month on GitHub
MaggieAppletonreferenced this in Redesign code block controls as a header bar #218last month on GitHub