# Public managed .NET corrected-endpoint physical collection

The [corrected endpoint consumer](RECORD_2026-10-17_dotnet_managed_listener.md)
completes all 32 tiny/report pairs on both accepted DAC rigs. NOS, MD and tick
pass full Stage 5 on both hosts. Mixed retains rate failure on both; no failed
row writes a compact cell or ratio. All endpoint exits, canonical body/owner,
actual SDK callback, prepared/completed tick, admin, clock, CPU and physical
wire checks pass, including both diagnostic mixed rows. Six independent cells
use the distinct `dotnet-pure+callback+complete-rtt` flavour.

| Rig | Flow | Full grade | Achieved cycles/s, min–max | Blockers |
|---|---|---|---:|---|
| hp | nos_er | S5 pass | 9808.914–9811.111 | none |
| hp | md | S5 pass | 9816.347–9817.997 | none |
| hp | md_nos_er | S5 diag | 9713.076–9811.494 | achieved_rate_below_98pct |
| hp | tick_to_trade | S5 pass | 9806.753–9809.592 | none |
| scan | nos_er | S5 pass | 9974.857–9975.264 | none |
| scan | md | S5 pass | 9817.133–9820.350 | none |
| scan | md_nos_er | S5 diag | 8357.541–8532.006 | achieved_rate_below_98pct |
| scan | tick_to_trade | S5 pass | 9975.493–9975.852 | none |

HP mixed retains original rates 9,811.494, 9,810.035 and 9,713.076/s; its third
run fails the 9,800/s floor. SCAN mixed retains 8,357.541, 8,366.137 and
8,532.006/s; all three fail that floor. Rate is the only timing blocker on
these complete rows. No unchanged timing retry is run and no complete managed
four-flow or .NET peer comparison is inferred. Native configurations and
historical raw-peer results retain their separate identities/grades.

## Source, runtime and actual production session

- Physical source pin: `200a2f98796df726b6441345308ed3744eb1dabd`.
- Complete stripped source: 909 files, inventory SHA-256
  `30d2e052940c96fe9932515f414a266dfb304308c5a47e6cebc1374b282579cb`.
- Qualified DLL, identical on both hosts:
  `ca85640d486042bf077c30cb05bd04fdd1d67de9d62eeb958c236cab5c7b7a91`.
- HP generation:
  `171b4545b5966ce2421d2bedf12c5d12fdfba2cfcbad00377f53f3ae59977c69`.
- SCAN generation:
  `3ac74e8a2fb4f90f620654cc2ba34a408529c460642c80cd294ffa605491eca9`.

Seven actual compilation inputs match the qualified alternate-loopback
consumer. Runtime assets and the unmodified SDK match the original functional
receipts. The bundle contains the managed driver/SDK, runtime config and
provenance, with no `hftnet` library. Every process checks actual loaded maps
and confirms the native engine stays unloaded. The SDK owns connection,
Logon, sequencing, parsing, builders, actual sends, application callbacks and
Logout. No socket session is implemented in the benchmark adapter.

The entry supplies the declared wildcard server bind and actual DAC peer
address. This generation explicitly configures both through the public SDK,
correcting the retained v1 loopback-only setup failure. All four tiny pairs
pass before the report begins. No root helper, sudo registration, SDK/native
binary or timing gate changes. Applications run as the benchmark user.
Actual host probes bind both ports' kernel/NIC/firmware, namespace and CPU
facts. HP uses Solarflare, server 8–12/client 13–17; SCAN uses Mellanox,
server 10–13/client 14–17. Every observed inherited/effective foreground
mask matches its fixed budget. Preparation uses `isol`; collection uses
`isol-no-shared`, high priority on HP and normal on SCAN. Host slot/process
state and free disk are checked before work.

## Clock, capture and independent full replay

All report rows use 1,000 warmups, 10,000 measured cycles per run, three runs
per flow, target 10,000 cycles/s. RTT starts before request/SDK encoding and
ends after final parsing/extraction/folding/checks. The SDK pre-send gate
stamps the fully serialized tick before actual transport write; every gate
matches a completed outbound W, and the callback entry stamps the same-process
monotonic end before benchmark extraction. No ER is emitted in tick.

Each endpoint captures only ten pre-warmup cycles and closes both streams
before warmup. Measured application capture is zero. Actual SDK callbacks
equal all incoming application frames. The full measured sink/fold, exact
primary/delay counts and actual admin observations remain mandatory. Boundary
probe is integer zero. No measured callback writes a capture or trace.

Both tiny and full cold readers pass independently on each host. Full proof
reproduces 120,000 primary/120,000 delay samples and 330,300 application frames
per peer per host. Tiny proof reproduces 80/80 samples and 350 frames per
peer. Original quantiles, true extrema, fixtures and every promotion decision
are exact, with original source/report bytes and modes unchanged. No replay
compiles, opens sockets or repeats timing. All six successful producer-written
compact cells are imported byte-exactly, with at most 2,000 CDF points per
latency kind. Diagnostics are not substituted from another configuration.

## Retention

Both hosts keep the original failed v1 roots and corrected working roots:

- `~/.cache/libhft/fullbench-dotnet-managed-physical-20261017-v2`
- `~/build/codex-fullbench/libhft/dotnet-managed-physical-20261017-v2`

Only admitted compact cells and this summary enter Git/website data. No raw
capture/sample, runtime log or source tarball enters a new archive. Mixed-flow
rate on both hosts, a complete current managed configuration, .NET peer and
whole-harness release gates remain open.
