diff --git a/packages/hydrojudge/package.json b/packages/hydrojudge/package.json index f74df1e72..43ae6b157 100644 --- a/packages/hydrojudge/package.json +++ b/packages/hydrojudge/package.json @@ -1,7 +1,7 @@ { "name": "@hydrooj/hydrojudge", "bin": "bin/hydrojudge.js", - "version": "2.22.12", + "version": "2.22.13", "main": "package.json", "author": "undefined ", "repository": "https://github.com/hydro-dev/Hydro.git", diff --git a/packages/hydrojudge/src/judge/default.ts b/packages/hydrojudge/src/judge/default.ts index 684eabb57..4316bc2d2 100644 --- a/packages/hydrojudge/src/judge/default.ts +++ b/packages/hydrojudge/src/judge/default.ts @@ -111,6 +111,7 @@ function judgeCase(c: NormalizedCase, sid: string) { }, addProgress: 100 / ctx.config.count, }); + if (ctx.request.rejudged) return; // Skip analysis for rejudged submissions if ([STATUS.STATUS_WRONG_ANSWER, STATUS.STATUS_RUNTIME_ERROR].includes(status)) { const langConfig = ctx.getLang(ctx.lang); if (langConfig.analysis && !ctx.analysis) { diff --git a/packages/hydrojudge/src/judge/interface.ts b/packages/hydrojudge/src/judge/interface.ts index 3f34a6688..b7a9cab9b 100644 --- a/packages/hydrojudge/src/judge/interface.ts +++ b/packages/hydrojudge/src/judge/interface.ts @@ -20,6 +20,7 @@ export interface JudgeTaskInterface { clean: Function[]; config: Config; env?: Record; + request: Record; } export interface RuntimeContext { diff --git a/packages/hydrojudge/src/sysinfo.ts b/packages/hydrojudge/src/sysinfo.ts index ac2c0f63d..f76a16d98 100644 --- a/packages/hydrojudge/src/sysinfo.ts +++ b/packages/hydrojudge/src/sysinfo.ts @@ -15,6 +15,7 @@ async function stackSize() { try { const context: Context = { lang: 'cc', + request: {}, code: { content: `#include using namespace std;