Hi readers 👋
You can see the namespace work clearly as a deliberate release train, not random feature drops.
In the last merge wave, the team landed an almost linear stack on main:
org-ns/1-schema (#61) set the foundation (schema + shared types + reserved slug rules).
2-session-switch (#62) added session context switching and tests.
3-invites (#63) added org creation, invites, members, and access control surfaces.
4-avatar-upload (#69) and 5-slug-collision (#75) handled user-facing edge cases.
6-cli (#86) brought namespace controls into CLI/TUI.
org-creation-limit (#89) encoded platform policy (5 orgs/user) near the end of the API stack.
7a-namespace-switcher (#117) pulled in the big frontend completion pass: UI, switcher, org settings, invite UX, policy polish, and security tests.
That’s exactly the “decompose by phase, then recompose at the end” playbook. The branch naming (org-ns/1-schema, org-ns/2-session-switch, etc.) and the stacked/rebase workflow signal that each PR was intentionally narrow and buildable in sequence.
Why this matters more now than before: PR volume has clearly exploded (and the history shows near-daily namespace-related merges across API/CLI/frontend). With more contributors and faster cycles, you want:
- smaller review units,
- isolated blast radius,
- explicit ownership by layer,
- and a clear rebase path when dependencies shift.
In short: it keeps velocity high without trading away trust. When things go wrong, you can revert one phase instead of unpicking a monolith-sized PR.