Bug-hunt round 47: missing CHANGELOG entry for round 46's installer fixes - #66
Open
REPPL wants to merge 2 commits into
Open
Bug-hunt round 47: missing CHANGELOG entry for round 46's installer fixes#66REPPL wants to merge 2 commits into
REPPL wants to merge 2 commits into
Conversation
Round 46 fixed install.sh's ffprobe-install gap and a missing curl -f flag on the whisper.cpp model-download recipe, but left CHANGELOG.md untouched for both fixes — its only edit that round was an unrelated rescope of a released bullet. Backfilled, matching the repo's existing practice for this exact gap (rounds 27 and 30's PR #47). Assisted-by: Claude:claude-sonnet-5
Adversarial review of this PR caught that the audio.wav CHANGELOG staleness finding was filed under "split verdicts" while its own parenthetical said both refuters agreed to refute it — a unanimous refutation, not a split. Reclassified with the header count corrected to match (four refuted, two discarded on split verdicts). Also tightens two CHANGELOG wording nits the same review raised: the offset fallback is reported, not silent, and the curl -f fix's failure description no longer has a dangling participle. Assisted-by: Claude:claude-sonnet-5
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.
Round 47 of the autonomous bug-hunt loop (state tracked on #24).
Confirmed findings
Nitpick (1)
Round 46's installer fixes had no
CHANGELOG.mdentry — round 46 (commitd0db53a, PR #65) fixedinstall.sh's Linux local-ffmpeg branch to also installffprobe(install.sh, Linux branch), and fixed a missing-f/--failflag on the whisper.cpp model-downloadcurlrecipe ininternal/transcribe/whispercpp.goanddocs/how-to/transcribe-a-recording.md. That round's only edit toCHANGELOG.mdwas an unrelated rescope of an existing[0.2.0]bullet — neither fix got an entry anywhere. Both are user-facing (a missingffprobesilently zeroes the derived audio offset; a missingcurl -fwrites an HTTP error body into a.binmodel file at exit 0, failing only later and confusingly at whisper-cli load time), and this repo has an established practice of backfilling exactly this gap (round 27 for round 26's fix, and round 30's own dedicated PR #47 for round 30's own fix). Added a bullet to[Unreleased]'s "Checks and installer:" group.Considered and rejected
record's Ctrl+C handling during macOS device probing (internal/record/record.go/recorders.go) — a signal-handling context is installed beforestartRecorders' device probe runs, which doesn't consult it for up to ~17s. Both refuters killed it: the ordering is a documented, tested, deliberate fix for a worse prior defect (an untracked regression test pins the exact "cancel during probe" state), the claimed "signal silently discarded" mechanism misreadssignal.NotifyContext(cancellation is latched immediately, not lost), and the claimed misdiagnosis (an aborted session read as a TCC permission block) is a pre-existing gap inclassifyMissingOutputunrelated to the probe window — any early Ctrl+C hits it, probe or not.demo's case-sensitiveloopbackHostmatch on"localhost"(internal/demo/demo.go) — both refuters found no realistic caller: the two name-bearing header sources (Host,Origin) are populated by browser/Node URL parsers that lowercase hosts before any header exists, on every documented integration path. Fails closed with a logged reason; no real risk.WriteFileAtomicNoFollowreplacing a non-regular file at its target path, unlike its siblingWriteFileNoFollow(internal/session/session.go) — already adjudicated refuted in round 30 (.abcd/work/DECISIONS.md).rename(2)never opens the target, so the hazard the sibling's stricter check exists to prevent is absent by construction; a planted FIFO/socket carries no real threat, and the sidecar's own repair path (an explicit-offsetre-run) depends on the replace succeeding.docs/how-to/transcribe-a-recording.mdomittingffprobeas a dependency — split verdict, discarded. One refuter found Homebrew'sffmpegformula bundlesffprobe, narrowing real exposure to the tutorial's documented no-Homebrew macOS ("local") install path; the other found that residual path real and worth a one-line fix. Discarded per the loop's tie-breaking rule.install.shbranch lacking a residual-gap warning message (unlike its Linux sibling, which warns onffprobeinstall failure) — split verdict, discarded. One refuter found round 46's own commit message called the branch "untouched" as a considered decision; the other found the warning-message question distinct and un-adjudicated. Discarded per the loop's tie-breaking rule.[0.4.0]CHANGELOG entry'saudio.wavfile-mode claim, made stale by round 45's existing-file mode preservation — both refuters killed it: this repo's own precedent (round 46 editing a released[0.2.0]bullet) only corrects a released entry that was already wrong at release time; this one was true on the day it was written and at release, and no live reference doc (docs/reference/*) makes the now-superseded claim.Verification
go build,gofmt -l .,go vet ./...,go test ./...,go test -race ./...all clean; pipeline smoke (merge+reportagainst a scratch copy ofexamples/sample-session) succeeded;sh -n install.sh && bash -n install.shclean. This round's fix is documentation-only (a CHANGELOG bullet), so no new test applies.Assisted-by: Claude:claude-sonnet-5