There are 13 unit test files under web/oss/src, and none of them execute. Not in CI, not locally. They pass review and give the impression of coverage while never asserting anything.
How to see it
Run the same command CI runs:
cd web/tests && pnpm tsx playwright/scripts/run-tests.ts --layer unit
The vitest phase reports nothing for web/oss and exits 0. Then try to run one directly:
cd web/oss && npx vitest run src/components/pages/settings/assets/navigation.test.ts
# sh: 1: vitest: not found
vitest is not a dependency of web/oss, and web/oss/package.json declares no test script of any kind. The runner selects packages with pnpm -r --if-present run test:unit (web/tests/playwright/scripts/run-tests.ts:200), so a package without that script is skipped silently and the job still passes. In CI this is the "Run web unit tests" step of .github/workflows/12-check-unit-tests.yml.
By contrast, agenta-annotation, agenta-entities, agenta-entity-ui, agenta-playground and agenta-shared all define test:unit, so their suites do run.
The files that never run
web/oss/src/components/pages/agent-home/assets/templates.test.ts
web/oss/src/components/pages/auth/assets/lastAuthMethod.test.ts
web/oss/src/components/pages/settings/assets/navigation.test.ts
web/oss/src/components/SessionInspector/api.test.ts
web/oss/src/components/Sidebar/components/assets/workflowEntitySelection.test.ts
web/oss/src/components/TemplateStrip/assets/codingAgentClipboard.test.ts
web/oss/src/components/TemplateStrip/assets/pagerMath.test.ts
web/oss/src/lib/navigation/projectSwitchHref.test.ts
web/oss/src/state/org/selectors/orgsDemoFilter.test.ts
web/oss/src/state/project/selectors/projectAtom.race.test.ts
web/oss/src/state/project/selectors/projectsDemoFilter.test.ts
web/oss/src/state/url/template.test.ts
web/oss/src/state/workflow/hooks/workflowRouteGuard.test.ts
They all import from vitest, so they are written against a runner that was never wired up. web/ee/src has no test files, so it is unaffected today, but it has the same gap if anyone adds one.
What we want
web/oss needs a vitest config, vitest as a dev dependency, and a test:unit script, so that these tests run in the existing unit layer and a failing assertion fails the build. The junit output should land where the workflow already collects it, next to web/packages/*/test-results/junit.xml.
Worth expecting some of the 13 to fail once they finally execute, since they have never been enforced.
Found while reviewing #5478, where 53 new lines were added to navigation.test.ts.
There are 13 unit test files under
web/oss/src, and none of them execute. Not in CI, not locally. They pass review and give the impression of coverage while never asserting anything.How to see it
Run the same command CI runs:
The vitest phase reports nothing for
web/ossand exits 0. Then try to run one directly:vitestis not a dependency ofweb/oss, andweb/oss/package.jsondeclares notestscript of any kind. The runner selects packages withpnpm -r --if-present run test:unit(web/tests/playwright/scripts/run-tests.ts:200), so a package without that script is skipped silently and the job still passes. In CI this is the "Run web unit tests" step of.github/workflows/12-check-unit-tests.yml.By contrast,
agenta-annotation,agenta-entities,agenta-entity-ui,agenta-playgroundandagenta-sharedall definetest:unit, so their suites do run.The files that never run
They all import from
vitest, so they are written against a runner that was never wired up.web/ee/srchas no test files, so it is unaffected today, but it has the same gap if anyone adds one.What we want
web/ossneeds a vitest config,vitestas a dev dependency, and atest:unitscript, so that these tests run in the existing unit layer and a failing assertion fails the build. The junit output should land where the workflow already collects it, next toweb/packages/*/test-results/junit.xml.Worth expecting some of the 13 to fail once they finally execute, since they have never been enforced.
Found while reviewing #5478, where 53 new lines were added to
navigation.test.ts.