You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit cb5ce1f
Browse filesBrowse the repository at this point in the historyBrowse files
Commit all current KeyLoad changes, consume published Communication 10.2.11 and retain the owning release and original development evidence. Full Release build, formatter and governance pass. Native owner/kernel cases pass 7/7; full normal unit is 3247/3248 with the original process-identity failure retained. RF3, scalar, Linux and endurance acceptance remain open.
Copy file name to clipboardExpand all lines: docs/ADR/ADR-002-command-idempotency.md
+32Lines changed: 32 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,6 +24,38 @@ Persisting command identity with effects resolves lost responses across process
24
24
25
25
Dependencies: [ADR-001](ADR-001-partition-identity-affinity.md), [ADR-003](ADR-003-durability-ack-barrier.md), [ADR-004](ADR-004-committed-read-views.md), [ADR-005](ADR-005-canonical-keyspace-codec.md), [ADR-011](ADR-011-format-upgrades.md), and [ADR-016](ADR-016-atomic-physical-placement.md). Stop if canonical fingerprint or dedup expiry behavior is not specified. Do not infer exactly-once handler execution or include an external API call in the database transaction.
5. Run TUnit and RF3 Search through .NET and official MCP SDK in GitHub Actions; publish quality evidence with source SHA before claiming qualification.
34
34
35
35
Current source: `src/KeyLoad.Query/Features/Search/Queries/SearchEngine.cs`, `src/KeyLoad.Core/GraphAndSeries.cs`; current tests: `tests/KeyLoad.UnitTests/GraphAndSearchTests.cs`. Planned external/provider files are owned by Search, not this ADR. Dependencies: ADR-009, ADR-019, ADR-020, ADR-022. Owner: Search lead; global quality/review join: root.
36
+
37
+
## Controlled prototype stage,2026-10-05
38
+
39
+
TASK-SEARCH-QUALITY-CORPUS implements REQ/AC-SEARCH-007 in
Copy file name to clipboardExpand all lines: docs/ADR/ADR-082-native-cqrs-streams.md
+11Lines changed: 11 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -70,6 +70,17 @@ AC-CRS-003 also hardens the existing canonical offline verifier/upgrade process
70
70
71
71
TASK-CRS-C1-FATAL uses published Communication10.2.9's native CqrsRuntimeFailures.FindFatal for direct and deeply nested AggregateException failures. New test-owned RequestCqrsFatalSettlement controls exercise native creation, pulls, disposal and activation cleanup, preserve exact preconstructed fatal identity with primary/disposal/activation precedence, and join every admitted cleanup before a healthy following stream. Ordinary failure and cancellation controls remain required. Owning publication and local mechanism tests alone do not qualify C1 or mark this ADR Implemented.
72
72
73
+
Checkpoint2026-10-05: TASK-CRS-CANCEL-FAILURE-JOIN is delivered through actual
74
+
published Communication10.2.11, successful Release37250149897 and verified official
is integrated with actual node drain preceding native silo stop and physical
77
+
cleanup. Aspire-selected owner/kernel tests passed7/7; full normal unit passed
78
+
3247/3248 and remains a failed gate because the actual Node process identity test
79
+
failed. Both source/runtime input inventories are unchanged. See the linked
80
+
feature's original development and delivery receipts. RF3, migration and complete
81
+
scalar/Linux/resource/endurance qualification remain open; this ADR is not marked
82
+
Implemented by a source checkpoint or an owning package release.
83
+
73
84
Rollback of C0 removes unused test infrastructure; it cannot establish product stream readiness. Later product rollout, rollback, long-work checkpoint authority, terminal cancellation and fault qualification require their concrete accepted contracts. Frontend N/A: no UI. Required real SDK/MCP Docker/Aspire RF3, recovery, resource and exact-source Linux gates remain mandatory.
74
85
75
86
TASK-CRS-C1-IMAGE/RF3 follow the accepted same-epoch image/AppHost contract in NativeCqrsRequestV2. The immutable prior executable is377886f35928866f083806062b446056d64539e3, data epoch6/RPC1/peer2, independently inventoried against all native Git blobs. A distinct ClusterRouting producer/proof binds that source separately from the actual current Linux docker-rf3 job. Root adds only an explicitly enabled ephemeral fixed-three-voter test image seam and preserves homogeneous current and native5 proofs. Genuine cold seed, mixed rejection, homogeneous current rollout/receipt preservation, homogeneous rollback, and two-survivor/rejoin waves use SDK/official MCP through owned Aspire resources; live HTTP/cache/shutdown controls remain separate. Per-voter admission, exact image/reference metadata, typed public rejection, finite bounds, cleanup/join ownership, files, worker roles and evidence are frozen in that feature contract before writes.
Copy file name to clipboardExpand all lines: docs/Features/DocumentStorage.md
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -39,6 +39,14 @@ The current root-level files are documented migration debt under ADR-032, not th
39
39
| REQ-DSTORE-003: enforce row/field policy at every document boundary | AC-DSTORE-003 passes when unauthorized row writes/reads and protected field use fail or project according to policy; tenant or row ownership cannot be supplied to gain access. | Existing `NestedSensitiveFieldsAreOmittedAndAliasedPredicateAndSortAreDenied`, `RowScopeAndTenantCannotBeForged`; actual field/row/tenant matrix plus isolated replacement-write and Delete-index-use controls. Local full-suite evidence below; exact-source CI qualification pending. |
40
40
| REQ-DSTORE-004: share an atomic transaction domain with eligible events and queues | AC-DSTORE-004 passes when document + event + local enqueue commit together or all remain absent, same command retry returns the stored outcome, and identical partition-key text in unrelated domains stays isolated. | Existing `DocumentEventAndQueueCommitTogetherAndCommandRetryDoesNotRepeatEffects`, `UniqueConflictRollsBackDocumentIndexEventAndEnqueue`, `SameLiteralPartitionKeyCannotCrossTransactionDomains`. CI qualification pending. |
41
41
| REQ-DSTORE-005: reuse transaction-scoped document images | AC-DSTORE-005 passes when one before-record lookup supplies CRUD and outbox; no final staged lookup/decode is required; exact bytes, revisions, tombstones, indexes, authorization, quotas and sequential same-ID mutations remain intact. | TASK-MP-007I in ADR-035; new real-store paired-size/counter and before/after/failure cases plus existing transaction/change-feed/recovery/RF3 regressions; GitHub evidence pending. |
42
+
| REQ-DSTORE-006: retain command identity and outcome atomically across real process restart | AC-DSTORE-006 passes when two distinct actual CrashHost processes execute one hundred same-ID/same-content retries each around a real first-process kill; every result matches the original complete receipt, while one document revision, one event, one Ready queue message and the exact batch outbox cut remain. Same-ID/changed-content returns Conflict without changing effects or the original outcome; a fresh authorized command succeeds afterward. | TASK-DSTORE-COMMAND-100-RESTART in ADR-002; new `CommandIdempotencyProcessRecoveryTests` and actual CrashHost scenario under `Features/DocumentStorage/`. This remains planned until original Aspire/native reports exist. |
43
+
44
+
The current command-outcome retention contract has no automatic TTL/purge path.
45
+
Retries are supported while the original outcome remains in the canonical store
46
+
with the same incarnation and current persisted authorization. No finite minimum
47
+
time window or retry guarantee after explicit outcome/store removal or changed
48
+
incarnation is advertised. This is documented current behavior, not an implemented
49
+
expiry policy. A new policy needs an accepted ADR and its own qualification.
42
50
43
51
The accepted [ADR-035 document image contract](../ADR/ADR-035-memory-performance.md)
44
52
assigns CRUD handlers and new matching tests to one worker, and shared
Copy file name to clipboardExpand all lines: docs/Features/ResourceExecution.md
+29Lines changed: 29 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -477,3 +477,32 @@ measurement claim follows from authored counters or local static validation.
477
477
Рішення: [ADR-010](../ADR/ADR-010-query-budgets-security.md), [ADR-028 scheduling time](../ADR/ADR-028-persisted-scheduling-time.md), [ADR-031 modular resource isolation](../ADR/ADR-031-modular-all-in-one-resource-isolation.md), ADR-035. TimeProvider.System залишається host/Orleans clock; operation clock не заморожує cluster runtime. Mixed query/search/graph/event/queue workloads потребують real correctness+liveness tests, а не окремих synthetic doubles.
478
478
479
479
Shared primitive/config/telemetry composition мають одного integration owner; бізнес-work і matching tests залишаються в owning `Features/<SliceName>/`. Configuration validation, invalid bounds, zero/empty work, overflow, cancellation/deadline і healthy follow-up входять до AC. Freeze shared limits → real regression source → feature fixes → integrated GitHub gates → actual measurements. Local doc review не доводить numeric coverage, memory ceilings чи performance gain; metrics публікуються тільки з successful GitHub JSON.
480
+
481
+
### TASK-CACHE-EXPIRY-ORACLE: real prepare-origin expiry measurement
482
+
483
+
REQ-CACHE-EXPIRY-ORACLE-001 preserves REQ-CACHE-004/005 and the existing
484
+
15-second prepare-origin lease and 10-second acceptance ceiling. A real-clock
485
+
test must distinguish prepare age from receipt age while observing the actual
486
+
permit and native ZoneTree cache. Source clocks, production bounds and persisted
487
+
authority are unchanged. ADR-058 already specifies this contract; no new boundary
0 commit comments