gjalla-test-audit — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited gjalla-test-audit (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Deep review of test suite quality to find tests that give false confidence, encode bugs, duplicate coverage, or are so heavily mocked they can't catch real regressions.
At a high level, you'll follow the steps below, then cross-reference load-bearing code with test imports. Importance can be ranked by production blast radius (which code is most depended-on — if you use gjalla, impact and change history surface this), recent bug history, and how deterministic the failure mode is.
Understand the project's test infrastructure before diving in.
.test.ts, .pglite.test.ts, .integration.test.ts, etc.)@vitest-environment node vs jsdom?Launch parallel investigations across test layers. For each test file, read BOTH the test AND the source code it claims to test. The anti-patterns to find:
#### Anti-pattern 1: Reimplemented logic tests Tests that never import the real code. Instead they redefine the logic inline and test their own copy. Signals:
@vitest-environment node with no component/hook importssimulate* or handle* that mirror source codesrc/ or source directoriesThese tests will NEVER catch a regression because they don't exercise the real code.
#### Anti-pattern 2: Tautological mock tests Tests that mock the entire database/ORM chain with hardcoded returns, then assert those same hardcoded values. Signals:
mockReturnValue / mockResolvedValue on db.select().from().where() chains_setSelectQueue, pushSelectResult)expect(result).toEqual(mockReturnValue) where mockReturnValue is what the mock was set up to return.from(), .where(), .innerJoin() all ignore their argumentsKey test: Could a bug in the real code (wrong table, wrong column, wrong WHERE clause, wrong JOIN) cause this test to fail? If no, the test is tautological.
#### Anti-pattern 3: Tests encoding wrong behavior Tests whose assertions verify incorrect behavior that happens to match buggy source code. Signals:
assignedTier but source reads subscriptionTier)toBe(404))Key test: Does the test's mock data match what real upstream code actually produces? Or was it hand-crafted to match the (possibly buggy) function under test?
#### Anti-pattern 4: Redundant companion tests Tests that are fully covered by a more rigorous companion file. Signals:
.test.ts file that mocks the DB alongside a .pglite.test.ts file that tests real SQL for the same classdescribe/it blocks#### Anti-pattern 5: Placeholder tests
expect(true).toBe(true)Organize findings into tiers:
| Tier | Description | Action |
|---|---|---|
| Tier 1 | Tests that exercise zero real code (reimplemented logic, inline mock handlers) | Delete entire file |
| Tier 2 | Files with mixed useful and tautological tests | Delete tautological sections, keep logic tests |
| Tier 3 | Tautological tests that have a real companion (PGlite, integration) | Delete redundant mocked version |
| Tier 4 | Tautological tests with NO real companion | Flag as dangerous false confidence. These need real tests written. |
| Bugs | Tests that encode wrong behavior in source code | Fix source code AND test |
Present findings as a structured report with:
Execute in waves, running tests between each:
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.