Skip to content

Remove audit/audits.json and the README link to it - #151

Merged
thedavidmeister merged 1 commit into
mainfrom
2026-08-18-issue-150-remove-audits-json
Aug 18, 2026
Merged

Remove audit/audits.json and the README link to it#151
thedavidmeister merged 1 commit into
mainfrom
2026-08-18-issue-150-remove-audits-json

Conversation

@thedavidmeister

@thedavidmeister thedavidmeister commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

Closes #150

Removes audit/audits.json and the README.md link that pointed at it.
audit/mutation-test-scans.json and audit/protofire/ are untouched.

Everything that referenced the file

Checked rather than assumed, because two of these were the ones most likely to
break on a deletion:

Where Reference Action
README.md:77 a markdown link to audit/audits.json in the ## Audit section removed, see below
REUSE.toml covers audit/**/ as a directory glob, no per-file entry none — the directory still holds mutation-test-scans.json and protofire/, and nix develop -c reuse lint is compliant at 68/68 files after the deletion
.soldeerignore excludes /audit wholesale none
CI .github/workflows/rainix.yaml and package-release.yaml are uses: lines into the rainix reusables; at rainlanguage/rainix HEAD no reusable workflow mentions audit (the only audit string in that repo's workflows is npm --no-audit) none — there is no glob or gate to update
.audit/scope.json the audit skill's own scope snapshot, taken at 30ecd99 on 2026-07-25, predates the file and never listed it none
org-wide code search audits.json returns one hit in rainlanguage — the README.md line above — and zero across gildlab, cyclofinance, S01-Issuer, ST0x-Technology, ST0x-intelligence, h20liquidity, raincommercial, rain-archive none

After the change git grep -In audits over every tracked non-PDF file returns
nothing.

The one live thing that is about this file is not a code reference:
rainlanguage/rainix#321, still open, proposes a
rainix-sol drift-report job whose entire input is a consumer-side
audit/audits.json. Nothing there executes yet, so nothing breaks, but its
premise is gone — flagged, not edited, from here.

The README section

The section stays; only the pointer to the deleted file goes. The sentence that
carried the link stated the audited scope, so it is reworded to state the same
scope without the link rather than dropped:

Scope was all of src/ at those commits, the twelve contracts the report's
own scope table lists.

That claim is verified in this clone, not carried over from #137: at both
228b35c6725877e7fbcd2432b4c692357f16f510 and
26bce6197383f193e35326bab4d4424cf6eafde7, git ls-tree -r --name-only <c> -- src/ is exactly twelve files, and both commits are ancestors of HEAD.

What #88 needs now

Nothing in this repo, and it should stay closed.

#88 is a MEDIUM audit finding
whose hazard is "nothing in the repo records which commit was audited or that
main has moved past it". After this PR the record is still there, in the
## Audit section of README.md: it names both reviewed commits, links the
report PDF — which nothing else in the repo did before #137 — states the
audited scope, says outright that today's src/ is not that tree, and gives the
command that measures the drift. What this PR deletes is a second, machine-only
copy of that record with no machine reading it.

The part of #88 that is genuinely unlanded is its third ask, the non-blocking CI
drift report. That was never in this repo's gift — its CI is two uses: lines
into rainix reusables — and it lives as
rainlanguage/rainix#321. That issue is the one that
needs a decision, and it needs it independently of #88: as written it reads a
manifest that now exists nowhere, so it is either re-scoped to derive the
audited commit from something that does exist, or the manifest is reintroduced
deliberately as an org-wide convention with the reader landing in the same
change, or drift reporting is dropped. Reintroducing it here first would
recreate exactly the file #150 removes.

Not reopened or edited by this PR, per the work order.

QA

  • Discriminating tests: n/a as forge tests — the diff is one deleted JSON file
    and two reflowed README lines, no Solidity, and a test asserting a path's
    absence would be the same unread ceremony this PR removes. The three
    discriminating checks, each failing on a mutant and passing here: A
    git grep -In "audits" -- . ':!*.pdf' — 1 hit on main (README.md:77), 0
    on this branch
    ; B git ls-files audit/ — must still list
    mutation-test-scans.json and the Protofire PDF, 2 entries on this
    branch
    ; C nix develop -c reuse lintcompliant, 68 / 68 files
    (69 / 69 on main, the difference being the deleted file itself).
  • Mutations applied: M1 restore main's README.md and
    audit/audits.json -> check A goes 0 hits -> 1 hit, README.md:77 -> killed.
    M2 also git rm audit/mutation-test-scans.json -> check B goes 2 entries
    -> 1 entry -> killed; this is the overreach Remove audit/audits.json: invented today, read by nothing, already stale #150 explicitly forbids, and it is
    the mutant worth having. M3 delete the "audit/**/" glob from
    REUSE.toml, on the theory that a per-file entry was what covered the deleted
    file -> check C reports not compliant, 66 / 68, the two surviving audit
    files losing their licence -> killed, which is why REUSE.toml is unchanged
    here. The three checks move independently across the mutants — 0/1 hits,
    2/1 entries, 68/66 files — so they ran rather than matching nothing.
  • Oracle: Remove audit/audits.json: invented today, read by nothing, already stale #150 for what must
    go and what must stay; the Protofire report and git for the scope sentence
    that replaces the link — the twelve files were re-derived here with
    git ls-tree -r --name-only <commit> -- src/ at both review commits, not
    taken from Record the commits Protofire reviewed in audit/audits.json #137's body.
  • Category check: the issue asks A remove audit/audits.json, B remove the
    README.md line pointing at it, C leave audit/mutation-test-scans.json and
    audit/protofire/ alone. Covered A, B, C. Its fourth paragraph — "reopen or
    replace [A26] [MEDIUM] Nothing records that the Protofire-audited commit has drifted 74 commits behind main #88 if the drift it names is still worth tracking" — is answered in
    words above and deliberately not acted on, per the work order.

Summary by CodeRabbit

  • Documentation
    • Updated the audit scope description to identify the reviewed commits and the twelve contracts covered.
    • Removed the outdated Protofire audit record and associated scope details.

The manifest was read by nothing — an org-wide code search for `audits.json`
returned only the README line that pointed at it — and its `scope` array named
`src/lib/LibStackPointer.sol`, deleted from this repo.

The README `## Audit` section keeps the audit record: both reviewed commits,
the report PDF, the audited scope and the drift command. The sentence that
carried the link now states the scope without it.

`audit/mutation-test-scans.json` and `audit/protofire/` are untouched.
`REUSE.toml` covers `audit/**/` as a glob, so it needs no change.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@thedavidmeister thedavidmeister self-assigned this Aug 18, 2026
@coderabbitai

coderabbitai Bot commented Aug 18, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 44f42f29-6770-4476-aff9-c710e172cb56

📥 Commits

Reviewing files that changed from the base of the PR and between 54a7e0f and 0d7a928.

📒 Files selected for processing (2)
  • README.md
  • audit/audits.json
💤 Files with no reviewable changes (1)
  • audit/audits.json

Included review availability: Your plan includes up to 1 review per rolling hour; 0 remain after this review.


Walkthrough

The audit scope description now identifies two reviewed commits and twelve contracts. The obsolete Protofire audit record in audit/audits.json was removed.

Changes

Audit scope cleanup

Layer / File(s) Summary
Audit scope documentation
README.md, audit/audits.json
The README now states the reviewed commit scopes and twelve scoped contracts. The obsolete Protofire audit record was removed.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Merge Risk: ⚪ Minimal · up to 0d7a9

This localized documentation and file-removal change leaves the remaining audit materials intact and has no actionable merge-blocking risk beyond normal checks and review.

Possibly related PRs

Suggested reviewers: claude

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies removal of the audit manifest and its README link.
Linked Issues check ✅ Passed The changes satisfy issue #150 by removing audit/audits.json, removing its README link, and preserving the other audit artifacts.
Out of Scope Changes check ✅ Passed The changes remain within issue #150 scope and only update the README audit text needed after manifest removal.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch 2026-08-18-issue-150-remove-audits-json

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@thedavidmeister
thedavidmeister merged commit 89e2658 into main Aug 18, 2026
4 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.

Remove audit/audits.json: invented today, read by nothing, already stale

1 participant