CODE-079: indexSubs drops the caller's opts — a walk-only run scans every submodule

Now
OPEN
Sev
LOW
Rep
///bee
Ask
gritzko
Rev
///bee#8cb69a0
See
BEE-006
See
BEE-007

Input

Context

index/index.js:1041:Wt calls index(sub.root, { home, track, _seen }), dropping opts.links, opts.kv, opts.subs and opts.fork, so a caller asking for the commit half alone still gets the full LINK/SYM/TRI scan plus a kv sweep in every submodule, and a --fork n never reaches them. Found in the 2026-09-18 index review.

Goals

Forward the opts object with _seen overridden.

WIP

Design decisions

  1. The whole opts object goes down, _seen overridden: a two-field copy is what dropped links, kv, subs and fork, and any knob added later would be dropped the same way.
  2. tip is the ONE field left behind — it names a commit of the parent, and no history of the sub's holds it.

TODOs

Outcome