mirror of
https://github.com/deepseek-ai/deepseek-harness.git
synced 2026-10-26 16:55:08 +00:00
Repeated native Windows coverage runs stopped a Vitest fork while a JSONL migration suite was unfinished. Vitest's generic unexpected-exit error discarded the process exit code and signal, preventing classification of the failure despite identifying the missing test file from the inventory. Reuse the public ForksPoolWorker diagnostic implementation and protocol fixtures from independently reviewed PR #4388, pinned at 77e215ff76711ec75ed8aa08aa5b414780e539ae. The runtime helper is unchanged. It reports PID, project, worker identity, outstanding file request, code, and signal before stock Vitest reports the original failure. It clears ownership only on the typed testfileFinished response, suppresses expected stop, and leaves cancellation and failure handling with the original pool. Wire that existing pool into generated coverage partition configs. Keep the original worker counts, partition scheduling, test timeouts, coverage thresholds, and failure verdicts. No environment, raw argv, or test object is serialized. This commit adds diagnostic evidence; it does not claim to repair the still-unidentified Windows crash. PR #4388 remains the separate reviewable owner; no duplicate diagnostic framework or PR is introduced. Adapt the copied fixtures to the current no-new-unknown-assertions rule: declare the private preload exit function, validate consumed logger fields with the public logger type, and assign matcher/rejection values to typed unknown locals without assertions. Add a concise bilingual testing note. Validation: - Diagnostic suite: 10 passed, including a real configured Vitest fork exiting 23, stock-pool negative control, successful silent shutdown, unexpected exit 0, early exit, independent forks, and signal metadata. - Coverage coordinator suite: 51 passed. - Targeted lint and focused strict TypeScript check passed. - pnpm exec tsc -b tsconfig.host.json passed. - verify-no-unknown-casts passed; 1430 existing assertions unchanged. - doc-sync passed 40 gates; the two initially failing gates were repaired and rerun successfully: doc-typecheck and verify-doc-budgets. - Translation pairing and git diff --check passed. Refs #4387, #4388, #4394. Co-authored-by: Chinesezjc <jczhai@deepseek.com>
16 lines
448 B
TypeScript
16 lines
448 B
TypeScript
import { writeSync } from 'node:fs'
|
|
import { expect, it } from 'vitest'
|
|
|
|
declare global {
|
|
/** Native process exit captured by this fixture's Node preload. */
|
|
function __dshCoverageFixtureExit(code: number): never
|
|
}
|
|
|
|
it('runs in the configured pool', () => {
|
|
writeSync(2, `coverage-fixture-pid: ${process.pid}\n`)
|
|
if (process.env.DSH_TEST_FORK_OUTCOME === 'exit') {
|
|
globalThis.__dshCoverageFixtureExit(23)
|
|
}
|
|
expect(2 + 2).toBe(4)
|
|
})
|