fix: harden daemon and large-index recovery paths (#1562)

* fix: harden indexing recovery and daemon liveness

* test: cover daemon and recovery review gaps

* test: pin that a failure marker never blocks a later successful parse (#1557 retry-discard guard)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: danusha2345 <ewidusoc498@gmail.com>
Co-authored-by: Colby McHenry <me@colbymchenry.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Daniil
2026-08-20 12:53:49 -05:00
committed by GitHub
co-authored by Claude Fable 5 danusha2345 Colby McHenry
parent d8f2eeaddf
commit 81e1f4a92f
20 changed files with 680 additions and 83 deletions
+2 -2
View File
@@ -1209,7 +1209,7 @@ export async function cFnPointerDispatchEdges(
// ---- receiver-type resolution within a function's source ----
// `(?:struct )?TYPE [*]recv` declared in the params or body → TYPE (if a known
// fn-pointer-bearing struct).
const recvReCache = new Map<string, RegExp>();
const recvReCache = new LRUCache<string, RegExp>(4096);
const recvTypeIn = (fnSrc: string, recv: string): string | null => {
let re = recvReCache.get(recv);
if (!re) {
@@ -1228,7 +1228,7 @@ export async function cFnPointerDispatchEdges(
// structs (the base of a chained receiver needn't carry a fn pointer itself).
// Falls back to a file-scope table variable (`cmdnames` in `cmdnames[i].fn()`).
const escapeRe = (x: string): string => x.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
const varReCache = new Map<string, RegExp>();
const varReCache = new LRUCache<string, RegExp>(4096);
const varTypeIn = (fnSrc: string, v: string): string | null => {
let re = varReCache.get(v);
if (!re) {