诊断是判题时写进库的,规则改了旧提交不跟着变。这个子命令把库里的诊断按现在的规则重做: Python 只重做已经有诊断的(重跑第一个失败测试点拿回溯,所以要在线上 oj-api 容器里跑), C / C++ 用 info 里存着的信号和退出码直接补上(原来一条都没有)。比赛提交不诊断, 重跑不出来的保留原样,只写 runtime_error 这一个键。默认只读预演,--apply 才写。 本机验过:dev 与编译两种形态都跑通,--apply 之后再跑是 0 条变化。 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
46 lines
1.5 KiB
JSON
46 lines
1.5 KiB
JSON
{
|
|
"name": "@oj2/api",
|
|
"version": "0.0.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "bun run --parallel dev:http dev:worker",
|
|
"dev:http": "bun --watch src/main.ts serve",
|
|
"dev:worker": "bun --watch src/main.ts worker",
|
|
"start": "bun src/main.ts serve",
|
|
"worker": "bun src/main.ts worker",
|
|
"build": "bun build --compile --target=bun-linux-x64 src/main.ts --outfile ../../dist/oj2-api",
|
|
"seed:dev": "bun src/scripts/seed-dev.ts",
|
|
"recount": "bun --env-file=../../.env src/main.ts recount",
|
|
"rediagnose": "bun --env-file=../../.env src/main.ts rediagnose",
|
|
"typecheck": "tsc --noEmit",
|
|
"check:routes": "bun src/scripts/check-route-shadowing.ts",
|
|
"check:ast": "bun src/scripts/check-ast-targets.ts",
|
|
"db:pull": "drizzle-kit pull",
|
|
"db:generate": "drizzle-kit generate",
|
|
"db:migrate": "bun --env-file=../../.env src/main.ts migrate"
|
|
},
|
|
"dependencies": {
|
|
"@node-rs/jieba": "^2.0.2",
|
|
"@node-rs/jieba-linux-x64-gnu": "2.0.2",
|
|
"@oj2/contract": "workspace:*",
|
|
"bullmq": "^6.2.2",
|
|
"drizzle-orm": "^0.45.2",
|
|
"fflate": "^0.8.3",
|
|
"hono": "^4.13.4",
|
|
"ioredis": "^6.0.0",
|
|
"postgres": "^3.4.9",
|
|
"sql.js": "^1.14.2",
|
|
"tree-sitter-c": "^0.24.1",
|
|
"tree-sitter-cpp": "^0.23.4",
|
|
"tree-sitter-python": "^0.25.0",
|
|
"web-tree-sitter": "^0.26.13",
|
|
"zod": "^4.4.3"
|
|
},
|
|
"devDependencies": {
|
|
"@types/sql.js": "^1.4.11",
|
|
"drizzle-kit": "^0.31.10",
|
|
"typescript": "^7.0.2"
|
|
}
|
|
}
|