Files
familysync/.planning/intel/dependency-graph.json
T
Lucas Berger d521839a40 docs(intel): refresh codebase intelligence at 99f59c3 — capture Phase 4 lists + live-sync
Stale intel reflected commit 01f7456 (pre-Phase-4). Refresh adds the shared-lists
+ SSE subsystem: 21 API endpoints (was 10), lists/sse routes, listEmitter/listAccess/rank
libs, PWA lists surface, 7 new arch decisions, and Phase 4 deps (react-router, @dnd-kit,
fractional-indexing). Canonical filenames preserved; API-SURFACE.md + .last-refresh.json regenerated.
2026-06-09 14:57:27 -04:00

259 lines
6.4 KiB
JSON

{
"_meta": {
"updated_at": "2026-06-09T18:56:37.618Z",
"commit": "99f59c3999f4ef992f01ef8f8a38c1d86d2f2a0f",
"version": 3
},
"entries": {
"hono": {
"version": "4.12.23",
"type": "production",
"workspace": "@familysync/api",
"invocation": "require",
"used_by": [
"apps/api/src/index.ts",
"apps/api/src/routes/"
]
},
"@hono/node-server": {
"version": "2.0.4",
"type": "production",
"workspace": "@familysync/api",
"invocation": "require",
"used_by": [
"apps/api/src/index.ts"
]
},
"@hono/oidc-auth": {
"version": "1.8.3",
"type": "production",
"workspace": "@familysync/api",
"invocation": "require",
"used_by": [
"apps/api/src/auth/middleware.ts"
]
},
"@hono/zod-validator": {
"version": "0.8.0",
"type": "production",
"workspace": "@familysync/api",
"invocation": "require",
"used_by": [
"apps/api/src/routes/events.ts",
"apps/api/src/routes/lists.ts"
]
},
"drizzle-orm": {
"version": "0.45.2",
"type": "production",
"workspace": "@familysync/api",
"invocation": "require",
"used_by": [
"apps/api/src/db/client.ts",
"apps/api/src/db/schema.ts",
"apps/api/src/routes/",
"apps/api/src/lib/listAccess.ts"
]
},
"mysql2": {
"version": "3.22.4",
"type": "production",
"workspace": "@familysync/api",
"invocation": "require",
"used_by": [
"apps/api/src/db/client.ts"
]
},
"tsdav": {
"version": "2.2.2",
"type": "production",
"workspace": "@familysync/api",
"invocation": "require",
"used_by": [
"apps/api/src/broker/client.ts",
"apps/api/src/broker/write.ts"
]
},
"ical.js": {
"version": "2.2.1",
"type": "production",
"workspace": "both (@familysync/api + @familysync/pwa)",
"invocation": "require",
"used_by": [
"apps/api/src/broker/expand.ts",
"apps/api/src/broker/vevent.ts",
"apps/api/src/broker/sync.ts"
]
},
"zod": {
"version": "^3.25.0",
"type": "production",
"workspace": "@familysync/api",
"invocation": "require",
"used_by": [
"apps/api/src/routes/events.ts",
"apps/api/src/routes/lists.ts"
]
},
"fractional-indexing": {
"version": "^3.2.0",
"type": "production",
"workspace": "both (@familysync/api + @familysync/pwa)",
"invocation": "require",
"used_by": [
"apps/api/src/lib/rank.ts",
"apps/pwa/src/routes/ListDetail.tsx"
]
},
"node-cron": {
"version": "^4.2.1",
"type": "production",
"workspace": "@familysync/api",
"invocation": "require",
"used_by": [
"apps/api/src/broker/poller.ts",
"apps/api/src/broker/outboxWorker.ts"
]
},
"drizzle-kit": {
"version": "0.31.10",
"type": "development",
"workspace": "@familysync/api",
"invocation": "npm run db:generate / npm run db:migrate",
"used_by": [
"npm run db:generate",
"npm run db:migrate",
"npm run db:push"
]
},
"temporal-polyfill": {
"version": "0.3.2",
"type": "production",
"workspace": "both",
"invocation": "require",
"used_by": [
"apps/api/src/broker/expand.ts",
"apps/pwa/src/lib/eventDateTime.ts"
]
},
"react": {
"version": "^19.0.0",
"type": "production",
"workspace": "@familysync/pwa",
"invocation": "require",
"used_by": [
"apps/pwa/src/"
]
},
"react-router": {
"version": "^7.17.0",
"type": "production",
"workspace": "@familysync/pwa",
"invocation": "require",
"used_by": [
"apps/pwa/src/App.tsx",
"apps/pwa/src/routes/",
"apps/pwa/src/components/BottomTabBar.tsx"
]
},
"@dnd-kit/core": {
"version": "^6.3.1",
"type": "production",
"workspace": "@familysync/pwa",
"invocation": "require",
"used_by": [
"apps/pwa/src/routes/ListDetail.tsx"
]
},
"@dnd-kit/sortable": {
"version": "^10.0.0",
"type": "production",
"workspace": "@familysync/pwa",
"invocation": "require",
"used_by": [
"apps/pwa/src/routes/ListDetail.tsx"
]
},
"vite": {
"version": "8.0.16",
"type": "development",
"workspace": "@familysync/pwa",
"invocation": "npm run dev / npm run build",
"used_by": [
"npm run dev",
"npm run build"
]
},
"vite-plugin-pwa": {
"version": "^1.3.0",
"type": "production",
"workspace": "@familysync/pwa",
"invocation": "implicit",
"used_by": [
"apps/pwa/vite.config.ts"
]
},
"@tanstack/react-query": {
"version": "5.101.0",
"type": "production",
"workspace": "@familysync/pwa",
"invocation": "require",
"used_by": [
"apps/pwa/src/App.tsx",
"apps/pwa/src/components/",
"apps/pwa/src/routes/ListsIndex.tsx",
"apps/pwa/src/routes/ListDetail.tsx",
"apps/pwa/src/hooks/useListSSE.ts"
]
},
"zustand": {
"version": "5.0.14",
"type": "production",
"workspace": "@familysync/pwa",
"invocation": "require",
"used_by": [
"apps/pwa/src/store/calendarStore.ts",
"apps/pwa/src/store/listsStore.ts"
]
},
"@schedule-x/calendar": {
"version": "4.6.0",
"type": "production",
"workspace": "@familysync/pwa",
"invocation": "require",
"used_by": [
"apps/pwa/src/components/CalendarShell.tsx",
"apps/pwa/src/lib/calendarConfig.ts"
]
},
"@schedule-x/react": {
"version": "4.1.0",
"type": "production",
"workspace": "@familysync/pwa",
"invocation": "require",
"used_by": [
"apps/pwa/src/components/CalendarShell.tsx"
]
},
"lucide-react": {
"version": "1.17.0",
"type": "production",
"workspace": "@familysync/pwa",
"invocation": "require",
"used_by": [
"apps/pwa/src/components/"
]
},
"vitest": {
"version": "^4.1.8",
"type": "development",
"workspace": "both",
"invocation": "npm test",
"used_by": [
"npm test",
"npm run test:watch"
]
}
}
}