Specify complete-target mixed rename planning and resource bounds

This commit is contained in:
2026-09-24 16:02:54 -07:00
parent 852a79b566
commit dc87babf0f
6 changed files with 425 additions and 0 deletions
+23
View File
@@ -563,3 +563,26 @@ The contract explicitly handles synthetic brace-containing roots, complete
reference extents and the existing ordinary depth policy. It grants read-only
name-occurrence authority only. Rename composition and complete editing parity
remain separate required capabilities.
## 2026-09-24 — gate mixed rename intent against the complete desired model
Adopt the [mixed rename planning contract](analysis-mixed-rename-plan-contract-20260924.md)
after source mapping and independent criticism. Consume the complete authored
owner, immutably borrow desired Project, and retain only changed-name and physical
edit maps. Exhaustive shallow alias exceptions avoid Project clones, generic
diff machinery and duplicate legacy batches. Final namespaces are checked
simultaneously, so swaps work and collisions with unchanged names reject.
Existing whole-model PartialEq semantics define non-name equivalence, including
signed-zero equivalence across geometry, scalar and historical carriers. Original
non-name source bytes remain exact. The allocating iterative Expr comparator
requires a conservative E scratch reservation; independent type-graph and
frontier analysis bounds E by the retained original expression arena, including
all four root families. Revisit if new Expr carriers appear or conservative
headroom demonstrably blocks useful cases.
Deliberate later output parsing must preserve exact inherited per-snapshot policy
with separately reported new usage and aggregate live-storage accounting. An
independent fresh ledger must not hide retained output or old state. Execution
ownership/readmission seams remain separate required implementation; this
decision does not label a read-only plan as accepted rewritten source.