commit: view renders nothing in --plain (direct run)The JS commit: view resolves its target and FEEDS a correct metadata hunk to
ctx.sink, yet a direct jab commit commit:#<sha> emits ZERO bytes (rc=0, no
error) while native be commit prints the full commit <sha40> / tree / author
/ … metadata. Surfaced verifying JS-082 (the be-js-hexviews-full-sha repro).
Method: Issues.
jab commit "commit:#<full-or-short-sha>"
(and bare commit:) → 0 bytes, exit 0; native be commit "commit:#<sha>"
→ commit <sha40>\n + the raw ordered headers + body.views/commit/commit.js: the handler DOES resolve the slot and build
the hunk — instrumentation shows slot={sha,bannerHex} then
feeding bytes=221 toks=15 into ctx.sink.feed("", bytes, toks, "", 0n) —
but nothing reaches stdout. So resolution is fine; the RENDER is lost.views/blob/blob.js (same ctx.sink): it feeds a NON-empty uri
(blob <key>#L<n>) and renders. commit.js feeds an EMPTY uri (intentional,
to match the C keeper eliding the commit:?<sha> U-span) — the loop edge
appears to drop the empty-URI content hunk in --plain.jab commit commit:#<sha> (full/short/?<ref>/bare) emits the metadata hunk
(commit <sha40> + ordered headers + blank + body), matching native byte-wise.test/ (or fold into be-js-hexviews-full-sha, dropping the
JS-082 descope note) that asserts the commit <sha40> line is present.commit:).hunk.feed writes that TOK TLV at 1/4 its byte
length (JS-092), so HUNKu8sDrain/next() REJECTS the record (4 ∤ 15)
→ renderHunkLog walks 0 records → 0 bytes. (cat/blob dodge this: they feed
EMPTY toks in --plain.)commit.js feeds EMPTY toks in --plain (the
cat/blob gate) so the record drains; (b) view/bro.js renderHunkLog guards
the log.uri.length read — the empty-URI getter throws RangeError (the
SECOND, ticket-predicted edge bug, only reachable once (a) lets next() pass).be commit uses the keeper's own proj_emit_hunk renderer, no separator).jab commit commit:#<sha> (0 bytes) — test/commit/
render/run.sh asserts ZERO-bytes pre-fix; confirmed RED then GREEN._hunkSink feed → loop-edge render: commit.js plain → EMPTY toks +
bro.js renderHunkLog uri-getter guard. Plain parity kept.commit: assertion under be/test (no hexviews tree here):
be-js-commit-render — asserts the commit <sha40> line + body + native
byte-parity (modulo the separator). Full suite 59/59 green.b9315c6d ("COMMIT-003,004,005", be/). Touches
be/views/commit/commit.js, be/view/bro.js, new be/test/commit/render/
run.sh. Spawned JS-092 (the HUNK-toks binding bug).commit/render present; be/ wt clean.