Skip to content

feat: show staged publishing status - #3115

Open
BittuBarnwal7479 wants to merge 3 commits into
npmx-dev:mainfrom
BittuBarnwal7479:show-staged-publishing
Open

feat: show staged publishing status#3115
BittuBarnwal7479 wants to merge 3 commits into
npmx-dev:mainfrom
BittuBarnwal7479:show-staged-publishing

Conversation

@BittuBarnwal7479

Copy link
Copy Markdown
Contributor

🔗 Linked issue

fixes: #3114

🧭 Context

📚 Description

Adds a linked indicator for package versions published through npm’s staged publishing flow. Also updates version metadata handling and adds test coverage.

Recording.2026-08-03.055544.mp4
  • Added coverage for detecting staged releases from registry metadata
  • Added component coverage for the linked staged-publishing badge
  • Ran 66 focused Nuxt tests successfully
  • Ran lint and formatting checks

@vercel

vercel Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

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

Project Deployment Actions Updated (UTC)
npmx.dev Ready Ready Preview Aug 3, 2026 12:54am
2 Skipped Deployments
Project Deployment Actions Updated (UTC)
docs.npmx.dev Ignored Ignored Preview Aug 3, 2026 12:54am
npmx-lunaria Ignored Ignored Aug 3, 2026 12:54am

Request Review

@coderabbitai

coderabbitai Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: fc4e1cd6-a6c9-4396-8583-dd2efb91c49d

📥 Commits

Reviewing files that changed from the base of the PR and between 54759d8 and 6d5d307.

📒 Files selected for processing (1)
  • app/components/Package/Versions.vue
🚧 Files skipped from review as they are similar to previous changes (1)
  • app/components/Package/Versions.vue

📝 Walkthrough

Summary by CodeRabbit

  • New Features

    • Added staged publishing badges to package headers, version lists and version details.
    • Badges link to guidance explaining staged publishing and 2FA approval.
    • Trust indicators now combine provenance, trusted publishing and staged publishing status.
  • Bug Fixes

    • Improved consistency of trust and provenance information across package and version views.
  • Documentation

    • Added translated labels and descriptions for staged publishing badges.

Walkthrough

Changes

The PR adds staged-publishing trust metadata and displays translated staged-publishing badges across package headers, version lists, and version pages. It also adds approver type support, localisation, a dependency update, and tests.

Staged publish visibility

Layer / File(s) Summary
Trust status data model
app/utils/npm/api.ts, shared/types/npm-registry.ts, package.json, test/nuxt/composables/*
Version metadata now exposes staged-publishing status and supports approver data. Tests validate the transformed trust flags.
Staged publish badge
app/components/StagedPublishBadge.vue, i18n/locales/en.json, i18n/schema.json
The new badge supports compact and linked modes with translated label and title text.
Package trust rendering
app/components/Package/Header.vue, app/components/Package/Versions.vue, app/pages/package/.../versions.vue
Package views render staged-publishing badges from trust metadata. The header uses resolved trust status for provenance display.
Rendering validation
test/nuxt/components/Package/Versions.spec.ts, test/nuxt/a11y.spec.ts
Tests verify staged-publishing badges, documentation link attributes, continued provenance rendering, and accessibility states.

Sequence Diagram(s)

sequenceDiagram
  participant PackageMetadata
  participant PackageViews
  participant StagedPublishBadge
  participant NpmDocumentation
  PackageMetadata->>PackageViews: provide trustStatus.stagedPublish
  PackageViews->>StagedPublishBadge: render staged-publishing badge
  StagedPublishBadge->>NpmDocumentation: open staged publishing documentation
Loading

Possibly related PRs

Suggested reviewers: ghostdevv

🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarises the main change: displaying staged publishing status.
Description check ✅ Passed The description directly explains the staged-publishing indicator, metadata updates, and related test coverage.
Linked Issues check ✅ Passed The changes detect staged publishing and display badges for package versions, satisfying issue #3114.
Out of Scope Changes check ✅ Passed The metadata, UI, localisation, dependency, type, and test changes support the staged-publishing objective.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

@socket-security

socket-security Bot commented Aug 3, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Addedfast-npm-meta@​2.2.01001006894100

View full report

@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown

Lunaria Status Overview

🌕 This pull request will trigger status changes.

Learn more

By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.

You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

File Note
i18n/locales/en.json Source changed, localizations will be marked as outdated.
Warnings reference
Icon Description
🔄️ The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.

@BittuBarnwal7479 BittuBarnwal7479 changed the title Show staged publishing status for package versions feat: show staged publishing status Aug 3, 2026
@codecov

codecov Bot commented Aug 3, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 42.85714% with 4 lines in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
app/components/Package/Header.vue 25.00% 1 Missing and 2 partials ⚠️
app/components/StagedPublishBadge.vue 66.66% 0 Missing and 1 partial ⚠️

📢 Thoughts on this report? Let us know!

@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown

e18e dependency analysis

No dependency warnings found.

@coderabbitai coderabbitai Bot 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.

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 `@app/components/Package/Versions.vue`:
- Line 644: Update every StagedPublishBadge occurrence identified in this diff,
including the instances near the current row and the additional listed
locations, to include the relative z-10 classes so the badge remains above the
full-row link hit target and its documentation links stay clickable.
🪄 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: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 73d03b63-4e54-4481-bdd8-9834008f4b8d

📥 Commits

Reviewing files that changed from the base of the PR and between ac8e171 and 32cfea4.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (11)
  • app/components/Package/Header.vue
  • app/components/Package/Versions.vue
  • app/components/StagedPublishBadge.vue
  • app/pages/package/[[org]]/[name]/versions.vue
  • app/utils/npm/api.ts
  • i18n/locales/en.json
  • i18n/schema.json
  • package.json
  • shared/types/npm-registry.ts
  • test/nuxt/components/Package/Versions.spec.ts
  • test/nuxt/composables/use-package-transform.spec.ts

Comment thread app/components/Package/Versions.vue Outdated
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.

Show if a package uses "staged publish"

1 participant