Skip to content

test: pre-release verification harness (make verify)#60

Merged
abhishekmishragithub merged 2 commits into
mainfrom
chore/verify-harness
Jun 19, 2026
Merged

test: pre-release verification harness (make verify)#60
abhishekmishragithub merged 2 commits into
mainfrom
chore/verify-harness

Conversation

@abhishekmishragithub

Copy link
Copy Markdown
Collaborator

Adds make verify — the standing release gate (wire coverage + live read sweep + field-drop audit + helper coverage), the systematic answer to test-coverage assurance.

What it does

One command, four layers, one pass/fail report:

  1. Wire coverage (static) — fails if any endpoint lacks a wire test
  2. Live read sweep (live) — auto-enumerates + hits every no-arg read endpoint
  3. Field-drop audit (live) — fields the API returns but the SDK doesn't type (the spec-vs-reality class wire tests miss)
  4. Helper coverage (static) — every hand-written helper has a unit test

Live layers need SMALLEST_API_KEY. Hard gates (1,2,4) fail; field-drop is a warning (tracked as spec completeness).

First-run findings (already acted on)

  • 4 helpers had no tests (KB/Audience/Campaign/Page) → added tests/custom/test_helpers_rest.py
  • field-drops on calls + agent schema → escalated to docs for 5.1.x spec completeness

Verified: mypy==1.13.0 green (703 files). Does not change the package version → no re-publish.

🤖 Generated with Claude Code

Standing release gate that turns 'did we miss anything?' into a number. Four layers:
  1. wire coverage  — fail if any endpoint lacks a wire test (static)
  2. live read sweep — auto-enumerate + hit every no-arg read endpoint (live)
  3. field-drop audit — fields the API returns but the SDK doesn't type (live)
  4. helper coverage — every hand-written helper has a unit test (static)
Live layers need SMALLEST_API_KEY; hard gates (1,2,4) fail the build, field-drop is a
warning (tracked as spec completeness). Run: make verify.

Also adds tests/custom/test_helpers_rest.py (KB/Audience/Campaign/Page — the helpers the
harness flagged as untested). First run found: calls/agent-schema field-drops (escalated)
+ 4 untested helpers (now covered). mypy green (703 files).
Makes the verification harness self-enforcing: a new endpoint without a wire test,
or a hand-written helper without a unit test, now fails CI automatically (no need to
remember 'make verify'). Live layers skip without SMALLEST_API_KEY.
@abhishekmishragithub abhishekmishragithub merged commit 24514bb into main Jun 19, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants