# FIX Antenna .NET: original shared-runner phases and actual-start delays

Both hosts complete all 23 finite original-SDK pairs and one independent
collection each. Each replays 1,480 application/prepared frames, 9,204 clock
events and 528 exact primary samples. The original shared runner retains 348
measured primary and 300 measured scheduler-delay values; 180 warmup/prewarm
samples are discarded. HP retains 234 administration frames and SCAN 230,
including only the already bounded original startup Heartbeats. All 276
alterations of actual output copies refuse per host. There are no pair reruns,
timing admissions, Stage 5 admissions or exported cells.

## Original runner and independent checks

The producer implements the original .NET IBenchTask contract and calls the
unchanged BenchRunner.Run. Its separate harness assembly contains all sixteen
original source files at 626fa5c319609e6dfc60a597d8623d3a29aa5637. Cases cover
all four flows with zero/five warmup, repeated measured runs and unpaced mode;
changed-symbol/touch mixed/tick owners; construction, serialization, extraction,
after-completion and prepared-send probes. Initial warmup and the prewarm before
every measured run retain continuous application IDs and SDK sequences.

Independent replay consumes the complete bilateral original streams, every
prepared snapshot and every clock event. It checks complete typed-owner folds
against actual canonical wire bodies, exact measured-array membership and
warmup exclusion, statistics and nearest-rank percentiles. Paced deadlines
follow the original previous-actual-start rule, beginning one interval after
phase start; actual-minus-due reproduces every measured scheduler delay.
Per-run rates use the original whole-task interval, including extraction and
after-completion work even when the tick primary stops earlier.

The source suite passes 163 tests with no selected skips. An earlier source
test exposed an accepted forged first deadline; the reader now checks the
phase bound and exact subsequent deadline arithmetic. That failed source log
remains retained. The successful native matrices use the corrected reader;
neither host requires a native retry. Actual-output controls alter counts,
owners, clock claims, samples, clocks/prepared frames, deadlines, phases,
measured arrays and percentiles. SDK sequence-state controls also refuse.

## Immutable inputs and scope

All seventeen original SDK/package inputs and twelve compiled runtime payload
files remain unchanged before and after each host's matrix. Producer and
harness DLLs reuse the previously retained compile checkpoint; no SDK, helper,
clock predecessor, producer or harness is compiled during native qualification.
Actual loaded SDK/helper/harness paths and hashes bind to those qualified bytes.
Each host independently verifies its original Session and clock parent first.

Original SDK sequence/time/checksum work remains inside public SendMessage.
The qualified tick start is prepared application bytes immediately before
public send, and its stop is application callback entry. OnMessageSent is
after the TCP write and supplies capture only. This checkpoint cannot promote
that boundary to completed-wire transport-entry evidence.

Both foreground jobs use functional isolated leases after CPU-slot, process
and memory checks; HP uses high priority and SCAN normal priority. The original
runner pins its measurement thread within the role's allowed CPU mask. Both
services exit zero without a remaining main process. Independent collections
run once under the BEELINK2 shared lease. Root helpers, sudo, frozen roots,
previous results and other sessions' work remain unchanged.

This closes finite original shared-runner phase qualification. Bounded normal
runtime, immutable installed payload and fresh quiet physical admission remain
separate. The .NET matched comparison and full plan remain incomplete. Website
delivery contains compact summaries without per-result CDF payloads.

## Pins and receipts

Native worker source: `5255282ae394a1d7df0a10eba07a44b720334d5a`.
Original SDK Core SHA-256: `11b2934a4dd07106292f6d67bf37b65151540efb5e5d2cb0c36bc228d0279f40`.
Fixed-scale helper: `f027e4aea85438d57ca1e7080444254f94d5f80cea2cfe69bff2191344c9ad20`.
Producer: `88859e00cf5a7bea82bc82734f8e7c24e86d1863a5c3d1c31d6187d36210dcca`.
Original harness: `5ef1c68bfa62b6bf5fe7f92efd5ec6bff4b91b172b46c937e1c7483fd7cbad5e`.
Compile inputs: `d084ba771d7eac233cecc171ff9131c66c703481a1cf39c4feb14e1c7e34463f`.

Native output: `~/build/codex-fullbench/libhft/fixantenna-phases-qualification-20261026-v1` on each host.
Independent collections: `~/build/codex-fullbench/libhft/fixantenna-phases-review-20261026-v1/{hp,scan}`.
Source gate: `~/build/codex-fullbench/libhft/fixantenna-phases-source-tests-20261026-v4-scan.{log,xml}`.

| Host / receipt | Value or SHA-256 |
| --- | --- |
| HP administration frames | 234 |
| HP native-receipt.json | `c6e7ec3cbc4cc1b013fe1a9daadc24cbd179d80f33f7e06e49ad9413cc54559d` |
| HP cold-review.json | `a8823c142b982800c79d48174c38c2844bbc1d7b310e8f0e50fabc2af77122f7` |
| HP reader-controls.json | `00e0dc7ad926352d6dbc3367642fbc3719f9f9a611a23d9d03b71929347e81fa` |
| HP collection-review.json | `1b04c12ed04d47c578dd2cbb1296142700fe9806ecd732962a6f3f587efb57b3` |
| SCAN administration frames | 230 |
| SCAN native-receipt.json | `9799838c8119075e3c93b5675667b594a18ccf78a73b2d9838dae7f290b915c2` |
| SCAN cold-review.json | `0164c0052750a6ce5c04bbf26e9de1abccae55be35432f205ba98f8749e6bf3e` |
| SCAN reader-controls.json | `00e0dc7ad926352d6dbc3367642fbc3719f9f9a611a23d9d03b71929347e81fa` |
| SCAN collection-review.json | `211713f7b04cdfcd17e8aa81ef37652701ef48f67ab84e21429225a4de9091eb` |
