@@ -8154,11 +8154,14 @@ const step18: MigrationStep = {
81548154 + 'contract), and its `filter` door refuses the form: at `dataSource.filter` on the page\'s '
81558155 + 'next save; at a block\'s `properties.filter` — like `properties.defaultFilters`, a key of '
81568156 + 'the open `properties` bag — only as the component-props gate\'s advisory finding '
8157- + '(`os validate`), since a re-save through the metadata API is not refused there. For a '
8158- + 'combinator record that refusal names the combinator and says why no rule spells it. '
8159- + '`os migrate meta --stored` lists each filter left as stored as a TODO under its row, '
8160- + 'naming the block and what blocks the rewrite; a row whose only finding is such a TODO is '
8161- + 'reported `skipped`, and the run\'s exit code does not change for it.',
8157+ + '(os validate, os build, os lint), since a re-save through the metadata API is not '
8158+ + 'refused there. For a combinator record that refusal names the combinator and says why no '
8159+ + 'rule spells it. `os migrate meta --stored` lists each such filter as a TODO under its '
8160+ + 'row, naming the block and what blocks the rewrite (a value that is not a record or AST '
8161+ + 'form at all — a bare string or number one of the former `z.unknown()` doors took — is '
8162+ + 'neither converted nor reported, and a row carrying nothing else reads as already on '
8163+ + 'protocol); a row whose only finding is such a TODO is reported `skipped`, and the run\'s '
8164+ + 'exit code does not change for it.',
81628165 acceptanceCriteria:
81638166 '`ElementDataSourceSchema.safeParse({ object, filter: [{ field: \'status\', operator: '
81648167 + '\'equals\', value: \'active\' }] })` succeeds and the parsed `filter` is the same rule '
0 commit comments