be post output noise — drop the be: post … echo + name the bump put
be post on a parent with an advanced submodule emits noise: dispatcher echo lines be: post . / be: post abc (pure progress chatter), and an anonymous put put: + staged 1 put row(s) block. The mid-post put itself is FINE — it stages the bumped sub gitlink so the parent commit records the new tip — but it names nothing, so the user can't tell it staged abc/. Drop the be: echo; make the put SAY what it put. See POST-018, BE-005, Submodules.
Observed be post 'JS: tcp/udp network bindings' from ~/beagle with an advanced abc submodule; a put: block appears in the middle of the post output.
post abc/?00e5d050#… (mod abc/UDP.h), THEN `put
put: + staged 1 put row(s), THEN parent post ?803b3fae#… whose rows already include mod abc` (the same gitlink bump).
put <sub>#<40-hex>, sniff/POST.c:234
/ 485) staging the new abc tip into the parent before the parent commit.
put_feed_summary_tail, sniff/PUT.c:652),
suppressed only under SNIFF.quiet; the parent-scope bump runs non-quiet.
The internal post-driven gitlink-bump staging must not print a user-facing put: banner inside a post stream.
mod <sub> in the parent post rows (already there).put put: table + staged N put row(s) for the
internal gitlink-bump path; leave explicit be put UX unchanged.
be post with an advanced sub asserts NO put: banner between the
sub-post and the parent-post (table-driven, test/post/ suite).
banner is suppressed.
SNIFF.quiet guard at PUT.c:657 is the likely lever, not yet trace-confirmed.
(pending — likely run the internal bump put under the quiet/relay guard, or fold its row into the parent post table rather than open a separate put: banner.)
be post with an advanced sub (strace -f / ABC_TRACE) to confirm theput call site + why it prints non-quiet.
test/post/ (advanced-sub parent post, assert no put banner).put: banner off for the internal gitlink-bump path; re-run ctest.(none yet)
(pending)