Repository navigation
Install the §9 release gate (shared code rules, check.py, v0.3.3 baseline, CI) - #66
Merged
Merged
Conversation
…line, CI Adds tools/code_rules.py (byte-identical shared copy, SHA-256 pinned in tests/test_code_rules.py), tools/check.py, the [tool.morphobricks.code-rules] config with a layer for every module, the Ruff section 9 rules, and tools/code_rules_baseline.json taken from v0.3.3 (320f304). Main (534c63d, with #65) matches that baseline exactly: nothing grew. CI runs python tools/check.py --rules in place of plain ruff check. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WX6rdMV1r5jUPUR94kxV5a
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
An external audit found no
tools/check.py, no sharedtools/code_rules.py, no baseline and no[tool.morphobricks.code-rules]config here; CI ran only ruff and pytest.What
tools/code_rules.py: byte-identical copy from preprocessing main, SHA-256cc04a420a4d25d5ef200bfa370f052d9911786fde0c57385dcaf155716d6e0a2, pinned bytests/test_code_rules.py.tools/check.py: the runner used by fiberfeatures (Ruff's findings go through the same shrink-only baseline,--ignore-noqa), plusruff format --checkand pytest in the full run;--rulesfor CI.pyproject.toml: the §9 Ruff rules (C90, PLR0913, PLR0915, ANN, PGH004, requiredfrom __future__ import annotations),[tool.morphobricks.code-rules]withowner = "normalization"and a layer for each of the 18 modules (17pure,csv_ioio, the package__init__orchestration),pythonpath = ["tools"].ruff format --checkandpython tools/check.py --rules(plainruff check .would list the v0.3.3 debt, which lives in the baseline now).AGENTS.md: the new tools and "done means".Baseline
tools/code_rules_baseline.jsonwas generated on a320f304(v0.3.3) worktree: 37 entries, sum of sizes 1323,# noqaratchet all 0;histogram.pyis 864 lines (limit 600). Main (534c63d, with #65) was checked against it: no entry grew and none shrank (shrunk_baseline == baseline,histogram.pystill 864). No new code is baselined; the only debt is v0.3.3's.Checks
python tools/check.py: ruff format clean, 627 passed, 2 skipped (csbdeepnot installed,tests/test_rgb.py:78), code rules clean.Generated by Claude Code