Skip to content

docs(design): predicate convergence — T2's measurement under B, and the S5 face table re-read - #21600

Merged
objectstack-fleet[bot] merged 2 commits into
mainfrom
claude/issue-5930-t2-measurement
Oct 3, 2026
Merged

objectstack-fleet[bot] merged 2 commits into
mainfrom
claude/issue-5930-t2-measurement

Conversation

@objectstack-fleet

Copy link
Copy Markdown
Contributor

Part of #5930
Clause-②: no

The card stays open: this PR delivers the measurement that ruling 5902355785 gates T2 on, and a recommendation. The T2 decision is the seat's to take to the director, so it is not made here.

One file changes, docs/design/predicate-compilation-convergence.md (+167 / -11). No code, ADR, test or gate file is touched, and nothing publishes (skip-changeset).

What changes

1. New §2.6, T2's measurement: the rulings implemented under B

Every count was taken at origin/main a7ab047cf6, with §2.1's own definitions: a round is one os-dev-report comment on a card, and face files are §1.1's census files edited in source, tests not counted.

Ruling implemented after cfa931535 Cards Rounds Face files (distinct)
$empty (§2.1 baseline, before B) 4 13 13
last supported day (§2.1 baseline, before B) 2 3 10
temporal comparand door (§2.1 baseline, at a seam) 2 1 0
the nested-relation filter is served, ruling 5907789183 2 (+2 text cards) 6 (+2) 4, all in service-analytics; 0 engine-fed
the RLS write check judges the stored form, ruling 5933322270; marked: it arose inside this program 4 6 2
  • Face files fell. Rounds did not fall: they went to test plumbing, a serial wait, a measure-first stop and its prerequisite, and a fold a claim had set aside, not to per-face copies of the meaning.
  • None of the six face-file edits is of a class T2 removes. The shared lowering (filter-lowering.ts) has had no commit since cfa931535.
  • 23 more candidates are counted as fix-class cards, each in its own row, because each applies or extends a rule that already existed. One of them, #20280, is also marked partly before the window.
  • Of those 23, the JSON-stored column family is the window's largest per-face cost: 9 cards, 17 rounds, 9 distinct face files. It is the dialect class §3.3 and §3.7 leave per face, which T2 would not remove either.
  • One card, #20918, is the T1 limit §3.5 names: a face re-spelled a lowered null test.
  • The section carries the search: the scans, their hit counts, positive controls and reproduction commands. It also carries the window's face-file churn by class, and a four-axis recommendation: T2 not yet, with a machine-checkable restart condition.

2. §4.1's face table: the S5 column records what each deletion removed and what stayed

Each correction below was re-read at a7ab047cf6:

  • Header: "Deleted later (S5)" becomes "Deleted (S5), with the record".
  • F9, F10, F11 → deleted (#21417, commit 81e69cab3), as F4 and F7 already read. F9 and F10 keep assertDefinedComparands as a refusal door. F10 keeps fieldLeaves' $between arm as a structural split on the columns the lowering does not rewrite.
  • F1 → deleted (#20822 group 2, ceee88f46): the polarity quartet and the calendarDay*Rewrite calls. The row said assertDefinedComparands would go too. The tree still holds it, kept on a measured stop (seat answer 5922273550).
  • F2 → deleted (ceee88f46): toRemoteFilter's whole-day arms and the transport's polarity copy. The row said toRemoteFilter's $between arm would go too. The tree keeps it as a structural split, along with the transport's assertDefinedComparands (ACCEPT 5923842206).
  • F3 → deleted (group 1b, 8460592f0): the whole-day calls (8 sites).
  • F5 → deleted (group 1, 8fec76a2b): the where path's lteUpperBound (2 call sites). The row said all 5 whole-day calls would go. The tree keeps 3 in the dateRange window (memory-analytics.ts:1236), which is not a FilterCondition (ADR-0053 D-D1 as amended, item 8).
  • F6 → deleted (group 3a, 53ed3d109) and F8 → deleted (group 3b, e18fea6dc): the whole-day calls (4 sites each).
  • One note under the table: no face file holds a polarity copy, and the only whole-day call left in a face file is F5's window.

3. §4.4 item 5 points to §2.6.

Validation

All gates ran at head 9a2748aa. They were derived by node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstack with no paths, which gave the same 12 families as the dispatch:

  • node scripts/check-ci-filter-parity.mjs: exit 0
  • node scripts/check-closing-keyword-parity.mjs: exit 0, and --self-test: exit 0
  • node scripts/check-comment-mask-corpus.mjs: exit 0 (8084 files, 0 disagree)
  • pnpm --filter @objectstack/lint run check:doc-formula-expressions: exit 0. The first run exited 3 (PREREQUISITE NOT MET, formula and lint unbuilt). It passed after turbo run build --filter=@objectstack/formula --filter=@objectstack/lint under os-verify-lock (VERDICT command-exit 0).
  • pnpm check:cross-package-test-inputs, check:doc-authoring, check:driver-memory-census, check:gitlink-declared, check:nul-bytes (9949 files, no control bytes), check:refd-timer-probe, check:watch-hint-literal: each exit 0
  • node scripts/pm/dispatch-gates.mjs --ran: "12 derived, 12 run, 0 NOT-MEASURED, 0 UNRUN"

Changed lines: 178, under the 5000 human-merge threshold. The diff is not governed.

Acceptance notes

  • Ref. The counts are at a7ab047cf6. The dispatch read cc645f2385, and the one commit between the two edits no face file. Card threads were read over REST between 2026-10-03T12:40Z and 13:00Z.
  • The git-history.mjs bare-date trap. node scripts/pm/git-history.mjs log --since=2026-09-30 answered 410 commits where --since=2026-09-30T00:00:00Z answers 474, both under the receipt "since 2026-09-30". git reads a bare date at the current time of day, and the tool's usage line recommends that spelling. This PR used complete instants. The finding goes to the seat in the report, and is not filed here.
  • Classification. "Filter semantics" and the fix-class split are readings of each card's thread and triage grade, each named in its row. The face-file and round counts are mechanical.

Generated by Claude Code

claude added 2 commits October 3, 2026 13:04
…d what stayed

Rows F1-F3, F5, F6 and F8-F11 of the cost account's face table now name
the landed deletion and its commit, and the copies kept on measured stops
(assertDefinedComparands, the structural $between splits, the dateRange
window's own widening), re-read at origin/main a7ab047.

Claude-Session: https://claude.ai/code/session_017ErfyP2Rx7XWHJA27QjyUi
Co-authored-by: Claude <noreply@anthropic.com>
…st the cost baseline

A new subsection 2.6 counts, with the cost account's own definitions, the
filter-semantics rulings implemented on main after the step-2 seam
(cfa9315), at origin/main a7ab047: the nested-relation filter
(4 distinct face files, 6 rounds) and the RLS write check's stored form
(2 face files, 6 rounds), against the baseline's 13/13, 3/10 and 1/0.
It lists the 23 candidates counted as fixes in their own rows, the
face-file churn of the window by class, the method and the reproduction
commands, and a four-axis recommendation on starting T2 with a
machine-checkable restart condition. Section 4.4 item 5 points to it.

Claude-Session: https://claude.ai/code/session_017ErfyP2Rx7XWHJA27QjyUi
Co-authored-by: Claude <noreply@anthropic.com>
@github-actions github-actions Bot added the size/m label Oct 3, 2026
@objectstack-fleet objectstack-fleet Bot added the skip-changeset PR has no user-facing published change; bypasses the changeset gate label Oct 3, 2026
@github-actions github-actions Bot added the documentation Improvements or additions to documentation label Oct 3, 2026
@objectstack-fleet
objectstack-fleet Bot marked this pull request as ready for review October 3, 2026 15:21
@objectstack-fleet
objectstack-fleet Bot enabled auto-merge October 3, 2026 15:21
@objectstack-fleet
objectstack-fleet Bot added this pull request to the merge queue Oct 3, 2026
Merged via the queue into main with commit b610eab Oct 3, 2026
37 checks passed
@objectstack-fleet
objectstack-fleet Bot deleted the claude/issue-5930-t2-measurement branch October 3, 2026 15:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation size/m skip-changeset PR has no user-facing published change; bypasses the changeset gate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants