docs(tech-debt): mark CORE-01 (S1) borrow-checker Phase-3 DONE — closes #177#473
Open
hyperpolymath wants to merge 1 commit into
Open
docs(tech-debt): mark CORE-01 (S1) borrow-checker Phase-3 DONE — closes #177#473hyperpolymath wants to merge 1 commit into
hyperpolymath wants to merge 1 commit into
Conversation
#177 The ledger entry was stale: it listed C' (loop soundness), D (linear-capture by closure), and ref-to-ref binding as residual, but those three slices landed via PRs #395, #396, #397 (with #399/#400 as related follow-ups). Refresh the CORE-01 row to: * document the three landed slices alongside Slices A/B/C-light, * flip the Stage D ASCII status from ACTIVE to CLOSED, * mark the row CLOSED 2026-05-30 with the residual scoped exclusively to ADR-022 (true Polonius origin/region variables), filed as a separate workstream in docs/decisions/0022-polonius-origin-variables.adoc (PR #407). Closes #177. Evidence: * lib/borrow.ml:1635-1715 documents pt1+pt2+pt3 (A/B/C-light/C'/D+ref-to-ref). * test/test_e2e.ml "E2E Borrow Graph" suite: 28 hermetic regression tests. * git log --oneline -- lib/borrow.ml: PR #395 ref-to-ref, #396 C' loop soundness, #397 Slice D, #399 whole-place assignment, #400 self-assign guard, #407 ADR-022 (Polonius gating). * CI green on main at 4f0f3ca (2026-05-30 15:19Z). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
docs/TECH-DEBT.adocCORE-01 row: ledger listed Slices C' / D / ref-to-ref binding as residual, but those landed (PRs feat(borrow): CORE-01 ref-to-ref binding (#177 pt3) — let r2 = r / r = s alias the borrow-graph #395 / feat(borrow): CORE-01 Slice C' loop soundness — 2-iteration check on while/for (Refs #177) #396 / feat(borrow): CORE-01 Slice D (#177 pt3) — reject @linear capture by closure at borrow check #397).ACTIVEtoCLOSED.CLOSED 2026-05-30; remaining residual is scoped exclusively to ADR-022 (Polonius origin/region variables) which is a separate, ADR-gated workstream filed atdocs/decisions/0022-polonius-origin-variables.adoc(PR docs(adr): ADR-022 — origin variables + Polonius-style loan solver (Refs #177) — surgical refile of #398 #407).Why now
#177 was the issue tracking CORE-01 Phase-3 (borrow-graph validation, S1). The stated scope — adding graph validation plus regression fixtures under
tests/— has shipped:lib/borrow.ml:1635-1715documents pt1 + pt2 (return-escape +&mutparser surface) + pt3 Slices A (NLL last-use) / B (flow-sensitive re-assignment) / C-light (CFG-join forExprHandle/ExprTry) / C' (loop soundness) / D (linear-capture by closure) + ref-to-ref binding.test/test_e2e.ml"E2E Borrow Graph" suite — 28 hermetic regression tests (covering each landed slice with positive + anti-regression cases).Build oracle
Local toolchain has an unrelated cross-installation OCaml conflict (
astring.cmxafrom opam vs systemstdlib.cmxa); using CI-on-main as oracle instead.CI green on
mainat4f0f3ca7(2026-05-30 15:19Z) with all CORE-01 work present.Test plan
Closes #177link resolves on mergeCloses #177.
🤖 Generated with Claude Code