Skip to content

Commit 2044c53

Browse files
committed
Qualify command replay recovery and outbox pin contracts
Commit all current stage code, fixtures, acceptance plans and native evidence. Release solution build and format pass; Aspire recovery1, outcome normal2/scalar2 and projection-pin normal6/scalar6 pass. Native macOS Node lifecycle remains4/5. Retain the exact frozen source/runtime inventories and original reports. Record CB5 CI's final failure. Full Linux/RF3, partition outcome scope and durable ANN projection/publication acceptance remain open.
1 parent ab4b221 commit 2044c53

19 files changed

Lines changed: 1205 additions & 15 deletions

‎docs/ADR/ADR-019-managed-ann.md‎

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,3 +100,14 @@ private Search test files; root owns review, Aspire normal/scalar/full gates,
100100
original evidence and all-code checkpoints. No physical generation, alias,
101101
format, public capability or canonical migration is accepted by this prerequisite;
102102
the complete native ZoneTree projection/recovery contract remains required.
103+
104+
Root accepts TASK-ANN-R1-CONSTRUCTION-VALUE and REQ/AC-ANN-011 in the
105+
[construction join](../Features/Search/ManagedAnn.md#accepted-prepared-value-construction-join-2026-10-05).
106+
Use the existing finite-owned readonly value for construction, with one internal
107+
constrained generic traversal and explicit class/value contract implementations.
108+
Preserve every score, ordinal order, validation and work/deadline/cancellation
109+
charge. Root freezes and reviews the private implementation, joins independent
110+
class/value traversal and allocation tests, then retains full Release/static and
111+
Aspire native/scalar corpus evidence. Exact-source Linux and ANN lifecycle/RF3
112+
acceptance remain required. No persistence or public transport changes occur;
113+
rollback reverts these computational joins, with no store migration.

‎docs/Features/ClusterRouting/NativeCqrsRequestV2.md‎

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -593,3 +593,66 @@ Query worker revises only its six private AppHost helper files from the reviewed
593593
R2 packet, with original base/post hashes, without checkout writes or gates.
594594
Actual no-follow/FIFO mechanisms and complete Aspire/RF3/Linux gates remain
595595
required; static source repair does not qualify a started topology.
596+
597+
### Accepted C1 public phase interruption cases, 2026-10-05
598+
599+
TASK-CRS-C1-PUBLIC-INTERRUPTION implements four genuine RF3 cases for
600+
AC-CRS-003/005, one SDK and one official MCP case at BeforeSubmit and
601+
SubmitReturned. Each case owns a fresh current-image Aspire RF3 wave, private
602+
profile/data/control roots, current signed discovery, one persisted non-admin
603+
synthetic principal whose ID starts c1-probe-, and one document with exact before
604+
and after strings. Configure that principal and resources through genuine public
605+
administrator operations. No caller-supplied role, reused control session or
606+
existing user's store may be used.
607+
608+
Root owns the shared RequestCqrsRf3Wave.StartProbedAsync(dataRoot, images,
609+
RequestCqrsProbeFixture controls, CancellationToken) join. It adds only the frozen
610+
private probe configuration to the existing current-image wave startup, preserving
611+
immutable image proof, three physical voters, native uid:gid, readiness,
612+
diagnostics, shutdown and original failures. Helpers await root's actual reviewed
613+
Server/AppHost/fixture join; a private test packet is not RF3 evidence.
614+
615+
For BeforeSubmit, arm Hold for the exact principal/command, retain the original
616+
real client Task, await the genuine signed phase marker, and prove the unchanged
617+
entity with a separate real administrator read before cancelling that original
618+
caller. Require the actual SDK UnknownWriteOutcome or actual official MCP safe
619+
unknown tool result/transport cancellation. Await the actual cancelled/released
620+
hold settlement and native ProducerDisposed marker for the claimed request,
621+
join the original caller, then retire the arm before retry. Retry the identical
622+
stable command/body with fresh signed requests through SDK and official MCP;
623+
require equal full receipts and exactly one document revision/effect.
624+
625+
For SubmitReturned, await that exact marker and independently read the committed
626+
intended entity before cancelling. Require the same actual caller interruption,
627+
settlement/disposal and original joins; fresh SDK/MCP retries must return the
628+
complete already committed receipt and retain one revision advance. The probe
629+
request ID is compared with an actual MCP request ID when a validated tool result
630+
exists; transport failures must not invent an ID or tool response. These cases
631+
exercise actual phase cancellation, not remote-voter death; remote execution
632+
placement and death remain separately required.
633+
634+
Each case has the existing parent/wave/cleanup bounds. Cleanup stops admission,
635+
cancels/joins every original caller, releases and joins admitted control gates,
636+
disposes actual public clients, stops/disposes the Aspire-owned resources and
637+
original diagnostics watchers, proves native file locks released, then removes
638+
only exclusively owned control/data roots. Preserve primary and every cleanup
639+
failure with ServerFailureObserver and fatal policy. A deadline observation or
640+
Task.IsCompleted test is not a replacement original join. Never delete controls
641+
before actual producer disposal/resources join; retain failure originals.
642+
643+
Task graph: root freezes these requirements and shared joins; query_wave Luna/high
644+
owns only new IntegrationTests/ClusterRouting Cases/Helpers/Models files prefixed
645+
RequestCqrsPhaseFault, with existing real client, receipt, probe and profile helpers.
646+
It emits a private exact-base patch, complete source, hashes and self-review, with
647+
no checkout/shared/docs/package/Git edits or gates. Root reviews every line,
648+
implements the shared startup join, builds/formats/governs the full solution,
649+
runs the actual Aspire rf3 caller with four bounded development cases, retains
650+
native JSON/TRX/image/topology/phase evidence and follows exact-source Linux
651+
complete gates. Requirement mappings are the preceding AC-CRS-003/005 matrix;
652+
current-authority revocation, ordinary-fault privacy, migration, remote death,
653+
C2/C3 and full KL acceptance remain required separately.
654+
655+
ADR-034/058 and the preceding accepted C1 control implementation contract already
656+
cover these private controls and public CQRS behavior. No public API, canonical
657+
format, credential contract or deployment topology changes; rollback removes
658+
the test entry points/private controls without migrating canonical data.

‎docs/Features/Search/ManagedAnn.md‎

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -246,3 +246,41 @@ Rollback reverts the computational joins; there is no data migration. Public
246246
SDK/MCP/frontend additions are N/A because this internal optimization preserves
247247
their existing exact operation contracts. Comparable GitHub measurements and
248248
remaining ANN projection/public/RF3 acceptance are still mandatory.
249+
250+
## Accepted prepared-value construction join, 2026-10-05
251+
252+
TASK-ANN-R1-CONSTRUCTION-VALUE extends the accepted finite-owned prepared value
253+
through packed construction traversal. The exact cb5 Linux scalar report retains
254+
two unchanged 10,000-row filtered-planner failures during the ordinary 30-second
255+
build deadline; it does not establish that allocations caused those timeouts.
256+
Construction currently creates a PreparedSimilarity reference per inserted row.
257+
Remove that reference allocation by using the already accepted readonly
258+
PreparedPackedSimilarity carrier. Keep one shared Greedy/SearchLayer/neighbor
259+
traversal implementation via an internal IPackedAnnSimilarity contract and
260+
constrained generic calls. Implement the contract explicitly on the existing
261+
sealed untrusted-query class and readonly owned value; no boxing, delegate,
262+
second traversal, vector copy, cached norm array or changed formula is allowed.
263+
264+
REQ-ANN-011 / AC-ANN-011: for all three metrics, actual class and owned-value
265+
traversals over the same genuine finite packed graph return identical greedy
266+
nodes, ordered candidate ordinals and exact double scores with identical charged
267+
work/distance/edge counters. Preserve all untrusted/owned validation and existing
268+
zero-allocation value, independent similarity, graph adjacency, 10,000-row recall,
269+
filter, scalar, cancellation and deadline cases with their original limits.
270+
The construction join must use the value directly and constrained traversal must
271+
not box it; source review and a warmed zero-byte actual value traversal measurement
272+
cover that specific claim, with setup/assertions outside the measured interval.
273+
This does not claim improved elapsed time, full ANN qualification or deadline repair.
274+
275+
Ordered graph: root freezes the contract and ADR, cluster_wave Luna/high prepares
276+
only PackedAnnConstruction, PackedAnnLayerSearch, PreparedSimilarity,
277+
SimilarityMetricMath and the new Search/Contracts/IPackedAnnSimilarity.cs in a
278+
private exact-base packet. Query's ordinary prepared-query public validation and
279+
all other product sources are unchanged. Independent tests are a separately
280+
assigned new PackedAnnConstructionValueTests and cohesive Search helpers against
281+
actual existing packed fixtures; root owns their later assignment, integration,
282+
full Release/format/governance and Aspire normal/scalar unchanged ANN gates.
283+
No worker may alter corpus, budgets, options, formulas, graph ordering, packages,
284+
shared configuration, docs or Git. Escalate a missing seam or changed accounting.
285+
Rollback reverts computational joins only. Data/wire/public SDK/MCP/frontend
286+
changes are N/A; no persisted format or canonical authority changes.

‎docs/Features/Search/ManagedAnnSeed.md‎

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,3 +141,34 @@ SQL/SDK/MCP contracts and new native aliases/formats are N/A for this proof.
141141
Root must still freeze native ZoneTree generation records/publication, owner locks,
142142
replay, combined reservations and real process recovery before R2 production
143143
implementation. Existing R2A and AC-ANN-007/008 qualification remain open.
144+
145+
### Accepted native cancellation observer repair, 2026-10-05
146+
147+
TASK-ASD-CANCELLATION-OBSERVER repairs the independent AC-ASD-004 test oracle.
148+
The original cb5 Linux scalar failure is retained: the asynchronous delay-based
149+
observer shares a busy ThreadPool with synchronous real capture, so the test did
150+
not establish cancellation before capture completion. This is not evidence that
151+
production ignored an already-cancelled token.
152+
153+
Use one owned dedicated native Thread for observation, started and confirmed
154+
running before the original synchronous 10,000-record capture. Poll the real
155+
ReadExecutionBudget.ReadBytes with bounded native scheduling; after its first
156+
positive charge call the actual CancellationTokenSource.Cancel and retain an
157+
explicit cancellation-requested witness plus the original observer exception.
158+
The unchanged original capture must throw OperationCanceledException and return
159+
no seed. Require actual positive charged bytes and observed token cancellation,
160+
then a healthy unchanged 10,000-record following capture. Keep the original
161+
15-second observation/join bound, real clock, corpus and product budgets. No
162+
production pause, fake progress, synthetic cancelled result, repeat-until-pass,
163+
assertion waiver or ThreadPool worker substitutes for this native observer.
164+
165+
Root freezes this refinement under ADR-019's existing AC-ASD-004 cancellation
166+
contract. Lifecycle worker Luna/high owns only AnnSeedCancellationTests and new
167+
cohesive Search test observer helpers as a private exact-base packet. Root joins
168+
and reviews startup, completion/error handshakes, cancellation and original
169+
Thread.Join on success and failure before disposing synchronization/token state;
170+
all primary and observer/cleanup failures remain observable, with fatal policy.
171+
No background thread or original capture is abandoned. Root runs full Release,
172+
static checks and actual Aspire normal/scalar cases and the unchanged complete
173+
seed suite, retaining original evidence. No product format or transport change;
174+
rollback removes the test scheduling repair, not a native cancellation check.

0 commit comments

Comments
 (0)