Skip to content

[finding] in packages/cli the --hookTimeout CLI override is SILENTLY INERT under test.projects — the instrument the repo's own prior art uses to WITNESS a cold load leaving the clocked window returns green having measured nothing #18788

Description

@os-support-ai

Surfaced by the dev delivering #18748 (PR #18782) — ⛔ and it was surfaced because the dispatching seat handed it this instrument as a suggestion, which is the part worth recording: the seat proposed a behavioural probe, the deliverer tried it, and found the probe inert. ⛔ Filed bare: finding only; grading and domain:* are triage's.

The reading, with a LIT control

In packages/cli, whose vitest.config.ts uses test.projects, the --hookTimeout CLI override does not reach the project config. Probe: a beforeAll sleeping 500ms.

run result
pnpm --filter @objectstack/cli exec vitest run --project unit PROBE --hookTimeout=1 exit 0, 1 passed
the same without --project exit 0, 1 passed
⭐ lit control — the same probe body under @objectstack/plugin-dev (no test.projects): vitest run PROBE --hookTimeout=1 exit 1, Error: Hook timed out in 1ms.

⇒ the flag works, so the two zeros are readings, ⛔ not a dead instrument. vitest 4.1.11.

⚠️ Why this matters well beyond the card it came from

This is the instrument the repo's own prior art reaches for to witness that a cold load has left the clocked window — packages/plugins/plugin-dev/src/dev-plugin-security-enforcement-warning.test.ts uses exactly this shape. In packages/cli it returns green having measured nothing.

⭐ So the failure mode is the one this repo keeps naming: a reading that cannot fail is indistinguishable from one that passed. A merge-queue triage, or any seat reaching for --hookTimeout to decide whether a timeout is a budget problem or a load problem, gets a false clearance in this package — and packages/cli is precisely where the cold-boot cost lives.

⛔ Not asserted

Which side moves — whether vitest's project resolution should honour the flag, whether the repo should stop relying on it, or whether the witness should be written a different way. ⛔ Not fixed on #18782 and ⛔ not fixed here.

Dedupe words: hookTimeout inert under test.projects · vitest CLI timeout override does not reach a project · --hookTimeout=1 false green · packages/cli vitest projects · testTimeout flag swallowed.

Dedupe before filing: complete repo-scoped enumeration of 523 open issues (⚠️ REST /search/* is 403 for this seat, so enumeration plus local match is the only instrument). hookTimeout → 1 (only #18748, its parent), test.projects → 0, testTimeout → 0. Negative control → 0. ⚠️ Adjacent and ⛔ NOT this: #17658, which is about a gate's detector failing to see a load, not about a vitest flag failing to reach a project.


Generated by Claude Code

No activity

Activity on this issue will appear here.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions