Document dashboard publish flow #3

Merged
mfreeman451 merged 12 commits from ual/dashboard-sdk-dx into main 2026-05-05 03:53:02 +00:00
Owner

Summary

Adds a one-paragraph summary to the CLI section of the README calling out the new /api/v1/dashboard-packages multipart endpoint, the dashboard.publish JWT scope, the cli.dashboard.publish RBAC permission, and the version-overwrite invariant. Points readers at the canonical endpoint contract in the developer-portal docs.

Companion to:

  • serviceradar PR #3195 (the add-cli-dashboard-publish-api implementation).
  • developer repo PR (the full Publishing section in dashboard-sdk.md).

Test plan

  • README renders cleanly in markdown preview.

🤖 Generated with Claude Code

## Summary Adds a one-paragraph summary to the CLI section of the README calling out the new `/api/v1/dashboard-packages` multipart endpoint, the `dashboard.publish` JWT scope, the `cli.dashboard.publish` RBAC permission, and the version-overwrite invariant. Points readers at the canonical endpoint contract in the developer-portal docs. Companion to: - `serviceradar` PR #3195 (the `add-cli-dashboard-publish-api` implementation). - `developer` repo PR (the full Publishing section in `dashboard-sdk.md`). ## Test plan - [x] README renders cleanly in markdown preview. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Adds five new SDK surfaces for browser-module dashboards:

- query-state: useDashboardQueryState + createDashboardQueryState with
  debounce, dedupe by query+frame-overrides fingerprint, reset, hydrate.
- frame ergonomics: frameDigest/framesEqual stability for useDashboardFrame(s),
  useFrameRows with decode auto/arrow/json + shape projection cache,
  useArrowTable, lazy Apache Arrow loader at runtime via dynamic import
  (bundler-opaque so apache-arrow stays optional).
- filtering: createIndexedRows + useIndexedRows with Set-intersection filter
  dispatch and precomputed haystack; useFilterState with stable callbacks
  and per-field debounce.
- map runtime: useDeckMap + useDeckLayers with library validation, throttled
  viewport, theme swap that preserves the deck overlay, and per-layer
  memoization on stable data/accessors/visualProps refs. Factory helpers
  scatter/text/icon/line.
- popup: useMapPopup that mounts React content into mapboxgl.Popup with
  managed createRoot lifecycle (open/reopen/close, content updates without
  recreate, parent-unmount cleanup).

53 unit tests across the new surfaces; types ship for all of them; README
documents the composed pattern that the UAL reference dashboard uses.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
wip: dashboard sdk
All checks were successful
CI / Test and Pack (push) Successful in 45s
CI / Test and Pack (pull_request) Successful in 47s
dafdb77a76
The npm publish target lives under the existing @carverauto org rather
than spinning up a separate @serviceradar org. Update the package name
and every README reference (CLI install instructions, hook examples)
accordingly. Companion CLI is being renamed in lock-step to
@carverauto/serviceradar-cli; the file: dep here will flip to a real
^0.1.0 semver dep after the CLI's first publish.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Now that @carverauto/serviceradar-cli@0.1.0 is on npm, drop the
file:../serviceradar/js/cli development link and depend on the
published version. Required so this package can publish to npm —
file: deps fail npm publish validation.

The CLI is the only @carverauto/* runtime dep here. Tests still pass
against the published tarball (59 SDK tests, no behavior change).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Document dashboard publish flow
All checks were successful
CI / Test and Pack (pull_request) Successful in 27s
cfd73c8590
Adds a one-paragraph summary to the CLI section calling out the new
`/api/v1/dashboard-packages` multipart endpoint, the
`dashboard.publish` JWT scope + `cli.dashboard.publish` RBAC
permission, and the version-overwrite invariant. Points readers at
the canonical endpoint contract in the developer-portal docs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
carverauto/serviceradar-sdk-dashboard!3
No description provided.