From 367ef8e1414a3ebf81102884fa48298f16068093 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 15 Aug 2026 06:38:49 +0000 Subject: [PATCH 1/4] docs(issues): capture the unreconciled drift count as its own P1 row MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit check:drift measured missing_live = 21 on 2026-08-09 and 20 on 2026-08-14. Two indexes were restored between those runs, so the expected figure was 19. The gap of one is consistent with a further index having been dropped inside that window — i.e. the loss mechanism may still be active rather than a contained historical event. Explicitly recorded as an inference from two aggregate counts, not as established fact: the 21 may simply have been imprecise, which is why #316 already flags 21 as approximate. Disproving it is as valuable as confirming it. It matters because every downstream repair assumes a static fault. Restoring 20 indexes into an active drop is wasted work that also masks the signal, and it turns #248 from "who dropped them" into "is it still happening". The contrast sharpens it: the match_* mismatch count was 10 at both measurements — unchanged — so the RPC surface is static while the index surface is not. Filed as a new row rather than an update to #316 deliberately. A #316 update was already queued in PR #1970, and a second live update to the same row would collide — planRequestBatch dedupes on request UUID, not on target row, so both would apply in filename order with one silently winning. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_017paT42ZVMf8jaLtkjFxdy5 --- .../d5a3fde2-33a4-49c5-b07c-fed5951883d4.json | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 docs/outstanding-issues-inbox/d5a3fde2-33a4-49c5-b07c-fed5951883d4.json diff --git a/docs/outstanding-issues-inbox/d5a3fde2-33a4-49c5-b07c-fed5951883d4.json b/docs/outstanding-issues-inbox/d5a3fde2-33a4-49c5-b07c-fed5951883d4.json new file mode 100644 index 0000000000..072b65d95a --- /dev/null +++ b/docs/outstanding-issues-inbox/d5a3fde2-33a4-49c5-b07c-fed5951883d4.json @@ -0,0 +1,13 @@ +{ + "version": 1, + "id": "d5a3fde2-33a4-49c5-b07c-fed5951883d4", + "createdOn": "2026-08-15", + "action": "add", + "payload": { + "pri": "P1", + "type": "task", + "summary": "Establish whether live index loss is ongoing before any restoration window", + "detail": "Two counts measured the same way by the repo's own check:drift do not reconcile. The 2026-08-09 live-drift run reported missing_live = 21; the 2026-08-14 forced dispatch (Actions run 31813064485) reported missing_live = 20. Between those runs the owner-authorized incident window RESTORED two indexes (documents_title_trgm_idx, document_chunks_content_trgm_idx), so the expected 2026-08-14 figure was 19, not 20. The arithmetic gap of one is consistent with a further index having been dropped inside that five-day window - which would mean the loss mechanism is STILL ACTIVE rather than a historical event already contained. This is an inference from two aggregate counts and is NOT established: the 21 could simply have been imprecise, which is why #316 already carries a note that 21 is approximate and 20 is the measured figure. Disproving it is as valuable as confirming it. Why it matters: every downstream repair assumes a static fault. Restoring 20 indexes into an active drop is wasted work that also masks the signal, and it changes #248 from 'who dropped them' to 'is it still happening'. Contrast that makes the case sharper: the match_* RPC mismatch count was 10 at BOTH 2026-08-09 and 2026-08-14 - unchanged - so the RPC surface is static while the index surface is not. Outcome: a definite yes or no on whether index loss is ongoing. Next: (1) re-run the whole-schema index inventory against sjrfecxgysukkwxsowpy and diff against the 20 names recorded in docs/audit/live-drift-forensics-2026-08.md section 1.3 - any newly absent name, or any of the 20 now present, is decisive; (2) extract missing_live from every live-drift Actions run and read the trend rather than two points; (3) re-check indisvalid/indisready, which was zero across public on 2026-08-14 - a non-zero result now means a different mechanism entirely. All three are read-only and need no hosted write. Stop: do not begin the index restoration window until this resolves; and if the count is still moving, treat it as an incident and escalate rather than repairing. Record a negative result explicitly - 'the drift is stable' is a real finding and is exactly the kind that gets established, felt like nothing, and never written down.", + "source": "session 2026-08-14 read-only drift verification; docs/audit/live-drift-forensics-2026-08.md" + } +} From a7f3ddc5ed8d53a458acd838fd09f2b3165c8dfe Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 15 Aug 2026 06:41:02 +0000 Subject: [PATCH 2/4] chore(ledger): record the ongoing-drop capture review Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_017paT42ZVMf8jaLtkjFxdy5 --- ...a7a2ca43dee60a4d50a4f04840076dfbb4f79fa55ab14605d71.record.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 docs/branch-review-records/61a53ca459551a7a2ca43dee60a4d50a4f04840076dfbb4f79fa55ab14605d71.record.md diff --git a/docs/branch-review-records/61a53ca459551a7a2ca43dee60a4d50a4f04840076dfbb4f79fa55ab14605d71.record.md b/docs/branch-review-records/61a53ca459551a7a2ca43dee60a4d50a4f04840076dfbb4f79fa55ab14605d71.record.md new file mode 100644 index 0000000000..5f4b04d53c --- /dev/null +++ b/docs/branch-review-records/61a53ca459551a7a2ca43dee60a4d50a4f04840076dfbb4f79fa55ab14605d71.record.md @@ -0,0 +1 @@ +| 2026-08-15 | claude/capture-ongoing-drop-question | 367ef8e1414a3ebf81102884fa48298f16068093 | docs/outstanding-issues-inbox — capture the unreconciled drift count | Queued one P1 add request: check:drift reported missing_live 21 (2026-08-09) then 20 (2026-08-14) despite two indexes being restored between, so the expected figure was 19; the gap is consistent with an ongoing drop mechanism. Recorded as inference not fact. Carries a stop rule against beginning the restoration window until resolved. Filed as add rather than a #316 update to avoid colliding with the #316 update already queued in PR #1970. | verify:pr-local (11 completed, 0 failed) | From c9d0a169c9aa519484ca48c80baa2a74128e7f97 Mon Sep 17 00:00:00 2001 From: BigSimmo <87357024+BigSimmo@users.noreply.github.com> Date: Sat, 15 Aug 2026 15:02:37 +0800 Subject: [PATCH 3/4] docs: record drift-inference base sync --- ...19407355aee8f60e939e4cc4398091af68728179d8b5b63e2e0.record.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 docs/branch-review-records/f8f65adef944919407355aee8f60e939e4cc4398091af68728179d8b5b63e2e0.record.md diff --git a/docs/branch-review-records/f8f65adef944919407355aee8f60e939e4cc4398091af68728179d8b5b63e2e0.record.md b/docs/branch-review-records/f8f65adef944919407355aee8f60e939e4cc4398091af68728179d8b5b63e2e0.record.md new file mode 100644 index 0000000000..fe9151ddb2 --- /dev/null +++ b/docs/branch-review-records/f8f65adef944919407355aee8f60e939e4cc4398091af68728179d8b5b63e2e0.record.md @@ -0,0 +1 @@ +| 2026-08-15 | claude/capture-ongoing-drop-question | 8aead5c4fa3ed588f63860b3dc96f54ba415da44 | required base sync through main 17402395 | Approved — required main update merged; prior drift-inference review remains applicable with no PR-path conflict | git diff --check; ci-change-scope self-test; ledger/inbox/outstanding/discipline guards passed | From a258ca991176f84976c6f4ca1d710069f0f6adf1 Mon Sep 17 00:00:00 2001 From: BigSimmo <87357024+BigSimmo@users.noreply.github.com> Date: Sat, 15 Aug 2026 15:16:07 +0800 Subject: [PATCH 4/4] docs(ledger): record P1 withdrawal review --- ...40377fcf801664fdbe23fe39d02317237fbe8fe7ab43f8a459d.record.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 docs/branch-review-records/5fb194b68baa840377fcf801664fdbe23fe39d02317237fbe8fe7ab43f8a459d.record.md diff --git a/docs/branch-review-records/5fb194b68baa840377fcf801664fdbe23fe39d02317237fbe8fe7ab43f8a459d.record.md b/docs/branch-review-records/5fb194b68baa840377fcf801664fdbe23fe39d02317237fbe8fe7ab43f8a459d.record.md new file mode 100644 index 0000000000..5912e5cd7a --- /dev/null +++ b/docs/branch-review-records/5fb194b68baa840377fcf801664fdbe23fe39d02317237fbe8fe7ab43f8a459d.record.md @@ -0,0 +1 @@ +| 2026-08-15 | claude/capture-ongoing-drop-question | d40e89ebb7a77f589683a6a6244fdcb84ad4c4af | Withdraw unsupported index-loss P1 after exact Action-log set comparison; merge main | fixed | git diff --check; ledger and issue guards |