Skip to content

Focus a leftover scan test, and tighten the rules for PR summaries, hand-offs, and quick reviews - #840

Merged
perlinm merged 2 commits into
mainfrom
test/compiled-testing-follow-ups
Nov 12, 2026
Merged

perlinm merged 2 commits into
mainfrom
test/compiled-testing-follow-ups

Conversation

@perlinm

@perlinm perlinm commented Nov 12, 2026

Copy link
Copy Markdown
Collaborator

Motivation

#836 to #839 made the coverage check run qLDPC's compiled functions as plain Python, so tests no longer need hand-written plain-Python variants. One leftover remains: scan_test::test_counts_with_tiny_chunks_and_forced_tables was a broad scenario that existed to run the scan's compiled kernels as plain Python for coverage. Only two of its inputs still reach lines of scan.py that no other test in its file reaches reliably.

Working on that series also showed gaps in the rules for agents. PR summaries referred to other PRs and carried stale numbers. A change was handed off with an uncommitted protected patch, and another patch went for approval without saying that parts of it were unreviewed. A README counted rules defined elsewhere, and the count went stale. A quick review's single reviewer ran a long series of its own experiments on a small change.

Changes

  • scan_test.py: the broad test becomes two focused tests. One checks that a full-Pauli count above the distance raises an error. The other checks that a counter deformed by a gate that breaks a set of its basis family still counts exactly, against enumeration. Other tests in the file already count with tiny chunks, forced completion tables and deformed counters.
  • Pull request standard: a summary stands alone, for a reader who has read no other pull request, and links merged pull requests by number. It gives numbers only when review needs them, and no measurement is taken only for a summary.
  • AGENTS.md: a change goes to the maintainer to push only once all of its repository changes, including new files, are committed. A protected patch comes with a statement of whether review has seen it as it stands.
  • Writing standard: point to where details live "rather than repeating or counting them".
  • Reviewing: in a quick review, the reviewer runs an additional drafting check only to confirm or rule out a specific problem that reading the change and what it affects suggests.

Testing

scan.py is still fully covered by its own test file, and the deformed-counter test fails if the scan ignores a set that a gate breaks.

perlinm and others added 2 commits November 12, 2026 09:30
… that only it reached

A full-Pauli count above the distance raises an error, and a gate that breaks a set of a prepared
basis family leaves counts exact.  Other tests already count with tiny chunks, forced completion
tables, and deformed counters against enumeration.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…nts, and quick reviews

A PR summary stands alone and gives numbers only when review needs them.  A change goes to the
maintainer only once all of it is committed, and a protected patch comes with what review has seen
of it.  Documentation points to details rather than counting them.  A quick review's reviewer runs
a check only to confirm or rule out a specific problem.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@perlinm
perlinm merged commit fcd3610 into main Nov 12, 2026
9 checks passed
@perlinm
perlinm deleted the test/compiled-testing-follow-ups branch November 12, 2026 14:34
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