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
Sweep card (maintainer-directed, 2026-08-07). One claim, one PR, two Fixes.
Admission criterion
The X / XParsed house convention (bare name = z.input = what the author writes; XParsed = z.infer = post-parse shape, per shared/retry-policy.zod.ts's JSDoc) is not applied in this partition — the bare name is wrongly z.infer, or the author-side twin is missing entirely.
Shipped precedents to copy, not re-derive: #4963 / PR #5514 (automation/etl.zod.ts, nine aliases) and #5551 (integration/connector.zod.ts, twenty aliases, closed 2026-08-07).
seven X / XParsed pairs where both sides are z.infer — pure synonyms, so the convention conveys nothing; plus ScreenFieldConfig missing its Parsed twin
only z.infer (output) exported, no Input twin — cloud-repo callers are forced to hand-write the defaults zod fills in
Same failure mode in both: the one bare annotation an author would naturally reach for (const x: Connector = {…}) does not compile, because defaulted keys are required in the parsed view.
Two things to settle inside the PR (state both explicitly)
Enum-class aliases are exempt — z.input and z.infer are identical for them; flipping is churn. Only object-shaped aliases have a real difference. Enumerate which members were exempt and why.
Zero changes beyond the two partitions; git diff --stat corresponds to the checklist.
⛔ 150 个已发布 schema 没有配套的 export type 别名,reference 页给不出 import type 示例 #4593 is deliberately NOT a member. It reads as the same family but is a different class: it adds ~150 new export type aliases, expanding api-surface.json — a public-surface expansion its own body says needs a maintainer ruling (补齐 / 按需补 / 维持现状). It waits for that ruling; do not absorb it.
Type exports move api-surface.json ⇒ os-regen four-step序 on every sync; check:authorable-surface green as the anchor assertion; ⛔ never hand-edit the anchor.
Review shape
By checklist: one line per alias touched — name | before (z.infer/absent) | after (z.input + XParsed twin) — with the exempt enum list stated separately.
Filed unassigned. Member issues keep pm:queue but are excluded from batch selection while this card is open; both close with the PR.
Sweep card (maintainer-directed, 2026-08-07). One claim, one PR, two
Fixes.Admission criterion
Shipped precedents to copy, not re-derive: #4963 / PR #5514 (
automation/etl.zod.ts, nine aliases) and #5551 (integration/connector.zod.ts, twenty aliases, closed 2026-08-07).automation/execution.zod.tsX/XParsedpairs where both sides arez.infer— pure synonyms, so the convention conveys nothing; plusScreenFieldConfigmissing itsParsedtwinspec/src/cloud/request typesz.infer(output) exported, no Input twin — cloud-repo callers are forced to hand-write the defaults zod fills inSame failure mode in both: the one bare annotation an author would naturally reach for (
const x: Connector = {…}) does not compile, because defaulted keys are required in the parsed view.Two things to settle inside the PR (state both explicitly)
z.inputandz.inferare identical for them; flipping is churn. Only object-shaped aliases have a real difference. Enumerate which members were exempt and why.Scope discipline
git diff --statcorresponds to the checklist.export typealiases, expandingapi-surface.json— a public-surface expansion its own body says needs a maintainer ruling (补齐 / 按需补 / 维持现状). It waits for that ruling; do not absorb it.Landing constraints
Type exports move
api-surface.json⇒ os-regen four-step序 on every sync;check:authorable-surfacegreen as the anchor assertion; ⛔ never hand-edit the anchor.Review shape
By checklist: one line per alias touched — name | before (
z.infer/absent) | after (z.input+XParsedtwin) — with the exempt enum list stated separately.Filed unassigned. Member issues keep
pm:queuebut are excluded from batch selection while this card is open; both close with the PR.