knowledge: ingest 7 verified insights (hook stderr capture, shell empty-vs-unset, leaked test artifacts, mutation restore, foreign config keys, client rate limiting, call-site enumeration) - #32
Open
choiyounggi wants to merge 1 commit into
Conversation
This was referenced Aug 5, 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.
Full review report is committed at
.dev-loop/INGEST_REPORT.mdin this branch — read that file for the complete verification, dedup, and routing detail. Summary below.7 queued candidates in → 6 new pages, 1 merge, 1 new category (
testing/migration), 0 dropped. Every directive re-verified against primary sources or a local reproduction. Two candidates were changed during verification.2>&1 >/dev/null), exit 2platforms/shells/zero-exit-diagnostics-into-a-hook.mdtesting/data/leaked-test-artifacts.mdinfrastructure/config/keys-ahead-of-their-consumer.mdtesting/quality/tests-that-cannot-fail.mdbackend/common/reliability/client-side-rate-limiting.mdtesting/migration/call-site-enumeration.md${VAR:-d}substitutes for empty as well as unset, soVAR=cannot disableplatforms/shells/unset-versus-empty-parameters.mdTwo candidates changed by verification
git checkout -- <path>restores from HEAD". It restores from the index (git-checkout: "Replace the specified files and/or directories with the version from the index"; git-restore: "By default, if--stagedis given, the contents are restored fromHEAD, otherwise from the index"). That yields a remedy the candidate lacked —git addthe fix before mutating andgit checkout --reverts only the mutation. Reproduced all three states in a scratch repo; the page now carries a state table instead of a blanket prohibition.All 7 pages are
confidence: verified. Sources include POSIX XCU (redirection order; the colon rule in parameter expansion), the Claude Code hooks doc (PostToolUseexit-2 row — exit 2 is the only code that shows stderr to the model), git-checkout/git-restore, pydanticConfigDict.extra, JSON SchemaadditionalProperties/unevaluatedProperties, serdedeny_unknown_fields, CPython Calls (positional slots), LSPtextDocument/references+callHierarchy/incomingCalls, tempfile/pytesttmp_path, Semgrep rule testing, and Auth0.refactoring.com/catalog/changeFunctionDeclaration.htmlwas attempted, returned only the page shell, and is not cited. Local reproductions on macOS (bash 3.2 / sh / zsh) cover redirection ordering, colon expansion across all three shells, and the three git restore states.Dedup — merged rather than created
I-4 merged into
tests-that-cannot-failbecause its step 1 already ended "…re-verify red before restoring the code" — the restore mechanism was that page's missing half, not a new situation. Body 58 → 91 lines, under the 120 limit.The other six were checked against their nearest neighbours and kept separate for stated reasons — notably I-1 is the PostToolUse mirror of the existing PreToolUse page
command-text-inspected-before-execution, and I-6 is a signature-changing migration where tests are supposed to change, the opposite invariant tobehavior-not-implementation.test-data-and-isolationgained a cross-link to the new I-2 page from its temp-files row.One thing to decide
testing/migrationis a new category, and I flagged it as a judgement call rather than an obvious fit — also logged as agapentry inlog.md. The I-6 directive generalizes past tests to any signature migration, and no domain owns cross-cutting refactoring mechanics.testingis the best available home (its detection channel and the test-helper sweep are suite-specific), but if a second refactoring-shaped insight arrives, that is a domain-level decision for you rather than something to growtesting/sideways one page at a time.Invariants (checked mechanically)
New pages listed in their domain index 6/6 · page id matches path 7/7 ·
related:and inline[page-id]refs 0 broken · max body 91 lines · 0 banned vague qualifiers (one "usually" was caught by the check and rewritten) · every prohibition paired with a replacement in anInstead oftable ·log.mdhas aningestand agapentry.Not merged — for your review.