Convex control plane (Slices 1-4 prerequisites for Slice 5): - Versioned Definition/Design persistence: revisions preserve history instead of deleting prior slices/approvals - Fenced conversation turn queue: attempt-numbered leases prevent stale worker overwrites; expired turns reconciled by cron - Fenced Run/Attempt claiming: only queued attempts from running Runs can be claimed; lease expiry checks on every finish/checkpoint - Multi-slice progression: successful slice marks next slice ready instead of completing the whole Work; completed Runs blocked from retry - Typed AttemptClassification in schema and resolver decisions table - Durable resolver decisions for normal outcomes, cancellation, and lease-expiry recovery - Persistent artifacts and delivery metadata with provenance, source revision, verification status, and controlled delivery transitions - High-impact open questions block definition approval - Question submission gated to defining/awaiting-approval states only - Delivery status updates validate JSON metadata before persisting - Planner failures recorded as durable blocked events - Approval identity uses canonical tokenIdentifier Primitives: - decodeDefinition separates decode from validate - Design validation enforces 1-4 slices with unique IDs and valid deps - Artifact and delivery draft schemas with verified-revision binding - Delivery status transition table Package management: - Consolidated shared deps into single catalog (hono, valibot, streamdown, @types/react, @types/node, @tailwindcss/*, react-native) - Removed cross-version Hono boundary: flue() exported as Fetchable - Deleted bun.lock and regenerated from clean catalog resolution Lint/format: - Removed .eslintignore; oxc uses native ignorePatterns in oxlint.config.ts - Deleted redundant packages/backend/.oxlintrc.json - Added repos/** and scripts/** to ignore patterns - Convex-specific rule overrides for ES2022 target constraints - Fixed all oxc errors in fluePersistence.ts and agents/src/db.ts - Fixed all formatting across changed files
100 lines
4.4 KiB
JSON
100 lines
4.4 KiB
JSON
{
|
|
"name": "code",
|
|
"private": true,
|
|
"workspaces": {
|
|
"packages": [
|
|
"apps/web",
|
|
"packages/agents",
|
|
"packages/auth",
|
|
"packages/backend",
|
|
"packages/config",
|
|
"packages/env",
|
|
"packages/primitives",
|
|
"packages/ui"
|
|
],
|
|
"catalog": {
|
|
"@rivet-dev/agentos": "^0.2.7",
|
|
"@rivet-dev/agentos-core": "^0.2.10",
|
|
"@effect/platform-bun": "4.0.0-beta.99",
|
|
"dotenv": "^17.4.2",
|
|
"zod": "^4.4.3",
|
|
"lucide-react": "^1.23.0",
|
|
"next-themes": "^0.4.6",
|
|
"react": "19.2.8",
|
|
"react-dom": "19.2.8",
|
|
"sonner": "^2.0.7",
|
|
"convex": "^1.42.1",
|
|
"better-auth": "1.6.15",
|
|
"@convex-dev/better-auth": "^0.12.5",
|
|
"@tanstack/react-form": "^1.33.0",
|
|
"@types/react-dom": "^19.2.3",
|
|
"tailwindcss": "^4.3.2",
|
|
"tailwind-merge": "^3.6.0",
|
|
"@better-auth/expo": "1.6.15",
|
|
"effect": "4.0.0-beta.99",
|
|
"typescript": "^6",
|
|
"@types/bun": "latest",
|
|
"heroui-native": "^1.0.5",
|
|
"vite": "^7.3.6",
|
|
"vitest": "^4.1.10",
|
|
"convex-test": "^0.0.54",
|
|
"react-native": "0.86.0",
|
|
"@types/react": "^19.2.17",
|
|
"@types/node": "^22.13.14",
|
|
"hono": "^4.8.3",
|
|
"valibot": "^1.4.2",
|
|
"streamdown": "2.5.0",
|
|
"@tailwindcss/postcss": "^4.3.2",
|
|
"@tailwindcss/vite": "^4.3.2"
|
|
}
|
|
},
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vp run -r dev",
|
|
"build": "vp run -r build",
|
|
"check-types": "vp run -r check-types",
|
|
"check": "ultracite check package.json vite.config.ts apps/web/package.json apps/web/src/root.tsx apps/web/src/index.css apps/web/src/components/chat apps/web/src/components/slice-one apps/web/src/hooks/chat apps/web/src/hooks/slice-one apps/web/src/lib/chat apps/web/src/lib/slice-one apps/web/src/routes.ts apps/web/src/routes/app/dashboard/page.tsx apps/web/src/routes/app/mobile/page.tsx packages/agents/package.json packages/agents/src/agents/zopu.ts packages/agents/src/app.ts packages/agents/src/auth.ts packages/agents/src/tools/slice-one.ts packages/backend/package.json packages/backend/convex/conversationMessages.ts packages/backend/convex/conversationMessages.test.ts packages/backend/convex/fluePersistence.test.ts packages/backend/convex/projects.ts packages/backend/convex/schema.ts packages/backend/convex/signalRouting.ts packages/backend/convex/signalRouting.test.ts packages/backend/convex/works.ts packages/backend/convex/works.test.ts packages/backend/convex/workArtifacts.ts packages/backend/convex/workArtifacts.test.ts packages/backend/convex/workExecution.ts packages/backend/convex/workExecution.test.ts packages/backend/convex/workPlanning.ts packages/backend/convex/workPlanning.test.ts packages/backend/convex/crons.ts packages/primitives/src/work.ts packages/primitives/src/work.test.ts packages/primitives/src/work-artifact.ts packages/primitives/src/work-artifact.test.ts packages/primitives/src/resolver.ts packages/primitives/src/work-lifecycle.ts packages/primitives/src/work-resolution.test.ts",
|
|
"lint": "oxlint --disable-nested-config",
|
|
"format": "vp fmt",
|
|
"staged": "vp staged",
|
|
"hooks:setup": "vp config",
|
|
"dev:web": "vp run --filter web dev",
|
|
"dev:agents": "vp run --filter @code/agents dev",
|
|
"dev:tailscale:web": "vp run --filter web dev:tailscale",
|
|
"dev:tailscale:agents": "vp run --filter @code/agents dev:tailscale",
|
|
"dev:server": "vp run --filter @code/backend dev",
|
|
"dev:setup": "vp run --filter @code/backend dev:setup",
|
|
"build:agents": "vp run --filter @code/agents build",
|
|
"docs:update": "bun run scripts/update-docs.ts",
|
|
"subtree": "bun run scripts/subtree.ts",
|
|
"fix": "ultracite fix",
|
|
"slice1": "vp run -r dev",
|
|
"dev:zopu": "vp run --filter @code/agents dev",
|
|
"dev:zopu:web": "vp run --filter web dev"
|
|
},
|
|
"dependencies": {},
|
|
"devDependencies": {
|
|
"@code/backend": "workspace:*",
|
|
"@code/config": "workspace:*",
|
|
"@code/env": "workspace:*",
|
|
"@code/primitives": "workspace:*",
|
|
"@flue/sdk": "1.0.0-beta.9",
|
|
"@types/bun": "catalog:",
|
|
"@types/node": "catalog:",
|
|
"convex": "catalog:",
|
|
"convex-test": "catalog:",
|
|
"effect": "catalog:",
|
|
"oxfmt": "latest",
|
|
"oxlint": "latest",
|
|
"rolldown": "1.1.4",
|
|
"typescript": "catalog:",
|
|
"ultracite": "7.9.3",
|
|
"vite-plus": "0.2.2",
|
|
"vitest": "catalog:"
|
|
},
|
|
"overrides": {
|
|
"vite": "npm:@voidzero-dev/vite-plus-core@0.2.2"
|
|
},
|
|
"packageManager": "bun@1.3.14"
|
|
}
|