• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

bleedingdeacons / scrutiny / 30722943792
93%

Build:
DEFAULT BRANCH: main
Ran 01 Aug 2026 11:15PM UTC
Jobs 1
Files 19
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

01 Aug 2026 11:14PM UTC coverage: 90.804%. Remained the same
30722943792

push

github

web-flow
Ship an AuditLogger spy for the plugin suite (#37)

* chore: normalize build.php line endings to LF

build.php was the only file in the repository whose committed blob held CRLF
bytes; everything else is LF. The mismatch stayed invisible because git skips
the content comparison for files whose stat info is unchanged — touching the
file for any reason surfaced the whole 857-line difference and buried the real
change in it.

`git add --renormalize` does not fix it: `text=auto` deliberately leaves alone
any file that already carries CRLF in the index, so the CRs have to be
stripped explicitly, which is what this commit does. Same treatment Unity's
build.php had for the same reason.

Line endings only — `git diff --ignore-all-space` on this commit is empty.

* feat(testing): ship an AuditLogger spy for the plugin suite

Scrutiny ships no concrete AuditLogger a test can drive, so every consuming
plugin wrote its own. Four existed: Reach's SpyAuditLogger,
RecordingAuditLogger and NullAuditLogger, and Rabbit's CapturingAuditLogger —
differing only in which of the two calls they bothered to record.

Duplication was the smaller half. Reach and Rabbit both eval()'d a hand-written
copy of this interface when Scrutiny was not checked out, and Rabbit's copy
declared log() and logBatch() with none of the ACTION_* or ENTITY_* constants.
A double implementing a stale copy satisfies the stale copy, so neither suite
could have caught a change here — the same failure Unity\Testing\Doubles was
introduced to end, one contract over.

Shipping the double from the plugin that owns the interface is what fixes it:
this class implements the contract two directories away, so a signature change
fails Scrutiny's own build before any consumer sees it.

Both views of the traffic are recorded, because the consumers wanted different
ones — $entries has a row per audited field with logBatch() fanned out, and
$batches keeps the unexpanded batch for tests that care it was written as one.... (continued)

1254 of 1381 relevant lines covered (90.8%)

6.73 hits per line

Jobs
ID Job ID Ran Files Coverage
1 30722943792.1 01 Aug 2026 11:15PM UTC 19
90.8
GitHub Action Run
Source Files on build 30722943792
  • Tree
  • List 19
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #30722943792
  • 59fa83d9 on github
  • Prev Build on main (#30721978808)
  • Next Build on main (#30723346334)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc