docs(net): N6 accepted - Opus review PASS; five owed register rows filed

The final slice review verified every retail address claim down to the
three distinct gate strictness masks (0x41 strict for NAK/handshake, no-ZF
>= for the 5 s sweep) and found no handshake, eviction, or ring defect.
This acceptance settles the campaign's remaining bookkeeping debt the
review surfaced: TS-58 (no TimeSync/Echo keepalive), TS-59 (no Flow
report), TS-60 (no 140 s dead-link/referral), TS-61 (send-failure burns
sequence+key), and AP-126 (one monotonic clock) are now real register
rows instead of dangling citations in shipped code. DropAll additionally
resets the completed-sequence ring (INFO-4's latent session-reset trap),
and the ledger corrects the post-acceptance retry-drop attribution to
NetworkManager's pre-route (INFO-5). N6 SHA f9c5e47e and its revert line
recorded. Core.Net 757/757 green after the ring-reset change.

Campaign N's implementation is complete: N0-N6 all shipped, all reviewed.
The remaining acceptance is the user Coldeve endurance session.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-07-29 17:32:59 +02:00
parent f9c5e47e7f
commit 27c5151189
3 changed files with 22 additions and 5 deletions

View file

@ -277,8 +277,20 @@ public sealed class FragmentAssembler
return evicted;
}
/// <summary>Discard all in-flight partial messages.</summary>
public void DropAll() => _inFlight.Clear();
/// <summary>
/// Discard all in-flight partial messages AND the completed-sequence
/// ring. The ring reset closes a latent trap (N6 review INFO-4): a
/// future session-reset caller would otherwise retain completed marks
/// while ACE restarts its fragment sequence at 0, false-dropping the
/// new session's first messages — exactly the failure class the ring's
/// zero-slot guard exists to prevent.
/// </summary>
public void DropAll()
{
_inFlight.Clear();
_completedNext = 0;
_completedCount = 0;
}
private bool WasRecentlyCompleted(uint sequence)
{