Two jab-runtime (src/jab) binding gaps surfaced by the 2026-07-07 be/ review (BE/REVIEW), where be/ JS relies on a contract buf.cpp does not honor:
buf.cpp:48 — Buf.feedStr SILENTLY TRUNCATES when IDLE is full, violating API.md's NOROOM contract (callers assume all-or-nothing + a NOROOM signal). Silent short writes corrupt output with no error.buf.cpp:124 — API.md documents io.book / b.close() / b.trim() that buf.cpp does NOT implement — there is no deterministic unmap primitive, which is exactly what the mmap-leak class BE-017 needs to release mappings in the resident loop.Method Issues.
io.book/close to release a mapping deterministically, but the primitives are absent.Buf.feedStr returns NOROOM (or throws) on insufficient IDLE, never a silent partial write — matching API.md.io.book/b.close()/b.trim() per API.md (deterministic unmap) OR correct API.md to what the runtime actually provides; BE-017 depends on the ruling.