SUBS-047 HIGH: same-source sub fetch broken (ssh:////), worktree sources unserved, nested fallback empty

jab get ssh://localhost/src/beagle died SUBFETCH cannot fetch sub dog/abc (abc) from ssh:////localhost/src/beagle?/abc — child unreachable. Three compounding defects in the be/ JS GET sub-mount path: (A) submount.sameSourceUri hand-concatenated "//" + u.authority where the URI binding's u.authority already carries the // (the known URI-013 latent bug), so every authority-bearing same-source URI was ssh:////host/… and never reached the peer; (B) a git source WITH a worktree (path not ending .git) serves each sub's own checkout at <path>/<subpath>, but no such same-source form existed — only the beagle ?/<proj> swap; (C) a NESTED sub (dog/abc) is declared in dog/.gitmodules as abc, yet mount read only the ROOT .gitmodules with the full subpath, so the official-url fallback (and the Title) came up empty and the whole mount threw. Spec: same source first, official .gitmodules url only as fallback (Submodules §1, Title retrieval preference).

Input

Context

Goals

Constraints

WIP

Design decisions

TODOs

-v repro unit test be/test/submount.js (table-driven: source×sub candidates, ://// guard, declaredUrl walk), registered as be-js-unit-submount. -v fix sameSourceUris + declaredUrl + mount call sites. -v fix the three update-path defects in verbs/get/get.js. -v end-to-end: fresh clone (3 ssh fetches, 0 curl), old→HEAD update byte-identical to git archive (parent + both sub pins), idempotent re-get (2 re-mount rows only). -v heal the live ~/src/journal/beagle wt (stranded tip from the crashed run): re-pin ?#e5071f32, then get → HEAD; byte-verified, 0 conflicts. -x be-js-bro-view golden flake (dir hunk in raw readdir order, view/bro.js buildDirHunk) — pre-existing, unrelated to this ticket; spin its own ticket if wanted.

Blockers and bummers

Outcome