You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[finding] the shipped filter-preset-ordering-comparand-refused migration entry names page filter and component filter as FilterConditionSchema carriers — both are ViewFilterRuleSchema rule arrays, so a safeParse sweep there finds nothing and only the lint refuses #19778
① — a shipped upgrade instruction that sends an upgrader to a sweep that cannot find the shape on two of the carriers it names.
Filed by the domain:spec execution seat 1 (seat post #6017, session_013RDBh5DqXd2xnLwvHLgLFr). ⛔ Unlabelled beyond finding, ⛔ ungraded, ⛔ unrouted. Surfaced as a non-blocking note by the at-tier reviews of PR #19752 (card #19523, the sibling entries of the same family), out of that PR's scope by design. Re-read at source by this seat on origin/maine99a14ceae before filing.
… a $gt / $gte / $lt / $lte value or a $between endpoint on any carrier of FilterConditionSchema (dashboard widget filter, dataset filter, report runtimeFilter, page filter, component filter, rollup filter), a greater_than / less_than / before / after / between view filter rule value, or an ordering [field, op, value] filter triple
and its reason says 「the schema door and the @objectstack/lint filter-preset-comparand rule refuse it at publish」. The entry ships: registry.ts carries it under step 18, and MIGRATIONS_BY_MAJOR is exported into dist.
packages/spec/src/ui/component.zod.ts:1211 and :1247 — filter: z.array(ViewFilterRuleSchema), and the same spelling on the other component filter keys in that file.
FilterConditionSchema appears in page.zod.ts1 time and in component.zod.ts2 times, and all three are docblock history: 「… alone said FilterConditionSchema, the MongoDB-style record …」, the ui#6206-B convergence. ⇒ ⛔ No page or component filter is a FilterConditionSchema carrier today.
The schema door that refuses a bare preset is checkBarePresetOrderingComparands, and its only caller is FilterConditionSchema's superRefine (packages/spec/src/data/filter.zod.ts:1717). ViewFilterRuleSchema has no preset check: isDateRangePresetName has 0 callers under packages/spec/src/ui/. Lit control: filter.zod.ts has 2 call sites.
The lint does reach them. packages/lint/src/validate-preset-comparands.ts walks pages among its eight surfaces and judges rule-form values with ORDERING_RULE_OPS. Its own header says the schema door is 「Mongo-shape carriers only」 and that the lint 「additionally reaches the shapes no FilterConditionSchema parse touches — view filter rules」.
⇒ On a page filter or a component filter, a greater_than: 'last_30_days' rule is refused by the lint only. An upgrader who follows the entry and sweeps stored pages with a schema parse, reading them as FilterConditionSchema carriers where 「the schema door … refuses it」, finds nothing and concludes the sweep is clean. That is the failure #19523 corrected in the sibling entries of this family.
⛔ What is NOT claimed
⛔ No parse probe was run by this seat. The claim rests on the declarations and on the one caller of the schema-door refinement, read at source. The dispatch's first act is the probe: a page filterBy rule with a preset ordering value, through PageSchema.safeParse and through the lint, with a dark control.
Repo-scoped issue search (mcp__github__search_issues), 「filter-preset-ordering-comparand-refused migration entry carrier list page filter component filter ViewFilterRuleSchema」: 6 results including closed. None names this entry. Nearest: #19514 (open, ViewFilterRuleSchema value shapes, with its PR #19750 touching three other step-18 entries but ⛔ not this one); #14406 (closed, record_picker.filter still FilterConditionSchema, the convergence this entry predates). Sibling: #19523, the same family's carrier-list defect in two other entries.
Dedupe words: filter-preset-ordering-comparand-refused carriers · page filter component filter FilterConditionSchema entry · preset comparand schema door rule arrays · migration entry carrier list stale ui#6206-B
① — a shipped upgrade instruction that sends an upgrader to a sweep that cannot find the shape on two of the carriers it names.
Filed by the
domain:specexecution seat 1 (seat post #6017,session_013RDBh5DqXd2xnLwvHLgLFr). ⛔ Unlabelled beyondfinding, ⛔ ungraded, ⛔ unrouted. Surfaced as a non-blocking note by the at-tier reviews of PR #19752 (card #19523, the sibling entries of the same family), out of that PR's scope by design. Re-read at source by this seat onorigin/maine99a14ceaebefore filing.What the entry says
packages/spec/src/migrations/entries/semantic/18.filter-preset-ordering-comparand-refused.ts,surface:and its
reasonsays 「the schema door and the @objectstack/lint filter-preset-comparand rule refuse it at publish」. The entry ships:registry.tscarries it under step 18, andMIGRATIONS_BY_MAJORis exported intodist.What the tree says
packages/spec/src/ui/page.zod.ts:578—filterBy: z.array(ViewFilterRuleSchema).optional().describe('Always-on page filter (base filter).')packages/spec/src/ui/component.zod.ts:1211and:1247—filter: z.array(ViewFilterRuleSchema), and the same spelling on the other componentfilterkeys in that file.FilterConditionSchemaappears inpage.zod.ts1 time and incomponent.zod.ts2 times, and all three are docblock history: 「… alone saidFilterConditionSchema, the MongoDB-style record …」, the ui#6206-B convergence. ⇒ ⛔ No page or component filter is aFilterConditionSchemacarrier today.checkBarePresetOrderingComparands, and its only caller isFilterConditionSchema'ssuperRefine(packages/spec/src/data/filter.zod.ts:1717).ViewFilterRuleSchemahas no preset check:isDateRangePresetNamehas 0 callers underpackages/spec/src/ui/. Lit control:filter.zod.tshas 2 call sites.packages/lint/src/validate-preset-comparands.tswalkspagesamong its eight surfaces and judges rule-form values withORDERING_RULE_OPS. Its own header says the schema door is 「Mongo-shape carriers only」 and that the lint 「additionally reaches the shapes noFilterConditionSchemaparse touches — view filter rules」.⇒ On a page filter or a component filter, a
greater_than: 'last_30_days'rule is refused by the lint only. An upgrader who follows the entry and sweeps stored pages with a schema parse, reading them asFilterConditionSchemacarriers where 「the schema door … refuses it」, finds nothing and concludes the sweep is clean. That is the failure #19523 corrected in the sibling entries of this family.⛔ What is NOT claimed
filterByrule with a preset ordering value, throughPageSchema.safeParseand through the lint, with a dark control.registry.tsmust be regenerated, as it was on fix(spec): correct both $between-endpoint entries' carrier claims and detectors #19752.Dedupe
Repo-scoped issue search (
mcp__github__search_issues), 「filter-preset-ordering-comparand-refused migration entry carrier list page filter component filter ViewFilterRuleSchema」: 6 results including closed. None names this entry. Nearest: #19514 (open,ViewFilterRuleSchemavalue shapes, with its PR #19750 touching three other step-18 entries but ⛔ not this one); #14406 (closed,record_picker.filterstillFilterConditionSchema, the convergence this entry predates). Sibling: #19523, the same family's carrier-list defect in two other entries.Dedupe words:
filter-preset-ordering-comparand-refused carriers·page filter component filter FilterConditionSchema entry·preset comparand schema door rule arrays·migration entry carrier list stale ui#6206-BGenerated by Claude Code