diff --git a/benchmark/packages/docker/Dockerfile b/benchmark/Dockerfile similarity index 100% rename from benchmark/packages/docker/Dockerfile rename to benchmark/Dockerfile diff --git a/benchmark/packages/cli/eslint.config.mjs b/benchmark/apps/cli/eslint.config.mjs similarity index 100% rename from benchmark/packages/cli/eslint.config.mjs rename to benchmark/apps/cli/eslint.config.mjs diff --git a/benchmark/packages/cli/package.json b/benchmark/apps/cli/package.json similarity index 100% rename from benchmark/packages/cli/package.json rename to benchmark/apps/cli/package.json diff --git a/benchmark/packages/cli/src/index.ts b/benchmark/apps/cli/src/index.ts similarity index 100% rename from benchmark/packages/cli/src/index.ts rename to benchmark/apps/cli/src/index.ts diff --git a/benchmark/packages/cli/tsconfig.json b/benchmark/apps/cli/tsconfig.json similarity index 100% rename from benchmark/packages/cli/tsconfig.json rename to benchmark/apps/cli/tsconfig.json diff --git a/benchmark/packages/web/README.md b/benchmark/apps/web/README.md similarity index 100% rename from benchmark/packages/web/README.md rename to benchmark/apps/web/README.md diff --git a/benchmark/packages/web/components.json b/benchmark/apps/web/components.json similarity index 100% rename from benchmark/packages/web/components.json rename to benchmark/apps/web/components.json diff --git a/benchmark/packages/web/eslint.config.mjs b/benchmark/apps/web/eslint.config.mjs similarity index 100% rename from benchmark/packages/web/eslint.config.mjs rename to benchmark/apps/web/eslint.config.mjs diff --git a/benchmark/packages/web/next.config.ts b/benchmark/apps/web/next.config.ts similarity index 100% rename from benchmark/packages/web/next.config.ts rename to benchmark/apps/web/next.config.ts diff --git a/benchmark/packages/web/package.json b/benchmark/apps/web/package.json similarity index 100% rename from benchmark/packages/web/package.json rename to benchmark/apps/web/package.json diff --git a/benchmark/packages/web/postcss.config.mjs b/benchmark/apps/web/postcss.config.mjs similarity index 100% rename from benchmark/packages/web/postcss.config.mjs rename to benchmark/apps/web/postcss.config.mjs diff --git a/benchmark/packages/web/public/.gitkeep b/benchmark/apps/web/public/.gitkeep similarity index 100% rename from benchmark/packages/web/public/.gitkeep rename to benchmark/apps/web/public/.gitkeep diff --git a/benchmark/packages/web/src/app/api/runs/[id]/stream/route.ts b/benchmark/apps/web/src/app/api/runs/[id]/stream/route.ts similarity index 100% rename from benchmark/packages/web/src/app/api/runs/[id]/stream/route.ts rename to benchmark/apps/web/src/app/api/runs/[id]/stream/route.ts diff --git a/benchmark/packages/web/src/app/api/runs/route.ts b/benchmark/apps/web/src/app/api/runs/route.ts similarity index 100% rename from benchmark/packages/web/src/app/api/runs/route.ts rename to benchmark/apps/web/src/app/api/runs/route.ts diff --git a/benchmark/packages/web/src/app/api/tasks/route.ts b/benchmark/apps/web/src/app/api/tasks/route.ts similarity index 100% rename from benchmark/packages/web/src/app/api/tasks/route.ts rename to benchmark/apps/web/src/app/api/tasks/route.ts diff --git a/benchmark/packages/web/src/app/favicon.ico b/benchmark/apps/web/src/app/favicon.ico similarity index 100% rename from benchmark/packages/web/src/app/favicon.ico rename to benchmark/apps/web/src/app/favicon.ico diff --git a/benchmark/packages/web/src/app/globals.css b/benchmark/apps/web/src/app/globals.css similarity index 100% rename from benchmark/packages/web/src/app/globals.css rename to benchmark/apps/web/src/app/globals.css diff --git a/benchmark/packages/web/src/app/home.tsx b/benchmark/apps/web/src/app/home.tsx similarity index 100% rename from benchmark/packages/web/src/app/home.tsx rename to benchmark/apps/web/src/app/home.tsx diff --git a/benchmark/packages/web/src/app/layout.tsx b/benchmark/apps/web/src/app/layout.tsx similarity index 100% rename from benchmark/packages/web/src/app/layout.tsx rename to benchmark/apps/web/src/app/layout.tsx diff --git a/benchmark/packages/web/src/app/page.tsx b/benchmark/apps/web/src/app/page.tsx similarity index 100% rename from benchmark/packages/web/src/app/page.tsx rename to benchmark/apps/web/src/app/page.tsx diff --git a/benchmark/packages/web/src/app/runs/[id]/page.tsx b/benchmark/apps/web/src/app/runs/[id]/page.tsx similarity index 100% rename from benchmark/packages/web/src/app/runs/[id]/page.tsx rename to benchmark/apps/web/src/app/runs/[id]/page.tsx diff --git a/benchmark/packages/web/src/app/runs/[id]/show-run.tsx b/benchmark/apps/web/src/app/runs/[id]/show-run.tsx similarity index 100% rename from benchmark/packages/web/src/app/runs/[id]/show-run.tsx rename to benchmark/apps/web/src/app/runs/[id]/show-run.tsx diff --git a/benchmark/packages/web/src/app/runs/new/actions.ts b/benchmark/apps/web/src/app/runs/new/actions.ts similarity index 100% rename from benchmark/packages/web/src/app/runs/new/actions.ts rename to benchmark/apps/web/src/app/runs/new/actions.ts diff --git a/benchmark/packages/web/src/app/runs/new/new-run.tsx b/benchmark/apps/web/src/app/runs/new/new-run.tsx similarity index 100% rename from benchmark/packages/web/src/app/runs/new/new-run.tsx rename to benchmark/apps/web/src/app/runs/new/new-run.tsx diff --git a/benchmark/packages/web/src/app/runs/new/page.tsx b/benchmark/apps/web/src/app/runs/new/page.tsx similarity index 100% rename from benchmark/packages/web/src/app/runs/new/page.tsx rename to benchmark/apps/web/src/app/runs/new/page.tsx diff --git a/benchmark/packages/web/src/components/providers/index.ts b/benchmark/apps/web/src/components/providers/index.ts similarity index 100% rename from benchmark/packages/web/src/components/providers/index.ts rename to benchmark/apps/web/src/components/providers/index.ts diff --git a/benchmark/packages/web/src/components/providers/react-query-provider.tsx b/benchmark/apps/web/src/components/providers/react-query-provider.tsx similarity index 100% rename from benchmark/packages/web/src/components/providers/react-query-provider.tsx rename to benchmark/apps/web/src/components/providers/react-query-provider.tsx diff --git a/benchmark/packages/web/src/components/providers/theme-provider.tsx b/benchmark/apps/web/src/components/providers/theme-provider.tsx similarity index 100% rename from benchmark/packages/web/src/components/providers/theme-provider.tsx rename to benchmark/apps/web/src/components/providers/theme-provider.tsx diff --git a/benchmark/packages/web/src/components/ui/button.tsx b/benchmark/apps/web/src/components/ui/button.tsx similarity index 100% rename from benchmark/packages/web/src/components/ui/button.tsx rename to benchmark/apps/web/src/components/ui/button.tsx diff --git a/benchmark/packages/web/src/components/ui/form.tsx b/benchmark/apps/web/src/components/ui/form.tsx similarity index 100% rename from benchmark/packages/web/src/components/ui/form.tsx rename to benchmark/apps/web/src/components/ui/form.tsx diff --git a/benchmark/packages/web/src/components/ui/index.ts b/benchmark/apps/web/src/components/ui/index.ts similarity index 100% rename from benchmark/packages/web/src/components/ui/index.ts rename to benchmark/apps/web/src/components/ui/index.ts diff --git a/benchmark/packages/web/src/components/ui/input.tsx b/benchmark/apps/web/src/components/ui/input.tsx similarity index 100% rename from benchmark/packages/web/src/components/ui/input.tsx rename to benchmark/apps/web/src/components/ui/input.tsx diff --git a/benchmark/packages/web/src/components/ui/label.tsx b/benchmark/apps/web/src/components/ui/label.tsx similarity index 100% rename from benchmark/packages/web/src/components/ui/label.tsx rename to benchmark/apps/web/src/components/ui/label.tsx diff --git a/benchmark/packages/web/src/components/ui/select.tsx b/benchmark/apps/web/src/components/ui/select.tsx similarity index 100% rename from benchmark/packages/web/src/components/ui/select.tsx rename to benchmark/apps/web/src/components/ui/select.tsx diff --git a/benchmark/packages/web/src/components/ui/table.tsx b/benchmark/apps/web/src/components/ui/table.tsx similarity index 100% rename from benchmark/packages/web/src/components/ui/table.tsx rename to benchmark/apps/web/src/components/ui/table.tsx diff --git a/benchmark/packages/web/src/components/ui/textarea.tsx b/benchmark/apps/web/src/components/ui/textarea.tsx similarity index 100% rename from benchmark/packages/web/src/components/ui/textarea.tsx rename to benchmark/apps/web/src/components/ui/textarea.tsx diff --git a/benchmark/packages/web/src/hooks/use-event-source.ts b/benchmark/apps/web/src/hooks/use-event-source.ts similarity index 100% rename from benchmark/packages/web/src/hooks/use-event-source.ts rename to benchmark/apps/web/src/hooks/use-event-source.ts diff --git a/benchmark/packages/web/src/hooks/use-open-router-models.ts b/benchmark/apps/web/src/hooks/use-open-router-models.ts similarity index 100% rename from benchmark/packages/web/src/hooks/use-open-router-models.ts rename to benchmark/apps/web/src/hooks/use-open-router-models.ts diff --git a/benchmark/packages/web/src/lib/formatCurrency.ts b/benchmark/apps/web/src/lib/formatCurrency.ts similarity index 100% rename from benchmark/packages/web/src/lib/formatCurrency.ts rename to benchmark/apps/web/src/lib/formatCurrency.ts diff --git a/benchmark/packages/web/src/lib/formatDuration.ts b/benchmark/apps/web/src/lib/formatDuration.ts similarity index 100% rename from benchmark/packages/web/src/lib/formatDuration.ts rename to benchmark/apps/web/src/lib/formatDuration.ts diff --git a/benchmark/packages/web/src/lib/index.ts b/benchmark/apps/web/src/lib/index.ts similarity index 100% rename from benchmark/packages/web/src/lib/index.ts rename to benchmark/apps/web/src/lib/index.ts diff --git a/benchmark/packages/web/src/lib/server/sse-stream.ts b/benchmark/apps/web/src/lib/server/sse-stream.ts similarity index 100% rename from benchmark/packages/web/src/lib/server/sse-stream.ts rename to benchmark/apps/web/src/lib/server/sse-stream.ts diff --git a/benchmark/packages/web/src/lib/utils.ts b/benchmark/apps/web/src/lib/utils.ts similarity index 100% rename from benchmark/packages/web/src/lib/utils.ts rename to benchmark/apps/web/src/lib/utils.ts diff --git a/benchmark/packages/web/tsconfig.json b/benchmark/apps/web/tsconfig.json similarity index 100% rename from benchmark/packages/web/tsconfig.json rename to benchmark/apps/web/tsconfig.json diff --git a/benchmark/packages/docker/entrypoint.sh b/benchmark/entrypoint.sh similarity index 100% rename from benchmark/packages/docker/entrypoint.sh rename to benchmark/entrypoint.sh diff --git a/benchmark/package.json b/benchmark/package.json index 4578596e38..bb5c90e8f4 100644 --- a/benchmark/package.json +++ b/benchmark/package.json @@ -9,7 +9,16 @@ "build:extension": "cd .. && npm run vscode-test", "build:runner": "turbo build --filter @benchmark/runner", "cli": "pnpm --filter @benchmark/cli dev", - "web": "pnpm --filter @benchmark/web dev" + "web": "pnpm --filter @benchmark/web dev", + "studio": "pnpm --filter @benchmark/db db:studio", + "docker:build": "docker build -f Dockerfile -t roo-code-benchmark ..", + "docker:run": "touch /tmp/benchmarks.db && docker run -d -it -p 3000:3000 -v /tmp/benchmarks.db:/tmp/benchmarks.db roo-code-benchmark", + "docker:start": "npm run docker:build && npm run docker:run", + "docker:shell": "docker exec -it $(docker ps --filter \"ancestor=roo-code-benchmark\" -q) /bin/bash", + "docker:cli": "docker exec -it -w /home/vscode/repo/benchmark $(docker ps --filter \"ancestor=roo-code-benchmark\" -q) xvfb-run npm run cli --", + "docker:stop": "docker stop $(docker ps --filter \"ancestor=roo-code-benchmark\" -q)", + "docker:rm": "docker rm $(docker ps -a --filter \"ancestor=roo-code-benchmark\" -q)", + "docker:clean": "npm run docker:stop && npm run docker:rm" }, "devDependencies": { "@dotenvx/dotenvx": "^1.39.0", diff --git a/benchmark/packages/docker/package.json b/benchmark/packages/docker/package.json deleted file mode 100644 index 9c2a68b724..0000000000 --- a/benchmark/packages/docker/package.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "@benchmark/docker", - "version": "0.1.0", - "private": true, - "scripts": { - "docker:build": "docker build -f Dockerfile -t roo-code-benchmark ..", - "docker:run": "touch /tmp/benchmarks.db && docker run -d -it -p 3000:3000 -v /tmp/benchmarks.db:/tmp/benchmarks.db roo-code-benchmark", - "docker:start": "npm run docker:build && npm run docker:run", - "docker:shell": "docker exec -it $(docker ps --filter \"ancestor=roo-code-benchmark\" -q) /bin/bash", - "docker:cli": "docker exec -it -w /home/vscode/repo/benchmark $(docker ps --filter \"ancestor=roo-code-benchmark\" -q) xvfb-run npm run cli --", - "docker:stop": "docker stop $(docker ps --filter \"ancestor=roo-code-benchmark\" -q)", - "docker:rm": "docker rm $(docker ps -a --filter \"ancestor=roo-code-benchmark\" -q)", - "docker:clean": "npm run docker:stop && npm run docker:rm" - }, - "devDependencies": {}, - "dependencies": {} -} diff --git a/benchmark/pnpm-lock.yaml b/benchmark/pnpm-lock.yaml index ce58e5ebc9..3c3072d608 100644 --- a/benchmark/pnpm-lock.yaml +++ b/benchmark/pnpm-lock.yaml @@ -42,49 +42,11 @@ importers: specifier: ^8.26.0 version: 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - config/eslint: - devDependencies: - '@eslint/js': - specifier: ^9.22.0 - version: 9.22.0 - '@next/eslint-plugin-next': - specifier: ^15.2.1 - version: 15.2.3 - eslint: - specifier: ^9.22.0 - version: 9.22.0(jiti@2.4.2) - eslint-config-prettier: - specifier: ^10.1.1 - version: 10.1.1(eslint@9.22.0(jiti@2.4.2)) - eslint-plugin-only-warn: - specifier: ^1.1.0 - version: 1.1.0 - eslint-plugin-react: - specifier: ^7.37.4 - version: 7.37.4(eslint@9.22.0(jiti@2.4.2)) - eslint-plugin-react-hooks: - specifier: ^5.2.0 - version: 5.2.0(eslint@9.22.0(jiti@2.4.2)) - eslint-plugin-turbo: - specifier: ^2.4.4 - version: 2.4.4(eslint@9.22.0(jiti@2.4.2))(turbo@2.4.4) - globals: - specifier: ^16.0.0 - version: 16.0.0 - typescript: - specifier: ^5 - version: 5.8.2 - typescript-eslint: - specifier: ^8.26.0 - version: 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) - - config/typescript: {} - - packages/cli: + apps/cli: dependencies: '@benchmark/db': specifier: workspace:^ - version: link:../db + version: link:../../packages/db '@vscode/test-electron': specifier: ^2.4.0 version: 2.4.1 @@ -102,82 +64,14 @@ importers: specifier: workspace:^ version: link:../../config/typescript - packages/db: - dependencies: - '@libsql/client': - specifier: ^0.14.0 - version: 0.14.0 - drizzle-orm: - specifier: ^0.40.0 - version: 0.40.1(@libsql/client@0.14.0)(gel@2.0.1) - drizzle-zod: - specifier: ^0.7.0 - version: 0.7.0(drizzle-orm@0.40.1(@libsql/client@0.14.0)(gel@2.0.1))(zod@3.24.2) - libsql: - specifier: ^0.5.1 - version: 0.5.1 - zod: - specifier: ^3.24.2 - version: 3.24.2 - devDependencies: - '@benchmark/eslint-config': - specifier: workspace:^ - version: link:../../config/eslint - '@benchmark/typescript-config': - specifier: workspace:^ - version: link:../../config/typescript - drizzle-kit: - specifier: ^0.30.5 - version: 0.30.5 - - packages/docker: {} - - packages/ipc: - dependencies: - node-ipc: - specifier: ^12.0.0 - version: 12.0.0 - zod: - specifier: ^3.24.2 - version: 3.24.2 - devDependencies: - '@benchmark/eslint-config': - specifier: workspace:^ - version: link:../../config/eslint - '@benchmark/typescript-config': - specifier: workspace:^ - version: link:../../config/typescript - '@types/node-ipc': - specifier: ^9.2.3 - version: 9.2.3 - - packages/runner: - dependencies: - '@benchmark/ipc': - specifier: workspace:^ - version: link:../ipc - node-ipc: - specifier: ^12.0.0 - version: 12.0.0 - devDependencies: - '@benchmark/eslint-config': - specifier: workspace:^ - version: link:../../config/eslint - '@benchmark/typescript-config': - specifier: workspace:^ - version: link:../../config/typescript - '@types/vscode': - specifier: ^1.98.0 - version: 1.98.0 - - packages/web: + apps/web: dependencies: '@benchmark/db': specifier: workspace:^ - version: link:../db + version: link:../../packages/db '@benchmark/ipc': specifier: workspace:^ - version: link:../ipc + version: link:../../packages/ipc '@hookform/resolvers': specifier: ^4.1.3 version: 4.1.3(react-hook-form@7.54.2(react@19.0.0)) @@ -246,6 +140,109 @@ importers: specifier: ^4 version: 4.0.14 + config/eslint: + devDependencies: + '@eslint/js': + specifier: ^9.22.0 + version: 9.22.0 + '@next/eslint-plugin-next': + specifier: ^15.2.1 + version: 15.2.3 + eslint: + specifier: ^9.22.0 + version: 9.22.0(jiti@2.4.2) + eslint-config-prettier: + specifier: ^10.1.1 + version: 10.1.1(eslint@9.22.0(jiti@2.4.2)) + eslint-plugin-only-warn: + specifier: ^1.1.0 + version: 1.1.0 + eslint-plugin-react: + specifier: ^7.37.4 + version: 7.37.4(eslint@9.22.0(jiti@2.4.2)) + eslint-plugin-react-hooks: + specifier: ^5.2.0 + version: 5.2.0(eslint@9.22.0(jiti@2.4.2)) + eslint-plugin-turbo: + specifier: ^2.4.4 + version: 2.4.4(eslint@9.22.0(jiti@2.4.2))(turbo@2.4.4) + globals: + specifier: ^16.0.0 + version: 16.0.0 + typescript: + specifier: ^5 + version: 5.8.2 + typescript-eslint: + specifier: ^8.26.0 + version: 8.26.1(eslint@9.22.0(jiti@2.4.2))(typescript@5.8.2) + + config/typescript: {} + + packages/db: + dependencies: + '@libsql/client': + specifier: ^0.14.0 + version: 0.14.0 + drizzle-orm: + specifier: ^0.40.0 + version: 0.40.1(@libsql/client@0.14.0)(gel@2.0.1) + drizzle-zod: + specifier: ^0.7.0 + version: 0.7.0(drizzle-orm@0.40.1(@libsql/client@0.14.0)(gel@2.0.1))(zod@3.24.2) + libsql: + specifier: ^0.5.1 + version: 0.5.1 + zod: + specifier: ^3.24.2 + version: 3.24.2 + devDependencies: + '@benchmark/eslint-config': + specifier: workspace:^ + version: link:../../config/eslint + '@benchmark/typescript-config': + specifier: workspace:^ + version: link:../../config/typescript + drizzle-kit: + specifier: ^0.30.5 + version: 0.30.5 + + packages/docker: {} + + packages/ipc: + dependencies: + node-ipc: + specifier: ^12.0.0 + version: 12.0.0 + zod: + specifier: ^3.24.2 + version: 3.24.2 + devDependencies: + '@benchmark/eslint-config': + specifier: workspace:^ + version: link:../../config/eslint + '@benchmark/typescript-config': + specifier: workspace:^ + version: link:../../config/typescript + '@types/node-ipc': + specifier: ^9.2.3 + version: 9.2.3 + + packages/runner: + dependencies: + '@benchmark/ipc': + specifier: workspace:^ + version: link:../ipc + devDependencies: + '@benchmark/eslint-config': + specifier: workspace:^ + version: link:../../config/eslint + '@benchmark/typescript-config': + specifier: workspace:^ + version: link:../../config/typescript + '@types/vscode': + specifier: ^1.98.0 + version: 1.98.0 + packages: '@alloc/quick-lru@5.2.0': @@ -5503,7 +5500,7 @@ snapshots: execa@5.1.1: dependencies: - cross-spawn: 7.0.3 + cross-spawn: 7.0.6 get-stream: 6.0.1 human-signals: 2.1.0 is-stream: 2.0.1 diff --git a/benchmark/pnpm-workspace.yaml b/benchmark/pnpm-workspace.yaml index babd90cb98..ed88915ef7 100644 --- a/benchmark/pnpm-workspace.yaml +++ b/benchmark/pnpm-workspace.yaml @@ -1,3 +1,4 @@ packages: - - "packages/*" - "config/*" + - "apps/*" + - "packages/*"