Skip to content

feat(spec): ActionSchema — opensInNewTab + newTabUrl zero-roundtrip new-tab contract#1787

Merged
xuyushun441-sys merged 1 commit into
mainfrom
feat/spec-action-newtaburl
Jun 12, 2026
Merged

feat(spec): ActionSchema — opensInNewTab + newTabUrl zero-roundtrip new-tab contract#1787
xuyushun441-sys merged 1 commit into
mainfrom
feat/spec-action-newtaburl

Conversation

@xuyushun441-sys

Copy link
Copy Markdown
Contributor

Summary

  • Add opensInNewTab (documents the existing renderer convention: pre-open the tab synchronously on click, popup-blocker-safe, then drive it to the handler's redirectUrl) to ActionSchema
  • Add newTabUrl: a direct new-tab URL template ({recordId} placeholder). When set together with opensInNewTab, the renderer navigates the pre-opened tab to it immediately on click — no action POST. The target endpoint must perform all auth/authz itself.

Motivation

The cloud console's environment Open button felt laggy: the click paid a full POST round trip before the popup started navigating, even though GET /sso-open re-runs every check server-side (defense in depth). This contract lets metadata declare the zero-roundtrip path. Renderer support: objectui PR (app-shell fast path); first consumer: cloud sys_environment.sso_as_owner.

Test plan

  • pnpm --filter @objectstack/spec build
  • pnpm --filter @objectstack/spec test — 240 files / 6529 tests ✓

🤖 Generated with Claude Code

…ip contract

Documents the existing opensInNewTab renderer behavior in the schema and
adds newTabUrl: a direct new-tab URL template ({recordId} placeholder)
the renderer navigates the pre-opened tab to immediately on click,
skipping the action POST. The target endpoint must enforce all
auth/authz itself (e.g. the cloud /sso-open endpoint, which re-runs
every check the POST half would have done).

Removes one full network round trip of white-screen latency from
click-to-popup on actions like sys_environment sso_as_owner.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 12, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
spec Ready Ready Preview, Comment Jun 12, 2026 1:24pm

Request Review

@xuyushun441-sys
xuyushun441-sys merged commit b1c6ec9 into main Jun 12, 2026
12 checks passed
@xuyushun441-sys
xuyushun441-sys deleted the feat/spec-action-newtaburl branch June 12, 2026 13:36
xuyushun441-sys added a commit that referenced this pull request Jun 14, 2026
* docs(skills): sync objectstack-* skills with 9.0→9.4 changes

Audited all changes from @objectstack/types@9.0.1 to 9.4.0 and updated the
six skills whose documented contracts had drifted or gained capabilities:

- ui: fix matrix report example (rows down × columns across, ADR-0021 D2) +
  drilldown; add Action opensInNewTab/newTabUrl (#1787); App.hidden (ADR-0045);
  userFilters toggle deprecation
- platform: correct namespace prose — manifest.namespace is enforced
  (ADR-0048, validateNamespacePrefix/NamespaceConflictError); split-app boot
  sequence; os package install/publish; cloud-connection; sys_metadata opt-in
- automation: inbound webhook (api) triggers + queue prerequisite (ADR-0041);
  ADR-0044 send-back-for-revision (revise/back edges, maxRevisions)
- api: document the /meta REST surface — ?preview=draft (#1763), ?package=
  (ADR-0048), /meta/doc content omission (ADR-0046)
- ai: built-in data_chat assistant + visualize_data + query-only gate
  (ADR-0040); fix stale guardrails example keys; model-registry providers
- data: seed lookup id-fallback (#1814)

query/formula/i18n skills required no changes (no contract drift in range).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* chore: add empty changeset for docs-only skills sync

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Jack Zhuang <277994282+os-zhuang@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants