3 Commits

Author SHA1 Message Date
d7a3218ea0
fix(ui): make compass logo link to dashboard home (#96)
The logo in the org switcher is now a separate clickable link
to /dashboard (fullscreen chat). The org name + chevron still
opens the workspace dropdown independently.

Co-authored-by: Nicholai <nicholaivogelfilms@gmail.com>
2026-02-16 01:27:57 -07:00
2b95ae8f15
Unified sidebar header + 5 new themes (#95)
* refactor(ui): unify org switcher with compass header

Merge the separate COMPASS branding and org switcher into a
single clean sidebar header element. The compass logo now lives
inside the org switcher trigger alongside the active org name.

Removes redundant SidebarMenu block from app-sidebar header.
Simplifies the org dropdown to just icon + name + checkmark.

* feat(themes): add 5 new presets

Warm Luxury, Black & White, Tweeter, Orang, and Catppuccin.

---------

Co-authored-by: Nicholai <nicholaivogelfilms@gmail.com>
2026-02-16 00:00:42 -07:00
ad2f0c0b9c
feat(security): add multi-tenancy isolation and demo mode (#90)
Add org-scoped data isolation across all server actions to
prevent cross-org data leakage. Add read-only demo mode with
mutation guards on all write endpoints.

Multi-tenancy:
- org filter on executeDashboardQueries (all query types)
- org boundary checks on getChannel, joinChannel
- searchMentionableUsers derives org from session
- getConversationUsage scoped to user, not org-wide for admins
- organizations table, members, org switcher component

Demo mode:
- /demo route sets strict sameSite cookie
- isDemoUser guards on all mutation server actions
- demo banner, CTA dialog, and gate components
- seed script for demo org data

Also: exclude scripts/ from tsconfig (fixes build), add
multi-tenancy architecture documentation.

Co-authored-by: Nicholai <nicholaivogelfilms@gmail.com>
2026-02-15 22:05:12 -07:00