Uh oh!
There was an error while loading. Please reload this page.
chore(spec): ListView map liveness verdict planned → live (objectui#5908 landed the reader) - #11563
Merged
Merged
Conversation
…908 landed the reader) objectui#5908 (merged 2026-08-23T19:52:08Z, squash commit e2e8e68 on objectui main) landed the missing half of the forward this ledger's `planned` note called for: `ListView.tsx`'s `resolveListMapConfig` now merges the view-level `map` block over the legacy `options.map` bag before `case 'map'` builds the `object-map` schema, and the same merged config feeds the visualization-switcher's capability gate too. Flips `view.list.map` planned -> live, citing the production reader first (resolveListMapConfig + case 'map') and the two pin tests second (ListView.mapViewLevelConfig.test.tsx, ObjectMap.listViewMapConfigReach.test.tsx), per the ledger's reader-first evidence convention. Re-measured against objectui origin/main @08ca73f8 (2026-08-24); regenerates the generated state-counts.md and updates the README Notes cell for the `view` row, which described the now- discharged planned condition. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01T9cDbY2NBiVJWYx3BpWfH2
Contributor
📓 Docs Drift CheckNothing in this diff resolved to a documentable surface (no symbol, route or SDK anchor derived from 1 changed package(s)), so this run has no opinion about the docs. What this run could not see
Coarse fallback — 126 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): |
os-steve
marked this pull request as ready for review
August 24, 2026 03:37
Uh oh!
There was an error while loading. Please reload this page.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes#11442
Flip
packages/spec/liveness/view.json'sview.list.mapentry:statusplanned→live. The blocker named in the entry's own note — objectui'sListView.tsxcase 'map'forwarding onlyschema.options?.mapand never the view-levelmapblock — is discharged: objectui#5908 merged 2026-08-23T19:52:08Z (squash commite2e8e68on objectuimain).Cross-repo measurement (re-run, not copied)
Reader first, per the ledger's own reader-first convention (modeled on the
sharingentry's 2026-08-10 re-citation note):resolveListMapConfig(:113) merges the view-levelmapblock over the legacyoptions.mapbag;case 'map'(:2181-2205) forwards the merge into theobject-mapschema; the visualization-switcher gate (:1849-1858) asks the same merged config — notoptions.mapalone — before offering'map'inallowedVisualizations, closing a second hole (objectui#5042) the prior PLANNED note didn't need to describe. The ADR-0047InterfaceListPagepath (packages/app-shell/src/views/InterfaceListPage.tsx:406-409) forwards the authoredmapblock verbatim onto the schema it hands toListView, so it reaches the same resolver rather than dead-ending.Pins second:
ListView.mapViewLevelConfig.test.tsxpins the forward against a spy;ObjectMap.listViewMapConfigReach.test.tsxpins the end-to-end read through a realObjectMap(markers, titles, camera).Note rewrite
The old
plannednote's flip instruction ("Flip toliveciting that ListView.tsx read when it lands") is consumed — replaced with a note stating what reads the key today (resolveListMapConfig+case 'map'+ the switcher gate + theInterfaceListPageforward) and since when (objectui#5908, re-measured 2026-08-24). The entry never carriedauthorWarn, so there's nothing to drop there. Theviewrow's Notes cell inpackages/spec/liveness/README.md(the#9340sentence describing the PLANNED condition) is updated to match, and the generatedpackages/spec/liveness/state-counts.mdis regenerated (view: planned 1→0, live 77→78).Verification
Local gates run under the shared verify lock, against commit
9044e986f2(this PR's head):pnpm --filter @objectstack/spec run check:liveness→✓ every governed-type property … every 'live' entry's repo-local evidence path resolves and every 'path:NNN' citation names a line that file actually has … the README state table carries a row for each of the 31 governed type(s) it claims to index./✓ packages/spec/liveness/state-counts.md is currentpnpm --filter @objectstack/spec run check:empty-state→✓ all classified (1 closed, 2 open, 4 output, 9 scope)pnpm --filter @objectstack/spec run check:strictness-ledger→✓ strictness ledger … remaining-strip map … counts.md is currentpnpm --filter @objectstack/spec run check:variant-docs→✓ variant/doc gate: 18 discriminated union(s) — 8 governed …pnpm check:merge-driver,pnpm check:published-files,pnpm check:slot-lookup,pnpm check:test-source-alias,pnpm check:type-source-resolution,node scripts/check-ci-filter-parity.mjs,node scripts/check-dev-prereqs.mjs --self-test,node scripts/check-plugin-teardown-shape.mjs,node scripts/docs-audit/check-affected-docs.mjs→ all greenpnpm check:changeset-gate-self-tests,pnpm check:objectui-changeset,node scripts/check-adr-0087-registration.mjs,node scripts/check-changeset-no-major.mjs,node scripts/check-empty-changeset.mjs→ all green (1 non-breaking changeset(s) seen,1 declaring changeset(s) added)node scripts/check-nul-bytes.mjs→✓ OK (scanned 6463 text file(s) …)Derived via
node scripts/pm/dispatch-gates.mjs --repo objectstack-ai/objectstackagainst this diff (packages/spec/liveness/view.json,README.md,state-counts.md,.changeset/listview-map-liveness-live.md) — every family it named for this diff is listed above and green. Full CI (Lint & Repo Gates,TypeScript Type Check, etc.) is left to the platform per the "report at draft PR time" convention; PM reviews CI convergence.Changeset
.changeset/listview-map-liveness-live.md—@objectstack/specpatch, mirroring #11449's pattern for a liveness-ledger verdict change.Scope
Ledger data only (
packages/spec/liveness/{view.json,README.md,state-counts.md}+ changeset) — nopackages/spec/src/**touched (Clause-② no). The showcase declaration (#11443) is out of scope here and untouched.Generated by Claude Code