Skip to content

Decouple CI tests from README#236

Merged
Alek99 merged 3 commits into
mainfrom
fix/decouple-readme-tests
Jul 24, 2026
Merged

Decouple CI tests from README#236
Alek99 merged 3 commits into
mainfrom
fix/decouple-readme-tests

Conversation

@Alek99

@Alek99 Alek99 commented Jul 23, 2026

Copy link
Copy Markdown
Member

Summary

  • remove root README content assertions and executable-fence tests
  • keep durable API, contributor, security, and production contracts covered in canonical documentation
  • stop the Python-floor and performance-claim gates from scanning the root README
  • keep the README's structural package/sdist requirement intact
  • update verifier descriptions and the stale security-test selector

Root cause

The README refresh in #230 intentionally removed contributor and engineering-contract material and added illustrative snippets, but CI still treated the README as an executable specification. That produced 20 Python test failures after merge.

Impact

README editorial changes no longer control CI. Canonical API examples and dedicated contributor/spec documentation remain verified, while package metadata still requires the README to ship in source distributions.

Validation

  • make check — 2,162 passed, 68 skipped; all 8 gates passed
  • make check-docs — 48 passed, 2 skipped
  • focused verifier, Python-floor, claim-guardrail, and sdist tests — 129 passed
  • Ruff lint and format checks passed

@greptile-apps

greptile-apps Bot commented Jul 23, 2026

Copy link
Copy Markdown

Greptile Summary

This PR decouples CI documentation checks from the root README. The main changes are:

  • Removes executable README example assertions from docs tests.
  • Moves Python-floor and performance-claim gates to canonical spec and process docs.
  • Updates verifier descriptions and focused gate documentation.
  • Keeps canonical API, contributor, security, and production-readiness contracts covered outside the README.

Confidence Score: 4/5

Mostly safe, with one contained packaging verifier issue to fix before merging.

The README decoupling is consistent across docs and tests, but scripts/verify_sdist.py now accepts an sdist missing README.md even though package metadata still declares it as the project README.

scripts/verify_sdist.py; tests/test_verify_sdist.py

T-Rex T-Rex Logs

What T-Rex did

  • T-Rex generated the missing-readme sdist fixture xy-0.0.1-missing-readme.tar.gz from the verifier's required file set.
  • T-Rex verified the generated sdist by checking that pyproject.toml listed readme = "README.md" while the archive had no README.md member, and then ran the verifier which reported sdist verification OK with exit code 0.
  • T-Rex saved a focused validation log at trex-artifacts/readme-decoupling-validation.log that captured each validation command, its working directory, output, and exit code; all commands exited with 0, and the run followed the narrow path before make check-docs.

View all artifacts

T-Rex Ran code and verified through T-Rex

Important Files Changed

Filename Overview
scripts/verify_sdist.py Removes example README content checks, but also drops the root README from required sdist files despite pyproject.toml still depending on it.
tests/test_verify_sdist.py Removes README fixtures and stale example README tests, but no longer tests that root README remains a required sdist member.
scripts/check_claim_guardrails.py Narrows default performance-claim scanning away from README/example READMEs and toward canonical public docs.
scripts/check_python_floor.py Narrows Python floor documentation checks to the production-readiness spec.
tests/test_docs_examples.py Removes executable README example and README contract assertions while retaining canonical API and process-doc checks.
spec/process/production-readiness.md Updates production gate guidance to treat canonical API docs as the checked examples surface.

Comments Outside Diff (1)

  1. scripts/verify_sdist.py, line 26-27 (link)

    P1 Keep README required
    pyproject.toml still declares readme = "README.md" and the sdist include list still ships it, but removing README.md from REQUIRED_FILES means scripts/verify_sdist.py now accepts an sdist missing the project long-description source. That breaks the stated package/sdist structural guard even though package metadata still depends on this file.

    Artifacts

    Repro: fixture generation script for missing README sdist

    • Evidence file captured while the check ran.

    Repro: verifier accepts sdist missing README.md

    • The full command output behind this check.

    View artifacts

    T-Rex Ran code and verified through T-Rex

Reviews (2): Last reviewed commit: "Remove remaining README test dependencie..." | Re-trigger Greptile

@codspeed-hq

codspeed-hq Bot commented Jul 23, 2026

Copy link
Copy Markdown

Merging this PR will degrade performance by 21.05%

❌ 1 regressed benchmark
✅ 101 untouched benchmarks
⏩ 1 skipped benchmark1

Warning

Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Benchmark BASE HEAD Efficiency
test_select_lasso_message_1m 93.3 ms 118.1 ms -21.05%

Tip

Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.


Comparing fix/decouple-readme-tests (1894c1d) with main (960e132)

Open in CodSpeed

Footnotes

  1. 1 benchmark was skipped, so the baseline result was used instead. If it was deleted from the codebase, click here and archive it to remove it from the performance reports.

…ests

# Conflicts:
#	scripts/verify_local.py
#	tests/test_claim_guardrails.py
#	tests/test_docs_examples.py
#	tests/test_verify_local.py
@Alek99
Alek99 merged commit 9d5865a into main Jul 24, 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