Conversation
ADR-0021, ADR-0034 and ADR-0077 still carried six pathless `L<digits>` line pointers into `objectql/engine.ts` and `driver-sql/sql-driver.ts`. The ruling that retired this class deleted the pointers outright rather than correcting the numbers, and all six were sampled as pointing at unrelated code today. Each of the five sites was judged on its own so the surrounding prose keeps every other fact it carried -- notably ADR-0021 keeps "(**two** lists)" after the two numbers go, and the ADR-0034 sequence bullet keeps its symbol referents (`SEQUENCES_TABLE`, `getNextSequenceValue`, `forUpdate`, seed-from-max). No gate script, corpus vocabulary or `pathlessLineCitations` switch is touched, and no other ADR is touched. Claude-Session: https://claude.ai/code/session_01JbZnqu8bt6YqfJsr9vaFb3 Co-authored-by: Claude <noreply@anthropic.com>
…r-line-anchor-remainder
This was referenced Sep 18, 2026
Collaborator
Author
|
受管面交付已就位:绿了,等授权批准。 ⏱️ 2026-09-18T13:54Z 现读 head 卡 #19011 的同族口径在本 PR 上不适用;本 PR 按 AGENTS.md 第 14 条处置: ⇒ 本席做完了该做的三件,然后停:①PR 保持 draft;②已向 ⛔ 本席不会入队、不会挂 auto-merge、不会把它翻出 draft。 落地等那份授权批准。 Generated by Claude Code |
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.
Fixes #18932
Clause-②: no
Deletes the six stale line pointers that ADR-0021, ADR-0034 and ADR-0077 still carried after the #13556 class removal — six pointers across five lines in three records. The prescription is deletion, not renumbering: the ruling retired this class of pointer, and all six were sampled as naming code that has nothing to do with the prose citing them.
Note on spelling in this body: this repository's body sanitizer eats angle-bracket-shaped fragments, so every such fragment below is written in placeholder words. One substitution is load-bearing and is flagged inline. The byte-exact text is the diff.
The five sites, each judged on its own
Each pointer was removed so that the surrounding prose keeps every other fact it was carrying — in particular the referent (a path or a symbol name) survives at every site, so nothing needed a replacement referent.
1. ADR-0021 line 372 — removed
, L806 + L961;(**two** lists)deliberately kept.LESS-THANabove stands for a single less-than character that is pre-existing, untouched prose. It is spelled out only to survive this body; the file itself is unchanged there.2. ADR-0034 lines 42-43 — removed
around L1811.3. ADR-0034 line 57 — removed
L561-563.4. ADR-0034 lines 59-61 — removed
L548-600and the comma that introduced it; the bullet keeps all four of its symbol referents.5. ADR-0077 line 51 — removed
, ~L3217.Evidence
Base for every reading below:
origin/main=64de4c5764(the merge of #18925), merged into this branch. The dispatch order was written against43f4766889and predicted "4 files before, 1 after (ADR-0020 remaining)"; #18925 landed at 11:53:36Z and cleared ADR-0020, so the correct expectation is 3 files before, 0 after. Both the corrected expectation and the reading below were taken first-hand on this tree.The probe is the shared grammar's own
PATHLESS_L_CITATIONregular expression, copied verbatim fromscripts/symbol-anchors.mjs— the path-less L-pin spelling (optional tilde, the letter L, two or more digits, optional dash-range, word-boundary on both sides). It is not re-invented here.docs/adr/**docs/adr/**docs/audits/2026-08-partial-retirement-annotation-signal.md= 6,docs/launch-readiness.md= 3docs/adr/**, and 1 in a scratch file where it was planted with the same probedocs/adr/0047-object-ui-run-modes.mdb50b52863donorigin/mainandb50b52863din this worktree — byte-identical, not in the diffThe two light-on corpora and the planted needle are what make the zero a reading rather than a non-measurement: the same probe, in the same run, read non-zero in three named places.
Instrument reach radius, and a known target outside it
The AFTER reading is a zero, so the radius is stated by form and a known target outside it is named — both measured, not asserted.
Inside the radius. Content layer: the raw line text of every file under
docs/adr/, read line by line. Form: an optional tilde, the letterL, two or more digits, an optional dash-range, with a non-word character required on both sides. Measured, this radius is wider than the gate's in two ways worth naming: an L-pin written inside a markdown link target (the hash-L-digits form that #18925 dealt with) is read — measured, 1 match on a planted sample — and so is one written inside a code fence, which the gate deliberately skips as quoted material. So neither of those is a valid out-of-radius target here.Outside the radius, by form. The path-anchored colon spelling (a filename, a colon, digits), the path-less colon continuation (a bare colon and digits continuing a filename named earlier), and any single-digit L pin. Also outside, by population: every corpus that is not under
docs/adr/.The known target.
docs/adr/0065-sdui-styling-model.mdline 96 carries a live path-anchored colon anchor intopackages/sdks/src/types/builder-block.tsat line 42, tagged with the maintainer-only exemption marker. It is in the same corpus, the same file type and the same content layer as everything this PR measured — it differs from the deleted pointers only in form. Measured on that exact line: the L-probe reads 0, the colon probe reads 1. Acrossscripts/*.mjsthe same asymmetry holds at scale — 127 colon-form targets present, the L-probe reads 0 on all 127.⇒ The zero above is therefore a reading about the L-pin form in
docs/adr/**, and ⛔ not a claim that no line pointer of any spelling remains anywhere. The colon form is judged bycheck-adr-symbol-anchors, which is green.What the gate says, and why this diff is invisible to it. The ADR corpus declares
pathlessLineCitations: false, socheck-adr-symbol-anchorsnever judged this spelling — before or after. Measured: the gate-visible colon form reads 0 before and 0 after in all three records, and the gate is green on both trees. #18925 (already landed) is what stopped its verdict line from claiming a census it had not taken; this PR removes the pointers that claim was measured false against. No gate script, corpus vocabulary orpathlessLineCitationsswitch is touched here.Gates.
node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstackderived 18 families on the merged tree; all 18 run, all exit 0, exit codes captured before any pipe and reconciled with--ran: 18 derived, 18 run, 0 NOT-MEASURED, 0 UNRUN. One family (check:doc-formula-expressions) first exited 3 — PREREQUISITE NOT MET, which is a refusal to measure and not a finding; after building@objectstack/formulaand@objectstack/lintas its own output instructs, it exits 0.Changeset —
skip-changeset. Per-path reading over the 70 non-private packages that declare afiles[]: all three diff paths aredocs/adr/**, none sits inside a published package directory, and none matches anyfiles[]entry. Nothing this PR changes is shipped by any package.Acceptance notes
Observed while working, deliberately not filed and not fixed here:
docs/adr/0047-object-ui-run-modes.mdlines 48-49 carry two dev-server ports that the sharedpathlessLineCitationsgrammar would read as line citations. That file is byte-identical here. Anyone widening the ADR corpus vocabulary still has to settle those two first. Successor: that future vocabulary-widening PR — it cannot avoid this file.docs/audits/2026-08-partial-retirement-annotation-signal.md(6) anddocs/launch-readiness.md(3) carry the same path-less L-pin shape outsidedocs/adr/**. Whether other corpora should be swept is a scoping question no one has asked; they are used here only as light-on controls. Successor: none today.Governance
docs/adr/**is a governed surface. This PR stays draft; it is not merged, not queued, and auto-merge is not armed. Landing waits for the maintainer's approval.维护者速读(草稿)
改了什么 —— 三份 ADR(0021 / 0034 / 0077)的散文里删掉 6 个指向源码行号的指针,分布在 5 行上。只删数字,每句话的路径名或符号名都留着,句子读起来完整。
为什么改 —— #13556 已经裁定「ADR 行锚点」这一类整体删除、无过渡期。#18925 清掉了 ADR-0020 与 ADR-0096 里的,这 6 个当时在那张卡申报的文件面之外,所以留了下来。这 6 个都被抽样核过,指向的是今天完全无关的代码 —— 留着它们会把读 ADR 的人(和 AI)引到错的位置。
风险与代价(含回滚) —— 风险很低:纯散文删字,不动任何代码、门禁脚本或开关,任何包的发布内容都没有变(所以
skip-changeset)。回滚就是 revert 这一个 PR,没有数据迁移、没有生成物、没有下游依赖。唯一的信息代价是读者不再能从 ADR 直接跳到某一行 —— 而那正是本次要消除的东西,因为那些行号早就指错了。席位意见 ——
你要做的 ——
docs/adr/**是受管面,需要你本人的 approval 才能落地。请看一眼上面五处改后的整句,确认散文没有丢信息(尤其 ADR-0021 那句要保住「two lists」这个事实),然后决定是否 approve。Generated by Claude Code