Host-less be: (St.1's local keeper) recurses into submodules but fetches only the sub's refs+pack, NOT its objects — so be get be:<parent-with-sub> aborts rc 157 sub checkout: object not found … KEEPNONE, while file:<parent> clones clean. A second gap: a co-resident-shard clone-from-subdir (be:<git2> into an existing-store subdir) silently lands no shard where file: did. Both are pre-existing on trunk (2ea762c2), URI-007-class. They block URI-006 St.2: removing the file: clone path forces ~20 sub/clone tests onto be:-local, which can't yet serve sub objects. Decision (user 2026-06-22): be: MUST fetch submodule objects. Method: Issues.
file:-clone removed, 20 tests must use be:and go red — get/21,31,33,37,44,45,47,50; head/19,25; post/23,38,41,43,48; blame/01; commit/03; diff/08,09,10. Trunk-binary repro, not a St.2 regression.
be get be:<parent-with-submodule> → rc 157, `sub checkout: object not found
… project=<sub> KEEPNONE; the sub fetch pulls refs+pack but not objects. file:<parent>` succeeds rc 0 — that is the parity baseline to match.
be:<git2> cloned into an existing-store subdir (get/21)
lands no shard; file: did. Distinct arm from the sub-object gap.
be://host (ssh) sub recursion fetches by PIN sha and works (spot-keeper);the be:-local recursion arm is what URI-007 did not cover.
be get be:<parent> recurses submodules and fetches their objects by pin (sha),
at parity with file:<parent> and be://host (ssh) recursion.
be:-local lands the shard like file:.be://host (ssh) sub recursion or file: worktree attach.
BE.cli.c be_be_local_route, KEEP.exe.c hostless_local, WIRECLI.c wcli_spawn local-exec — contrast the working ssh by-pin sub fetch.
POST-side gap (SUBS-020 official-url sub-push) — its own decision.
.git→official
sub-push) is the last St.2 blocker; user leans manual/--force (own ticket TBD).
fa31e6f6 — symmetric scheme probe: sniff/SUBS.c subs_loc_cb now path-
probes be:/keeper: like file: (no bogus want-by-hash to a git peer); and beagle/BE.cli.c hoists the be:→authority rewrite before be_sub_shard_setup so a host-less be: clone mints the co-resident shard. Repro get/63 + get/64; ctest 388/389 (be-post-relpath ssh aside).