Normalize the topology so web/desktop/mobile clients communicate only with Convex. Convex admits durable commands, dispatches private Flue turns through FLUE_URL, and stores the product-facing result before clients observe it. - Normalized relational schema: organizations, projects, conversations/turns/ messages/attachments, signals/sources/constraints, works/events/attachments. - Conversation turns queued in Convex; the agent runAction dispatches to Flue and persists assistant response, signals, and proposed work back into Convex. - Browser chat moved off the Flue transport: use-chat-agent now reads reactive Convex rows and sends through conversationMessages.send. - Fixed signed-in blank screen: gate all product queries on useConvexAuth (isAuthenticated && !isRefreshing) plus personal-org bootstrap. - Pinned react/react-dom to 19.2.8 via catalog to fix SSR dual-React crash. - Removed ~16.6k net lines: daemon, AgentOS/Orb, project issues/runs/artifacts, todos, browser Flue transport, mobile execution views, smoke scripts. Verified end-to-end on cheaptricks: connect repo, send actionable message, Flue turn completes, Signal + proposed Work created with exact provenance, persists across refresh.
46 lines
1.3 KiB
JSON
46 lines
1.3 KiB
JSON
{
|
|
"name": "web",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"build": "react-router build",
|
|
"dev": "react-router dev",
|
|
"dev:tailscale": "react-router dev --host 0.0.0.0",
|
|
"start": "react-router-serve ./build/server/index.js",
|
|
"check-types": "react-router typegen && tsc --noEmit"
|
|
},
|
|
"dependencies": {
|
|
"@code/auth": "workspace:*",
|
|
"@code/backend": "workspace:*",
|
|
"@code/env": "workspace:*",
|
|
"@code/primitives": "workspace:*",
|
|
"@code/ui": "workspace:*",
|
|
"@react-router/fs-routes": "^8.1.0",
|
|
"@react-router/node": "^8.1.0",
|
|
"@react-router/serve": "^8.1.0",
|
|
"convex": "catalog:",
|
|
"isbot": "^5.1.44",
|
|
"lucide-react": "catalog:",
|
|
"next-themes": "catalog:",
|
|
"react": "catalog:",
|
|
"react-dom": "catalog:",
|
|
"react-router": "^8.1.0",
|
|
"sonner": "catalog:",
|
|
"streamdown": "2.5.0"
|
|
},
|
|
"devDependencies": {
|
|
"@code/config": "workspace:*",
|
|
"@react-router/dev": "^8.1.0",
|
|
"@tailwindcss/vite": "^4.3.2",
|
|
"@types/node": "^22.13.14",
|
|
"@types/react": "^19.2.17",
|
|
"@types/react-dom": "catalog:",
|
|
"react-router-devtools": "^6.2.1",
|
|
"tailwindcss": "catalog:",
|
|
"typescript": "catalog:",
|
|
"vite": "catalog:",
|
|
"vite-tsconfig-paths": "^6.1.1",
|
|
"vitest": "catalog:"
|
|
}
|
|
}
|