Skip to content

Refresh verified Swagger UI distribution and compatible security leaves - #3129

Closed
ktsaou wants to merge 1 commit into
masterfrom
deps/refresh-swagger-ui-distribution
Closed

ktsaou wants to merge 1 commit into
masterfrom
deps/refresh-swagger-ui-distribution

Conversation

@ktsaou

@ktsaou ktsaou commented Oct 8, 2026 •

Copy link
Copy Markdown
Member

Update both declared Swagger UI packages to 5.33.1 and regenerate the complete browser-served distribution through the existing vendor writer. The manifest verifies all 21 assets against the locked upstream package; the custom API initializer and approved OAuth title overlay remain unchanged. Also refresh compatible brace-expansion leaves to 1.1.21 and 5.0.12 within their existing parent ranges, without overrides.

Validation:

  • Fresh package installation and final frozen Yarn verification passed under Node 22.23.2.
  • 490 Vitest tests passed with one existing skip; the rendered redirect suite was run after its build prerequisite. All 99 existing Node checks passed.
  • The final production build and all publication gates passed: 2,032 HTML pages, complete redirects/internal links/indexability/RUM and zero static-gate findings.
  • Headless checks of the served API page rendered 72 operations and expanded an operation at desktop and mobile widths. Provider mutations were blocked.
  • Independent exact source, provenance and parent-range review passed.

The dependency audit is not entirely clean. sprintf-js has no published upstream fix, and other unrelated supported-parent holds remain tracked under SEO SOW-0038. Yarn brace remediation does not claim to alter prebuilt browser bytes. Published license whitespace is retained verbatim to preserve the upstream distribution contract.

This delivers the package and served assets together, superseding the incomplete intent of #3081 and #3082. No runtime, renderer, route, content or indexing policy change is included.


Summary by cubic

Refreshes the verified Swagger UI distribution from 5.32.14 to 5.33.1, regenerating all 21 browser-served assets against the locked swagger-ui-dist@5.33.1 package. The custom API initializer and OAuth title overlay remain unchanged, and no runtime, renderer, route, content, or indexing policy changes are included.

Notes

  • brace-expansion leaves refresh to 1.1.21 and 5.0.12 within existing parent ranges; Yarn brace remediation does not alter prebuilt browser bytes.
  • sprintf-js has no published upstream fix; unrelated supported-parent holds remain tracked under SEO SOW-0038.
  • License whitespace is retained verbatim to preserve the upstream distribution contract.

Written for commit 325a6ce. Summary will update on new commits.

View guided diff Turn on auto-fix

Summary by CodeRabbit

  • Updates
    • Updated Swagger UI to version 5.33.1.
    • Added license notices for included third-party components.

@ktsaou
ktsaou requested a review from a team as a code owner October 8, 2026 23:59
@ktsaou
ktsaou requested review from mtblz and witalisoft October 8, 2026 23:59
@netlify

netlify Bot commented Oct 8, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for netdata-docusaurus ready!

Name Link
🔨 Latest commit 325a6ce
🔍 Latest deploy log https://app.netlify.com/projects/netdata-docusaurus/deploys/6ac82e733845280007b5eab6
😎 Deploy Preview https://deploy-preview-3129--netdata-docusaurus.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@coderabbitai

coderabbitai Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 45b482c0-57d8-4c8d-a2be-2ac3f6e127db
📥 Commits

Reviewing files that changed from the base of the PR and between 3e846ee and 325a6ce.

⛔ Files ignored due to path filters (4)
  • static/swagger-ui-es-bundle-core.js.map is excluded by !**/*.map
  • static/swagger-ui.css.map is excluded by !**/*.map
  • static/swagger-ui.js.map is excluded by !**/*.map
  • yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (12)
  • package.json
  • static/swagger-ui-bundle.js
  • static/swagger-ui-bundle.js.LICENSE.txt
  • static/swagger-ui-es-bundle-core.js
  • static/swagger-ui-es-bundle.js
  • static/swagger-ui-es-bundle.js.LICENSE.txt
  • static/swagger-ui-standalone-preset.js
  • static/swagger-ui-standalone-preset.js.LICENSE.txt
  • static/swagger-ui-vendor.json
  • static/swagger-ui.css
  • static/swagger-ui.js
  • tests/swagger_ui_vendor.test.js

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

The Swagger UI dependency declarations and vendored distribution metadata now use version 5.33.1. The update adds license notices and changes the provenance test to expect the new version.

Changes

Swagger UI version update

Layer / File(s) Summary
Update dependency and vendor version
package.json, static/swagger-ui-vendor.json, static/swagger-ui-*.LICENSE.txt, tests/swagger_ui_vendor.test.js
The package declarations, vendor manifest version and hashes, and provenance test expectation now reference version 5.33.1. The Swagger UI bundle license files include the added MIT notice.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~8 minutes

Change: Other

Merge Risk: ⚪ Minimal · up to 325a6

The PR refreshes Swagger UI to 5.33.1, with the checked version metadata and asset hashes aligned. No actionable user-facing regression was established; the focused test could not run in this dependency-missing checkout.

Architecture Summary

Architecture risk: 🔵 Low · up to 325a6

The change affects 3 systems.

Changed systems: static, package.json, tests

Architecture concerns
No architecture-level concerns identified.

Review details

Systems and components

  • observed — static (service) was modified; 4 changed files map to changed impact.
  • observed — package.json (service) was modified; 1 changed file maps to changed impact.
  • observed — tests (service) was modified; 1 changed file maps to changed impact.

Before / after behavior

  • observed — Modified behavior in package.json: The swagger-ui dependency range changes from ^5.32.14 to ^5.33.1.
  • observed — Modified behavior in package.json: The swagger-ui-dist development dependency changes from 5.32.14 to 5.33.1.
  • observed — Modified behavior in static/swagger-ui-bundle.js.LICENSE.txt: Added the MIT license notice, including copyright attribution to Lee Byron and other contributors and the license’s permission, attribution, and warranty clauses.
  • observed — Modified behavior in static/swagger-ui-es-bundle.js.LICENSE.txt: Added an MIT license notice identifying Lee Byron and other contributors, with copyright, permission, and warranty terms.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly identifies the main change: refreshing the verified Swagger UI distribution and related compatible dependency leaves.
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1…
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.
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@cubic-dev-ai cubic-dev-ai 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.

No issues found across 16 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.
Architecture diagram
sequenceDiagram
    participant Dev as Developer
    participant CI as CI Pipeline
    participant Yarn as Yarn (Node 22)
    participant Vendor as Vendor Writer
    participant NPM as npm Registry
    participant Test as Vitest/Node Tests
    participant Build as Production Build
    participant Static as Static Assets (21 files)
    participant Browser as Browser/Rendered API Page

    Note over Dev,NPM: Dependency Refresh Flow

    Dev->>package.json: Update swagger-ui and swagger-ui-dist versions
    Dev->>Yarn: Run install with frozen lockfile
    Yarn->>NPM: Fetch swagger-ui-dist@5.33.1 tarball
    NPM-->>Yarn: Return package + integrity hashes
    Yarn->>Vendor: Trigger vendor writer for static assets
    Vendor->>NPM: Read locked package manifest
    NPM-->>Vendor: 21 asset files + SRI hashes
    Vendor->>Static: Write swagger-ui-bundle.js, CSS, LICENSE, maps
    Vendor->>Static: Write swagger-ui-vendor.json with locked version/checksums

    Note over Test,Build: Verification Pipeline

    Test->>Static: Verify 21 assets against manifest hashes
    Test->>Vendor: Check provenance contract
    Test-->>CI: 490 Vitest + 99 Node checks pass
    Build->>Build: Generate 2,032 HTML pages
    Build->>Static: Embed static API docs
    CI->>Build: Run redirect/internal link/indexability checks
    Build-->>CI: Zero static-gate findings

    Note over Browser,Static: Runtime Serving (Unchanged Behavior)

    Browser->>Static: Request API documentation page
    Static-->>Browser: Serve swagger-ui-bundle.js + CSS
    Browser->>Browser: Initialize Swagger UI with custom API init
    Browser->>Browser: Render 72 operations (desktop/mobile)
    Browser->>Browser: Expand operation for testing
    Browser->>Browser: Block provider mutations

    Note over CI,NPM: Known Remaining Items

    alt sprintf-js has no upstream fix
        CI->>NPM: No available patched version
    else Unrelated parent holds under SEO SOW-0038
        CI-->>CI: Track separately
    end
Loading

View guided diff | Turn on auto-fix | Re-trigger cubic

@ktsaou

ktsaou commented Oct 9, 2026

Copy link
Copy Markdown
Member Author

Superseded by #3136 (#3136), which combines all supported Learn package, runtime, tooling and copied-browser-asset updates with a fresh inventory and combined validation. This proposal's history and branch are retained; review the combined draft instead.

@ktsaou ktsaou closed this Oct 9, 2026
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.

1 participant