Skip to content

Commit b610eab

Browse files
docs(design): predicate convergence — T2's measurement under B, and the S5 face table re-read (#21600)
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](https://claude.ai/code/session_017ErfyP2Rx7XWHJA27QjyUi)_ --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent 9e9d693 commit b610eab

1 file changed

Lines changed: 167 additions & 11 deletions

File tree

0 commit comments

Comments
 (0)