tok.parse, tok.link() splits a refquickjab carries libdog as the dog/ submodule and binds its lexers in tok.c (_tok_parse_into, tok.c:38:_I). After DOG-050 a bump brings the BEE-073 anchors into every F token. JS consumers peel anchors by lastIndexOf(":") today (bee door.js:497), which a body with a colon breaks; bind the dog splitter so nobody peels by hand.
dog/tok/LINK.rl is included by seven lexers; their generated twins are built into quickjab as they come from libdog.tok.parse hands JS packed tokens; a link is one F token over target plus anchor (DOG-043).build-unbundled/bin/quickjab; bee tests run against it.dog/ to the DOG-050 tip; the regenerated twins build in build-unbundled with no local patches.tok.parse fuses one F per new form in .mkd, in .c comments and in plain text; tag and span as for :58:mJ.tok.link(text) -> { target, kind, body, line, col, hashlet }, or null when the text is no ref.kind is one of line, perma, grep, spot, regex, sym, as the dog splitter names them.body comes back unescaped (\' to '), so a consumer never learns the delimiter rules.test/link.js: every form of BEE-073 round-trips; a colon, a slash, an escaped delimiter in a body; the non-fusing cases.tok.link is a thin binding over the dog splitter (DOG-050).test/*.js stay green and unedited; README.mkd gains the one API line.dog/ bump, a clean build-unbundledtok.link bindingdog/CMakeLists.txt:237 lists tok/LINK.rl.c already, so the splitter links as it comes.dog gitlink bump is NOT staged: the submodule is gritzko's commit, and this agent did no revision control at all.either/or:pick and 12:30 get a reading, and only off-grammar bytes give null.//localhost:8080 comes back with authority set and //localhost as the target: the dead head's action fired anyway.F (the text never fuses) and dog/ is read-only here, so it is reported, not patched.line and col are null when absent, so a literal :0 reads as kind line with no number; test/link.js pins that.TOK01test passes in this tree, contrary to DOG-050's bummer; nothing here touched it.JABCbass times out at its 10s hard cap both before and after the change: pre-existing, unrelated to this work.Working tree only, nothing committed. tok.c grew the _tok_link leaf over
LINKDecomposeRef plus the tok.link JS face that unescapes the body;
CMakeLists.txt registers JABClink, gated as the other shared-repo cases
are; test/link.js is new and untracked in the test/ submodule; README.mkd
gained the API note. 131 of 132 ctest cases pass, the one failure being the
pre-existing JABCbass timeout (130 of 131 before).