Skip to content

Admin API v2: add IcebergService and FeaturesService for 26.2 - #76

Merged
kbatuigas merged 5 commits into
mainfrom
DOC-2265-admin-v2-iceberg
Jul 28, 2026
Merged

Admin API v2: add IcebergService and FeaturesService for 26.2#76
kbatuigas merged 5 commits into
mainfrom
DOC-2265-admin-v2-iceberg

Conversation

@kbatuigas

Copy link
Copy Markdown
Contributor

Regenerate admin/admin-v2.yaml from redpanda core v26.2.1-rc4, which adds the IcebergService/GetIcebergStatus endpoint (and the FeaturesService endpoints that also landed in 26.2). Add an IcebergService tag description and an "Added in v26.2" version badge for the new endpoint.

Regenerate admin/admin-v2.yaml from redpanda core v26.2.1-rc4, which adds
the IcebergService/GetIcebergStatus endpoint (and the FeaturesService
endpoints that also landed in 26.2). Add an IcebergService tag description
and an "Added in v26.2" version badge for the new endpoint.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
@kbatuigas
kbatuigas requested a review from a team as a code owner July 17, 2026 04:01
@github-actions

github-actions Bot commented Jul 17, 2026

Copy link
Copy Markdown

🤖 Admin API (branch: v2) API structural change detected

Preview documentation

Structural change details

Added (3)

  • POST /redpanda.core.admin.v2.FeaturesService/FinalizeUpgrade
  • POST /redpanda.core.admin.v2.FeaturesService/GetUpgradeStatus
  • POST /redpanda.core.admin.v2.IcebergService/GetIcebergStatus

Modified (5)

  • POST /redpanda.core.admin.v2.ShadowLinkService/CreateShadowLink
    • Content type modified: application/json
      • Property modified: shadowLink
        • Property modified: configurations
          • Property modified: schemaRegistrySyncOptions
          • Property added: roleSyncOptions
      • Property added: validateOnly
    • Response modified: 200
      • Content type modified: application/json
        • Property modified: shadowLink
          • Properties modified: configurations, status
  • POST /redpanda.core.admin.v2.ShadowLinkService/FailOver
    • Response modified: 200
      • Content type modified: application/json
        • Property modified: shadowLink
          • Properties modified: configurations, status
  • POST /redpanda.core.admin.v2.ShadowLinkService/GetShadowLink
    • Response modified: 200
      • Content type modified: application/json
        • Property modified: shadowLink
          • Properties modified: configurations, status
  • POST /redpanda.core.admin.v2.ShadowLinkService/ListShadowLinks
    • Response modified: 200
      • Content type modified: application/json
        • Property modified: shadowLinks
          • Properties modified: configurations, status
  • POST /redpanda.core.admin.v2.ShadowLinkService/UpdateShadowLink
    • Content type modified: application/json
      • Property modified: shadowLink
        • Property modified: configurations
          • Property modified: schemaRegistrySyncOptions
          • Property added: roleSyncOptions
    • Response modified: 200
      • Content type modified: application/json
        • Property modified: shadowLink
          • Properties modified: configurations, status
Powered by Bump.sh

@coderabbitai

coderabbitai Bot commented Jul 17, 2026

Copy link
Copy Markdown

Review Change Stack

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 96c1b52e-2e11-4972-bda9-9525aea5c011

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

The Admin API v2 specification adds upgrade-finalization and upgrade-status models and routes, Iceberg catalog/topic/partition status reporting, and new shadow-link role and Schema Registry synchronization configuration and status schemas. Shadow-link creation now supports validation-only requests. The Iceberg endpoint is versioned and tagged in overlays, and the OpenAPI metadata is updated.

Estimated code review effort: 4 (Complex) | ~45 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly matches the main change: adding IcebergService and FeaturesService API updates for 26.2.
Description check ✅ Passed The description is directly related and accurately describes the regenerated Admin API spec and new 26.2 endpoints.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch DOC-2265-admin-v2-iceberg

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@admin/v2-overlays/add-endpoint-versioning.yaml`:
- Around line 92-95: Extend the v26.2 endpoint updates in the overlay to include
the FeaturesService paths for FinalizeUpgrade and GetUpgradeStatus, assigning
each the same x-state value, “Added in v26.2,” as the existing IcebergService
endpoint.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: cc276840-b3c2-4ec7-b4e7-3a42013f11b6

📥 Commits

Reviewing files that changed from the base of the PR and between 3878f71 and 5dde91b.

📒 Files selected for processing (3)
  • admin/admin-v2.yaml
  • admin/v2-overlays/add-endpoint-versioning.yaml
  • admin/v2-overlays/create-and-update-tags.yaml

Comment thread admin/v2-overlays/add-endpoint-versioning.yaml Outdated
@kbatuigas kbatuigas changed the title Admin API v2: add IcebergService (GetIcebergStatus) for 26.2 Admin API v2: add IcebergService and FeaturesService for 26.2 Jul 27, 2026
@kbatuigas
kbatuigas requested review from WillemKauf and dotnwat July 27, 2026 19:03

@dotnwat dotnwat left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've never reviewed something like this, so there is that caveat. Presumably this is automated regeneration, so nothing too surprising to expect? Looks fine to me on the surface.

@Feediver1 Feediver1 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR Review (docs-team-standards final pass)

Files reviewed: 4 (regenerated admin/admin-v2.yaml + 3 hand-maintained overlays)
Overall assessment: Clean, purely additive regen with well-crafted overlays. No critical issues; the one meaningful suggestion is regenerating from the GA tag instead of rc4 so the published spec's provenance metadata cites a shipped version.

Jira ticket alignment

DOC-2265 (Iceberg health status): aligned — this delivers the API-reference side; the docs-repo PR is tracked separately on the ticket.

Critical (must fix)

None. Verified: the regen is purely additive — 3 new paths, 846 added lines, and the only removals are the two generation-metadata lines (timestamp + previous core version). No existing endpoints or schemas dropped.

Suggestions

  1. Regenerate from v26.2.1 (final) rather than rc4. The final tag is 8 commits ahead of rc4; I compared them — the delta (internal-topic config extraction, the fetch-coalescing RCL relicense; 22 files) touches nothing in the Admin API surface, so the spec content is equivalent. But the published spec's x-redpanda-core-version will permanently record an RC tag, which reads oddly in a GA artifact and complicates future audits. A regen from final should produce an identical spec body. (Minimum: note the verified equivalence in the PR body. Also: rc5/rc6 exist, so rc4 wasn't the last RC.)
  2. Terminology consistency: the FeaturesService tag description says "major version upgrade," while the Self-Managed deferred-finalization docs landing in the same release (redpanda-data/docs#1818) say "feature-release upgrade," matching Redpanda's versioning (26.1→26.2 is a feature release). Suggest aligning.
  3. Give the temporary overlay a removal trigger: fix-geticebergstatus-summary.yaml says "remove once the proto is fixed upstream" — file the upstream proto issue (leading comment emitted as operation summary) and reference it in the overlay comment, so the temp fix doesn't fossilize.
  4. Trivial: add-endpoint-versioning.yaml still ends without a trailing newline (pre-existing, carried forward).

CodeRabbit triage

Its single finding (FeaturesService endpoints missing x-state badges) was already fixed by the second commit, which added exactly the proposed entries plus the tag description. Nothing outstanding.

What works well

  • The temporary-overlay hygiene is exemplary: clearly labeled, explains the upstream cause, states the removal condition, and restores the summary convention every other endpoint follows.
  • The FeaturesService tag description does real explanatory work (finalize-to-commit vs check-status-for-rollback) and accurately reflects the deferred-finalization semantics shipping in 26.2.
  • Overlay JSONPath targets match the generated path keys exactly (checked all three).

🤖 Generated with Claude Code

@Feediver1 Feediver1 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@WillemKauf WillemKauf left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@@ -0,0 +1,17 @@
# TEMPORARY FIX: override the auto-generated summary for GetIcebergStatus.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

huh. Didn't realize this would feed into docs

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yup, the buf generate plugin that we use creates the endpoint summary based on what's in the proto - and currently without this overlay, this is what the left hand nav displays instead - https://github.com/redpanda-data/api-docs/pull/76/changes#diff-802a8b2d917f2a5e9c849afcf81538a4658f264ea5754292a4e00c142b557911R3469 So we'll have to go back and fix it upstream

@kbatuigas
kbatuigas merged commit 9ae718b into main Jul 28, 2026
8 checks passed
@kbatuigas
kbatuigas deleted the DOC-2265-admin-v2-iceberg branch July 28, 2026 03:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants