Test report

Note

Auto-generated from a live ctest run by bench/gen_test_report.py (regenerated in CI before every Pages deploy). Not hand-maintained.

Summary

suites

passing

conformance vectors

wall time

verdict

287

287/287

99

144.31s

✅ all green

By subsystem

category

suites

passing

Codec (L2/L3)

15

✅ 15/15

Substrate (L0/L1)

17

✅ 17/17

Graph (L4)

24

✅ 24/24

Net (FWD plane)

26

✅ 26/26

Transport

9

✅ 9/9

Examples

70

✅ 70/70

other

126

✅ 126/126

Suites

Each row’s description is the test file’s own @brief, read from the source at generation time, and source links to that file. Neither is transcribed into this generator, so neither can drift from the test.

Codec (L2/L3)

suite

result

time

covers

source

byteorder

✅ pass

0.00s

Unit tests for the little-endian (de)serialization primitive (byteorder.hpp).

byteorder_test.cpp

can_frames

✅ pass

0.00s

can_transport_t PURE framing-layer test (#55).

can_frames_test.cpp

conformance

✅ pass

0.02s

Conformance harness for the seed vectors under tests/conformance/vectors/v1/.

conformance_runner.cpp

frame

✅ pass

0.00s

Frame-codec nesting + length-width tests.

frame_test.cpp

key_view

✅ pass

0.00s

Unit tests for tr::wire::key_view_t (key_view.hpp) — the canonical-key NAME navigation the L4 graph dispatch and ACL-inheritance walks funnel through.

key_view_test.cpp

length_prefix_framer

✅ pass

0.00s

length_prefix_framer_t unit test — drives the u32-length-prefix reassembly state machine directly (no QUIC connection), the whole point of extracting it from transport_quic / transport_webtransport (finding #4): prefix/body split across chunks, multiple frames per chunk, empty records, over the protocol cap => malformed, over local capacity => backpressure drain + resync (#932), and reset.

length_prefix_framer_test.cpp

rope_decode

✅ pass

0.00s

Differential test for the rope-aware grammar (ADR-0048 §1): wire::validate_rope over a scatter-gather rope MUST reach the exact same verdict as wire::decode over the equivalent flat bytes — for every adversarial split, including splits that fall mid-header, mid- trailer, and mid-payload.

rope_decode_test.cpp

rope_decode_fuzz

✅ pass

0.08s

Rope-source differential FUZZER for the wire grammar (ADR-0048 §consequences: “the differential fuzzers gain a rope-source mode — same bytes split at adversarial link boundaries MUST decode identically to the contiguous case, including mid-header splits”).

rope_decode_fuzz_test.cpp

tlv_arena

✅ pass

0.00s

Terminus arena decoder test (ADR-0041).

tlv_arena_test.cpp

tlv_children

✅ pass

0.00s

The in-place TLV walker (tr::wire::tlv_node_t / tlv_children_t, #1648): it reads a frame as decode does and allocates nothing doing it.

tlv_children_test.cpp

tlv_view

✅ pass

0.00s

Tests for the lazy rope-backed decode view (ADR-0053): tlv_view_t over a scatter-gather rope must (a) agree with the eager decoder node-for-node when fully walked, (b) be actually LAZY — siblings of a corrupt TLV deliver, the corrupt one fails only its own verify(), bytes are shared not copied — and (c) keep its links’ segments alive past the source rope (owning tier).

tlv_view_test.cpp

ws

✅ pass

0.00s

transport_ws PROTOCOL-layer test (#54).

ws_test.cpp

ws_frame_race

✅ pass

0.63s

RFC-0028 §6.9 / §9 item 6 — two publishes racing onto ONE WebSocket peer arrive as two whole frames, in order: no frame is torn by another frame’s bytes.

ws_frame_race_test.cpp

ws_handshake_bound

✅ pass

0.51s

#934 car B — the WS OPENING HANDSHAKE is bounded by a deployment-injected pre-auth budget: an over-budget request is refused BEFORE it is buffered, counted, and closed.

ws_handshake_bound_test.cpp

ws_rx_bound

✅ pass

1.25s

#872 — the WS DATA path is bounded by the injected seam: a peer may not name the receiver’s memory budget, and every refusal is COUNTED.

ws_rx_bound_test.cpp

Substrate (L0/L1)

suite

result

time

covers

source

mem_pool_source

✅ pass

0.00s

Unit tests for the bounded RECYCLING block source (tr::mem::pool_source_t, #597).

mem_pool_source_test.cpp

mem_source

✅ pass

0.00s

Unit tests for the nothrow failable-block seam (mem_source.hpp, #551).

mem_source_test.cpp

mem_source_backend

✅ pass

0.00s

The tr::mem::source_backend_t block contract (#873 phase 3).

mem_source_backend_test.cpp

mem_source_pmr

✅ pass

0.00s

Unit tests for the std::pmr adapter over the block seam (mem_source_pmr.hpp, #873).

mem_source_pmr_test.cpp

mem_sync_policy

✅ pass

0.01s

The mem::synchronized_pool_t SYNCHRONISATION-POLICY seam (#770, ADR-0060 §2): the critical section is a compile-time policy, and it is the thing that makes the pool safe at a receive seam.

mem_sync_policy_test.cpp

mem_sync_pool

✅ pass

0.03s

ADR-0060 §2 — the thread-safe pool value_backend_: mem::synchronized_pool_t<> must serialize concurrent alloc (writer threads) with cross-thread destroy (a segment reclaimed on the reader/subscriber thread that drops the last ref).

mem_sync_pool_test.cpp

path

✅ pass

0.00s

Path parsing / validation (docs/reference/03-addressing.md).

path_test.cpp

path_label

✅ pass

0.00s

The RFC-0027 path-label value, its §5.3 ELEMENT, and the mint table — codec, element grammar, the §12.5 vectors, mint, lookup, retire, SATURATE-AND-RETIRE, and §8.3.

path_label_test.cpp

path_label_codec

✅ pass

0.00s

RFC-0027 car 3 — the mixed-element codec (path_element.hpp) and the origin-side label cache on path_t (§6.1), with §9’s layering discipline asserted rather than assumed.

path_label_codec_test.cpp

path_label_forward

✅ pass

0.00s

The two links, spelled as the RFC-0014 mount runs a real node uses.

path_label_forward_test.cpp

path_label_origin

✅ pass

0.00s

The origin’s own first hop — the one hop no peer ever sees (§4.1).

path_label_origin_test.cpp

path_label_terminus

✅ pass

0.00s

The inbound link, spelled as the three-segment mount run a real node uses.

path_label_terminus_test.cpp

path_ref

✅ pass

0.00s

PATH_REF (0x14) codec test — the bound-path wire form of RFC-0024 §4.

path_ref_test.cpp

rope

✅ pass

0.00s

rope_t small-buffer storage + the value-consumption accessors (ADR-0053 §6).

rope_test.cpp

rope_cursor_assert

✅ pass

0.00s

rope_cursor_t bounds preconditions (#916) — the debug-assert parity death tests.

rope_cursor_assert_test.cpp

rope_cursor_release_guard

✅ pass

0.00s

The cursor window guarantee in a RELEASE build (#986) — the gate that cannot pass vacuously under NDEBUG.

rope_cursor_release_guard_test.cpp

substrate

✅ pass

0.01s

L0/L1 substrate tests: refcount lifetime (the canonical intrusive_ptr orderings), zero- copy subview/concat, rope serialization equivalence (the docs/reference/02 proof obligation), the view->TLV cast claim with the lifetime gap M1 left open now closed, and the bounded pool backend.

substrate_test.cpp

Graph (L4)

suite

result

time

covers

source

acl

✅ pass

0.00s

Per-endpoint :acl — storage (#81-A) + core-subset enforcement (#81, ADR-0018/ 0020/0026).

acl_test.cpp

acl_cache_race

✅ pass

0.09s

ACL-cache coherence under a concurrent subtree invalidation (#880, ADR-0078).

acl_cache_race_test.cpp

acl_clock_read

✅ pass

0.00s

#1665 — an attributed op reads the ACE-expiry clock only when an ACL is evaluated.

acl_clock_read_test.cpp

acl_full_removed

✅ pass

0.01s

—

—

app_fields

✅ pass

0.03s

RFC-0010 owner app fields: the field descriptor table, :settings.app.* read/write gating, the two-part :schema, container reads, the owner apply seam, and the announce-write convention (§C — a field write never wakes await and never propagates).

app_fields_test.cpp

children

✅ pass

0.00s

#82 — in-band vertex creation via a :children[] SPEC write (ADR-0017, ADR-0021; docs/reference/05 §0x0E).

children_test.cpp

delivery_drops

✅ pass

0.00s

Per-cause delivery-drop counters (graph_t::delivery_drops).

delivery_drops_test.cpp

edge_eviction

✅ pass

0.00s

RFC-0009 §D extended to peer departure — subscriber-edge eviction on link teardown, and edge-slot reuse.

edge_eviction_test.cpp

effective_acl

✅ pass

0.15s

effective_acl_t unit test (ADR-0050, the previously-untested half) — the pure effective- ACL merge semantics driven directly with synthetic ACE lists (no graph, no locks, no wall clock): own-before-ancestors ordering, nearest-first ancestor order, INHERIT gating at merge time, any-present-ACE-closes (even expired), open-by-default over an empty merge, and DENY first-match-per-bit ordering under the full policy.

effective_acl_test.cpp

folded_children

✅ pass

0.00s

L4 fold, Slice 0 — the folded :children projection is byte-identical to the materialized serialize, and is a genuine scatter-gather rope a cursor walks.

folded_children_test.cpp

graph

✅ pass

0.19s

L4 graph-runtime tests.

graph_test.cpp

graph_config_race

✅ pass

19.14s

#1049 — graph_t’s five configuration seams under a setter storm: no reader is ever handed a destroyed target, a torn pair, or a half-mutated container.

graph_config_race_test.cpp

graph_oom_softfail

✅ pass

0.00s

#477 — the store/delivery path’s nothrow soft-fail discipline under OOM.

graph_oom_softfail_test.cpp

graph_pmr

✅ pass

0.00s

#361 §5 / ADR-0039 §1 — the per-write LKV allocation seam on graph_t, re-aimed at the ONE injected tr::mem::block_source_t #873 phase 1 collapsed it onto.

graph_pmr_test.cpp

graph_seam_refusal

✅ pass

0.37s

#1778 — every growth site of the graph core, driven to exhaustion of its table source.

graph_seam_refusal_test.cpp

graph_value_backend

✅ pass

0.00s

ADR-0060 — the write-path value byte-buffer seam on graph_t: the copy-store flatten of a branch/field write draws its owned segment from the injected value_backend_ (a mem_backend_t), not the default heap.

graph_value_backend_test.cpp

identity

✅ pass

0.00s

#406 / RFC-0011 — the node identity facet: read <vertex>:identity.

identity_test.cpp

registry_teardown

✅ pass

0.00s

Registry teardown — child_registry_t::erase / remove_child / remove_connection (#494).

registry_teardown_test.cpp

retire

✅ pass

6.45s

graph_t::retire() — RFC-0009 §B/§C/§E.6 vertex retirement (#407).

retire_test.cpp

security_acl

✅ pass

0.00s

security_acl unit test (ADR-0050) — drives the PURE ACL policy seam directly, no graph, no locks, no wall clock: both adapters (allow_only / full), the ACE edge cases (expiry, EVERYONE@, per-bit matching, INHERIT-flag filtering, first-match-per-bit DENY ordering), and the typed parse/build round-trip that replaces the per-test byte builders.

security_acl_test.cpp

subtree

✅ pass

0.00s

RFC-0005 — subtree subscriptions (vertical bubbling), branch-write decomposition, and write-creates.

subtree_test.cpp

subtree_snapshot

✅ pass

0.00s

RFC-0005 §C follow-on — the COMPOSED BRANCH READ: a plain READ of a vertex with ≥ 1 registered child serves the folded POINT tree of its registered subtree’s landed LKVs.

subtree_read_test.cpp

vertex

✅ pass

0.04s

vertex_t verb-interface unit tests — a BARE vertex, no graph_t (the point of the verb seam: the vertex’s storage/readiness/edge/ACL state is testable in isolation).

vertex_test.cpp

vertex_size

✅ pass

0.00s

The vertex RAM-diet regression gate (#361 §8): compile-time ceilings on sizeof(vertex_t) and the hot/cold split invariants, plus runtime probes that prove the cold extension block is NOT allocated for the common default leaf and IS allocated exactly when the identity needs it.

vertex_size_test.cpp

Net (FWD plane)

suite

result

time

covers

source

compact_cache

✅ pass

0.00s

ADR-0062 increment 2 — a warm binding is fast, and it invalidates correctly.

compact_cache_test.cpp

fwd_await_defer

✅ pass

0.10s

ADR-0084: a remote AWAIT is answered later, from a one-shot receiver-side waiter, and never holds the receive context of the link it arrived on.

fwd_await_defer_test.cpp

fwd_bind_refusal_unwind

✅ pass

0.00s

#833 — a REFUSED forwarding bind must strand neither the out-label it took nor the egress route retained with it, through the production on_advertise wiring.

fwd_bind_refusal_unwind_test.cpp

fwd_compact

✅ pass

0.49s

RFC-0004 / ADR-0035 slice 4 — the route-handle: ws delivery-compaction, proven over LIVE transport_ws.

fwd_compact_test.cpp

fwd_compact_acl

✅ pass

0.00s

#974 — a label-compacted (COMPACT) delivery is ACL-gated under the INBOUND LINK’s name, exactly like the full-route FWD{WRITE} it is the compaction of.

fwd_compact_acl_test.cpp

fwd_fanout

✅ pass

0.00s

RFC-0004 / ADR-0035 slice 4 (#136) — the PRODUCER remote fan-out.

fwd_fanout_test.cpp

fwd_flatten_backend

✅ pass

0.00s

#730 — every rope flatten fwd_router_t performs draws from its INJECTED mem_backend_t, and an exhausted one is answered by value, never by storing an empty value and reporting success.

fwd_flatten_backend_test.cpp

fwd_frame_view

✅ pass

0.00s

fwd_frame_view unit test — drives the FWD offset-dispatch cluster directly (no router, no transports), the point of extracting it from fwd_router.cpp (the length_prefix_framer precedent): first-dst-seg / op / control peeks over BOTH cursors (contiguous span + adversarially split rope), the shrunk-dst / grown-src head rebuild proved BYTE-EXACT against a reference re-encode, stack_writer clamp-to-empty overflow, and malformed rejects.

fwd_frame_view_test.cpp

fwd_ingress_walk_source

✅ pass

0.00s

#1648 review — the router’s two in-place ingress reads (the on_inbound observer and the bus-NAME-hop rejection) spill a deep walk into the RECEIVING LINK’s source, never the process heap.

fwd_ingress_walk_source_test.cpp

fwd_malformed_control

✅ pass

0.00s

The malformed-control-frame rejection surface of fwd_router_t — the guards a peer’s bytes reach first, and which nothing asserted.

fwd_malformed_control_test.cpp

fwd_multihop

✅ pass

0.30s

RFC-0004 / ADR-0035 slice 3 — multi-hop FWD forwarding + zero-copy src accumulation, proven over LIVE transport_ws links.

fwd_multihop_test.cpp

fwd_originate

✅ pass

0.00s

#1645 — a node originates a forwarded READ, WRITE or append through fwd_router_t::originate, with no wire bytes built by the caller and no fake inbound link.

fwd_originate_test.cpp

fwd_readvertise_reuse

✅ pass

0.00s

#913 — a re-advertise cycle must burn no downstream label and leak no egress entry.

fwd_readvertise_reuse_test.cpp

fwd_reconnect_selfheal

✅ pass

0.00s

RFC-0004 §E.1 — a MID-CHAIN reconnect self-heals: clear_link sweeps the cross-link ingress bindings whose downstream half crossed the cleared link (#716).

fwd_reconnect_selfheal_test.cpp

fwd_rope_forward

✅ pass

0.00s

ADR-0053 ④b — the FWD forward hop over a MULTI-LINK rope, WITHOUT flattening.

fwd_rope_forward_test.cpp

fwd_sink_race

✅ pass

0.07s

#914 — a router sink’s {fn, ctx} pair is published as a UNIT, so no receive thread can hand a newly installed fn the previous sink’s ctx.

fwd_sink_race_test.cpp

fwd_terminus_refusal_reply

✅ pass

0.00s

#1612 — a request the terminus cannot serve for want of MEMORY is answered with an addressed STATUS{BACKPRESSURE}, built on the stack from the request’s own bytes, through no allocator at all.

fwd_terminus_refusal_reply_test.cpp

fwd_terminus_reject

✅ pass

0.00s

The terminus resolver’s malformed-FWD rejection surface — where every remote operation lands, and which nothing asserted.

fwd_terminus_reject_test.cpp

fwd_terminus_reply_link

✅ pass

0.00s

#1709 — a terminus reply leaves through the link the request arrived on, with no by-name lookup, whenever that link is point-to-point.

fwd_terminus_reply_link_test.cpp

fwd_two_mount

✅ pass

0.00s

The TWO-MOUNT route (#419): a dst that crosses two net/<module>/<name> mounts.

fwd_two_mount_test.cpp

mount_routing

✅ pass

0.00s

The per-module mount-routing primitives (ADR-0061 / RFC-0014 S2a).

mount_routing_test.cpp

net_control_plane_race

✅ pass

0.09s

ADR-0063 §3 — control-plane writers are serialized, and the forward reader is not.

net_control_plane_race_test.cpp

op_resolve

✅ pass

0.01s

RFC-0004 / ADR-0035 — op_resolver_t host tests, over the ADR-0041 terminus arena.

op_resolve_test.cpp

op_resolve_view

✅ pass

0.00s

ADR-0053 §7 (3c-ii) — the DIFFERENTIAL ORACLE for the two terminus-resolver instantiations.

op_resolve_view_test.cpp

route_handle

✅ pass

0.06s

route_handle_t unit test (Brick 4, ADR-0038 §3 / ADR-0039): the label state is per- connection — pmr-backed tables with a per-link mutex.

route_handle_test.cpp

transport_vertex

✅ pass

1.87s

#83 Stage-1 — transport/connection as a / vertex (ADR-0027), the SHELL over the live path (ADR-0037 Stage-1).

transport_vertex_test.cpp

Transport

suite

result

time

covers

source

can_tx_pool

✅ pass

0.02s

#383 — can_tx_pool_t ownership/backpressure host suite.

can_tx_pool_test.cpp

tcp

✅ pass

4.40s

M6 TCP transport tests: length-prefix framing over a real localhost TCP stream.

tcp_test.cpp

transport_can

✅ pass

1.74s

#55 (increment 2) — can_transport_t SocketCAN-binding tests over an in-memory fake link, so they pass in plain Docker with NO kernel CAN (vcan).

transport_can_test.cpp

transport_can_peers

✅ pass

0.34s

ADR-0044 — stateless transport-peer enumeration + transparent per-peer FWD over the CAN bus binding, proven over the in-memory fake link (no kernel CAN):

transport_can_peers_test.cpp

transport_can_vcan

✅ pass

0.00s

#55 (increment 2) — REAL-bus smoke test for can_transport_t over Linux SocketCAN.

transport_can_vcan_test.cpp

transport_conformance

✅ pass

0.56s

Transport seam-conformance suite.

transport_conformance_test.cpp

udp

✅ pass

1.47s

M5 UDP transport tests: raw frame delivery over a real localhost UDP socket, and an end- to-end two-node FWD delivery through graph_t + fwd_router_t over UDP (the explicit-source- routed net plane, ADR-0040 — no bridge_t/ROUTER).

udp_test.cpp

write_all_eintr

✅ pass

0.10s

#903 — the full-write helpers must RESUME an interrupted write, not truncate.

write_all_eintr_test.cpp

ws_transport

✅ pass

2.78s

#54 — transport_ws SERVER socket-layer tests.

ws_transport_test.cpp

Examples

suite

result

time

covers

source

example_acl_everyone_reserved

✅ pass

0.00s

—

—

example_acl_expiry

✅ pass

0.00s

—

—

example_acl_inherit

✅ pass

0.00s

—

—

example_acl_open_by_default

✅ pass

0.00s

—

—

example_acl_parse_strict

✅ pass

0.00s

—

—

example_acl_policy_profiles

✅ pass

0.00s

—

—

example_acl_right_bits

✅ pass

0.00s

—

—

example_acl_subject_resolver

✅ pass

0.00s

—

—

example_graph_await

✅ pass

0.07s

—

—

example_graph_children

✅ pass

0.00s

—

—

example_graph_handler_vertex

✅ pass

0.00s

—

—

example_graph_read_write

✅ pass

0.00s

—

—

example_graph_register

✅ pass

0.00s

—

—

example_graph_retire

✅ pass

0.00s

—

—

example_graph_stream

✅ pass

0.00s

—

—

example_graph_write_creates

✅ pass

0.00s

—

—

example_in_process_pubsub

✅ pass

0.05s

In-process publish/subscribe over the L4 graph — the M3 P0 node, end to end.

in_process_pubsub.cpp

example_mem_block_array

✅ pass

0.00s

—

—

example_mem_block_source

✅ pass

0.00s

—

—

example_mem_bump_source

✅ pass

0.00s

—

—

example_mem_bump_upstream

✅ pass

0.00s

—

—

example_mem_pool_source

✅ pass

0.00s

—

—

example_mem_size_classes

✅ pass

0.00s

—

—

example_mem_source_resource

✅ pass

0.00s

—

—

example_mem_source_vs_backend

✅ pass

0.00s

—

—

example_net_can_bus_peers

✅ pass

0.00s

—

—

example_net_dial_and_listen

✅ pass

0.20s

—

—

example_net_kind_catalog

✅ pass

0.00s

—

—

example_net_multi_peer_listener

✅ pass

0.40s

—

—

example_net_tcp_stream_framing

✅ pass

0.00s

—

—

example_net_transport_seam

✅ pass

0.00s

—

—

example_net_udp_datagram

✅ pass

0.21s

—

—

example_net_ws_upgrade

✅ pass

0.20s

—

—

example_pubsub_fanout

✅ pass

0.01s

Pub/sub fan-out — one publisher, a growing set of subscribers, and the per-delivery dispatch cost as fan-out scales.

pubsub_fanout.cpp

example_rope_scatter

✅ pass

0.00s

L1 scatter-gather — compose a multi-link rope_t with zero byte copies, then measure the cost of scatter-gather egress vs. the one flatten copy.

rope_scatter.cpp

example_route_child_table

✅ pass

0.00s

—

—

example_route_dst_is_source_route

✅ pass

0.00s

—

—

example_route_label_compact

✅ pass

0.00s

—

—

example_route_label_stale

✅ pass

0.00s

—

—

example_route_multi_hop

✅ pass

0.00s

—

—

example_route_qualified_mount

✅ pass

0.00s

—

—

example_route_reply_home

✅ pass

0.00s

—

—

example_route_terminus_or_forward

✅ pass

0.00s

—

—

example_sub_callback

✅ pass

0.00s

—

—

example_sub_durability_latch

✅ pass

0.00s

—

—

example_sub_retire

✅ pass

0.00s

—

—

example_sub_subtree

✅ pass

0.00s

—

—

example_sub_terminal_delivery

✅ pass

0.00s

—

—

example_sub_unsubscribe

✅ pass

0.00s

—

—

example_sub_unsubscribe_from_dispatch

✅ pass

0.00s

—

—

example_tree_of_ropes

✅ pass

0.00s

The three composition axes, made visible — why a libtracer node is a tree of ropes, not a rope of ropes.

tree_of_ropes.cpp

example_two_node_fwd

✅ pass

0.01s

Two nodes over a wire — an FWD write routed between two graphs, and the end-to-end delivery latency across the “wire”.

two_node_fwd.cpp

example_view_borrow

✅ pass

0.00s

—

—

example_view_device_rope

✅ pass

0.00s

—

—

example_view_pool_backend

✅ pass

0.00s

—

—

example_view_rope_compose

✅ pass

0.00s

—

—

example_view_rope_subrope

✅ pass

0.00s

—

—

example_view_segment_refcount

✅ pass

0.00s

—

—

example_view_subview

✅ pass

0.00s

—

—

example_view_sync_pool

✅ pass

0.00s

—

—

example_wire_arena_decode

✅ pass

0.00s

—

—

example_wire_codec

✅ pass

0.02s

Wire codec deep-dive — build a structured frame, inspect its bytes, and measure encode / decode / round-trip throughput.

wire_codec.cpp

example_wire_decode_refusals

✅ pass

0.00s

—

—

example_wire_lazy_view

✅ pass

0.00s

—

—

example_wire_packed_path

✅ pass

0.00s

—

—

example_wire_path_escape

✅ pass

0.00s

—

—

example_wire_roundtrip

✅ pass

0.00s

L2/L3 wire codec round-trip — build a TLV, encode to bytes, decode back.

wire_roundtrip.cpp

example_wire_structured_vs_opaque

✅ pass

0.00s

—

—

example_wire_tlv_header

✅ pass

0.00s

—

—

example_wire_trailer

✅ pass

0.00s

—

—

other

suite

result

time

covers

source

admission_link_kind

✅ pass

0.00s

The admission context’s LINK claim (#1650): write_ctx_t::link carries the transport-catalog (kind, role) of the link a write arrived on.

admission_link_kind_test.cpp

admission_seam

✅ pass

0.00s

The pre-store ADMISSION seam: handlers_t::on_admit on the retaining roles and handlers_t::on_app_field_admit on the app-field plane.

admission_seam_test.cpp

batch

✅ pass

0.00s

The BATCH record (0x80) — the fold, the derived sample clock, and what the reader declines (RFC-0025 §4.2.1 / §4.1.2, batch.hpp).

batch_test.cpp

batch_compose_alloc

✅ pass

0.00s

#1468 — compose_batch is ZERO-COPY: the bytes it allocates do not grow with the sample payload, at any sample size (RFC-0025 §4.1.3, Amendment 4, clause 4).

batch_compose_alloc_test.cpp

bound_forward

✅ pass

4.00s

RFC-0024 car 3 — the bound-path FORWARDER hop and the origin-side bind, end to end.

bound_forward_test.cpp

bound_path

✅ pass

0.00s

RFC-0024 — bound-path routing and minting, at the terminus.

bound_path_test.cpp

bus_can_guard

✅ pass

2.78s

—

—

bus_module

✅ pass

0.20s

The ADR-0044 BUS module as a build-time-closed seam (#375 deliverable 3) — what tr::graph::default_config_t::kBusLinks closes, and what it must NOT disturb.

bus_module_test.cpp

child_rx_churn

✅ pass

0.00s

Receiver-ctx churn (#884): a re-added NAME resolves to its CURRENT tenancy, and remove/re-add cycles do not grow the router’s published receiver chain.

child_rx_churn_test.cpp

collect

✅ pass

0.00s

graph_t::collect() / parked_seam_count() — the explicit end of retirement’s value-seam park (#576, the direction-3 ruling that supersedes ADR-0072).

collect_test.cpp

config_binding

✅ pass

0.00s

#1810 — a CI leg runs the configuration its name says: the bound LKV slot, reclamation policy and ACL policy are printed, and checked against the leg’s expectation.

config_binding_test.cpp

config_reader

✅ pass

0.00s

#927 / #985 — tr::wire::config_reader_t: the PAIR-CONSUMING SETTINGS walk every transport config parser AND both L4 readers (the creation SPEC, the SUBSCRIBER QoS SETTINGS) share, under that one name (#1724).

config_reader_test.cpp

conn_add_oom

✅ pass

0.00s

make_connection under a REFUSING allocator: a connection whose link cannot be wired into the router is ROLLED BACK, not published as a live-looking dead connection (#930).

conn_add_oom_test.cpp

core_containers

✅ pass

0.00s

Unit tests for the core container set (#1776, ADR-0083 Decision 2 and 9): the vector (block_array_t), the name/string store (string_t), the sorted map (sorted_map_t) and the non-owning function_ref_t.

core_containers_test.cpp

delivery_class_honour

✅ pass

0.00s

RFC-0025 §4.1 delivery classes, HONOURED — what a class actually selects once Amendments 2, 3 and 4 have moved the machinery (#1204 phase 3).

delivery_class_honour_test.cpp

delivery_mode_race

✅ pass

0.04s

delivery_mode against a concurrent assign: the sweep-set exclusion and the plain-byte data race (#895, RFC-0008 §B/§C).

delivery_mode_race_test.cpp

edge_cold_half_share

✅ pass

0.00s

#1442 / #1448 — NOBODY deep-copies a subscription’s cold half any more. A republish shares it (so an admission’s allocation count is flat in the edges already on the vertex) and so does the dispatch snapshot (so a WRITE’s allocation count is flat in the remote fan-out).

edge_cold_half_share_test.cpp

edge_publish

✅ pass

0.10s

The published edge array and its edge pin (#635): a snapshot sees the OLD edge set or the NEW one and never a torn mixture, an unsubscribe stops delivering at once, the pin is never held across a dispatch, and nothing is freed under a reader or leaked at teardown.

edge_publish_test.cpp

empty_src_unacked

✅ pass

0.00s

RFC-0004 Amendment 2 (#1502, ruling on #1491) — a zero-length src is “no reply requested”: the terminus applies the WRITE and stays SILENT.

empty_src_unacked_test.cpp

error_registry

✅ pass

0.00s

Unit tests for the RFC-0002 protocol error registry (error.hpp).

error_registry_test.cpp

esp_ws_client_dial

✅ pass

4.00s

—

—

esp_ws_client_dial_stats

✅ pass

4.00s

—

—

esp_ws_client_liveness

✅ pass

8.71s

—

—

esp_ws_client_recv

✅ pass

2.47s

—

—

esp_ws_client_teardown

✅ pass

9.10s

—

—

esp_ws_client_traffic_stats

✅ pass

4.00s

—

—

fault_injection_trait

✅ pass

0.00s

#1719 — the test-only fault-injection hooks are config_t::kFaultInjection, lean by default, and rmw_counter_t’s preset is reachable only through a test door.

fault_injection_trait_test.cpp

field_dispatch

✅ pass

0.00s

The field surface’s READ/WRITE dispatch parity guards (#869).

field_dispatch_test.cpp

folded_read_backend

✅ pass

0.00s

#831 — BOTH folded READs’ POINT headers draw from graph_t’s injected value_backend (ADR-0060), not the global heap — and exhaustion degrades by value (BACKPRESSURE), never a throw.

folded_read_backend_test.cpp

fused_publish

✅ pass

0.01s

The fused guarded publish (#1715): on the guarded write-sequence binding, a publish opens ONE guard section for the LKV swap and the sequence bump together.

fused_publish_test.cpp

grammar_bounds

✅ pass

0.00s

Unit tests for the grammar’s total-encoded-size bound (grammar.hpp, #921).

grammar_bounds_test.cpp

guard_alias

✅ pass

0.00s

The one-release alias window of #1703: every pre-move spelling of the guard vocabulary still names the layer-neutral type it moved to.

guard_alias_test.cpp

guard_rename

✅ pass

2.88s

—

—

guard_sizing

✅ pass

0.01s

The host guard sized by the target (#1716): stripe alignment follows kCacheLineBytes, the stripe count is a compile-time parameter, and the default host build keeps today’s 64 x 64-byte table.

guard_sizing_test.cpp

handler_write_alloc

✅ pass

0.00s

#1505 — a HANDLER write allocates ONE block fewer per write than a retaining write, at EVERY link count. The non-retaining role is never the more expensive one.

handler_write_alloc_test.cpp

httpd_ws_admission

✅ pass

0.00s

—

—

httpd_ws_adopted_host

✅ pass

0.00s

—

—

httpd_ws_alloc_softfail

✅ pass

0.00s

—

—

httpd_ws_auth

✅ pass

2.65s

—

—

httpd_ws_close_peer

✅ pass

0.00s

—

—

httpd_ws_counters

✅ pass

0.00s

—

—

httpd_ws_counters_traffic_stats

✅ pass

0.00s

—

—

httpd_ws_departure_cost

✅ pass

0.01s

—

—

httpd_ws_drain_budget

✅ pass

7.65s

—

—

httpd_ws_drain_budget_unhooked

✅ pass

1.02s

—

—

httpd_ws_eviction_lock

✅ pass

0.18s

—

—

httpd_ws_fanout_alloc

✅ pass

0.00s

—

—

httpd_ws_fanout_wait

✅ pass

0.42s

—

—

httpd_ws_fanout_width

✅ pass

0.00s

—

—

httpd_ws_in_call_reply

✅ pass

0.00s

—

—

httpd_ws_keepalive

✅ pass

0.00s

—

—

httpd_ws_rx_owned

✅ pass

0.00s

—

—

httpd_ws_send_stall

✅ pass

0.00s

—

—

httpd_ws_session_identity

✅ pass

0.00s

—

—

httpd_ws_teardown

✅ pass

2.12s

—

—

httpd_ws_tx_large_class

✅ pass

0.00s

—

—

httpd_ws_tx_pool

✅ pass

1.03s

—

—

inline_fanout

✅ pass

0.00s

kInlineFanout (#1708): a publish delivers to every subscriber below, at and above the inline snapshot width, and the overflow path is counted as it was.

inline_fanout_test.cpp

inline_fanout_narrow

✅ pass

0.00s

kInlineFanout (#1708): a publish delivers to every subscriber below, at and above the inline snapshot width, and the overflow path is counted as it was.

inline_fanout_test.cpp

inline_fn

✅ pass

0.00s

Unit tests for the heap-free stored callable (inline_fn.hpp, #1671).

inline_fn_test.cpp

inline_fn_reject_OVERSIZE

✅ pass

0.35s

—

—

inline_fn_reject_OWNING

✅ pass

0.35s

—

—

instrument_counters

✅ pass

0.00s

#1664 — graph_t’s two instrumentation counters are a compile-time choice, lean by default, and closing them out changes what is COUNTED and nothing that is DONE.

instrument_counters_test.cpp

lean_link_defaults

✅ pass

0.00s

#1670 — the two LINK MODULES are lean by default: kBusLinks and kSelfHealLinks are false unless a build opts in.

lean_link_defaults_test.cpp

link_liveness

✅ pass

0.41s

RFC-0014 §4 S5 (#492) — the link-liveness ENGINE drives link_state_t through its DIAL state machine: dormant creation, auto-wake dial on demand (connect_timeout-bounded), self-heal with backoff while a standing binding holds, fail-fast on RECONNECTING, and close-to-dormant on the last release.

link_liveness_test.cpp

link_token_carry

✅ pass

0.00s

#1266 / #1417 — the CARRIED link token, and the four things about it that have to be BUILT and SHOWN rather than asserted.

link_token_carry_test.cpp

lkv_slot

✅ pass

0.02s

ADR-0069, RFC 0028 §5.5 — the LKV slot policies, both of them, in whatever build this is.

lkv_slot_test.cpp

lkv_slot_inversion

✅ pass

0.00s

#1618 — no LKV slot policy may livelock a higher-priority reader against a lower-priority writer on one CPU.

lkv_slot_inversion_test.cpp

lkv_slot_removed

✅ pass

0.01s

—

—

mount_add_oom

✅ pass

0.00s

add_child under a REFUSING allocator: a registry that cannot grow registers nothing, says so, and leaves no ghost child behind (#523).

mount_add_oom_test.cpp

mount_shape_flip

✅ pass

0.03s

#882 — a shape-flipping rebind must never let a forward route a BUS link point-to-point.

mount_shape_flip_test.cpp

mount_width

✅ pass

0.00s

The mount WIDTH lift: a mount of any width registers, resolves, and resolves the SAME way on the FWD plane and the COMPACT plane (#523, #765).

mount_width_test.cpp

net_lock_order

✅ pass

0.20s

RFC-0014 S6 (#492) — the control-plane lock-order invariant: transport_vertex_t never holds ctl_m_ across a call that can re-enter it.

net_lock_order_test.cpp

no_atomic_removed

✅ pass

2.88s

—

—

nonretaining_contract

✅ pass

0.01s

RFC-0008 Amendment 2 (#1506) — the non-retaining-vertex contract, plus the HANDLER read seam (RFC-0028 D11).

nonretaining_contract_test.cpp

one_idiom

✅ pass

0.00s

RFC-0028 slice 7 — one callback idiom (D10), one read type (D11), and a HANDLER target that adopts the published value like a stored target.

one_idiom_test.cpp

orchestrate_depart

✅ pass

0.70s

#491 / ADR-0073 Consequences — third-party orchestration end-to-end: an orchestrator C wires a flow between two OTHER nodes (B producer → A consumer), then departs; delivery must continue after the departure.

orchestrate_depart_test.cpp

payload_right_table

✅ pass

0.00s

RFC-0014 Amendment 2 (§5.1) — a handler vertex declares a payload-type → required- ACL-right table, and the ONE write gate demands what it says (#492 S2c).

payload_right_table_test.cpp

peer_handle_seam

✅ pass

0.21s

#1294 — the peer-receiver seam carries an opaque per-peer HANDLE, not a name string.

peer_handle_seam_test.cpp

pending_mark

✅ pass

0.01s

#1712 — the per-vertex pending-mark hint: an eager write to an UNMARKED vertex pays no key render, no allocation and no graph-wide sweep lock, however many other vertices hold an assign mark (RFC-0008 §B, ADR-0057).

pending_mark_test.cpp

pin_instrument_removed

✅ pass

2.88s

—

—

placement_request_size

✅ pass

0.03s

The bytes each backend actually asks for, either side of every size-class boundary (#1768, #1775, #1777).

placement_request_size_test.cpp

plane_isolation

✅ pass

0.00s

#1460 phase (b) — RFC-0025 conformance vector 12 stream/receiver-ring-flood, PLANE-ISOLATION arm: a flood that exhausts the NET-plane store must leave the GRAPH plane still allocating, under the flood rather than after it.

plane_isolation_test.cpp

playout

✅ pass

0.00s

#1546 — the reference PLAYOUT helper (playout.hpp): what it derives, and what it refuses to do (RFC-0025 §4.7 / §4.3 / §4.2.1 Amendment 1).

playout_test.cpp

pool_only_dispatch

✅ pass

0.00s

The SINGLE-MEMBER (LIBTRACER_BACKEND_SET_POOL_ONLY) module-set destroy dispatch (#922, ADR-0047 §2): the folded fast path must still be a fast path, not a correctness dependency.

pool_only_dispatch_test.cpp

propagate_fold

✅ pass

0.00s

RFC-0025 §4.1.2 (Amendment 3, clause 5) — propagate’s FOLD emission mode.

propagate_fold_test.cpp

qos_policy

✅ pass

0.00s

RFC-0022 (as amended): delivery policy is per-subscription; settings_t dissolves.

qos_policy_test.cpp

read_back_backend

✅ pass

0.00s

#1583 — every #873 phase-3 READ-BACK ENCODER draws its owned segment from graph_t’s injected source, and a refused draw degrades BY VALUE.

read_back_backend_test.cpp

read_fork

✅ pass

0.06s

The leaf/branch fork of graph_t::read, and the state machine that now answers it without the map lock (#652).

read_fork_test.cpp

reclaim

✅ pass

0.00s

The ADR-0080 reclamation seam — WHEN a retired subscription’s {fn, ctx} pair becomes safe to free (#894), asserted against the policy this build bound.

reclaim_test.cpp

registry_rebind_race

✅ pass

0.00s

#684 — a rebind of a LIVE name must not touch the published mount encoding.

registry_rebind_race_test.cpp

retained_send

✅ pass

0.62s

RFC-0028 §6.9 / §8.2 (#1620): the retained send. A queued link keeps the value (one reference) and copies only the frame’s head.

retained_send_test.cpp

retained_subscription_seam

✅ pass

0.00s

The SUBSCRIPTION-RETAINED seam (#1610): the two allocations a remote SUBSCRIBE keeps for the life of the subscription can be taken from a backend of the host’s choosing.

retained_subscription_seam_test.cpp

retention

✅ pass

0.00s

RFC-0028 slice 6 (D4) — retention is ONE per-vertex, per-field policy: retention_t { NONE, LAST, N }.

retention_test.cpp

ring_pressure

✅ pass

0.00s

#1460 phases (a) and (c) — RFC-0025 conformance vector 12 stream/receiver-ring-flood, the RING-PRESSURE and RECOVERY arms: at exhaustion the receiver’s ring must decline as a POLICY OUTCOME under §4.4, account every loss, and recover exactly when the pressure does.

ring_pressure_test.cpp

router_drop_stats

✅ pass

0.00s

#1503 step 3 — fwd_router_t exposes its four injected seams, and its cold-path drops are COUNTED instead of silent.

router_drop_stats_test.cpp

router_flat_seam

✅ pass

0.00s

#1582 — the router’s peer-reachable view::over_bytes copies draw from its injected flat seam, never from the global heap; #1714 — the WARM COMPACT delivery makes no such copy at all, and draws ONE block from the graph’s own source.

router_flat_seam_test.cpp

rx_loan

✅ pass

0.00s

RFC-0028 §6.9 (#1626): the ingress loan. A receive block carries a value-header reserve, and the value stored from that block is placed IN the reserve.

rx_loan_test.cpp

send_stall

✅ pass

11.57s

#838 — a host stream send into a stalled peer is BOUNDED, counted, and the peer that keeps stalling is closed rather than blocked on forever.

send_stall_test.cpp

session_anchor

✅ pass

0.20s

#1223 step 2 — an ACCEPTED slot_server_t session holds an identity anchor: a vertex-map slot with a saturating generation, revived in place on slot reuse.

session_anchor_test.cpp

single_writer_removed

✅ pass

2.88s

—

—

slab_pool

✅ pass

0.03s

The size-classed slab pool and the host default root (#1777, ADR-0083 Decision 6).

slab_pool_test.cpp

spin_pool_guard

✅ pass

1.96s

—

—

spin_slot_guard

✅ pass

5.77s

—

—

stats_field

✅ pass

0.00s

#1503 step 5 / RFC-0010 Amendment 1 — the node-scoped seam census: read <vertex>:stats.<class>.<seam>.

stats_field_test.cpp

stats_net_seam

✅ pass

0.00s

RFC-0010 Amendment 2 (#1503 residual) — the NET-PLANE :stats seams: router, labels and link, sampled through the seam the router registers UP.

stats_net_seam_test.cpp

stream_admit_one_lock

✅ pass

0.00s

#1713 — a STREAM write takes its vertex stripe lock ONCE and makes NO heap allocation in the common case: one locked admit-and-take into a stack-first buffer.

stream_admit_one_lock_test.cpp

subscribe_toward

✅ pass

0.00s

#739 — fwd_router_t::subscribe_toward: bind a local producer toward a mount-path target through the shared strip-K descent (ADR-0061).

subscribe_toward_test.cpp

target_adopt

✅ pass

0.00s

Target adopt — a subscription’s target leg takes a reference on the published block instead of minting one of its own (RFC-0028 slice 4, D2; the fan-out half of #1620).

target_adopt_test.cpp

target_binding_ablation

✅ pass

0.00s

The #830 ablation: target_canonical_resolves() proves WHICH of dispatch_edge_target’s two resolve spellings a local target edge actually took.

target_binding_ablation_test.cpp

terminus_egress_backend

✅ pass

0.00s

#795 — the terminus FWD{REPLY}’s egress-construction segments (the reply HEAD and, on a mint, the trailing PATH_REF) draw from the router’s injected egress backend, not the global heap — and a refusal degrades by value, never an abort.

terminus_egress_backend_test.cpp

terminus_flatten_backend

✅ pass

0.00s

#766 — the TERMINUS resolver’s rope-tier flattens draw from the router’s injected mem_backend_t too, and a refusal is answered by value rather than by reading a short span.

terminus_flatten_backend_test.cpp

test_support

✅ pass

0.19s

The shared test runner, under test by itself (#874).

test_support_test.cpp

thread_id

✅ pass

0.00s

#1532 — tr::detail::thread_id_t: the ownership-stamp identity, and the one property the ESP-IDF boot regression turned on.

thread_id_test.cpp

transport_alloc_softfail

✅ pass

6.05s

#848 — the transport EGRESS framing path never aborts on a tight heap: a refusing allocator must produce a DROPPED FRAME AND A LIVE NODE, never abort().

transport_alloc_softfail_test.cpp

transport_include_guard

✅ pass

0.37s

—

—

try_grow_race

✅ pass

0.03s

The nothrow tr::detail::try_* growth helpers under a REFUSING allocator (#923, and #850 folded into it): an allocation failure must come back as false, never as a bad_alloc crossing their noexcept boundary into std::terminate.

try_grow_race_test.cpp

try_probe_window

✅ pass

0.00s

#981/#1570 — the try_* call sites that MIGRATED off the -fno-exceptions probe window really draw from the injected block_source_t, and answer its exhaustion by value.

try_probe_window_test.cpp

twai_backpressure

✅ pass

0.41s

—

—

twai_rx_ingress

✅ pass

0.71s

—

—

value

✅ pass

0.00s

value_t — the one block a publish costs (RFC-0028 slice 3, D1 + the first half of D9).

value_test.cpp

weakly_ordered_removed

✅ pass

2.89s

—

—

write_ctx

✅ pass

0.00s

#375 — a HANDLER’s on_write receives the writer’s SUBJECT (tr::graph::write_ctx_t).

write_ctx_test.cpp

write_fault_class

✅ pass

0.00s

#948 — a malformed send/sendmsg call is NOT a dead socket, and must not silently swallow the rest of the frame.

write_fault_class_test.cpp

write_seq

✅ pass

0.07s

The 32-bit write sequence (#1621, RFC-0028 D6): its width, the wrap, and await waking on every role that publishes.

write_seq_test.cpp

write_seq_guarded

✅ pass

0.07s

The 32-bit write sequence (#1621, RFC-0028 D6): its width, the wrap, and await waking on every role that publishes.

write_seq_test.cpp

Warning

No source could be resolved from the CMake build graph for: acl_full_removed, bus_can_guard, esp_ws_client_dial, esp_ws_client_dial_stats, esp_ws_client_liveness, esp_ws_client_recv, esp_ws_client_teardown, esp_ws_client_traffic_stats, example_acl_everyone_reserved, example_acl_expiry, example_acl_inherit, example_acl_open_by_default, example_acl_parse_strict, example_acl_policy_profiles, example_acl_right_bits, example_acl_subject_resolver, example_graph_await, example_graph_children, example_graph_handler_vertex, example_graph_read_write, example_graph_register, example_graph_retire, example_graph_stream, example_graph_write_creates, example_mem_block_array, example_mem_block_source, example_mem_bump_source, example_mem_bump_upstream, example_mem_pool_source, example_mem_size_classes, example_mem_source_resource, example_mem_source_vs_backend, example_net_can_bus_peers, example_net_dial_and_listen, example_net_kind_catalog, example_net_multi_peer_listener, example_net_tcp_stream_framing, example_net_transport_seam, example_net_udp_datagram, example_net_ws_upgrade, example_route_child_table, example_route_dst_is_source_route, example_route_label_compact, example_route_label_stale, example_route_multi_hop, example_route_qualified_mount, example_route_reply_home, example_route_terminus_or_forward, example_sub_callback, example_sub_durability_latch, example_sub_retire, example_sub_subtree, example_sub_terminal_delivery, example_sub_unsubscribe, example_sub_unsubscribe_from_dispatch, example_view_borrow, example_view_device_rope, example_view_pool_backend, example_view_rope_compose, example_view_rope_subrope, example_view_segment_refcount, example_view_subview, example_view_sync_pool, example_wire_arena_decode, example_wire_decode_refusals, example_wire_lazy_view, example_wire_packed_path, example_wire_path_escape, example_wire_structured_vs_opaque, example_wire_tlv_header, example_wire_trailer, guard_rename, httpd_ws_admission, httpd_ws_adopted_host, httpd_ws_alloc_softfail, httpd_ws_auth, httpd_ws_close_peer, httpd_ws_counters, httpd_ws_counters_traffic_stats, httpd_ws_departure_cost, httpd_ws_drain_budget, httpd_ws_drain_budget_unhooked, httpd_ws_eviction_lock, httpd_ws_fanout_alloc, httpd_ws_fanout_wait, httpd_ws_fanout_width, httpd_ws_in_call_reply, httpd_ws_keepalive, httpd_ws_rx_owned, httpd_ws_send_stall, httpd_ws_session_identity, httpd_ws_teardown, httpd_ws_tx_large_class, httpd_ws_tx_pool, inline_fn_reject_OVERSIZE, inline_fn_reject_OWNING, lkv_slot_removed, no_atomic_removed, pin_instrument_removed, single_writer_removed, spin_pool_guard, spin_slot_guard, transport_include_guard, twai_backpressure, twai_rx_ingress, weakly_ordered_removed. Those rows fall back to a hand-written description, which is exactly the drift this resolution exists to remove.

How every suite is verified

Beyond this Release pass, the same suites run under three more configurations in CI (core-ci.yml), and the net forward path carries an absolute allocation gate:

configuration

what it proves

Release (this page)

functional correctness, byte-exact wire behavior

ASan + UBSan

no leaks, no undefined behavior, no buffer overruns

TSan

the lock-free LKV + concurrent forward paths are race-free

GCC-13 + GCC-15

the toolchain floor + the ESP on-silicon compiler

16KB zero-heap gate

the FWD forward hop allocates 0 bytes (bench_forward_heap, ZEROHEAP_MAX=0; ADR-0038/0039)

Cross-implementation conformance (C++ / TypeScript / Rust agree on every vector) and the live latency/throughput numbers are on the Performance page.