Clarify sequence operation history in the configuration contract

This commit is contained in:
2026-10-24 01:21:11 +00:00
parent fafc28421f
commit 367bbaaa1b
2 changed files with 33 additions and 12 deletions

View File

@@ -452,10 +452,11 @@ the descendant can therefore retain history after `Lookup` stops reporting it as
effective. Equal-valued input is still an explicit base definition, while a derived effective. Equal-valued input is still an explicit base definition, while a derived
value for absent input remains non-explicit. value for absent input remains non-explicit.
Appending registered records during strict composition assigns each contribution Strict composition assigns contributed records their assembled sequence positions
its assembled sequence index in history. A later precedence tier that supplies a in history. Across tiers, history follows the selected
sequence records replacement at the sequence path; history does not imply [collection operation](#strict-document-composition), including append and
identity-based merging across tiers. whole-record upsert. Incoming contributions use their assigned positions, and
replaced payload remains available as historical evidence.
A mapping assembled from the selected file and imports has one composite base origin A mapping assembled from the selected file and imports has one composite base origin
whose locations follow [scoped assembly order](#explicit-imports), not source-record whose locations follow [scoped assembly order](#explicit-imports), not source-record
@@ -550,10 +551,13 @@ including a superseded value that could not have decoded into the final Go field
Baseline, effective, and resolution values use canonical typed projection. A Baseline, effective, and resolution values use canonical typed projection. A
decoding event bridges replayed input and canonical typed values, so intermediate decoding event bridges replayed input and canonical typed values, so intermediate
null/scalar replacements cannot incorrectly imply permanent default removal. Mapping null/scalar replacements cannot incorrectly imply permanent default removal. Mapping
queries reconstruct each source or override contribution, while sequences remain queries reconstruct each source or override contribution. A sequence snapshot
atomic: a descendant history identifies its presence before and after the containing represents the collection at that point in replay, and sequence diffs remain
sequence replacement without implying element-wise merging. Removed paths remain atomic. Descendant queries describe their presence and values before and after
explainable; unknown and malformed paths return false. containing sequence operations. Combination follows the
[collection operation tables](#strict-document-composition); upsert replaces
matching records in full. Removed paths remain explainable; unknown and malformed
paths return false.
Every snapshot applies the same historical tag, predicate, and recorded-dependency Every snapshot applies the same historical tag, predicate, and recorded-dependency
sensitivity closure as effective rendering before YAML is exposed. A redacted scalar sensitivity closure as effective rendering before YAML is exposed. A redacted scalar

View File

@@ -1,8 +1,8 @@
# Sequence Implementation Review Remediation # Sequence Implementation Review Remediation
Status: findings 1–11 are complete. The subsequent integration audit at Status: all findings 1–17 are complete. The subsequent integration audit at
`8d40983271de5239312eb0a2896737be88c5abdc` identified six additional open findings, `8d40983271de5239312eb0a2896737be88c5abdc` identified findings 12–17, now
numbered 12–17 below. This record introduces no new release gate. remediated below. This record introduces no new release gate.
Reviewed commit: `0be7cdb00eff576fda6b30c0600b2134d4e2e086`. Reviewed commit: `0be7cdb00eff576fda6b30c0600b2134d4e2e086`.
Implementation range: `bc6b977..0be7cdb`. Implementation range: `bc6b977..0be7cdb`.
@@ -30,6 +30,15 @@ Validation after the initial remediation: `./scripts/check.sh` and
`go test -race ./...` passed with Go 1.26.10 on Linux. The original public-API `go test -race ./...` passed with Go 1.26.10 on Linux. The original public-API
probes for findings 1–9 now demonstrate the required corrected behavior. probes for findings 1–9 now demonstrate the required corrected behavior.
Validation after integration remediation: the everyday check, full race suite,
and local documentation/public-boundary checks passed with the same toolchain.
The original and follow-up public-API probes demonstrate corrected behavior for
findings 1–9 and 12–15, including unrelated underlay payload at an old version
index. The accumulated-copy correction is verified by code inspection and
ownership regressions; the contract corrections are verified against the
implemented operations and replay. Each additional finding has its own completion
record and commit.
P1 denotes the highest-priority correctness issue here; P2 denotes normal-priority P1 denotes the highest-priority correctness issue here; P2 denotes normal-priority
work needed to complete the selected behavior. Preserve the agreed scope while work needed to complete the selected behavior. Preserve the agreed scope while
fixing these issues. In particular, do not resolve failures by restricting valid fixing these issues. In particular, do not resolve failures by restricting valid
@@ -673,7 +682,15 @@ Do not introduce public caches, pooling, new caps, or performance thresholds.
## 17. Reconcile Legacy Sequence-History Contract Text — P2 ## 17. Reconcile Legacy Sequence-History Contract Text — P2
Status: [ ] Open. Status: [x] Complete.
Completion: metadata and explanation prose now describe history through the
selected collection operation, assigned item positions, and displaced payload.
The text distinguishes sequence snapshots and atomic diffs from append/upsert
combination and links to the canonical operation tables. Whole-record upsert,
existing queries, and sensitivity guarantees are unchanged. Verified against
replay/combination code, local documentation-link tests, and `git diff --check`;
the unchanged runtime is covered by the preceding everyday and full race checks.
Owner: the metadata/provenance and explanation sections of Owner: the metadata/provenance and explanation sections of
[`docs/config.md`](../config.md#layered-metadata). [`docs/config.md`](../config.md#layered-metadata).