Skip to content

Content temporarily unavailable

PR #2171: review-to-check coverage matrix

Audit head: 858b174a65f160d13d01f0324c7481cc8e4eba3a. This is a self-review of the proposed checks, with temporary executable probes. No production repair or permanent oracle extension was made in this audit.

The answer to “would the original 15 catch everything?” is no. The expanded plan has 26 checks. This matrix accounts for 53 findings and four evidence caveats. Accounting is not proof that all checks intercept their targets. Known current failures keep those laws open, even though their existing narrower oracles pass.

Laws, experiments, and remaining enforcement

No law change needs a new maintainer decision. Independent cached callers reject conflicting local row options. Mounted hooks retain inline options until identity changes. Metadata follows authoring shape, with the last present structured spread winning. New functional objects receive output metadata; direct source returns retain source metadata. Inline values keep authored shape. Query and Electric ignore legacy runtime returns, and their types reject them. Query does no automatic refetch. The maintainer explicitly selected a stable Query minor and coordinated RC DB peers for the accidentally stable Query/Offline packages.

Law and authorityExisting evidence and missing boundaryExperiment on current unchanged headInference and enforcement destination
Independent same-identity callers reject conflicting getKey/schema; explicit maintainer decisionExisting admission model/drivers check preload, observer preload, subscription, and client render. Cached SSR before subscription is missing.Core server read: three conflict assertion failures, three same-option controls pass. Actual React server render: the same three failures/three controls.G09 is confirmed-open. O16 must extend the shared model's receiving paths before production repair. A subscription-only check is insufficient.
A reusable local option claim survives transport replacement; same decision, hydration transports no function referencesSource claims have hydration histories, but local row-option claims do not receive that lifecycle.Newer hydration replaces a one-row preloaded result; three conflicting declarations are accepted, three compatible controls pass.G10 is confirmed-open. O04 needs claim lifecycle histories and post-replacement admission, with local claims preserved independently of transport.
The guide's successful write example confirms its row before optimistic settlement; explicit-confirmation migration contractQuery's generic handler owner checks confirmation, but does not execute this fenced example. Typechecking cannot detect its omitted confirmation.Extracted successful POST handler writes one remote row; Collection has zero rows after when('settled').G01 is confirmed-open. O21 must execute the actual guidance through O17's law. No production adapter failure is alleged: its reversion follows the approved behavior.
Rejected cache admission cannot corrupt the first claim; same cache contractCurrent grammar changes both options together and ends at first admission.Previous pass: two wrong guards survive all 144 cases; independent-option and repeated-admission comparisons reject them with 12 and 24 failures.O01/O02 remain unimplemented test gaps. Current correct behavior passes these distinguishing probes; that does not supply SSR/hydration coverage.

The probe inputs, checkpoint construction, commands, setup failure, and logs are described in the expanded plan's follow-up experiment section. These are RED witnesses, with compatible controls. They are not repair GREEN results.

Source inventory and evidence notation

  • A01–A15: first pasted review, preserved in the task attachment Pasted text.txt. Its reviewer read the worktree diff and Changesets 6.0.9, queried published manifests, and ran no tests. Original line references are retained below; that review supplied no commit SHA.
  • B01–B10: next supplied review, evaluated from 7c53f271a in the first versioned evaluation. B10 has two subclaims, both retained here.
  • C01–C15: latest supplied review, targeting 0a60ad85b; evaluated from 66454803b with repairs in 68228aaf3. The second versioned evaluation records original claims, repros, mutants, and limits. C01 includes core and React paths.
  • G01–G11: seven inline comments, three outside-diff findings, and one additional prose suggestion in GitHub's two reviews. First review covers through 66454803b; second through the audit head. Stable links identify inline comments. Outside-diff findings are in the corresponding review body.
  • W01–W02: the two warnings in the bot's mutable walkthrough, inspected at the audit head. Its merge-risk summary repeats G05/G08/G09/G10; it is not another independent finding.

O01–O26 refer to the numbered checks in the expanded plan. Their owner, independent judgment, legal histories, cut, and distinguishing experiment are specified there. They are proposals except where the evidence explicitly says an existing owner already executes them.

Historical means the linked evaluation records the experiment at its own head; this audit did not replay every original fault. Source means direct source inspection, not an executed behavior/build failure. Current RED means an intended assertion failed at this audit head. Proposed means the broader check has not run. already-fixed and stale describe the reported trace; they do not close the broader unimplemented improvements.

A: first supplied review

The source calls A01–A04 high severity. A05–A08 are release follow-ons, A09–A11 correctness findings, and A12–A15 design/cleanup/docs findings.

IDOriginal claim and proposed correctionTechnical disposition/evidenceConcrete check and distinguishing cutRemaining work/durable destination
A01compiler/index.ts:2062: joined source spread uses FROM metadata; right-join missing-left rows fall back to output metadata. Honor selected source.already-fixed for the reported trace; historical metadata attribution repairs.O06/O08/O10/O11: right-side source with pending write, matched/unmatched join, full four-field comparison at publication.Complete multi-row/join-transition/facade receiving grammar; metadata owner.
A02useLiveQuery.ts:674: getKey/schema in derived identity causes documented config to throw without queryKey; restore supported initial render and useful diagnostics.already-fixed; historical real React derived-identity and retention witnesses.O05/O19/O25/O26: initial config render without queryKey succeeds, actual identity replacement applies options, preparation errors remain coded.Other applicable framework receivers and exact-head execution. O16 is distinct SSR admission, not evidence for this initial browser path.
A03version-packages.mjs:58: first RC ignores stable adapters, leaving exact old DB pins and duplicate DB copies. Republish compatible adapters.stale exact-pin mechanism; stable adapters now declare RC peers. Original reviewer supplied source evidence only.O13/O22: actual first-RC inventory, pack both adapters, resolve one DB in consumer and exercise required APIs.Real package/consumer receiving fixture; source-only manifest strings are insufficient.
A04version-packages.mjs:145: each RC patch bumps stable adapters on latest and pins an exact RC DB; fixture omits those dependencies.stale exact dependency pins; stable 1.x RC peers are now deliberate.O13/O22: repeated patch/minor releases, packed manifests/dist-tags, no invented adapter bump, supported consumer install.Generated release histories and actual registry-command fixture. Preserve stable-tag policy separately.
A05version-packages.mjs:208: RC exit drops planned dependent bumps, leaving stable adapter pinned to RC. Preserve dependency updates at exit.stale old exact pins; historical release-script repairs/fixed fixtures.O13: exit after candidate/patch work; compare every packed dependency and required bump with independent plan.Generated dependency graph, including stable dependents; release owner.
A06version-packages.mjs:194: exit reconsumes released changesets; consumed minor plus pending patch yields wrong version and duplicate changelog.already-fixed reported release path; current baseline release fixtures pass. Original-fault replay not run here.O13: minor consumed in RC, pending patch, exit, repeated no-op; version and changelog entries exactly once.Generated consumption ledger and changelog comparison.
A07version-packages.mjs:110: pending mixed changeset aborts; stable-only changeset marked consumed without release.already-fixed reported path; existing release fixtures. Broader sequence unrun.O13: enter RC with mixed and stable-only work; compare releases and consumption independently.Generalize fixed workspaces into generated release histories.
A08version-packages.mjs:87: failure leaves rc.0 rewrites/pre.json; rerun skips setup and bumps wrong packages. Restore files on failure.already-fixed reported path; release failure/retry fixture.O13: inject failure at each mutation boundary, compare workspace restoration, retry and publish once.Extend failure-stage grammar and registry-command receiving path.
A09useLiveQuery.ts:248, infinite hook: failed hash after descriptor deferral strands later direct reader. Resume all deferred starts.already-fixed; existing source-ID owner has rejection/release and multiple throwing-start witnesses.O19: rejected live/Suspense/infinite preparation, then direct shared descriptor preload reaches ready/row.Inventory partial-construction stages; preserve real-host failure/retry receiving evidence.
A10electric.ts:1210: ignoring legacy { txid } stops waiting and can flicker; reviewer favors loud rejection or old waiting.accepted-design for ignored runtime returns, explicitly chosen later. Explicit acknowledgement remains required.O17/O21: handler awaits actual acknowledgement, pending row persists until confirmation; no-ack control follows settlement law.Adapter histories plus actual migration snippets. Never restore post-write rejection to satisfy this obsolete recommendation.
A11query.ts:4368: retained 1.x auto-refetch contract warns removal in v1. Correct obsolete warning.stale; contract intentionally changed and automatic-refetch path removed.O21: changed API/warning/migration consistency check, successful-write behavior.Authoritative explicit-refetch guide and removed-symbol check.
A12compiler/index.ts:409: metadata protection only at root flag; Effects/include Collections allow reserved-name override. Enforce promised boundaries consistently.stale as a blanket rule: Collection-row traces were repaired; inline values keep authored shape. The current Effect output contract needs separate inspection before imposing Collection metadata.O10/O11/O12: source/projection collision through root, Effect, facade, callback and inline control at public boundary.Receiving grammar must preserve the distinct inline/Effect/Collection contracts; no blanket sanitizer.
A13useLiveSuspenseQuery.ts:288: always-string hash makes SSR throw, truthy checks and optional type dead. Remove unreachable code.stale; source cleanup recorded.O23: narrowed hash type plus actual caller/branch inventory.Static check; runtime green cannot prove absence of dead code.
A14compiler/index.ts:2068: attachVirtualPropsToSelected creates per-row copy closure even without copy. Hoist/remove allocation.stale reported implementation; source allocation concern retained, no timing claim.O24: compile once/process N rows; count closure creation versus needed copies.Deterministic work/AST placement probe, semantics owner unchanged.
A15live-queries.md:37 misstates projection collectionId; migration names unexported enrichRowWithVirtualProps. Correct attribution and exported guidance.already-fixed reported docs; historical evaluation/source.O21/O25: compile actual snippet via public export; compare documented source/output cases.Docs exports and behavior receivers. Keep internal helper out of public migration instructions.

B: next supplied review

Original paths/lines refer to its reviewed tree. B01/B03–B08 are behavioral or compatibility findings; B09/B10 include cleanup and production-error concerns.

IDOriginal claim and proposed correctionTechnical disposition/evidenceConcrete check and distinguishing cutRemaining work/durable destination
B01OfflineExecutor.ts:551: stable adapter calls RC-only completeWithoutCommit while accepting DB ^0.15; restored work can remain held. Narrow peer or avoid absent API.already-fixed; historical real DB 0.15.2 capability evidence and manifest change.O13/O18/O22: packed consumer restore under each supported peer, exact outbox/caller settlement.Workspace dependency and packed consumer checks are separate; G05 remains open.
B02first-rc.md:17: removing Query automatic refetch/return type in a stable minor/latest breaks ^1.4 users; use major.accepted-design; maintainer explicitly changed major request to minor.O13/O17/O21: verify requested minor/tag and explicit migration cost; prove new handler behavior.Preserve deliberate compatibility warning; a test must not override this release decision.
B03live-query-options.ts:184: inline key/schema reference rebuilds each render, possibly loops. Retain options by query identity.already-fixed; historical wrong identity mutant fails six React derived cases.O05/O19: repeated native hook render, source publication, actual identity change, render budget.Other identity-comparing host witnesses, without imposing React semantics on reactive bindings.
B04electric.ts:1291: rejectReturnedHandlerValue throws uncoded Error after server commit, falsely fails caller and invites duplicate retry.already-fixed; historical original wrapper fails three handler-outcome histories.O17/O25: server success plus legacy return must fulfill with confirmed row; genuine handler rejection retains exact error.Keep 12-history owner and error-artifact checks in required validation.
B05compiler/index.ts:2119: functional spread/collision guesses mainSource instead of selected joined source.already-fixed under approved authorship rule; historical metadata grammar rejects source guessing.O06/O08/O09/O12: direct source versus fresh functional object from either joined source, complete rows/four fields.New-object ownership is output; do not infer provenance from value equality.
B06compiler/index.ts:2129: authored $collectionId changes ordinary projection ownership contrary to docs.already-fixed; historical collision grammar.O06/O10/O11/O12: toggle one reserved field without changing ordinary fields; same output attribution at every boundary.Callback/downstream/facade receiving and full-result comparisons.
B07first-rc.md:6: Convex/Preact absent on branch, version command throws; merged packages still need API migration. Merge main and include them.already-fixed missing-package trace after merge; historical actual-inventory fixture.O13/O14/O22/O26: actual non-private inventory, run version/build/types and receiving contracts for merged packages.Exact-head clean workspace checks; an older package list is insufficient.
B08query.ts:4491: Query ignores legacy return while Electric throws; stale UI versus caller failure. Align adapters.already-fixed; approved ignore-at-runtime/reject-in-types policy.O14/O17: same CRUD/outcome/result histories through both adapters and public type input compiler.Keep explicit confirmation controls and generated type admission.
B09query.ts:4491: three identical pass-through wrappers and four repeated QueryCollectionUtils types. Consolidate wrapper/type alias.already-fixed reported duplication; historical source cleanup.O23/O24 with O17 semantics: source inventory and shipped bytes, unchanged mutation outcomes.Static/size evidence, not an invented behavioral oracle.
B10useLiveInfiniteQuery.ts:282: React always false leaves shared equality branch dead; useLiveQuery.ts:249 uncoded Error ships full text.stale older React shared-policy concern; other framework callers prohibit blanket deletion. already-fixed coded identity-error subclaim.O23 checks all framework callers; O25 executes diagnostic census and production artifact erasure.Preserve both subclaims. C14 later identified a genuinely unused mode; same claim cannot be inferred from React alone.

C: latest supplied review

The reviewer reported executed repros for C01–C05 and source-only packaging claims C06–C08. The second evaluation distinguishes observed results from specific TypeError/ERESOLVE predictions.

IDOriginal claim and proposed correctionTechnical disposition/evidenceConcrete check and distinguishing cutRemaining work/durable destination
C01live-query-options.ts:270, core test 411 and React 3569: own tests fail after retention change. Fix assertions without restoring render churn.already-fixed; historical two core-file failures and real React failure, then GREEN. Core option tests pass again in this audit.O05/O26: execute both changed files on exact head, preserve real identity replacement controls.Test selection and build fingerprints; no new runtime model was needed to detect red tests.
C02index-suggestion.test.ts:225: JS !row.$hasPendingWrites is false, so expected warning never occurs. Use query expression directly.already-fixed; historical failing diagnostic, current index tests pass.O20/O26: true/false pending source variation and virtual-field diagnostic at actual query construction.Actual UI receiver and proxy-expression check.
C03compiler/index.ts:1227: flat union alias loses pending/origin metadata.already-fixed; historical final metadata grammar against old compiler has 220 failures/189 controls.O06/O07/O09/O10: both union branches nonempty, full rows/four fields at pending/settled/publication cuts.Existing fixtures cover one populated branch only; simultaneous contributions remain a gap.
C04compiler/index.ts:2117: only outer root blocks selected reserved names; subquery spoofs metadata.already-fixed recursive publication trace; same historical grammar.O06/O10/O11/O12: colliding QueryRef projection, downstream callback reads ordinary scalar before publication.Detect input-time spoofing, not just final reserved-field sanitization.
C05compiler/index.ts:2079: later unmatched spread deletes earlier source metadata.already-fixed; historical first-present mutant fails four matched controls.O08/O09/O10: unmatched→matched→unmatched, both spread orders, callback observations.Current match grammar is static; transition/rollback coverage remains proposed.
C06Query peer ^0.15 accepts DB lacking fail/reportError/reportHealthy. Narrow peer to APIs actually used.already-fixed; historical old DB boundary has undefined methods and stuck preload, not an executed uncaught TypeError.O13/O22: execute health failure/recovery in installed supported consumer; reject unsupported combinations.Manifest string tests alone do not establish capabilities.
C07Query breaking minor/latest should be major.duplicate of B02; original compatibility concern preserved, approved minor choice remains.O13/O17/O21: requested version/tag, confirmation and migration behavior.No major bump without a new maintainer decision.
C08Offline stable 1.2/latest with RC-only peer causes old DB peer-resolution failures.accepted-design; coordinated upgrade deliberately required. Specific ERESOLVE wording not run.O13/O21/O22: actual consumer resolution and documented upgrade/retain-old-adapter alternatives.Stable tag does not imply 0.15 support. Keep resolver limits honest.
C09Same hash plus changed key/schema borrows other caller's Collection. Reject independent conflicting callers.already-fixed preload/client-render traces; historical guard-removal RED core 36/React 6. Current G09/G10 expose additional paths.O01/O02/O03/O04/O05/O16: every admission path, independent declarations, replacement and post-rejection reuse.Cache owner remains open for the demonstrated SSR/hydration counterexamples.
C10RN ListsScreen 118 uses removed $synced, JS negation and reserved name; Saving never shows. Select ordinary pending field and consume it.already-fixed source wiring plus historical core pending-field observation; native component execution unproven.O06/O10/O20/O21: actual example projection/component across held/settled write.Real RN receiving witness; do not credit a copied core query as a device run.
C11completeWithoutCommit can complete failed work; internal API is cross-package and publicly documented. Guard state, remove public instructions for helper.already-fixed; historical missing-guard mutant fails four state histories. Current outcomes suite passes.O18/O21: repeated attempts from all four states, public rows/outcome unchanged on refusal; guide checks.Packaged Offline restore still needs its capability receiver.
C12local-storage-collection.md:118 retains removed isPersisted. Replace with when('settled').already-fixed targeted guide; G07 finds other active coverage references.O21: whole authored-doc migration inventory with historical/before examples explicitly marked.No generated-doc edits; do not constrain search to one changed guide.
C13db/src/index.ts:54: warnOnce/resetWarnings unused. Remove implementation, exports and obsolete tests/resets.already-fixed; historical caller inventory and cleanup.O23: production export/caller census, fixtures distinguished from actual API uses.Static absence and size evidence.
C14live-query-window-binding.ts:75: dependencies recompile mode has no callers. Remove only unused mode.already-fixed; historical source check, framework runtime neighbors pass.O23/O26: all adapters' supplied modes and normal test graph.Preserve active structural-equality policy and reactive callers.
C15compiler/index.ts:1063: alias array allocated for every functional row; hoist to compilation.already-fixed source placement; no measured speedup claimed.O24: alias discovery once per compile for varying rows; output owner unchanged.Deterministic work probe and shipped-byte measurement.

G: GitHub review comments

Inline comments link to their stable source. G08 is outside the first review's diff; G09/G10 are outside the second review's diff. G11 is the second review's separate “additional/unverified” wording suggestion. The reviewers' current line references below are checked against the audit head, not assumed from old inline positions.

IDOriginal claim and proposed correctionTechnical disposition/evidenceConcrete check and distinguishing cutRemaining work/durable destination
G01Error-handling guide 705: successful POST lacks refetch/write confirmation.confirmed-open, current RED: server has row, Collection empty at settlement.O17/O21: extract actual snippet and run successful/failing write histories with explicit-confirmation judgment.Correct authored guide and retain a behavior receiver; compilation alone is insufficient.
G02RN pending badge: select source pending field under ordinary name.duplicate of C10; source correction present.O20/O21: actual component receives pending/settled source states.Native execution still unproven; preserve this detail despite duplicate status.
G03Index warning 225: remove JS negation.duplicate of C02; historical RED/GREEN.O20/O26: run diagnostic and verify source-state-sensitive expression.Retain proxy-expression regression.
G04Core identity 408: identity/hash assertions contradict retention.duplicate of C01 core subclaim; current file passes.O05/O26: affected test execution and actual identity-change control.No reference-sensitive render identity restoration.
G05Offline package 64: RC peer cannot resolve local 0.15.2 in clean workspace, reported TS2307; add workspace devDependency.confirmed-open source/config finding: RC peer, no DB workspace devDependency. Reported fresh-install build failure not replayed here.O22: disposable frozen install/build before versioning; verify resolved local package and declaration imports.Workspace dependency repair/build witness remains open. Existing local symlink is not counterevidence.
G06React identity 3542: expect retained Collection/first key.duplicate of C01 React subclaim; historical real-host RED/GREEN.O05/O26: real rerender plus identity replacement; execute changed test.Preserve both assertions, not merely isReady.
G07Coverage text 720: two remaining active isPersisted references, actual source lines 547/1560 at head; replace with when('settled').confirmed-open source documentation residue; added audit prose shifts the second line. Original comment's displayed lines were stale.O21: authored API-reference search with explicit historical exemptions.Update active coverage prose; distinct from G11 wording. No production behavior repro needed.
G08persisted-source-receipts.test.ts:957–960: async onInsert returns {}, violating Promise; remove returned object.confirmed-open source/type mismatch; existing return is present. Whole SQLite typecheck not executed here.O14/O22: generated result admission plus actual package/test declaration build.Migrate test handler and run its package typecheck; runtime-only runs cannot prove this.
G09live-query-observer-client.ts:137: cached seed early return skips admission; SSR never subscribes. Validate before returning snapshot.confirmed-open, current RED core 3/React 3 with six compatible controls total.O16: existing cache model through getServerSnapshot and actual renderToString.Extend primary core/React receiving drivers before repair; post-rejection non-interference remains O02.
G10client.ts:1095: hydrateLiveQuery copies source claims but drops local rowOptions when replacing record. Carry local claim forward.confirmed-open, current RED 3/compatible 3 after asserted newer replacement.O04: preload claim, newer hydrate, conflicting/compatible preload, then claim retirement controls.Extend claim lifecycle grammar before repair; do not serialize function references.
G11Additional prose comment, coverage 711: clarify “requires joined and single pending-source observations”; bot labels it unverified.confirmed-open editorial suggestion, source only. This is not evidence of a broken reach counter.O21: readable prose plus O26's per-path reach report; no fabricated runtime RED.Preserve intent as “observations from joined and single pending sources”; keep separate from G07.

W: bot walkthrough warnings

IDOriginal claim and proposed correctionTechnical disposition/evidenceConcrete check and distinguishing cutRemaining work/durable destination
W01Scope warning: metadata/cache laws and RC release automation exceed issue #1319; split work or link coding requirements.refuted as unauthorized scope: user explicitly requested RC automation and approved metadata/cache rules in this task. Issue text alone omits that authority.O21/O26: requirement→change inventory and PR-body review, including maintainer decisions.Keep scope rationale visible; no product oracle should reject authorized scope.
W02Docstring score 17.14% versus 80%, 35 functions/69 files/8 unsupported; generate missing docstrings.refuted as a repository requirement: no such threshold in AGENTS/config/workflows. Metric not independently recomputed; it names no missing contract.O21/O23: public contract/literate oracle prose review proportional to law, source/config authority check.Preserve useful documentation review; do not manufacture comments merely to satisfy an unconfigured vendor ratio.

Four evidence caveats

IDOriginal caveatRequired check and disposition
N01A reviewer ran no tests; traced installed Changesets 6.0.9 and published exact pins.O13/O22/O26: preserve source evidence as such. A source finding does not become an executed release failure.
N02C reviewer lacked Changesets dependencies, so release tests did not run.O26: dependency/setup gate. Prior repair record and initial audit both ran11 fixtures successfully; broader registry/packed receiving work remains proposed.
N03C Query run loaded a stale second DB; no valid runtime finding resulted.O22/O26: rebuild/fingerprint local DB and verify runtime resolution. Prior evaluation ran 978 Query runtime tests after repair; that result has its own head/scope.
N04C review branch moved 0a60ad85b→66454803b; about 40 later files, 44 by recorded diff, unreviewed; reviewer detached its clean old worktree.O26: exact-head inventory and affected revalidation. Neither a clean reviewer tree nor unchanged cited files proves those 44 files reviewed. Leave other worktrees alone.

Loss accounting, reviewer quality, and closeout

The initial scratch ledger was created before probes. Final raw-source reconciliation corrected G07's conflation with the distinct G11 suggestion and added the two walkthrough warnings. No review finding was removed to make the count fit. Multiple subclaims remain within B10/C01 and are explicitly mapped. The four caveats are additional to the 53 finding IDs.

Numbered-row accounting is 53 = 29 already-fixed + seven stale + three accepted-design + five duplicate + seven confirmed-open + two refuted. B10 is counted once as stale for its older shared-policy claim; its distinct coded-error subclaim is already fixed. C01 counts once but retains both core and React paths. No row is deferred. No new product policy is adopted here; A12 requires contract inspection before extending assertions to Effects. These totals classify reported traces, not the completion of all proposed checks. In particular, the seven confirmed-open rows are G01, G05, G07–G11; G07/G11 are editorial, G05/G08 have source evidence, and G01/G09/G10 have executed behavioral failures.

The first reviewer had useful source-based boundary analysis but no runtime confirmation. Later reviewers supplied strong executable counterexamples and honest setup/scope disclosures. The GitHub review identified two real cache paths missed by the current driver. Policy recommendations still need the maintainer decisions: a major Query bump, post-write rejection, and scope splitting do not follow from those defects. These reviewers are useful for defect discovery; their proposed fixes and coverage claims still need checking.

Recommendation: hire for defect discovery, with policy and evidence calibration. Their reproducible boundary failures are the strongest evidence. An unconfigured metric or a scope judgment that omits maintainer instructions does not establish a required repair.

The expanded plan accounts for every identified finding in these sources. It does not establish that its proposed checks have caught every original implementation. Each behavioral row still needs its original failure or a plausible mutant to fail at the named comparison before that claim is earned. Static findings need source/build/declaration evidence instead. O16 and the hydration part of O04 have current RED evidence; G01 has an executed docs receiver. Those three confirmed failures remain unfixed in this audit. G05/G08 need their clean build/typecheck witnesses. Broader proposals remain open in the coverage map.

The PR is not ready on this evidence: G09/G10 violate the accepted cache law, and G01 teaches an unconfirmed successful mutation. This audit identifies repairs and checks; it does not postpone them by agreement, retire those laws, or claim completed implementation. No guarantee of zero future findings is justified by a complete matrix or a passing random campaign.

Final inventory assertions pass: 53 unique finding IDs, four caveats, 26 check definitions, and a mapped check for every row. The final read-only GitHub query returned the same head, two review bodies, and five general comment bodies, all unchanged from the first snapshot. Changed-file lint, report formatting, and git diff --check pass. pnpm reports the existing lockfile/installed override mismatch; no dependency installation or override change was made.

Additional findings during oracle construction

These append to the original inventory; they do not replace or renumber its 53 findings. Production remains at 858b174a65f160d13d01f0324c7481cc8e4eba3a.

IDFinding and evidenceOwner and next witness
P01The actual installed Changesets CLI selects latest for candidate packages whose registry history contains only prior RC versions. The chunk 13 command receiver has 12 intended tag-comparison failures and 28 passing neighbors. Independent reviewers observed the raw publish commands; strict shims select no tag.O13 release/publish history owner. Preserve this RED, add real local-registry HTTP reception separately, and defer production repair until the oracle campaign finishes. Command evidence does not establish npm HTTP or installed-consumer behavior.
P02packages/db/skills/db-core/custom-adapter/SKILL.md:222 still recommends returning { txid }. Source inspection contradicts the approved explicit-await mutation contract; this is authored guidance, not generated API documentation.O21 active-guidance consistency and actual snippet receiving checks. Preserve before/historical examples explicitly; repair current guidance after the oracle work.
P04docs/guides/mutations.md:521 says Query Collection currently refetches automatically after persisting changes. The adjacent example explicitly awaits refetch. The current prose contradicts the approved removal of automatic refetch; this is source-inspected evidence, not a behavior-test failure.O21 authored-guidance consistency and actual fenced mutation receivers. Check current prose separately from historical/before examples, then repair the guide after the oracle campaign.
P05The real npm/pnpm HTTP receiver attempts to upload an already-published RC when its packument has an rc tag and no latest tag. Three histories fail the raw no-republication comparison: retry after candidate-phase failure from prior-RC and never-published starting states, plus an already-current no-op. Duplicate PUTs receive HTTP 409; exact local manifest/pre-state restoration is checked first.O13 actual HTTP receiving owner, scripts/publish-http-oracle.property.test.js. Preserve the assertion RED at unchanged production, including raw attempts and registry state, and defer publisher repair until the oracle campaign finishes. Installed consumers remain O22.
P06packages/db/skills/db-core/custom-adapter/SKILL.md:209 says core will not call unloadSubset when loadSubset throws synchronously. This current guidance contradicts query/live/ARCHITECTURE.md:771: a synchronous throw is a failed load whose owner retains an unload opportunity on release. This is a source-inspected guidance conflict, not a newly executed runtime failure.O21 active-guidance consistency, receiving the existing subscription lifecycle contract. Check the surrounding ownership guidance as well as deprecated handler return values; do not invent a second acquisition model or repair the skill before the oracle campaign finishes.
P07The same custom-adapter skill at lines 213–216 says the previous acquisition releases when its replacement returns. Architecture lines 783–786 require detaching and releasing the old lease before reacquisition, and reacquiring only while its demand and replay remain current. Source inspection establishes a guidance-order contradiction, not a new runtime defect.O21 current-guidance consistency and the existing subscription lifecycle owner's replacement/reentrant-release histories. Preserve the separate ordering claim instead of treating P06's synchronous-throw witness as evidence for it.
P08The custom-adapter loadSubset fence at lines 170–198 ignores the establishing commit() receipt before its async callback returns. This is a candidate applied-settlement defect in executable guidance. No held-receipt receiving witness has run; it is not yet classified as a confirmed behavior failure.O21 actual fenced callback receiver. Hold an establishing commit behind an optimistic transaction, invoke the actual documented callback externally, and compare load settlement with visibility under the existing applied-settlement law. Avoid awaiting this load from its own mutation handler.
P09Actual LEFT-join Effect startup emits an update for an unmatched occurrence that never entered its callback-visible result. The independent trace has one callback containing that update (identical previous/current values), an unrelated peer enter and the actual matched enter; its literal-true lazy load finished first. This is an executed callback-delta failure, not merely a disputed count of startup batches.O11 Effect receiving expansion, chunk 16. Preserve the initial RED and full ledger. Public Effect delta semantics and the architecture's absent-to-absent classification prohibit the phantom update; do not accept it as a legal startup prefix or erase initial callbacks. Evidence: chunk16-startup-independent-trace-r1.log in the scratch evidence directory. Production repair remains deferred.
P10Author-run correlated-child callback reception exposes reserved fields before downstream fn.select, while all 231 root receiving histories pass. Minimal new-shape witness selects only a fake $key: the callback sees present/own true and spoof-$key where the approved law requires absence; an ordinary nested observed output retains that wrong fact. Initial 575-test run has 203 callback-law REDs and 372 passes, including inline-preservation and Collection-input rejection controls. Independent review and final instrument calibration are pending.O12 callback-input owner, chunk 17. Compare present inputs and derived ordinary outputs under the same model through actual correlated-child compilation; root GREEN supplies no child-boundary credit. Preserve source-spread spoofing and functional-new-spread leakage as adjacent witnesses, distinct from earlier illegal-correlation/order setup failures. Evidence: chunk17-fourth.json and .log in the scratch directory. Production remains unchanged.
P11Early metadata-fixture debugging observed a raw structured optional: undefined projection arrive as null. The author withdrew its initial normalization explanation: existing source-ref tests and public literal descriptions do not establish that raw-literal policy. This is an unresolved boundary observation, not a confirmed product defect or approved normalization.Read-only literal-law/owner investigation distinguishes raw undefined select specification, explicit val(undefined), source-ref undefined, nested/array forms and null controls, checking callback and final own-property facts. The new O12 grammar retains strict source/spread/functional undefined coverage without claiming a structured-literal law. Preserve this question separately before any production repair.

P01 evidence: chunk13-publish-independent-final.log under /private/tmp/rc2171-oracle-challenge/. P02 was independently identified during read-only O20/O21 preparation. The existing typed live-query schema limitation is already recorded in the coverage map; it is not relabeled as a newly confirmed regression here. A scratch schema-role experiment establishes that client mutation inputs, rather than synced rows, are the appropriate receiving boundary for a future transforming-schema retention check.

P03 (existing replay instrumentation): recordOracleReplay is documented as never throwing, but a real fc.check RunDetails value and an unwritable witness channel (a directory) produce EISDIR from its synchronous writer. The finite comparison wrapper added in chunk 13 preserves both primary and writer errors; that evidence does not establish the older standalone recorder's intended policy. The guarded replay/standalone recorder owner must resolve this existing comment/behavior conflict before claiming a broader writer-failure guarantee. Independent probe: chunk13-old-record-writer-probe.log in the scratch evidence directory. No library production repair was made.

G08 clarification and current receiver: the unchanged bad handler at packages/db-sqlite-persistence-core/tests/persisted-source-receipts.test.ts:957 is a plain persisted Collection handler, not Query-specific. Core Collection insert/update/delete handlers all require Promise<void>. Running that package's actual tsc --noEmit --project tsconfig.json (which maps DB to current source) produces the intended TS2769 handler diagnostic plus its cascading call-site diagnostic. Evidence: o22-persisted-core-source-types-baseline.log. Offline's missing workspace DB build edge is separately demonstrated by pnpm's filtered project closure; its committed lock already contains a DB link, so this finding does not by itself prove frozen installation fails.

P10 final independent receiving evidence: chunk 17 now has 580 tests, 377 passes/203 intended correlated-child callback-law REDs, with all 2,153 declared states reached. All 203 failures are the expected law exception, not setup/runtime failures. Controls and valid replay-environment/partial selection checks pass their intended judgments; production remains unfixed. The earlier 575-test author run above is retained historical evidence.

P11 runtime authority and receiving evidence are now resolved by independently accepted chunk 19. The public builder explicitly promises literal null/undefined pass-through and recursive record selection. Eight of its 68 exact typed root/QueryRef histories fail because raw selected undefined becomes null, including mixed arrays. All three ready cuts, public events and callback inputs are retained. Public type accuracy and correlated receiving paths remain next gates; a broader mixed-expression type-admission diagnostic remains unresolved.

IDFinding and evidenceOwner and next witness
P12Structured selection drops an authored empty-record property, including nested empty records and the empty box from a nested omitted field. Ten of chunk 19's 68 histories expose this through real root/QueryRef receivers. A minimal source with only id/version and select { id: row.id, version: row.version, value: {} } loses value at public rows/events, with no nullish member involved. This is an executed recursive-container-law failure, independently reviewed.Same literal model/registration owner as P11. Preserve the ten REDs and add same-model correlated array/singleton/facade receivers before repair. All 204 receiving and 102 callback states run once; exact typed factories compile. Evidence: chunk19-r2-freeze-manifest.json and chunk19-minimal-empty-record-red.log.
P13Public LoadSubsetFn prose at packages/db/src/types.ts:384–389 describes resource ownership transferring only after returning true/Promise and cleanup of partial resources on synchronous throw. The newer architecture/lifecycle contract retains failed-load demand and an unload opportunity on release. This wording requires reconciliation; it does not literally make P06's stronger promise that core never unloads a synchronous throw. Source inspection only; no new runtime failure is claimed.O21 authored-guidance consistency, under the accepted architecture/subscription lifecycle law. Keep this public source comment distinct from the stale skill text and generated API docs. Repair source guidance after all oracle work; leave generated docs to CI.
P14Architecture cleanup/restart prose at line 878 and custom-adapter skill lines 350–354 say markReady after an initial fail throws. Current public API prose, glossary and source-health oracle promise a same-run no-op. Source-health's lazy receiver also catches child-ready exceptions while discarding its model's predicted successful call outcome, so status-only checks can hide the wrong throw. This is source-inspected guidance conflict and an oracle observation gap, not an executed production defect.O21 guidance plus the existing source-health primary oracle. Add legal generated fail→actual child-ready and fresh-run neighbors, compare call outcome with the existing shared model, declare actual callback reach, and reject a throwing in-memory overlay before guidance/production repair. An absent optional callback call must receive no reach credit.

Chunk 19's unchanged production run has 103 tests: 85 pass and 18 intended assertion REDs (eight P11 plus ten P12), with all 306 states reached once. Independent review repaired only a missing oracle declaration, verified the semantic-neutral delta, strict driver admission and immutable capture controls. This is accepted instrument coverage; it does not close these product defects or change the original 53-finding accounting. P13/P14 read-only preparation and exact-source evidence are retained in the O21 scratch plan.

P11/P12 correlated receiving evidence: independently accepted chunk 20 runs 272 exact legal histories through both array spellings, singleton and facade materialization. All 3,264 declared states execute once; 200 histories pass and 72 preserve the same literal-law REDs, with no driver-execution failures. The 33 checker controls and six independent facet-isolation controls pass. Public inferred types remain the next gate. Original QueryRef fixtures missing their own correlation WHERE are retained as documented missing-premise evidence, not value-law failures. No production or guidance repair has occurred.