URI-015 MED: git scp-form remotes violate the URI grammar — rewrite to ssh:// at remote intake

The github remote shape git@github.com:gritzko/jab.git (git's scp form) is NOT a URI — the native URI class refuses it (uri.parse: malformed, verified on jab), and per URI-013 the URI class is the ONLY parser/composer, so no code may hand-lex it. Yet it is the wild's dominant remote spelling: this journal's own .gitmodules carries git@github.com:gritzko/beagle-ext.git. Every be/ remote intake lexes via new URI() (wire.classify wire.js:33, get parseRemote get.js:69, head.js:68), so a scp remote throws or degrades to prose. Fix: a fromGit(s) heuristic in shared/uri.js — DETECT the git scp grammar (colon before any slash, user@ head, no scheme) with plain index checks on the non-URI string, then COMPOSE strictly via URI.make("ssh", "//user@host", "/path") and relex-guard the result; non-matches and make-rejects fall through verbatim. Applied at remote intake only, never inside the total uri.parse arg classifier (prose like me@10:30 must stay prose). Scope: be/ JS (beagle-ext); the C WIRECLI.c wcli_spawn shares the gap — own linked ticket. Method Issues.

Input

Context

Goals

Constraints

WIP

Design decisions

TODOs

Blockers and bummers

Outcome