feat: Phase 1 foundation - schema, auth, realtime, shell
- Rewrote Drizzle schema: 20 tables with enums, relations, indexes - Generated migration with DROP TABLE records (v1 EAV removal) - Added passkey auth routes (register/login) - Added requireWorkspaceAccess helper - Added seedDefaultData for Personal workspace + welcome note - Updated SSE endpoint for v2 entities + workspace_id filtering - Created recordActivity helper (insert + pg_notify) - Updated sidebar: Graph replaces Reports, removed Analytics - Updated command palette for v2 entities - Created AGENTS.md with locked contract - Created llm-wiki scaffold (5 stubs) - Added inline AGENT INSTRUCTION comments to all 50 API route files - Fixed globals.css border-border class conflict - Updated database.ts stub for v1 compatibility
This commit is contained in:
@@ -8,9 +8,8 @@ import {
|
||||
Flame,
|
||||
FolderKanban,
|
||||
NotebookPen,
|
||||
FileBarChart,
|
||||
Share2,
|
||||
CalendarDays,
|
||||
BarChart3,
|
||||
Bot,
|
||||
Settings,
|
||||
Plus,
|
||||
@@ -39,9 +38,8 @@ const navItems: NavItem[] = [
|
||||
{ label: 'Habits', href: '/habits', icon: Flame },
|
||||
{ label: 'Projects', href: '/projects', icon: FolderKanban },
|
||||
{ label: 'Notes', href: '/notes', icon: NotebookPen },
|
||||
{ label: 'Reports', href: '/reports', icon: FileBarChart },
|
||||
{ label: 'Graph', href: '/graph', icon: Share2 },
|
||||
{ label: 'Calendar', href: '/calendar', icon: CalendarDays },
|
||||
{ label: 'Analytics', href: '/analytics', icon: BarChart3 },
|
||||
{ label: 'Agent Activity', href: '/agents', icon: Bot },
|
||||
{ label: 'Settings', href: '/settings', icon: Settings },
|
||||
];
|
||||
@@ -86,7 +84,6 @@ export function CommandPalette() {
|
||||
{ label: 'New habit', action: () => router.push('/habits?new=true') },
|
||||
{ label: 'New project', action: () => router.push('/projects?new=true') },
|
||||
{ label: 'New note', action: () => router.push('/notes?new=true') },
|
||||
{ label: 'New report', action: () => router.push('/reports?new=true') },
|
||||
];
|
||||
|
||||
// Search handler
|
||||
|
||||
@@ -10,9 +10,8 @@ import {
|
||||
Flame,
|
||||
FolderKanban,
|
||||
NotebookPen,
|
||||
FileBarChart,
|
||||
Share2,
|
||||
CalendarDays,
|
||||
BarChart3,
|
||||
Bot,
|
||||
Settings,
|
||||
ChevronLeft,
|
||||
@@ -41,9 +40,8 @@ const navItems = [
|
||||
{ href: '/habits', label: 'Habits', icon: Flame },
|
||||
{ href: '/projects', label: 'Projects', icon: FolderKanban },
|
||||
{ href: '/notes', label: 'Notes', icon: NotebookPen },
|
||||
{ href: '/reports', label: 'Reports', icon: FileBarChart },
|
||||
{ href: '/graph', label: 'Graph', icon: Share2 },
|
||||
{ href: '/calendar', label: 'Calendar', icon: CalendarDays },
|
||||
{ href: '/analytics', label: 'Analytics', icon: BarChart3 },
|
||||
];
|
||||
|
||||
const workspaceItems = [
|
||||
|
||||
Reference in New Issue
Block a user