Skip to content

Run the full Python suite in CI, turn hypothesis contract v3 on by default, and add a grounding replay standard - #19

Merged
hyperdrivebeep merged 3 commits into
mainfrom
public-20261023c
Oct 23, 2026
Merged

hyperdrivebeep merged 3 commits into
mainfrom
public-20261023c

Conversation

@hyperdrivebeep

@hyperdrivebeep hyperdrivebeep commented Oct 23, 2026 •

Copy link
Copy Markdown
Owner

Full Python suite in CI

  • The PR check ran no Python tests. CI now runs the whole suite on every pull request, on main
    and nightly (18:00 UTC) in parallel Windows jobs: python-fast (everything outside
    tests/integration) and python-integration split into sixteen shards by measured file
    duration. The shard script fails the job unless the shards cover every integration file
    exactly once. python-summary fails on a missing, empty, damaged or duplicated JUnit report,
    any failure or error, or a failed, cancelled or skipped job.
  • Same pytest options and selection as the local full run; no test, expectation or time limit
    changed. Eight shards took 47 to 73 minutes on hosted runners, so sixteen are used.
  • The CLI help contract test now removes GITHUB_ACTIONS, FORCE_COLOR, PY_COLORS and
    TERMINAL_WIDTH before rendering help, since GITHUB_ACTIONS makes Typer ignore COLUMNS.

Hypothesis contract v3 on by default

  • Projects with no saved choice now use the v3 contract (expected result per hypothesis for
    each test, and refutation conditions). A saved False keeps v2; saved settings are not
    rewritten. README and KNOWN_LIMITATIONS describe the default and the extra model call.
  • Shared scripted test models now answer the v3 contract and the table filler role, using
    only supplied context. Product code is unchanged by this test update.

Prediction grounding replay standard (tests only)

  • Fixed replay data and a scorer for how hypothesis predictions may cite evidence: exact
    restatements of recorded observations must link the right source span, hypothesis-only
    predictions may have no evidence, and false verification, out-of-scope or invented links and
    synthetic-as-measured labels are rejected. No product behaviour changes.

Verification: previous CI runs of this PR ran all 5,613 Python tests; their failures (CLI help
under GITHUB_ACTIONS, scripted models without the table filler role) are fixed here and pass
locally. One research-recovery timeout seen once in CI passed locally three times and is not
changed. This push is the first run with sixteen integration shards.

THOTH added 3 commits October 23, 2026 17:55
… default

Full Python suite in CI
- The PR check ran no Python tests; the full suite (over 5,500 tests, more than four hours
  on one machine) was run locally before each merge. CI now runs it on every pull request,
  on main and nightly (18:00 UTC), in nine parallel Windows jobs:
  - python-fast: every test outside tests/integration.
  - python-integration: tests/integration split into eight shards by measured file duration.
    The shard script fails the job unless the shards cover every integration test file
    exactly once; new files without a measured time go to the lightest shard.
  - python-summary: fails on a missing, empty, damaged or duplicated JUnit report, any test
    failure or error, or a failed, cancelled or skipped job.
- Same pytest options and test selection as the local full run. No test, expectation or
  time limit changed. Manual dispatch is also available.

Hypothesis contract v3 on by default
- Projects with no saved choice now use the v3 contract (expected result per hypothesis for
  each test, and refutation conditions). A saved False keeps the v2 contract, and saved
  settings are not rewritten. Live comparisons on two synthetic datasets passed the fixed
  acceptance criteria in all recent runs; predictions remain labelled as not confirmed by
  evidence. README and KNOWN_LIMITATIONS describe the default and the extra model call.

Verification: shard and summary tool tests (24); collected node IDs across shards match the
full collection (5,613 tests, no overlap); hypothesis contract, settings and research
request tests and web switch/settings tests pass; actionlint, ruff, types, lint, budget and
manifest checks pass. This PR's CI run is the first full-suite run of the new jobs.
On GitHub runners GITHUB_ACTIONS makes Typer force terminal mode and ignore COLUMNS=120. The contract test and capture script now remove GITHUB_ACTIONS, FORCE_COLOR, PY_COLORS and TERMINAL_WIDTH before rendering help. The recorded contract is unchanged.
…ing replay tests

Scripted research models answer the v3 contract and table filler role; the CLI help test ignores CI terminal flags; integration tests run in sixteen shards; model-free prediction grounding replay data and scorer added.
@hyperdrivebeep hyperdrivebeep changed the title Run the full Python suite in CI and turn hypothesis contract v3 on by default Run the full Python suite in CI, turn hypothesis contract v3 on by default, and add a grounding replay standard Oct 23, 2026
@hyperdrivebeep
hyperdrivebeep merged commit 64e10c2 into main Oct 23, 2026
19 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.

1 participant