-
-
Notifications
You must be signed in to change notification settings - Fork 386
chore: update dependencies and TypeScript 7 toolchain #1376
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -16,136 +16,137 @@ | |
| "format": "biome format --write .", | ||
| "format:check": "biome format .", | ||
| "clean:cache": "rm -rf .next tsconfig.tsbuildinfo node_modules/.cache", | ||
| "test": "vitest run", | ||
| "test:ui": "vitest --ui --watch", | ||
| "test:e2e": "vitest run --config tests/configs/e2e.config.ts --reporter=verbose", | ||
| "test:integration": "vitest run --config tests/configs/integration.config.ts --reporter=verbose", | ||
| "test:integration:provider-batch-ledger": "vitest run --config tests/configs/provider-batch-ledger-postgres.config.ts", | ||
| "test:coverage": "vitest run --coverage", | ||
| "test:coverage:logs-sessionid-time-filter": "vitest run --config tests/configs/logs-sessionid-time-filter.config.ts --coverage", | ||
| "test:coverage:codex-session-id-completer": "vitest run --config tests/configs/codex-session-id-completer.config.ts --coverage", | ||
| "test:coverage:thinking-signature-rectifier": "vitest run --config tests/configs/thinking-signature-rectifier.config.ts --coverage", | ||
| "test:coverage:thinking-effort-conflict-rectifier": "vitest run --config tests/configs/thinking-effort-conflict-rectifier.config.ts --coverage", | ||
| "test:coverage:quota": "vitest run --config tests/configs/quota.config.ts --coverage", | ||
| "test:coverage:my-usage": "vitest run --config tests/configs/my-usage.config.ts --coverage", | ||
| "test:coverage:proxy-guard-pipeline": "vitest run --config tests/configs/proxy-guard-pipeline.config.ts --coverage", | ||
| "test:coverage:include-session-id-in-errors": "vitest run --config tests/configs/include-session-id-in-errors.config.ts --coverage", | ||
| "test:coverage:usage-logs-sessionid-search": "vitest run --config tests/configs/usage-logs-sessionid-search.config.ts --coverage", | ||
| "test:coverage:session-binding": "vitest run --config tests/configs/session-binding.config.ts --coverage", | ||
| "test:ci": "vitest run --reporter=default --reporter=junit --outputFile.junit=reports/vitest-junit.xml", | ||
| "test:v1": "vitest run --config tests/configs/v1.config.ts --coverage --reporter=verbose && bun scripts/check-v1-critical-coverage.ts", | ||
| "test": "vitest run --configLoader bundle", | ||
| "test:ui": "vitest --ui --watch --configLoader bundle", | ||
| "test:e2e": "vitest run --config tests/configs/e2e.config.mts --reporter=verbose --configLoader bundle", | ||
| "test:integration": "vitest run --config tests/configs/integration.config.mts --reporter=verbose --configLoader bundle", | ||
| "test:integration:provider-batch-ledger": "vitest run --config tests/configs/provider-batch-ledger-postgres.config.mts --configLoader bundle", | ||
| "test:coverage": "vitest run --coverage --configLoader bundle", | ||
| "test:coverage:logs-sessionid-time-filter": "vitest run --config tests/configs/logs-sessionid-time-filter.config.mts --coverage --configLoader bundle", | ||
| "test:coverage:codex-session-id-completer": "vitest run --config tests/configs/codex-session-id-completer.config.mts --coverage --configLoader bundle", | ||
| "test:coverage:thinking-signature-rectifier": "vitest run --config tests/configs/thinking-signature-rectifier.config.mts --coverage --configLoader bundle", | ||
| "test:coverage:thinking-effort-conflict-rectifier": "vitest run --config tests/configs/thinking-effort-conflict-rectifier.config.mts --coverage --configLoader bundle", | ||
| "test:coverage:quota": "vitest run --config tests/configs/quota.config.mts --coverage --configLoader bundle", | ||
| "test:coverage:my-usage": "vitest run --config tests/configs/my-usage.config.mts --coverage --configLoader bundle", | ||
| "test:coverage:proxy-guard-pipeline": "vitest run --config tests/configs/proxy-guard-pipeline.config.mts --coverage --configLoader bundle", | ||
| "test:coverage:include-session-id-in-errors": "vitest run --config tests/configs/include-session-id-in-errors.config.mts --coverage --configLoader bundle", | ||
| "test:coverage:usage-logs-sessionid-search": "vitest run --config tests/configs/usage-logs-sessionid-search.config.mts --coverage --configLoader bundle", | ||
| "test:coverage:session-binding": "vitest run --config tests/configs/session-binding.config.mts --coverage --configLoader bundle", | ||
| "test:ci": "vitest run --configLoader bundle --reporter=default --reporter=junit --outputFile.junit=reports/vitest-junit.xml", | ||
| "test:v1": "vitest run --config tests/configs/v1.config.mts --coverage --reporter=verbose --configLoader bundle && bun scripts/check-v1-critical-coverage.ts", | ||
| "openapi:generate": "bun scripts/generate-v1-types.ts", | ||
| "openapi:check": "bun scripts/generate-v1-types.ts --check", | ||
| "openapi:lint": "bun scripts/lint-openapi.ts", | ||
| "cui": "npx cui-server --host 0.0.0.0 --port 30000 --token a7564bc8882aa9a2d25d8b4ea6ea1e2e", | ||
| "db:generate": "drizzle-kit generate && node scripts/validate-migrations.js", | ||
| "db:generate": "drizzle-kit generate && node scripts/validate-migrations.mjs", | ||
| "db:migrate": "bun --conditions=react-server scripts/migrate.ts", | ||
| "db:push": "drizzle-kit push", | ||
| "db:studio": "drizzle-kit studio", | ||
| "validate:migrations": "node scripts/validate-migrations.js", | ||
| "validate:migrations": "node scripts/validate-migrations.mjs", | ||
| "i18n:audit-placeholders": "node scripts/audit-settings-placeholders.js --scope=settings,dashboard,myUsage --format=tsv", | ||
| "i18n:audit-placeholders:fail": "node scripts/audit-settings-placeholders.js --scope=settings,dashboard,myUsage --format=tsv --fail", | ||
| "i18n:audit-messages-no-emoji": "node scripts/audit-messages-no-emoji.js --format=tsv", | ||
| "i18n:audit-messages-no-emoji:fail": "node scripts/audit-messages-no-emoji.js --format=tsv --fail" | ||
| }, | ||
| "dependencies": { | ||
| "@bull-board/api": "^7", | ||
| "@bull-board/express": "^7", | ||
| "@bull-board/api": "^8.5.0", | ||
| "@bull-board/express": "^8.5.0", | ||
| "@dnd-kit/core": "^6.3.1", | ||
| "@dnd-kit/sortable": "^10.0.0", | ||
| "@dnd-kit/utilities": "^3.2.2", | ||
| "@hono/swagger-ui": "^0.6", | ||
| "@hono/zod-openapi": "^1", | ||
| "@hookform/resolvers": "^5", | ||
| "@iarna/toml": "^2", | ||
| "@langfuse/client": "^5", | ||
| "@langfuse/otel": "^5", | ||
| "@langfuse/tracing": "^5", | ||
| "@lobehub/icons": "^2", | ||
| "@opentelemetry/sdk-node": "^0.217", | ||
| "@radix-ui/react-alert-dialog": "^1", | ||
| "@radix-ui/react-avatar": "^1", | ||
| "@radix-ui/react-checkbox": "^1", | ||
| "@radix-ui/react-collapsible": "^1", | ||
| "@radix-ui/react-dialog": "^1", | ||
| "@radix-ui/react-dropdown-menu": "^2", | ||
| "@radix-ui/react-label": "^2", | ||
| "@radix-ui/react-popover": "^1", | ||
| "@radix-ui/react-progress": "^1", | ||
| "@radix-ui/react-scroll-area": "^1", | ||
| "@radix-ui/react-select": "^2", | ||
| "@radix-ui/react-slider": "^1", | ||
| "@radix-ui/react-slot": "^1", | ||
| "@radix-ui/react-switch": "^1", | ||
| "@radix-ui/react-tabs": "^1", | ||
| "@radix-ui/react-tooltip": "^1", | ||
| "@scalar/hono-api-reference": "^0.10", | ||
| "@tanstack/react-query": "^5", | ||
| "@tanstack/react-virtual": "^3", | ||
| "@tanstack/virtual-core": "^3", | ||
| "agentation": "^3", | ||
| "antd": "~6.3", | ||
| "bull": "^4", | ||
| "class-variance-authority": "^0.7", | ||
| "clsx": "^2", | ||
| "cmdk": "^1", | ||
| "date-fns": "4.1.0", | ||
| "date-fns-tz": "^3", | ||
| "decimal.js-light": "^2", | ||
| "dotenv": "^17", | ||
| "drizzle-orm": "^0.45", | ||
| "fetch-socks": "^1", | ||
| "fflate": "^0.8.2", | ||
| "framer-motion": "^12", | ||
| "hono": "^4", | ||
| "html2canvas": "^1", | ||
| "ioredis": "^5", | ||
| "jspdf": "^4", | ||
| "lucide-react": "^1.8.0", | ||
| "maplibre-gl": "^5.23.0", | ||
| "next": "^16", | ||
| "next-intl": "^4", | ||
| "next-themes": "^0.4", | ||
| "pino": "^10", | ||
| "pino-pretty": "^13", | ||
| "postgres": "^3", | ||
| "react": "^19", | ||
| "react-day-picker": "^10", | ||
| "react-dom": "^19", | ||
| "react-hook-form": "^7", | ||
| "react-syntax-highlighter": "^16", | ||
| "recharts": "^3", | ||
| "safe-regex": "^2", | ||
| "@hono/swagger-ui": "^0.6.1", | ||
| "@hono/zod-openapi": "^1.5.1", | ||
| "@hookform/resolvers": "^5.6.0", | ||
| "@iarna/toml": "^2.2.5", | ||
| "@langfuse/client": "^5.10.0", | ||
| "@langfuse/otel": "^5.10.0", | ||
| "@langfuse/tracing": "^5.10.0", | ||
| "@lobehub/icons": "^5.15.0", | ||
| "@opentelemetry/sdk-node": "^0.221.0", | ||
| "@radix-ui/react-alert-dialog": "^1.1.23", | ||
| "@radix-ui/react-avatar": "^1.2.6", | ||
| "@radix-ui/react-checkbox": "^1.3.11", | ||
| "@radix-ui/react-collapsible": "^1.1.20", | ||
| "@radix-ui/react-dialog": "^1.1.23", | ||
| "@radix-ui/react-dropdown-menu": "^2.1.24", | ||
| "@radix-ui/react-label": "^2.1.15", | ||
| "@radix-ui/react-popover": "^1.1.23", | ||
| "@radix-ui/react-progress": "^1.1.16", | ||
| "@radix-ui/react-scroll-area": "^1.2.18", | ||
| "@radix-ui/react-select": "^2.3.7", | ||
| "@radix-ui/react-slider": "^1.4.7", | ||
| "@radix-ui/react-slot": "^1.3.3", | ||
| "@radix-ui/react-switch": "^1.3.7", | ||
| "@radix-ui/react-tabs": "^1.1.21", | ||
| "@radix-ui/react-tooltip": "^1.2.16", | ||
| "@scalar/hono-api-reference": "^0.11.12", | ||
| "@tanstack/react-query": "^5.101.4", | ||
| "@tanstack/react-virtual": "^3.14.9", | ||
| "@tanstack/virtual-core": "^3.17.7", | ||
| "agentation": "^3.0.2", | ||
| "antd": "~6.5.3", | ||
| "bull": "^4.16.5", | ||
| "class-variance-authority": "^0.7.1", | ||
| "clsx": "^2.1.1", | ||
| "cmdk": "^1.1.1", | ||
| "date-fns": "4.4.0", | ||
| "date-fns-tz": "^3.2.0", | ||
| "decimal.js-light": "^2.5.1", | ||
| "dotenv": "^17.4.2", | ||
| "drizzle-orm": "^0.45.2", | ||
| "fetch-socks": "^1.3.3", | ||
| "fflate": "^0.8.3", | ||
| "framer-motion": "^12.43.0", | ||
| "hono": "^4.12.33", | ||
| "html2canvas": "^1.4.1", | ||
| "ioredis": "^6.0.0", | ||
| "jspdf": "^4.2.1", | ||
| "lucide-react": "^1.28.0", | ||
| "maplibre-gl": "^6.1.0", | ||
| "next": "^16.2.12", | ||
| "next-intl": "^4.13.4", | ||
| "next-themes": "^0.4.6", | ||
| "pino": "^10.3.1", | ||
| "pino-pretty": "^13.1.3", | ||
| "postgres": "^3.4.9", | ||
| "react": "^19.2.8", | ||
| "react-day-picker": "^10.0.1", | ||
| "react-dom": "^19.2.8", | ||
| "react-hook-form": "^7.84.0", | ||
| "react-syntax-highlighter": "^16.1.1", | ||
| "recharts": "^3.10.1", | ||
| "safe-regex": "^2.1.1", | ||
| "server-only": "^0.0.1", | ||
| "sonner": "^2", | ||
| "tailwind-merge": "^3", | ||
| "timeago.js": "^4", | ||
| "tw-animate-css": "^1", | ||
| "undici": "^7", | ||
| "vaul": "^1", | ||
| "ws": "^8", | ||
| "zod": "^4" | ||
| "sonner": "^2.0.7", | ||
| "tailwind-merge": "^3.6.0", | ||
| "timeago.js": "^4.0.2", | ||
| "tw-animate-css": "^1.4.0", | ||
| "undici": "^8.9.0", | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. [CRITICAL] [LOGIC-BUG] |
||
| "vaul": "^1.1.2", | ||
| "ws": "^8.21.1", | ||
| "zod": "^4.4.3" | ||
| }, | ||
| "devDependencies": { | ||
| "@biomejs/biome": "^2", | ||
| "@tailwindcss/postcss": "^4.2.0", | ||
| "@biomejs/biome": "^2.5.6", | ||
| "@tailwindcss/postcss": "^4.3.3", | ||
| "@types/geojson": "^7946.0.16", | ||
| "@types/ioredis": "^5", | ||
| "@types/node": "^25", | ||
| "@types/pg": "^8", | ||
| "@types/react": "^19", | ||
| "@types/react-dom": "^19", | ||
| "@types/react-syntax-highlighter": "^15", | ||
| "@types/ws": "^8", | ||
| "@typescript/native-preview": "7.0.0-dev.20260512.1", | ||
| "@vitest/coverage-v8": "^4", | ||
| "@vitest/ui": "^4", | ||
| "bun-types": "^1", | ||
| "drizzle-kit": "^0.31", | ||
| "happy-dom": "^20", | ||
| "@types/ioredis": "^5.0.0", | ||
| "@types/node": "^26.1.2", | ||
| "@types/pg": "^8.20.3", | ||
| "@types/react": "^19.2.18", | ||
| "@types/react-dom": "^19.2.4", | ||
| "@types/react-syntax-highlighter": "^15.5.13", | ||
| "@types/ws": "^8.18.1", | ||
| "@typescript/native-preview": "7.0.0-dev.20260707.2", | ||
| "@vitest/coverage-v8": "^4.1.10", | ||
| "@vitest/ui": "^4.1.10", | ||
| "bun-types": "^1.3.14", | ||
| "drizzle-kit": "^0.31.10", | ||
| "happy-dom": "^20.11.1", | ||
| "openapi-typescript": "^7.13.0", | ||
| "tailwindcss": "^4", | ||
| "typescript": "^6", | ||
| "vitest": "^4" | ||
| "tailwindcss": "^4.3.3", | ||
| "typescript": "6.0.2", | ||
| "typescript-7": "npm:typescript@7.0.2", | ||
| "vitest": "^4.1.10" | ||
|
Comment on lines
51
to
+150
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🩺 Stability & Availability | 🟠 Major | 🏗️ Heavy lift 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
echo "Tracked Bun lockfiles:"
git ls-files | rg '(^|/)(bun\.lock|bun\.lockb)$' || true
echo "Bun install commands in workflows and package scripts:"
rg -n -C 2 'bun install|frozen-lockfile' .github package.jsonRepository: ding113/claude-code-hub Length of output: 2914 🏁 Script executed: #!/bin/bash
set -euo pipefail
echo ".github workflow files:"
git ls-files .github/workflows | sort
echo "All tracked lockfiles:"
git ls-files | rg '(^|/)(package-lock\.json|yarn\.lock|pnpm-lock\.yaml|bun\.lock|bun\.lockb|Gemfile\.lock|poetry\.lock|uv\.lock)$' || true
echo "Bun lockfile-related comments:"
rg -n -C 1 'lockfile|Bun lock|bun\.lock|No lockfile|frozen-lockfile|frozen' .github package.json || true
echo "package scripts around install/lint/test/typecheck:"
python3 - <<'PY'
import pathlib, json
p=pathlib.Path('package.json')
data=json.loads(p.read_text())
for k,v in data.get('scripts',{}).items():
if any(s in k or any(x in str(v).lower() for x in ['install','typecheck','test','lint','format']) for s in ['install','script']):
print(f"{k}: {v}")
PY
echo "Top workflow install entries with surrounding context:"
for f in .github/workflows/*.yml .github/workflows/*.yaml; do
[ -e "$f" ] || continue
echo "--- $f"
rg -n -C 3 'bun (install|update)|bun add|bunx|setup-bun|frozen-lockfile' "$f" || true
doneRepository: ding113/claude-code-hub Length of output: 13662 提交 Bun lockfile,并将 CI 安装改为冻结模式。
🤖 Prompt for AI Agents |
||
| } | ||
| } | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔒 Security & Privacy | 🟠 Major | ⚡ Quick win
不要公开固定的 CUI 访问令牌。
Line 40 将服务绑定到
0.0.0.0,并在仓库中公开令牌。能够访问该端口的任意客户端都可以使用此令牌。从环境变量读取令牌。默认绑定到
127.0.0.1。仅在明确需要远程访问时允许覆盖主机地址。🤖 Prompt for AI Agents