Skip to content

Releases: neckarshore-ai/test-stats-action

v1.2.0 — node-test + tsx adapters (closes the 5-repo unit-half gap)

Choose a tag to compare

@GmanFooFoo GmanFooFoo released this 27 Jul 13:10
eff3ddb

node-test + tsx adapters — closes the gap that dropped 5 repos' unit halves

Additive to v1.1.0. No breaking changes; existing runners: lines keep working unchanged.

New runner handlers

  • node-test — parses the node --test (node:test) summary reporter, both shapes: # pass N (TAP, node 20) and ℹ pass N (spec, node 22+). It reads the summary, never the ok-lines, so a run with 3 ok-lines and fail 1 in its summary is correctly counted and flagged red.
  • tsx — parses bespoke tsx / node:assert harnesses (the estate's website unit suites). Sums multiple unlabeled summary lines across chained invocations (tsx a && tsx b && tsx c) and ignores interleaved noise.

Both handlers are fail-closed: output with no parseable summary exits non-zero rather than silently emitting a zero.

Why this matters

Five repositories' unit halves were counted as 0 before these handlers existed — the emitter had no adapter for their runner families, and a missing adapter looked exactly like an empty suite. This release makes those halves visible.

Also in this release

  • no-silent-zero guard: a GREEN run that parses 0 tests from non-empty output now exits non-zero. A RED run parsing 0 still emits (red:true) and never dies — a broken suite must not become an invisible suite.
  • Golden fixture D (goldoni): total 35 = e2e 20 + unit 15 (6 node-test + 9 tsx), regression-locked.
  • Red fixtures for both new handlers.

Verification

40/40 bats assertions green, shellcheck clean on emit-test-stats.sh + tests/validate-schema.sh, schema validation of golden A/B/C passing, CI green on the release commit.

Consumers

v1 is re-pointed to this release. Consumers pinning @v1 pick the adapters up on their next run; consumers pinning a raw SHA should move to @v1.2.0.

v1.1.0 — hardened emit (declared/red/schema + manifest-load fix)

Choose a tag to compare

@GmanFooFoo GmanFooFoo released this 09 Jul 21:46
54ae407

Backward-compatible hardening over v1.0.0 (2026-06-21). Added: declared bucket, red/red_detail, ajv schema validation, self-test job, manifest-load fix. Proven on md-viewer/trustscope/omnopsis-frontend + the Phase-3 fleet. Cut 2026-07-09; the moving v1 tag is re-pointed here.

v1.0.0 — reusable emit-test-stats action

Choose a tag to compare

@GmanFooFoo GmanFooFoo released this 21 Jun 18:48
101f0c2

Reusable runner-aware composite action that maps a test runner's native reporter output to the estate stats.json contract (runner-reported, never grep). Handlers: jest · vitest · playwright · pytest · bats · python-direct. total == sum(byType), lenses display-only, fail-closed-visible, injection-safe.

MASCHIN read-the-code + ran-the-code PIR PASS (Task-A-scoped) 2026-06-21: golden 584 reproduced, bats 18/18, proven cross-org on omnopsis-contracts. Reference every estate producer at @v1.