Claudinite growth: extract lessons - #106
Merged
Merged
Conversation
One lesson from the 2026-08-01 window (#99, #100, #101, #96), into the laughcounter local pack as prose. #99 spent three sweeps believing "the app listens on no socket" was already enforced by no-network-client, because an NWListener needs `import Network`. The reasoning held for that one API and not for the capability — socket(2), NSXPCListener, CFSocket*, NSSocketPort and an embedded HTTP server all reach a listener without it, and a file containing only `socket(AF_INET, ...)` passed check_the_world. The durable part isn't the listener surface (no-listener.mjs carries that at the site); it's that "already covered by another check" is a claim you settle by running the sibling check against a violating file, since a ban list's blind spots are invisible to the reasoning that drew it. Nothing new from #100 / #101: dev/procedures/mac-audio-lifecycle.md already records the churn ladder, the three-state health reporting, the witnessed-arrival settle rule and the seed-timer-state-at-start gotcha in full. #96 is the machine usage fold. Refs #104. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VGZzDhF4jU1zYbZoWfCucc
This was referenced Aug 1, 2026
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.
One lesson from the 2026-08-01 window (commits 4ce1d97 / b6bfe51 / 5f20c3a; PRs #101, #100, #99 merged, #96 touched), landing as prose in the
laughcounterlocal pack.Test "already covered by another check" before believing it. #99 spent three sweeps leaving
on-device-privacy's "the app listens on no socket" as prose, each reasoning that anNWListenerneedsimport Networkandno-network-clientalready bans that. True of that one API, false of the capability —socket(2)comes free withimport Foundation,NSXPCListener/CFSocket*/NSSocketPortare Foundation types, an embedded HTTP server arrives as its own import, and a file whose entire content waslet fd = socket(AF_INET, SOCK_STREAM, 0)passedcheck_the_worlduntouched. The listener surface itself is already carried at the site byno-listener.mjs; the durable part is the dedupe discipline — a ban list's blind spots are invisible to exactly the reasoning that drew it, so run the sibling check against a violating file instead.Nothing else cleared the bar. #100 and #101 are richly documented already:
dev/procedures/mac-audio-lifecycle.mdcarries the aggregate-churn ladder, the three-state health reporting and one-remedy UI rule, the witnessed-arrival settle rule, and the "seed timer-maintained state at start" gotcha. #96 is the machine-written usage fold.No new check: this is a judgment rule about how sweeps dedupe, not a deterministic one, so it lands on the prose rung.
check_the_worldexits 0;on-device-privacyfixtures 14/14.Refs #104.
🤖 Generated with Claude Code
https://claude.ai/code/session_01VGZzDhF4jU1zYbZoWfCucc
Generated by Claude Code