Skip to content

ListView never forwards the view-level map config block to plugin-map — spec's ListMapConfigSchema (objectstack#9340) is authorable but inert at runtime; switcher wiring included #5042

Description

@os-steve

Blocked-by: objectstack-ai/objectstack#9340 (MERGED via objectstack-ai/objectstack#9370 — the block now exists in @objectstack/spec; this card is the pre-registered consumer follow-up named in that PR's "Out of scope" section).

Facts (measured during objectstack#9370, against the objectui checkout current 2026-08-17)

  • packages/spec now exports ListMapConfigSchema and ListViewSchema accepts a map visualization config block (keys: latitudeField / longitudeField / locationField / titleField / descriptionField / zoom (1-20) / center; strict, no defaults on zoom/center per objectui#5000's "declared camera wins, no declaration means fit to the queried records" ruling).
  • The component-level reader already exists: getMapConfig in ObjectMap.tsx validates schema.map against a local zod schema with exactly those seven keys, each with a live read (coordinate extraction, marker title/description, camera init).
  • The gap: ListView.tsx case 'map' forwards only schema.options?.map — never the view-level map block — so authoring the new spec key changes nothing at runtime. The spec liveness ledger records map as planned (deliberately not live) for exactly this reason.
  • Switcher: the showcase map view's allowedVisualizations wiring was left untouched on the spec side ("switcher wiring is the objectui follow-up").

Done when

  • ListView.tsx case 'map' forwards the view-level map block to plugin-map (precedence vs schema.options?.map: follow the sibling visualization blocks' existing convention).
  • Visualization switcher offers map where the sibling blocks' convention says it should (allowedVisualizations handling).
  • The showcase task map view renders marker titles from its declared map: { titleField: 'title', locationField: 'location' } (the original objectui#5001 symptom — undefined marker titles — is gone).
  • Follow-up for the spec side once this lands: flip the liveness ledger map verdict plannedlive (file it on the objectstack queue; do not edit the ledger from this repo).

Dispatch condition

Not dispatchable until this repo's pinned @objectstack/spec includes the objectstack#9370 landing (probe: ListMapConfigSchema present in the consumed spec build). Original evidence trail: objectui#5001 (closed as transferred), objectui#5000, objectstack#9340, objectstack#9370.

Metadata

Metadata

Assignees

Labels

domain:uiobjectui ui stream: fix lands on the published library or apps — objectui execution seatpm:queue

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions