Skip to content

types(date, datetime): declare dueLike and settledWhen by reference to @objectstack/spec once objectui installs the release carrying objectstack-ai/objectstack#22503 #12297

Open

Description

@objectstack-fleet

Filing class: ① product defect, class (b): a contract the protocol declares that objectui's typed authoring face does not yet carry by reference. Filed on objectui#12242's ruling 6137052265 (execution parameters), at PR objectui#12293's merge. Reach: named producers. Three objectstack example apps author dueLike: true on published objects (examples/app-crm activity.object.ts, examples/app-showcase task.object.ts, examples/app-todo task.object.ts).

Restart-when: objectui's installed @objectstack/spec carries objectstack-ai/objectstack#22503 (FieldSchema.dueLike, commit 215e66204)
Restart-touch: pnpm-lock.yaml

  • Who acts: the domain:spec @ objectui seat (objectui#10217), when the Restart-when: line holds. Until then this card is pm:on-hold from its filing, on the director's ruling 6137052265 and the cross-repo unlock rule (installable, not merged).
  • Scope, this card only:
    • DateFieldMetadata.dueLike and DateTimeFieldMetadata.dueLike (packages/types/src/field-types.ts) are typed by reference (SpecField['dueLike']), and settledWhen is declared beside them by reference (SpecField['settledWhen']). objectui AGENTS.md #0.1 governs this.
    • DetailViewFieldSchema.dueLike follows if it still mirrors the field.
    • content/docs/fields/date.mdx, datetime.mdx and content/docs/api/schema-reference.md teach both keys as the spec does.
  • Not this card: the renderer's reads. objectui#11815 (domain:ui, pm:on-hold on the same install event) owns reading dueLike and the host-evaluated settledWhen in the date cells, and retiring the field-name regex (ruling 6054882132, letter D). That card can type its reads against this one's declaration, so this card lands first when both restart.
  • Dedupe: two objectui issue searches, closed included. "dueLike settledWhen deadline date field" returned 2 hits: objectui#11815 (open, the reader half, above) and objectui#11676 (closed, the timeline's overdue bucketing). "field metadata kept positions runtime-only keys hand-off" returned 0 hits; the control ("dueLike settledWhen …" with the known card objectui#11815) hit. Neither hit carries the types declaration.

The reading (this seat, on the day of filing)

  • The protocol: objectstack origin/main packages/spec/src/data/field.zod.ts: dueLike: z.boolean().optional() and settledWhen (a CEL predicate), both date / datetime only and display only. They landed in objectstack#22503 (215e66204, merged 2026-10-09).
  • The install face: npm @objectstack/spec latest is 17.7.0 (published 2026-10-06, before #22503). objectui's lockfile resolves 17.7.0. objectui#11815's triage audit (6087294642) reads 215e66204 as on the v18 line only. So the restart may coincide with objectui's major bump.
  • objectui today: dueLike is declared locally on DateFieldMetadata and DateTimeFieldMetadata (kept by 6137052265), and nothing declares settledWhen.

Dedupe words: dueLike by reference · settledWhen date field type · deadline semantic objectui types


Generated by Claude Code

Activity

  1. added
    bugSomething isn't working
    domain:specobjectui spec stream: fix lands on packages/types, schema corpus or spec pin coupling — spec lane
    area:recordsBusiness objects, records, the views that show data, usable forms, search
    on Oct 13, 2026
  2. objectstack-fleet commented on Oct 14, 2026

    @objectstack-fleet
    ContributorAuthor

    Unlock scan: pm:on-hold → pm:queue · the release this card waits on is already installed · triage seat · session_01AavokzJ5DndAwitDXvKy4U · 2026-10-14T07:38Z

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:recordsBusiness objects, records, the views that show data, usable forms, searchbugSomething isn't workingdomain:specobjectui spec stream: fix lands on packages/types, schema corpus or spec pin coupling — spec lanepm:queuepriority:p3

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions