Repository navigation
Commit 117d34d
feat(metadata-core,metadata-protocol,metadata,platform-objects,spec)!: sys_view_definition retires as inert (ADR-0131 D13, C5 stage S1) (#22374)
Refs #15206 (S1)
Clause-②: no
ADR-0131 C5, stage S1: `sys_view_definition` retires as inert (D13, card
item 1b). This PR closes no card; the card stays open for S2 to S6.
## What this PR does
`sys_view_definition` was declared for runtime-authored views (ADR-0017)
and never used for them. No framework code writes or reads its rows. The
console's view doors write the ADR-0005 `view` overlay in `sys_metadata`
through the metadata API. This PR removes the object and everything that
existed only to serve it.
- **Deleted.** The object and its test (`metadata-core`), the
`kernel:ready` active-row index migration and its test
(`metadata-protocol/src/migrations/view-definition-active-index.ts`),
and the runbook
`scripts/migrate/overlay-views-to-sys-view-definition.md`.
- **Both registrations.** Registration A (`assembleMetadataProtocol`'s
`registerApp`) and registration B (`MetadataPlugin`'s
`queryableMetadataObjects`) each provision the four metadata-storage
objects.
- **The repair hook.** The `kernel:ready` hook in
`assembleMetadataProtocol` arms only the `sys_setting` row-identity
index and the seed/API tenancy backfill.
- **The pre-flight.** `runtime-index-preflight.ts` loses its
`idx_sys_view_def_active` row, so `os migrate duplicates` reports three
runtime-index entries.
- **Exports removed.**
- `SysViewDefinitionObject`, from `metadata-core`, the
`platform-objects` root and `platform-objects/metadata`.
- From `metadata-protocol`: `ensureViewDefinitionActiveIndex`,
`resolveIndexExec`, `buildActiveIndexSql`, `VIEW_DEFINITION_TABLE`,
`VIEW_ACTIVE_INDEX_NAME`, `VIEW_ACTIVE_PROBE_INDEX_NAME`,
`VIEW_ACTIVE_INDEX_COLUMNS`, and the three `EnsureViewIndex*` types.
- `classifyIndexFailure` and `IndexExec` stay exported, now from
`partial-index-probe.js` (see Deviations).
- **spec.** The name leaves
`PLATFORM_OBJECTS_BY_PACKAGE['metadata-core']`. A new ADR-0087 D3 entry,
`18.sys-view-definition-retired.ts`, lands with one step-18 rationale
fragment, and `registry.ts` is regenerated by `gen:migration-registry`.
- **Generated.**
- The platform-objects translation bundles, regenerated by `pnpm
i18n:extract`. Seven files lose 295 lines, one contiguous
`sys_view_definition` block each, and nothing else moves.
- The tenancy census, regenerated by its own `--write`.
- **Docs.** `drivers.mdx`, `cli.mdx`, `packages.mdx` and the checklist
item `cli.migrate-duplicates-inventory` (revision 6) now describe two
migrations and three indexes.
## Measured first
**Positive control** (`git grep -l sys_view_definition`). The control
word `sys_metadata` runs over the same pathspec.
| tree | `-- 'packages/**/src'` (as written on the card) | `--
':(glob)packages/**/src/**'` | control `sys_metadata`, same glob |
repo-wide |
| :-- | --: | --: | --: | --: |
| before, `origin/main` `41d0d4038c` | 0 (vacuous: the control reads 0
too) | **41** | 769 | **65** |
| after, this branch `26a4702abf` | — | **31** | 769 | **52** |
Before equals stage 0's census (41 under `src`, 65 repo-wide), measured
at `3599fef123`, so nothing drifted. The census missed one importer,
because it imports the camelCase symbol and has no snake-case hit:
`packages/metadata/src/migrations/migrate-project-id-to-environment-id.test.ts`
imports `SysViewDefinitionObject`. It is edited here.
The 31 files that still mention the name after the change, by class:
- **Retirement pins (6).**
- `metadata-protocol` `plugin.metadata-objects-retired.test.ts` (new)
and `runtime-index-preflight.test.ts`.
- `metadata` `plugin.test.ts`.
- `spec` `platform-object-names.test.ts`.
- `cli` `duplicates.contract.test.ts` and
`duplicates.integration.test.ts`.
- **The ADR-0087 record (2).** The spec entry and `registry.ts`.
- **Retirement notes in comments (14).**
- `metadata-core` `objects/index.ts`.
- `metadata-protocol` `index.ts`, `plugin.ts`, `overlay-index.ts`,
`partial-index-probe.ts`, `runtime-index-preflight.ts` and
`sys-setting-identity-index.ts`.
- `metadata` `plugin.ts`.
- `platform-objects` `bundle-ownership.test.ts`, and
`objects-es-es-echo-decisions.test.ts`,
`objects-ja-jp-echo-decisions.test.ts` and
`objects-zh-cn-echo-decisions.test.ts` (a note beside each corrected
size pin, added in the final commit).
- `cli` `schema-migrate.host-composition.integration.test.ts` and
`platform-migrations-arming.integration.test.ts`.
- **Historical, left as written (9).**
- `cli` `schema-migrate.ts`, `schema-migration-plugins.ts` and
`schema-migrate.teardown.integration.test.ts`: past-tense measurements.
- `objectql` `dangling-reference-audit.ts` and its test: the pre-#4747
symptom.
- Two `platform-objects` echo-decision reasons: decision records that
name the twin they copied.
- The `spec` `view-item-owner-hidden-retirement.test.ts` fixture
comment.
- `driver-sql` `declared-index-retired-keys.test.ts`: an index-shape
case that cites where the shape came from.
Repo-wide, the remainder is the changeset, the checklist history row,
ADR-0017, ADR-0029, ADR-0120 and ADR-0131, the v17 release notes, the
CHANGELOGs, and one historical comment in
`cli/test/migrate-apply-refuses-before-ddl.e2e.test.ts`.
**No writer or reader of the rows.** Every non-test, non-generated
source hit on `origin/main` is a comment, a declaration, a registration,
or the migration's own SQL. The only statements that touched rows were
the active-row migration's presence and duplicate probes and the
pre-flight's copy of the duplicate probe. One non-test comment claimed a
reader that does not exist (`metadata-manager.ts`: "merged in by the
REST layer"; `packages/rest` has 0 hits). It is corrected here.
**No importer of the removed exports.**
- **This repo:** 0 importers outside `metadata-protocol` and
`metadata-core`/`platform-objects`, other than the test edited here. The
CLI tests only matched the migration's name string in the pre-flight
output.
- **objectui:** 0 hits for every removed name at `origin/main`
`b1f0dcc00` and at the pinned `.objectui-sha` `a58626c88d`, against 93
for the control `sys_metadata` at both. Its only `metadata-protocol`
import is `ObjectStackProtocolImplementation`.
**Entry export sets.**
- `metadata-protocol` `src/index.ts`: 0 names added; the ten listed
above removed.
- `metadata-core` `objects/index.ts` and `platform-objects`
`metadata/index.ts`: 0 added; `SysViewDefinitionObject` removed.
- In the built `metadata-protocol/dist/index.d.ts`, every removed name
reads 0 hits, and `classifyIndexFailure` and `IndexExec` read 2 and 6.
- `check:api-surface`: "public API surface + factory signatures
unchanged".
Nothing widens, so `Clause-②: no` stands.
**What an existing database needs.** Measured with the built CLI on a
scratch SQLite project. The database carried a leftover
`sys_view_definition` table with one row. A control orphan column sat on
`sys_metadata_audit`.
- A fresh `os migrate apply` creates no `sys_view_definition`. It
creates eight platform tables plus the app table.
- `os migrate plan --json` reports the orphan column as
`unmapped_column` and says nothing about the table in `changes`. With a
host config present, the plan's informational `unmanagedTables` sweep
lists `sys_view_definition`.
- `os migrate apply --allow-destructive --yes` dropped the orphan
column. It left the table and its row in place.
So no platform path drops the table. The ADR-0087 entry and the
changeset say that, and they leave the drop to the operator, by hand.
Stage 0's F4 ("the physical drop is the operator's `os migrate apply
--allow-destructive`") holds for a column, not for a whole table.
## Pins
- **Absence of the object at registration A.**
`plugin.metadata-objects-retired.test.ts` checks that `registerApp`
carries exactly the four objects. The `kernel:ready` hook, run against a
recording seam, issues statements, and none of them names the table. The
anti-vacuity check is that the hook did issue statements.
- **Absence at registration B.** `plugin.test.ts` checks
`MetadataPlugin` with the same exact-set assertion.
- **The registry.** `platform-object-names.test.ts` checks that
`PLATFORM_OBJECTS_BY_PACKAGE['metadata-core']` equals the four names,
and that `isPlatformProvidedObjectName('sys_view_definition')` is false.
The existing bidirectional conformance test still scans every
`*.object.ts`.
- **`runtimeIndexProbes()`.** On every client (none, sqlite, pg,
mysql2), it answers exactly the three `migration:table:index` triples
that remain. The pre-flight fixture keeps a damaged
`sys_view_definition` table, and the report never names it.
- **The census.** `registered` goes 84 → 83 and `inReach` goes 49 → 48,
measured by the generator and held by
`check:platform-object-tenancy-census`.
**Reverse verification.** This ran from the committed tree at
`26a4702abf`, as a one-shot script with a `trap` restore. No file of it
is committed.
- **The mutation re-adds `SysViewDefinitionObject`.**
- Its module comes back into the index from `41d0d4038c`.
- Its export comes back into `metadata-core` through
`scripts/ablation-replace.mjs`.
- It goes back into `queryableMetadataObjects` (import and array)
through `ablation-replace.mjs`.
- On disk, the anchors fell 1 → 0 and the blobs changed.
- **Proof it reached the artifact.** `metadata-core` was rebuilt, and
`ablation-dist-preflight.mjs @objectstack/metadata-core
SysViewDefinitionObject` found the marker in 4 built files.
- **Red under the mutation:**
- `metadata` `plugin.test.ts`: 1 failed, the new absence pin (`expected
[ 'sys_metadata', …(4) ] to not include 'sys_view_definition'`);
- `check-platform-object-tenancy-census.mjs`: exit 1
(`totals.registered: committed 83 -> tree 84`, `+ sys_view_definition
(in) is new to the population`);
- `spec` `platform-object-names.test.ts`, project `repo`: 1 failed
(`registry group "metadata-core" is out of date`).
- **The restore.** `ablation-replace.mjs --restore` brought both files
back: blob == HEAD, `git diff HEAD` empty, `git status` empty. The
module was removed from the index. `metadata-core` was rebuilt, and
`--absent` found the marker in none of the 12 built files, with a clean
tree.
- **Green after the restore.** 18/18, census OK at 83/48, 11/11.
- **Direction.** It was the ordinary red. The census reads the tracked
object modules, not the registrations, so it went red on the restored
module. The absence pin went red on the registration.
- **A voided first attempt.** The first run of this script was a no-op
on the export line, because the replacement re-contained the anchor and
the tool refused it. Its spec leg also named the wrong vitest project,
so it selected nothing. Its readings were discarded, and the run above
is the second one.
## Deviations from stage 0's S1 plan
1. **`classifyIndexFailure` and `IndexExec` stay exported.** They rode
out on the retired module's export block, but neither is specific to it.
Both live in `partial-index-probe.ts`, and `IndexExec` is the parameter
type of the still-exported `ensureSysSettingIdentityIndex` and
`resolveSysSettingIndexExec`. They are re-pointed with byte-identical
declarations, so nothing about them narrows.
2. **F4 is corrected for a table, as measured above.** The entry does
not promise a destructive apply that never comes.
3. **Out of the census, edited:**
- the camelCase importer named above;
- the three `objects-*-echo-decisions` ledger counts: es-ES 46 → 45,
ja-JP 36 → 35 and zh-CN 35 → 34 echoes, because each lost the object's
bare `ID` leaf;
- `content/docs/plugins/packages.mdx`, which also counted the
MySQL-unbuildable indexes.
4. **In the census, left:** the `driver-sql` index-shape case, the two
echo-decision reasons, and the `spec` fixture comment, for the reasons
in the table above.
5. **The duplicates e2e changed its runtime half.** It is re-premised on
two ACTIVE package-less `sys_metadata` overlays with a NON-NULL
organization. While building it, I found that a NULL-organization pair
is reported `blocked` by the overlay pre-flight, but the index CREATE
accepts it. That is out of scope here (see Acceptance notes).
## Changeset and ADR-0087
`.changeset/15206-sys-view-definition-retired.md` declares `minor` on
`metadata-core`, `metadata-protocol`, `metadata`, `platform-objects` and
`spec`, with the BREAKING banner and a FROM → TO mapping. It carries
`Clause-②: no (narrowing)` and the disposition `registered
sys-view-definition-retired`. Changesets is in pre mode
(`.changeset/pre.json`, tag `next`), and the fixed group is already
majored by the v18 opening marker, so this ships as an `18.0.0-next.N`.
`runtime` changes one doc comment and `cli` changes tests only, so
neither carries a changeset.
## Tests and gates
The final head is `26a4702abf`. Each reading names the commit it ran at.
**Suites.**
- **metadata-core:** test 17 files, 421 passed; typecheck exit 0
(`41dbe7962f`; the later merge did not touch the package).
- **metadata-protocol:** test 223 files passed, 3 skipped, 28313 tests
passed, 19 skipped (`442e585e93`, after the merge); typecheck exit 0
(`41dbe7962f`). The pin files ran verbose: 2 files, 10 passed.
- **metadata:** test 58 files, 871 passed; typecheck exit 0
(`41dbe7962f`). `plugin.test.ts` ran verbose: 18 passed (`442e585e93`).
- **platform-objects:** test 67 files, 1076 passed (`26a4702abf`);
typecheck exit 0 (`442e585e93`).
- **spec:**
- project `local`: 626 files, 18740 passed, 1 todo (`442e585e93`);
- project `repo`: 54 files, 915 passed (`26a4702abf`);
- typecheck: exit 0 (`442e585e93`);
- `check:generated`: all 15 artifacts up to date after `spec` build
(`41dbe7962f`).
- **cli** (all at `26a4702abf`):
- `--project unit`: 268 files, 3951 passed;
- `--project integration` over the five edited integration files: 5
files, 63 passed;
- typecheck: exit 0.
- **runtime:** typecheck exit 0 (one comment edited).
- **Dogfood** (`OS_TEST_SHARD=i/3`, `26a4702abf`, after a full `turbo
run build --filter=!@objectstack/docs`, 72/72 tasks):
- 1/3: 76 files, 567 passed;
- 2/3: 76 files, 541 passed, 1 skipped;
- 3/3: 74 files passed, 1 skipped, 662 passed, 8 skipped.
**Gates.**
- `node scripts/pm/dispatch-gates.mjs --commands` (no paths) at
`26a4702abf` derived 128 commands. All 128 ran, all exited 0. `--ran`
with the exit codes recorded answers "128 derived, 128 run, 0
NOT-MEASURED, 0 UNRUN".
- Three of them needed the full build first. On the pre-merge head
`41dbe7962f` they exited 3 (prerequisite not met) and are not counted;
at `26a4702abf` they ran green. They are `check:skill-examples`,
`check:dual-build-cjs-loads` and `check:i18n-coverage` ("13 config(s), …
none new").
- Verdict lines:
- `check:adr-0087-registration`: `[BREAKING+bang+clause-②-narrowing]
registered sys-view-definition-retired (new here:
sys-view-definition-retired)`;
- `check:changeset-no-major`: "This diff introduces no `major` bump".
The level axis is NOT APPLICABLE locally, because there is no
`pull_request` payload;
- `check:empty-changeset`: OK;
- `check:platform-object-tenancy-census`: "83 platform-namespace
objects, 48 in the machinery's reach, 35 outside it";
- `check:i18n`: all 9 packages in sync;
- `check:platform-checklist`: OK;
- `check:nul-bytes`: OK;
- `spec check:api-surface`: unchanged;
- `check:doc-authoring`: clean.
**Lint.** This is a measured narrowing, not the CI-owned repo sweep.
- **Population.** `eslint.config.mjs` matches
`**/*.{ts,tsx,mts,cts,js,jsx,mjs,cjs}`.
- **What ran.** The 38 added or modified `.ts`/`.mjs` files in this
diff, `eslint --no-inline-config --format json`: 38 files, 0 errors, 0
warnings, exit 0.
- **Why the rest cannot move.** The config never enables type-aware
linting (`eslint.config.mjs:328`), so this diff cannot change the
verdict on any untouched file. `tsc` is green across the packages that
imported the deleted modules.
## Cross-lane paths
These are declared on #6017 (`domain:spec`), #6024 (`domain:cli`) and
#6023 (`domain:devx`).
- **spec:**
- `packages/spec/src/system/constants/platform-object-names.ts` and its
test;
-
`packages/spec/src/migrations/entries/semantic/18.sys-view-definition-retired.ts`;
- `packages/spec/src/migrations/registry.ts`.
- **cli** (tests and comments):
-
`packages/cli/src/commands/migrate/data-commands.absent-database.integration.test.ts`,
`duplicates.contract.test.ts` and `duplicates.integration.test.ts`;
-
`packages/cli/src/utils/platform-migrations-arming.integration.test.ts`
and `schema-migrate.host-composition.integration.test.ts`.
- **runtime** (one comment): `packages/runtime/src/standalone-stack.ts`.
- **devx:**
- `content/docs/data-modeling/drivers.mdx`,
`content/docs/deployment/cli.mdx` and
`content/docs/plugins/packages.mdx`;
- `docs/qa/platform-checklist/areas/cli.json`;
- `scripts/platform-object-tenancy-census.json`;
- `scripts/migrate/overlay-views-to-sys-view-definition.md` (deleted);
- `.changeset/15206-sys-view-definition-retired.md`.
## Serial constraints
`registry.ts` and the census were regenerated after this branch's final
merge of `main` (`442e585e93`). Both came out byte-identical, with no
text merge. After that merge, `main` gained four commits. None of them
touches `registry.ts`, the census or any file in this diff (measured
with `git diff --name-only`). This PR does not touch #22307's `objectql`
`plugin.ts` or `registry.ts`.
## Acceptance notes
- **Out of scope, reproducible:** the overlay pre-flight reports
`blocked` for rows its index accepts.
- **Setup.** On a SQLite database, insert two ACTIVE package-less
`sys_metadata` overlays with the same type and name, both with
`organization_id` NULL.
- **What `os migrate duplicates` says.**
`idx_sys_metadata_overlay_active` reads `status: blocked` with
`organization_id: null` and `rowCount: 2`, and the summary reads
`runtimeIndexesBlocked: 1`.
- **What the index does.** The migration's own probe-name `CREATE UNIQUE
INDEX … (type, name, organization_id, COALESCE(package_id, '')) WHERE
state = 'active'` succeeds on the same file, because the organization
key part is bare and NULL-distinct (#6418). The control pair, with
organization `org_x`, is refused, `UNIQUE constraint failed`.
- **Where the two disagree.** The duplicate probe's `GROUP BY` folds
NULLs that the index keeps distinct. The pre-existing unit fixture in
`runtime-index-preflight.test.ts` pins the NULL-organization group as
`blocked`.
- This goes to the seat to file. The dedupe words are in the report.
- **Out of tree:** cloud references `sys_view_definition` in
`control-plane-permissions.ts` and in its platform-global list (stage
0's census; ADR-0131 section 7). Cloud carries that as C10. There is no
cloud checkout in this container, so its symbol imports are NOT MEASURED
here.
- **Left as historical:** the CHANGELOGs, ADR-0017, ADR-0029, ADR-0120
and ADR-0131, and the v17 release notes. ADR-0017's runbook pointer,
written in backticks and not as a link, now names a deleted file. The
ADR already carries the amendment note, and editing it is Tier H.
- **Not run:** `cli/test/migrate-apply-refuses-before-ddl.e2e.test.ts`,
which is unedited and carries one historical comment. Neither vitest
project selects it as named (`FILTER SELECTED NOTHING`).
---
_Generated by [Claude
Code](https://claude.ai/code/session_01EUBvqtauTDmHi2ZgY759p2)_
---------
Co-authored-by: Claude <noreply@anthropic.com>1 parent bb4f5cc commit 117d34d
49 files changed
Lines changed: 518 additions & 1964 deletions
File tree
- .changeset
- content/docs
- data-modeling
- deployment
- plugins
- docs/qa/platform-checklist/areas
- packages
- cli/src
- commands/migrate
- utils
- metadata-core/src/objects
- metadata-protocol/src
- migrations
- metadata/src
- migrations
- platform-objects
- scripts
- src
- apps/translations
- audit
- metadata
- runtime/src
- spec/src
- migrations
- entries/semantic
- system/constants
- scripts
- migrate
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
376 | 376 | | |
377 | 377 | | |
378 | 378 | | |
379 | | - | |
| 379 | + | |
380 | 380 | | |
381 | 381 | | |
382 | 382 | | |
| |||
471 | 471 | | |
472 | 472 | | |
473 | 473 | | |
474 | | - | |
| 474 | + | |
475 | 475 | | |
476 | | - | |
477 | | - | |
| 476 | + | |
| 477 | + | |
478 | 478 | | |
479 | 479 | | |
480 | 480 | | |
481 | 481 | | |
482 | | - | |
483 | | - | |
| 482 | + | |
| 483 | + | |
484 | 484 | | |
485 | 485 | | |
486 | 486 | | |
487 | 487 | | |
488 | | - | |
489 | 488 | | |
490 | 489 | | |
491 | | - | |
| 490 | + | |
492 | 491 | | |
493 | 492 | | |
494 | 493 | | |
| |||
497 | 496 | | |
498 | 497 | | |
499 | 498 | | |
500 | | - | |
| 499 | + | |
501 | 500 | | |
502 | 501 | | |
503 | 502 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1532 | 1532 | | |
1533 | 1533 | | |
1534 | 1534 | | |
1535 | | - | |
| 1535 | + | |
1536 | 1536 | | |
1537 | | - | |
| 1537 | + | |
1538 | 1538 | | |
1539 | 1539 | | |
1540 | 1540 | | |
1541 | 1541 | | |
1542 | | - | |
1543 | 1542 | | |
1544 | 1543 | | |
1545 | 1544 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
156 | 156 | | |
157 | 157 | | |
158 | 158 | | |
159 | | - | |
| 159 | + | |
160 | 160 | | |
161 | 161 | | |
162 | 162 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1102 | 1102 | | |
1103 | 1103 | | |
1104 | 1104 | | |
1105 | | - | |
| 1105 | + | |
1106 | 1106 | | |
1107 | 1107 | | |
1108 | 1108 | | |
| |||
1122 | 1122 | | |
1123 | 1123 | | |
1124 | 1124 | | |
1125 | | - | |
| 1125 | + | |
1126 | 1126 | | |
1127 | 1127 | | |
1128 | 1128 | | |
| |||
1148 | 1148 | | |
1149 | 1149 | | |
1150 | 1150 | | |
1151 | | - | |
| 1151 | + | |
1152 | 1152 | | |
1153 | | - | |
| 1153 | + | |
1154 | 1154 | | |
1155 | 1155 | | |
1156 | 1156 | | |
| |||
1201 | 1201 | | |
1202 | 1202 | | |
1203 | 1203 | | |
| 1204 | + | |
| 1205 | + | |
| 1206 | + | |
| 1207 | + | |
| 1208 | + | |
| 1209 | + | |
1204 | 1210 | | |
1205 | 1211 | | |
1206 | 1212 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
207 | 207 | | |
208 | 208 | | |
209 | 209 | | |
210 | | - | |
| 210 | + | |
211 | 211 | | |
212 | 212 | | |
213 | 213 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
134 | 134 | | |
135 | 135 | | |
136 | 136 | | |
137 | | - | |
| 137 | + | |
138 | 138 | | |
139 | 139 | | |
140 | 140 | | |
141 | 141 | | |
142 | 142 | | |
143 | 143 | | |
144 | 144 | | |
145 | | - | |
| 145 | + | |
146 | 146 | | |
147 | 147 | | |
148 | 148 | | |
| |||
231 | 231 | | |
232 | 232 | | |
233 | 233 | | |
234 | | - | |
| 234 | + | |
235 | 235 | | |
236 | 236 | | |
237 | 237 | | |
| |||
253 | 253 | | |
254 | 254 | | |
255 | 255 | | |
256 | | - | |
| 256 | + | |
257 | 257 | | |
258 | 258 | | |
259 | 259 | | |
260 | 260 | | |
261 | 261 | | |
262 | 262 | | |
263 | | - | |
264 | 263 | | |
265 | 264 | | |
266 | 265 | | |
| |||
0 commit comments