Skip to content

chore(lint): clear retained Ruff debt and gate the full repository - #348

Merged
HouMinXi merged 1 commit into
mainfrom
fix/105-ruff-debt-20261101
Nov 1, 2026
Merged

HouMinXi merged 1 commit into
mainfrom
fix/105-ruff-debt-20261101

Conversation

@HouMinXi

@HouMinXi HouMinXi commented Nov 1, 2026 •

Copy link
Copy Markdown
Owner

Scope

Follow-up to the baseline debt intentionally retained by #105 / #323 (both historical; this does not reopen or close #105). One debt-focused PR, separate from the baseline-test and diagnostic behavior repairs.

  • Ruff 0.17.3: 197 findings across 69 files → 0; 145 files needing formatting → 0 (783 checked files now formatted).
  • Preserve Ruff rules, exclusions, dependency pin, workflow check identity, action pins and permissions. Upgrade the existing lint job from changed-file checks to python scripts/lint_changed.py --all; retain --base for local convenience.
  • Formatter tranche: 142 Python files AST-equivalent; 16 changed Python fences in 3 Markdown files AST-equivalent with surrounding prose unchanged.
  • Audit lint changes individually: unused imports, explicit Optional/zip semantics, mapping iteration, ordered incremental list extension, error chaining and test cleanups. Final full delta has 135 AST-unchanged Python files, 51 explicitly audited AST-changed Python files, and 5 non-Python files.
  • 62 new/changed line-local suppression sites have contract reasons: deliberate error/quarantine boundaries, existing ValueError APIs, review-pass-name false positives, noncrypto sampling, executable hooks, intentional Semgrep source fixtures, and validated HTTP(S) requests. No blanket rule disabling or broader excludes.

Deliberate behavior details (not a pure-format claim)

Provider probes now refuse non-HTTP(S) URLs before request construction; five no-I/O regression cases cover this. Existing successful HTTP probe tests remain. Exception causes become explicit; test failure assertions remain active under -O; async test filesystem checks use a worker thread. Git SHA1 object hashes are unchanged and explicitly marked non-security. Intentional taint-fixture AST and ruleid/ok adjacency are unchanged; vulnerable example functions were never executed.

Validation and review

  • python scripts/lint_changed.py --all: all checks passed; 783 files already formatted.
  • git diff --check: clean.
  • Integrated owner supported/affected selection: 948 passed (capacity reporting, uncertainty basis, factories, and the original four targeted modules). Original owner targeted run: 148 passed (lint helper/workflow, provider, projection compatibility, baseline advisory tests).
  • Independent selected runs: 211 passed / 1 skipped; 515 passed / 3 skipped / 3 baseline failures; 359 passed / 3 same baseline failures. These overlap and are not summed as unique coverage.
  • The 3 fixed projection-oracle failures reproduce identically on base 2995c41 and remain in their separate repair scope.
  • Three sequential five-lens reviews completed (independent security/correctness + quality, owner deslop + blast-radius + manual CE-style contract/evidence review), followed by fresh independent requirements acceptance. No formal CE engine is claimed.

Explicit local aggregate limit

The full run collected 31,625 tests but was stopped at about 19% after concurrent shared-worktree Git-config changes made it unsuitable as a pristine aggregate gate. The partial log is diagnostic evidence, not a full-suite pass. Four fixval failures reproduced on both head and exact base; one depends on the sandbox's read-only /tmp/.git marker. Invocation-audit profile tests also fail on both head/base because this local filesystem is overlayfs while the unchanged recorder explicitly requires ext4/btrfs. The invocation source and test files have no diff. Paired module runs have identical 1,139 failing/error test IDs: each has 189 failures, 950 setup errors and 31 passes; no head-only failure/error. At PR creation, hosted CI qualification was pending. It has now completed successfully on the exact reviewed commit; see the hosted results below. The interrupted local run is still not claimed as a full local pass.

Integration with current main

Main advanced through #346 while publication awaited the narrowly requested workflow authorization. This branch preserves every intervening Phase 7 file byte-for-byte. The sole overlap, tests/test_provider_capacity_reporting.py, was already formatted on main, so its formatting-only change drops out. All remaining 191 per-file patches are byte-identical to the originally reviewed debt delta; there are no new scoped paths. Independent integration review and fresh acceptance recheck passed; full-tree Ruff remains clean.

Local Phase 7 offline-fixture tests encounter a sandbox-specific read-only /tmp/.git ancestor, causing unchanged gate discovery to attempt subprocess execution forbidden by those tests. The first failure/error pair reproduced identically on exact new base ef5ef54; repeated unsupported groups were stopped rather than misrepresented as a pass. No fixture, protected marker, production code or CI selector was weakened to bypass this limitation. Hosted CI has now qualified these groups on its supported runner.

Review anchor: de674a93555462d20ce8c79e79257913689963f2 against ef5ef54f0f280535554716b5e9aaabeef6e652b0; integrated binary patch SHA256 189e61e1ad619c2d250ab1630356d53aef0407bc4f5257eca3204e4586fe3433. Original reviewed anchor: d1991e623ae7a1f9f850ebff0ffcc58d1cfb67e5 against 2995c41e23a700aa6ed72306217ce3385b6550c1.

Hosted CI — verified 2026-11-01 13:06 UTC

Exact head de674a93555462d20ce8c79e79257913689963f2: all checks completed successfully (Linux tests, full-tree lint, CodeQL/Analyze Python).

Linux run 41306058847:

  • Ownership/cancellation: 568 passed, zero skips in this required phase.
  • Cgroup-backed sandbox: 32 passed.
  • Full service-free selection: 31,520 passed, 81 skipped, 68 deselected, 2 subtests passed in 38m09s. Existing CI selections/exclusions were not broadened by this PR.
  • Local process integration: 11 passed, 7 deselected.

At the completion of PR CI, this PR was still Draft, open and unmerged. It was subsequently marked ready and merged after explicit PR-specific user authorization; see the lifecycle record below.

Authorized merge and cleanup — 2026-11-01 13:25 UTC

Merged as 7851ee8be2d6488a00d34d75ad1663e86fa32e63 after fresh exact-head checks. The actual merge tree 7b0d21c7921879c2ed98f94be04bba1ff61f17cb is identical to the fully validated PR head; parents are ef5ef54 and de674a9. The exact remote branch fix/105-ruff-debt-20261101 was deleted by ordinary Git transport and verified absent. Post-merge Linux/CodeQL push checks are being monitored separately.

@HouMinXi
HouMinXi marked this pull request as ready for review November 1, 2026 13:23
@HouMinXi
HouMinXi merged commit 7851ee8 into main Nov 1, 2026
4 checks passed
@qodo-code-review

Copy link
Copy Markdown

PR Summary by Qodo

Clear Ruff debt and enforce full-repository lint in CI

⚙️ Configuration changes ✨ Enhancement 🧪 Tests 📝 Documentation 🕐 40+ Minutes

Grey Divider

AI Description

• Clear retained Ruff lint and formatting debt across source, tests, and Python documentation
 examples.
• Make CI check the entire repository while retaining diff-scoped checks for local use.
• Document intentional suppressions and test provider probes against non-HTTP(S) URLs.
Diagram

graph TD
  CI["Lint workflow"] --> Helper["Lint helper"] --> Ruff["Pinned Ruff"] --> Tree["Repository tree"]
  Local["Local developer"] -->|--base option| Helper
  Ruff -->|check and format| Tree
Loading
High-Level Assessment

Keep the existing lint helper and workflow identity. Adding full-tree selection to that helper reuses its pinned-version lookup, exclusions, and check commands without duplicating them in CI; retaining --base preserves the faster local workflow.

Files changed (191) +11065 / -5839

Enhancement (1) +8 / -8
lint_changed.pyAdd a full-tree lint mode +8/-8

Add a full-tree lint mode

• Adds mutually exclusive --all selection while preserving --base and the existing Ruff check commands.

scripts/lint_changed.py

Bug fix (1) +211 / -178
forge-provider.pyValidate provider probe schemes +211/-178

Validate provider probe schemes

• Rejects non-HTTP(S) probe URLs before request construction, documents validated requests, and formats the provider tool.

scripts/forge-provider.py

Refactor (59) +3130 / -2614
convert_historical.pyClean historical conversion script +146/-138

Clean historical conversion script

• Formats the converter and resolves retained Ruff findings.

bootstrap/convert_historical.py

base.pyClean adapter base +3/-5

Clean adapter base

• Resolves lint findings and applies Ruff formatting.

cli/adapters/base.py

ci_log.pyFormat CI-log adapter +19/-19

Format CI-log adapter

• Applies Ruff formatting to CI-log adapter code.

cli/adapters/ci_log.py

git_log.pyClean Git-log adapter +36/-39

Clean Git-log adapter

• Formats Git-log parsing and resolves Ruff findings.

cli/adapters/git_log.py

github_pr.pyClean GitHub PR adapter +37/-41

Clean GitHub PR adapter

• Formats PR adapter code and resolves Ruff findings.

cli/adapters/github_pr.py

dimension_manager.pyClean dimension management +304/-299

Clean dimension management

• Formats dimension-management code and documents an intentional backend-error boundary.

cli/dimension_manager.py

escalation.pyFormat escalation logic +82/-84

Format escalation logic

• Applies Ruff formatting to escalation handling.

cli/escalation.py

file_utils.pyClean CLI file utilities +6/-6

Clean CLI file utilities

• Resolves Ruff findings and formats file utilities.

cli/file_utils.py

forge_cli.pyClean the main CLI +717/-823

Clean the main CLI

• Formats CLI flows and annotates intentional shared state, sampling, and exception boundaries.

cli/forge_cli.py

gap_detector.pyClean gap detection +114/-96

Clean gap detection

• Formats gap-detection code and resolves Ruff findings.

cli/gap_detector.py

gap_manager.pyClean gap management +243/-296

Clean gap management

• Formats gap-management code and explains its CLI backend-error diagnostic boundary.

cli/gap_manager.py

llm_parser.pyClean LLM parser +16/-19

Clean LLM parser

• Resolves Ruff findings and formats parser code.

cli/llm_parser.py

migration.pyClean migration CLI +61/-36

Clean migration CLI

• Formats migration handling and resolves Ruff findings.

cli/migration.py

analyse_arms.pyClean arm-analysis script +41/-39

Clean arm-analysis script

• Formats analysis code and resolves retained lint findings.

scripts/analyse_arms.py

dump_calibration_candidates.pyClean calibration candidate dumper +28/-22

Clean calibration candidate dumper

• Formats the candidate export script and resolves lint findings.

scripts/dump_calibration_candidates.py

freeze_calibration_labels.pyClean label-freezing script +163/-73

Clean label-freezing script

• Formats calibration-label processing and resolves Ruff findings.

scripts/freeze_calibration_labels.py

replay_survivors.pyClean survivor replay script +2/-3

Clean survivor replay script

• Resolves lint findings in the replay utility.

scripts/replay_survivors.py

run_ablation_off.pyClean ablation runner +55/-19

Clean ablation runner

• Formats ablation execution and resolves Ruff findings.

scripts/run_ablation_off.py

run_falsify_calibration.pyClean falsification calibration runner +90/-47

Clean falsification calibration runner

• Formats calibration execution and resolves Ruff findings.

scripts/run_falsify_calibration.py

_gate_pytest.pyClean gate pytest helper +1/-0

Clean gate pytest helper

• Resolves a lint finding in the pytest gate helper.

src/code_forge/_gate_pytest.py

_mutation_process.pyClean mutation process handling +11/-5

Clean mutation process handling

• Formats process handling and clarifies its cancellation-diagnostic exception boundary.

src/code_forge/_mutation_process.py

backend.pyExplain optional cache failures +1/-1

Explain optional cache failures

• Annotates the broad cache-read exception boundary as an intentional cache miss.

src/code_forge/backend.py

baseline_guard.pyClean baseline guard +16/-8

Clean baseline guard

• Formats baseline checks and resolves Ruff findings.

src/code_forge/baseline_guard.py

context_sources.pyClean context source clients +32/-17

Clean context source clients

• Formats source adapters and documents the existing HTTP(S) restriction around knowledge requests.

src/code_forge/context_sources.py

conventions.pyClean convention scanning +124/-66

Clean convention scanning

• Formats convention extraction and resolves lint findings.

src/code_forge/conventions.py

conventions_resolver.pyClean convention resolution +182/-89

Clean convention resolution

• Formats source resolution and simplifies ordered list extension while clearing lint findings.

src/code_forge/conventions_resolver.py

coverage.pyClean coverage handling +4/-2

Clean coverage handling

• Resolves Ruff findings and formats coverage code.

src/code_forge/coverage.py

cross_repo.pyExplain cross-repo worker failures +4/-2

Explain cross-repo worker failures

• Documents the intentional broad backend-error boundary in cross-repository fan-out.

src/code_forge/cross_repo.py

cross_repo_impact.pyClean cross-repo impact analysis +4/-2

Clean cross-repo impact analysis

• Resolves lint findings and formats impact-analysis code.

src/code_forge/cross_repo_impact.py

dead_code.pyExplain conservative detector failure +1/-1

Explain conservative detector failure

• Documents why a detector exception treats a call site as live.

src/code_forge/dead_code.py

detect.pyClean detection code +2/-2

Clean detection code

• Resolves Ruff findings in detection handling.

src/code_forge/detect.py

diff_grouping.pyPreserve grouping validation errors +5/-6

Preserve grouping validation errors

• Documents intentional ValueError contracts for malformed grouping configuration.

src/code_forge/diff_grouping.py

doctor.pyClean doctor diagnostics +11/-4

Clean doctor diagnostics

• Formats diagnostic handling and preserves its fail-closed identity boundary.

src/code_forge/doctor.py

e2e_check.pyClean end-to-end checks +2/-2

Clean end-to-end checks

• Resolves Ruff findings in end-to-end check handling.

src/code_forge/e2e_check.py

env_resolver.pyClean environment resolution +2/-2

Clean environment resolution

• Resolves Ruff findings in environment resolution.

src/code_forge/env_resolver.py

corpus.pyPreserve corpus validation API +2/-2

Preserve corpus validation API

• Documents intentional ValueError responses to malformed corpus entries.

src/code_forge/eval/corpus.py

ledger_jsonl.pyClean evaluation ledger +1/-1

Clean evaluation ledger

• Resolves a lint finding in JSONL ledger handling.

src/code_forge/eval/ledger_jsonl.py

pool.pyExplain replay error capture +2/-2

Explain replay error capture

• Documents why per-replay backend failures become batch error results.

src/code_forge/eval/pool.py

runner.pyFormat evaluation Git setup +17/-2

Format evaluation Git setup

• Formats Git setup argument lists in the evaluation runner.

src/code_forge/eval/runner.py

swebench.pyDocument deterministic sampling +1/-1

Document deterministic sampling

• Marks the seeded pseudorandom generator as non-security sampling.

src/code_forge/eval/swebench.py

gate_check.pyClean trusted gate checks +74/-23

Clean trusted gate checks

• Formats gate loading and validation flows and resolves lint findings.

src/code_forge/gate_check.py

hold.pyClean hold handling +2/-2

Clean hold handling

• Resolves Ruff findings in hold handling.

src/code_forge/hold.py

install_hooks.pyExplain hook installation exceptions +4/-4

Explain hook installation exceptions

• Documents executable hook permissions and CLI-level installation error handling.

src/code_forge/install_hooks.py

kernel_context.pyFormat kernel context +8/-8

Format kernel context

• Applies Ruff formatting to kernel-context code.

src/code_forge/kernel_context.py

ledger.pyClean ledger root discovery +27/-7

Clean ledger root discovery

• Formats ledger handling and documents its best-effort root fallback.

src/code_forge/ledger.py

legacy.pyExplain legacy adapter errors +1/-1

Explain legacy adapter errors

• Documents the adapter boundary that records exceptions as infrastructure failures.

src/code_forge/legacy.py

lock.pyFormat lock handling +6/-6

Format lock handling

• Applies Ruff formatting to locking code.

src/code_forge/lock.py

mutation.pyClean mutation execution +187/-69

Clean mutation execution

• Formats mutation flows and documents exception handling needed to retain cancellation and cleanup evidence.

src/code_forge/mutation.py

mutation_findings.pyFormat mutation finding validation +155/-59

Format mutation finding validation

• Formats carrier validation, survivor details, and review-context handling.

src/code_forge/mutation_findings.py

shellcheck.pyClean ShellCheck parser +4/-2

Clean ShellCheck parser

• Resolves Ruff findings and formats parsing code.

src/code_forge/parsers/shellcheck.py

progress.pyExplain best-effort progress state +2/-2

Explain best-effort progress state

• Documents shared timer state and why progress-output failures must not stop a review.

src/code_forge/progress.py

registry.pyPreserve registry validation errors +2/-2

Preserve registry validation errors

• Documents ValueError contracts for malformed tool registry mappings.

src/code_forge/registry.py

report_presentation.pyClean report presentation +31/-74

Clean report presentation

• Formats report presentation and resolves retained lint findings.

src/code_forge/report_presentation.py

report_projection.pyExplain finding quarantine boundaries +14/-14

Explain finding quarantine boundaries

• Documents broad exception handling required when projecting malformed finding objects.

src/code_forge/report_projection.py

reporter.pyClean report generation +6/-8

Clean report generation

• Formats report generation and resolves Ruff findings.

src/code_forge/reporter.py

rulepack.pyExplain optional rule metadata +9/-4

Explain optional rule metadata

• Formats rulepack handling and documents why metadata failures do not discard findings.

src/code_forge/rulepack.py

sarif.pyClean SARIF generation +4/-3

Clean SARIF generation

• Resolves lint findings and formats SARIF handling.

src/code_forge/sarif.py

setup_mcp.pyExplain trust-recording failure +1/-1

Explain trust-recording failure

• Documents the optional trust-recording error boundary after configuration writes.

src/code_forge/setup_mcp.py

taint.pyClean taint analysis +5/-4

Clean taint analysis

• Formats taint handling and resolves Ruff findings.

src/code_forge/taint.py

Documentation (4) +125 / -71
CONTRIBUTING.mdDocument the full-tree Ruff gate +22/-12

Document the full-tree Ruff gate

• Replaces the debt-era guidance with full-tree and local diff-check instructions and a policy for justified line-local suppressions.

CONTRIBUTING.md

reviewer-canary-spec.mdFormat canary Python examples +9/-12

Format canary Python examples

• Formats Python code fences without changing the surrounding design prose.

docs/design/reviewer-canary-spec.md

59-PATTERNS.mdFormat judgment-pattern examples +75/-38

Format judgment-pattern examples

• Applies Ruff formatting to embedded Python examples.

docs/gsd/phases/59-judgment-and-evidence/59-PATTERNS.md

59-RESEARCH.mdFormat research examples +19/-9

Format research examples

• Applies Ruff formatting to embedded Python signatures.

docs/gsd/phases/59-judgment-and-evidence/59-RESEARCH.md

Other (126) +7591 / -2968
lint-changed.ymlGate the full repository in CI +4/-6

Gate the full repository in CI

• Invokes the existing lint helper with --all instead of selecting pull-request files; retains the workflow identity.

.github/workflows/lint-changed.yml

conftest.pyClean root pytest configuration +1/-0

Clean root pytest configuration

• Resolves a lint finding in the root test configuration.

conftest.py

conftest.pyClean shared pytest fixtures +2/-1

Clean shared pytest fixtures

• Resolves lint findings in shared test setup.

tests/conftest.py

mutation_result_fixture.pyClean mutation result fixtures +16/-3

Clean mutation result fixtures

• Formats shared mutation-result fixture construction.

tests/mutation_result_fixture.py

run_seed_tests.pyClean seed-test runner +1/-1

Clean seed-test runner

• Resolves a Ruff finding in the seed-test utility.

tests/seed_tests/run_seed_tests.py

test_arm_env_propagation.pyClean arm environment tests +4/-2

Clean arm environment tests

• Resolves Ruff findings in environment propagation assertions.

tests/test_arm_env_propagation.py

test_baseline_diagnostics.pyFormat baseline diagnostic tests +187/-60

Format baseline diagnostic tests

• Formats fixtures and assertions for baseline diagnostics.

tests/test_baseline_diagnostics.py

test_baseline_env_retry_record.pyClean baseline retry tests +53/-14

Clean baseline retry tests

• Formats retry-record tests and documents intentional pytest fixture-name reuse.

tests/test_baseline_env_retry_record.py

test_baseline_failure_causes.pyFormat baseline failure-cause tests +26/-8

Format baseline failure-cause tests

• Formats assertions and runner fixtures without changing the tested failure cases.

tests/test_baseline_failure_causes.py

test_baseline_guard.pyFormat baseline guard tests +133/-51

Format baseline guard tests

• Formats baseline guard fixtures and assertions.

tests/test_baseline_guard.py

test_baseline_ignored_exceptions.pyFormat ignored-exception tests +8/-8

Format ignored-exception tests

• Applies Ruff formatting to baseline exception tests.

tests/test_baseline_ignored_exceptions.py

test_baseline_ref_pinning.pyFormat baseline ref-pinning tests +196/-69

Format baseline ref-pinning tests

• Formats ref-pinning fixtures and assertions.

tests/test_baseline_ref_pinning.py

test_baseline_venv_runner_gate.pyFormat baseline virtualenv tests +12/-6

Format baseline virtualenv tests

• Formats virtualenv runner gate assertions.

tests/test_baseline_venv_runner_gate.py

test_calibration_tools.pyClean calibration tool tests +2/-2

Clean calibration tool tests

• Resolves Ruff findings in calibration tests.

tests/test_calibration_tools.py

test_canary_gen.pyClean canary generation tests +11/-7

Clean canary generation tests

• Formats canary fixtures and clears lint findings.

tests/test_canary_gen.py

test_canary_smoke.pyExplain canary runner failures +1/-1

Explain canary runner failures

• Documents the test boundary that converts runner exceptions into diagnostics.

tests/test_canary_smoke.py

test_child_sigint_reset.pyClean child SIGINT tests +3/-1

Clean child SIGINT tests

• Resolves Ruff findings in signal-reset tests.

tests/test_child_sigint_reset.py

test_cli_eval.pyClean CLI evaluation tests +2/-2

Clean CLI evaluation tests

• Resolves lint findings in CLI evaluation assertions.

tests/test_cli_eval.py

test_cli_failure_contract.pyFormat CLI failure-contract tests +85/-14

Format CLI failure-contract tests

• Formats failure fixtures and assertions and clears lint findings.

tests/test_cli_failure_contract.py

test_cli_head_diff_machine_options.pyClean CLI machine-option tests +6/-2

Clean CLI machine-option tests

• Formats machine-option assertions and clears lint findings.

tests/test_cli_head_diff_machine_options.py

test_cli_integration.pyFormat CLI integration tests +29/-9

Format CLI integration tests

• Formats integration fixtures and assertions.

tests/test_cli_integration.py

test_cli_large_prompt.pyFormat large-prompt CLI tests +25/-9

Format large-prompt CLI tests

• Formats prompt fixtures and assertions.

tests/test_cli_large_prompt.py

test_cli_lenses.pyClean CLI lens tests +1/-2

Clean CLI lens tests

• Resolves Ruff findings in lens integration tests.

tests/test_cli_lenses.py

test_cli_sarif.pyClean CLI SARIF tests +1/-1

Clean CLI SARIF tests

• Resolves a lint finding in SARIF CLI tests.

tests/test_cli_sarif.py

test_cli_stdin_isolation.pyClean stdin-isolation tests +6/-2

Clean stdin-isolation tests

• Formats CLI stdin-isolation assertions.

tests/test_cli_stdin_isolation.py

test_conftest_sigint_disposition.pyClean pytest signal tests +10/-3

Clean pytest signal tests

• Formats assertions about pytest SIGINT disposition.

tests/test_conftest_sigint_disposition.py

test_context_sources.pyFormat context source tests +31/-12

Format context source tests

• Formats context-source fixtures and assertions.

tests/test_context_sources.py

test_context_sources_db_uri_paths.pyFormat context-source URI tests +57/-22

Format context-source URI tests

• Formats database URI-path fixtures and assertions.

tests/test_context_sources_db_uri_paths.py

test_contract_flag.pyClean contract-flag tests +1/-1

Clean contract-flag tests

• Resolves a lint finding in contract-flag tests.

tests/test_contract_flag.py

test_conventions.pyFormat convention tests +64/-59

Format convention tests

• Formats convention extraction fixtures and assertions.

tests/test_conventions.py

test_conventions_resolver.pyFormat convention resolver tests +1253/-540

Format convention resolver tests

• Applies Ruff formatting throughout the extensive resolver test suite.

tests/test_conventions_resolver.py

test_cross_repo_impact_db_uri_paths.pyFormat cross-repo URI tests +127/-61

Format cross-repo URI tests

• Formats impact-analysis database URI-path tests.

tests/test_cross_repo_impact_db_uri_paths.py

test_deleted_scope_consumers.pyClean deleted-scope tests +3/-1

Clean deleted-scope tests

• Resolves lint findings in deleted-scope consumer tests.

tests/test_deleted_scope_consumers.py

test_dispo06_revert.pyFormat disposition revert tests +3/-3

Format disposition revert tests

• Applies Ruff formatting to revert assertions.

tests/test_dispo06_revert.py

test_doctor.pyFormat doctor tests +100/-46

Format doctor tests

• Formats doctor diagnostic fixtures and assertions.

tests/test_doctor.py

test_encoding_conformance.pyClean encoding conformance tests +9/-3

Clean encoding conformance tests

• Formats encoding assertions and clears lint findings.

tests/test_encoding_conformance.py

test_eval_build_corpus.pyDocument corpus sampling +1/-1

Document corpus sampling

• Marks deterministic test shuffling as non-security randomness.

tests/test_eval_build_corpus.py

test_eval_harness_failures.pyFormat evaluation failure tests +23/-5

Format evaluation failure tests

• Formats harness-failure fixtures and assertions.

tests/test_eval_harness_failures.py

test_eval_runner.pyFormat evaluation runner tests +23/-17

Format evaluation runner tests

• Formats runner fixtures and clears lint findings.

tests/test_eval_runner.py

test_excerpt_assessment.pyFormat excerpt assessment tests +28/-4

Format excerpt assessment tests

• Formats excerpt-assessment fixtures and assertions.

tests/test_excerpt_assessment.py

test_falsify_protocol_error.pyClean falsifier protocol tests +6/-4

Clean falsifier protocol tests

• Formats protocol-error assertions and clears lint findings.

tests/test_falsify_protocol_error.py

test_falsify_sees_diff.pyExplain falsifier test boundary +18/-18

Explain falsifier test boundary

• Formats diff-visibility tests and documents a pre-dispatch exception boundary.

tests/test_falsify_sees_diff.py

test_finding_severity.pyClarify review-pass fixture name +1/-1

Clarify review-pass fixture name

• Documents that pass_name is a review identifier, not a password.

tests/test_finding_severity.py

test_fingerprint_stability.pyClean fingerprint tests +1/-1

Clean fingerprint tests

• Resolves a lint finding in fingerprint stability tests.

tests/test_fingerprint_stability.py

test_focus.pyClean focus tests +2/-2

Clean focus tests

• Resolves Ruff findings in focus tests.

tests/test_focus.py

test_forge_provider.pyCover provider scheme rejection +101/-68

Cover provider scheme rejection

• Adds no-I/O cases for non-HTTP(S) provider probes alongside formatting of provider tests.

tests/test_forge_provider.py

test_git_ceiling_isolation.pyFormat Git-ceiling tests +49/-18

Format Git-ceiling tests

• Formats Git-ceiling isolation fixtures and assertions.

tests/test_git_ceiling_isolation.py

test_git_diff_line_boundaries.pyFormat Git diff-boundary tests +29/-15

Format Git diff-boundary tests

• Formats line-boundary fixtures and assertions.

tests/test_git_diff_line_boundaries.py

test_git_snapshot_guard.pyFormat Git snapshot tests +133/-20

Format Git snapshot tests

• Formats snapshot-guard fixtures and assertions.

tests/test_git_snapshot_guard.py

test_graph_triage.pyClean graph triage tests +11/-8

Clean graph triage tests

• Formats graph-triage assertions and clears lint findings.

tests/test_graph_triage.py

test_graph_triage_db_uri_paths.pyFormat graph URI-path tests +16/-5

Format graph URI-path tests

• Formats database URI-path graph tests.

tests/test_graph_triage_db_uri_paths.py

test_hold_ui.pyFormat hold UI tests +5/-5

Format hold UI tests

• Applies Ruff formatting to hold UI assertions.

tests/test_hold_ui.py

test_index_mutation_admission.pyFormat mutation admission tests +115/-34

Format mutation admission tests

• Formats index mutation admission fixtures and assertions.

tests/test_index_mutation_admission.py

test_index_mutation_applicability.pyFormat mutation applicability tests +61/-17

Format mutation applicability tests

• Formats index mutation applicability cases.

tests/test_index_mutation_applicability.py

test_install_hooks.pyFormat hook installation tests +45/-16

Format hook installation tests

• Formats installation fixtures and assertions.

tests/test_install_hooks.py

test_issue46_finding_evidence.pyFormat finding-evidence tests +144/-48

Format finding-evidence tests

• Formats evidence fixtures and assertions.

tests/test_issue46_finding_evidence.py

test_l1_root_finding.pyFormat L1 root-finding tests +118/-37

Format L1 root-finding tests

• Formats root-finding fixtures and assertions.

tests/test_l1_root_finding.py

test_l2_infra_credit.pyFormat L2 infrastructure tests +31/-9

Format L2 infrastructure tests

• Formats infrastructure-credit assertions.

tests/test_l2_infra_credit.py

test_launcher_source_loading.pyClean launcher loading tests +3/-1

Clean launcher loading tests

• Resolves lint findings in launcher source-loading tests.

tests/test_launcher_source_loading.py

test_ledger_jsonl.pyFormat JSONL ledger tests +21/-5

Format JSONL ledger tests

• Formats JSONL ledger fixtures and assertions.

tests/test_ledger_jsonl.py

test_ledger_tail_boundaries.pyFormat ledger-tail tests +290/-100

Format ledger-tail tests

• Formats ledger boundary tests and documents worker-exception propagation.

tests/test_ledger_tail_boundaries.py

test_lens_attribution.pyClean lens attribution tests +2/-3

Clean lens attribution tests

• Resolves Ruff findings in lens attribution tests.

tests/test_lens_attribution.py

test_lens_packaging.pyClean lens packaging tests +5/-1

Clean lens packaging tests

• Resolves Ruff findings in packaging tests.

tests/test_lens_packaging.py

test_lens_wiring_ast.pyClean lens AST tests +1/-5

Clean lens AST tests

• Resolves lint findings in lens wiring assertions.

tests/test_lens_wiring_ast.py

test_lint_changed.pyTest full-tree lint selection +31/-4

Test full-tree lint selection

• Covers --all selection, mode exclusivity, both Ruff commands, and the updated workflow invocation.

tests/test_lint_changed.py

test_lock.pyFormat lock tests +2/-2

Format lock tests

• Applies Ruff formatting to locking assertions.

tests/test_lock.py

test_machine_l2.pyFormat L2 machine tests +14/-5

Format L2 machine tests

• Formats machine-state fixtures and assertions.

tests/test_machine_l2.py

test_machine_local.pyClarify local machine fixtures +4/-4

Clarify local machine fixtures

• Formats local machine tests and identifies pass_name as a review-pass identifier.

tests/test_machine_local.py

test_mcp_idle_watchdog.pyClarify watchdog log ownership +23/-5

Clarify watchdog log ownership

• Formats watchdog tests and notes that child processes own opened log handles.

tests/test_mcp_idle_watchdog.py

test_mcp_jobs.pyFormat MCP job tests +8/-6

Format MCP job tests

• Applies Ruff formatting to MCP job assertions.

tests/test_mcp_jobs.py

test_mcp_log_io.pyFormat MCP log I/O tests +22/-9

Format MCP log I/O tests

• Formats MCP logging fixtures and assertions.

tests/test_mcp_log_io.py

test_mcp_sarif_results.pyFormat MCP SARIF tests +161/-63

Format MCP SARIF tests

• Formats SARIF result fixtures and assertions.

tests/test_mcp_sarif_results.py

test_mcp_server.pyFormat MCP server tests +55/-22

Format MCP server tests

• Formats MCP server fixtures and assertions.

tests/test_mcp_server.py

test_mcp_source_drift.pyFormat MCP source-drift tests +48/-12

Format MCP source-drift tests

• Formats source-drift fixtures and assertions.

tests/test_mcp_source_drift.py

test_mcp_timeout.pyFormat MCP timeout tests +145/-52

Format MCP timeout tests

• Formats timeout fixtures and assertions.

tests/test_mcp_timeout.py

test_mutation.pyClean mutation tests +6/-4

Clean mutation tests

• Formats mutation assertions and clears lint findings.

tests/test_mutation.py

test_mutation_authority_refusals.pyFormat mutation authority tests +80/-22

Format mutation authority tests

• Formats refusal fixtures and assertions.

tests/test_mutation_authority_refusals.py

test_mutation_cancellation.pyFormat mutation cancellation tests +221/-61

Format mutation cancellation tests

• Formats cancellation fixtures and assertions.

tests/test_mutation_cancellation.py

test_mutation_diagnostics.pyClean mutation diagnostic tests +3/-9

Clean mutation diagnostic tests

• Resolves lint findings in mutation diagnostics.

tests/test_mutation_diagnostics.py

test_mutation_external_cwd.pyClean external-CWD tests +1/-3

Clean external-CWD tests

• Resolves lint findings in mutation working-directory tests.

tests/test_mutation_external_cwd.py

test_mutation_ledger_ci_controls.pyFormat mutation ledger CI tests +1013/-369

Format mutation ledger CI tests

• Applies Ruff formatting across ledger CI-control fixtures and assertions.

tests/test_mutation_ledger_ci_controls.py

test_mutation_ledger_consumers.pyFormat ledger consumer tests +184/-65

Format ledger consumer tests

• Formats mutation ledger consumer fixtures and assertions.

tests/test_mutation_ledger_consumers.py

test_mutation_ledger_disposition.pyFormat ledger disposition tests +130/-49

Format ledger disposition tests

• Formats mutation disposition fixtures and assertions.

tests/test_mutation_ledger_disposition.py

test_mutation_ledger_sibling_controls.pyFormat sibling-control tests +49/-17

Format sibling-control tests

• Formats sibling-control fixtures and assertions.

tests/test_mutation_ledger_sibling_controls.py

test_mutation_ledger_transport.pyFormat ledger transport tests +228/-84

Format ledger transport tests

• Formats mutation transport fixtures and assertions.

tests/test_mutation_ledger_transport.py

test_mutation_patchcorpus.pyClean patch-corpus tests +3/-1

Clean patch-corpus tests

• Resolves Ruff findings in mutation patch-corpus tests.

tests/test_mutation_patchcorpus.py

test_mutation_process.pyFormat mutation process tests +115/-30

Format mutation process tests

• Formats process fixtures and assertions.

tests/test_mutation_process.py

test_mutation_recorded_timeouts.pyFormat recorded-timeout tests +79/-22

Format recorded-timeout tests

• Formats mutation timeout fixtures and assertions.

tests/test_mutation_recorded_timeouts.py

test_mutation_result_integrity.pyClean mutation integrity tests +1/-0

Clean mutation integrity tests

• Resolves a lint finding in result-integrity tests.

tests/test_mutation_result_integrity.py

test_mutation_source_endpoints.pyFormat mutation endpoint tests +133/-51

Format mutation endpoint tests

• Formats source-endpoint fixtures and assertions.

tests/test_mutation_source_endpoints.py

test_mutation_source_selection.pyFormat source-selection tests +25/-9

Format source-selection tests

• Formats mutation source-selection fixtures.

[Comment truncated to fit github's 65,536-char limit.]

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.

lint: repo is not ruff-clean at any ruff version and dev extra leaves ruff unpinned

2 participants