Skip to content

feat(datasource): Setup-app "Datasources" nav entry → metadata-admin engine#2091

Merged
xuyushun441-sys merged 1 commit into
mainfrom
feat/setup-nav-datasources
Jun 21, 2026
Merged

feat(datasource): Setup-app "Datasources" nav entry → metadata-admin engine#2091
xuyushun441-sys merged 1 commit into
mainfrom
feat/setup-nav-datasources

Conversation

@xuyushun441-sys

Copy link
Copy Markdown
Contributor

What

Adds a Datasources entry to the Setup app's left menu (Integrations group). It opens the generic metadata-admin engine route for the datasource type — datasource is a metadata type, so it's administered by the same engine as every other type, not a bespoke page.

The datasource-admin plugin registers the navigation contribution itself (into the capability-owned group_integrations slot), per ADR-0029 D7 — core setup-nav.contributions.ts must not fill capability-plugin slots (enforced by the platform-objects nav invariant test). Entry is type:'url'/apps/setup/component/metadata/resource?type=datasource (a datasource is a definition, not business data, so not an object view).

Pairs with

objectui PR (datasource registered as a metadata-admin engine resource: list/create/edit/test/sync + bespoke page removed).

Verification

  • Live: Setup app left menu shows Datasources under Integrations → opens the engine-hosted manager.
  • platform-objects 55/55 + service-datasource 63/63 tests green.

🤖 Generated with Claude Code

datasource is administered through the generic metadata-admin engine (it's a
metadata type). Surface it from the Setup app like other capabilities: the
datasource-admin plugin registers a navigation contribution into the
`group_integrations` slot (ADR-0029 D7 — capability plugins own their slots;
core setup-nav must not fill them, enforced by the platform-objects nav test).

The entry is `type:'url'` → the metadata-admin engine route
(`/apps/setup/component/metadata/resource?type=datasource`) rather than an
object view, since a datasource is a definition, not business data.

Verified live: the Setup app left menu shows "Datasources" under Integrations
and opens the engine-hosted manager. platform-objects 55 + service-datasource
63 tests green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 21, 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 21, 2026 5:24am

Request Review

@github-actions

Copy link
Copy Markdown
Contributor

📓 Docs Drift Check

This PR changes 1 package(s): packages/services.

5 hand-written doc(s) reference the affected code and may need an implementation-accuracy re-verification:

  • content/docs/guides/packages.mdx (via packages/services)
  • content/docs/guides/runtime-services/audit-service.mdx (via packages/services)
  • content/docs/guides/runtime-services/index.mdx (via packages/services)
  • content/docs/guides/runtime-services/settings-service.mdx (via packages/services)
  • content/docs/protocol/objectos/i18n-standard.mdx (via packages/services)

Advisory only. To re-verify, run the docs-accuracy-audit workflow scoped to these files:
node scripts/docs-audit/affected-docs.mjs origin/main → pass the list as args.docs.

@xuyushun441-sys
xuyushun441-sys merged commit 131787e into main Jun 21, 2026
16 checks passed
@xuyushun441-sys
xuyushun441-sys deleted the feat/setup-nav-datasources branch June 21, 2026 05:27
xuyushun441-sys added a commit that referenced this pull request Jun 21, 2026
…tion (#2112)

The README mentioned "REST routes under /api/v1/datasources" but didn't
enumerate them, and predated the Studio integration. Add:
- a REST routes section (lifecycle + drivers catalog + by-name test + GET :name
  detail + introspection/sync routes), with the credential-split note;
- a Studio integration section: datasource is managed through the metadata-admin
  engine (Setup → Integrations → Datasources), runtime records persist to
  sys_metadata and rehydrate on restart.

Reflects #2083 (drivers), #2085 (remote-tables/object-draft/by-name test),
#2086 (GET :name), #2091 (Setup nav), #2096 (persistence).

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants