fix: add create-contentful-app release remediation workflow#3083
fix: add create-contentful-app release remediation workflow#3083Jared Jolton (jjolton-contentful) wants to merge 1 commit into
Conversation
Code Review Agent Run #a767d0Actionable Suggestions - 0Review Details
Bito Usage GuideCommands Type the following command in the pull request comment and save the comment.
Refer to the documentation for additional commands. Configuration This repository uses Documentation & Help |
| runs-on: ubuntu-latest | ||
|
|
||
| steps: | ||
| - name: Setup Node.js | ||
| uses: actions/setup-node@v6 | ||
| with: | ||
| node-version: '22.22.1' | ||
| registry-url: 'https://registry.npmjs.org' | ||
|
|
||
| - name: Restore public latest tag | ||
| run: | | ||
| npm dist-tag add create-contentful-app@2.0.24 latest | ||
| npm deprecate create-contentful-app@3.0.0 "Accidental release. Use create-contentful-app@2.0.24 while we correct the release configuration." | ||
| npm dist-tag ls create-contentful-app | ||
| env: | ||
| NODE_AUTH_TOKEN: ${{ secrets.NPM_REGISTRY_REGISTRY_NPMJS_ORG_TOKEN }} |
Changelist by BitoThis pull request implements the following key changes.
|
Impact Analysis by BitoInteraction DiagramsequenceDiagram
participant Dev as Developer
participant Workflow as GitHub Actions Workflow<br/>🟩 Added | ●●● High
participant NPM as NPM Registry
Note over Workflow: Workflow added to remediate accidental release
Dev->>Workflow: Dispatch workflow
Workflow->>Workflow: Start restore-latest job
Workflow->>Workflow: Setup Node.js v22.22.1
Workflow->>NPM: Authenticate with NPM registry
Workflow->>NPM: Add dist-tag latest to 2.0.24
NPM-->>Workflow: Tag added successfully
Workflow->>NPM: Deprecate version 3.0.0
NPM-->>Workflow: Version deprecated
Workflow->>NPM: List dist-tags
NPM-->>Workflow: Tags listed
The merge request adds a new GitHub Actions workflow to address an accidental release by restoring the 'latest' npm tag to version 2.0.24 and deprecating version 3.0.0. This ensures users receive the stable version when installing the create-contentful-app package. No direct upstream or downstream impacts detected in repository scan or cross-repo dependency analysis. Code Paths AnalyzedImpact: Flow: Direct Changes (Diff Files): Repository Impact: Cross-Repository Dependencies: Database/Caching Impact: API Contract Violations: Infrastructure Dependencies: Additional Insights: Testing RecommendationsFrontend Impact: Service Integration: Data Serialization: Privacy Compliance: Backward Compatibility: OAuth Functionality: Cross-Service Communication: Reliability Testing: Additional Insights: Analysis based on known dependency patterns and edges. Actual impact may vary. |
Summary
create-contentful-appdist-tag.latestback tocreate-contentful-app@2.0.24and deprecates the accidental3.0.0release.Context
6729db21, which published publiccreate-contentful-app@3.0.0.create-contentful-app@3.0.0depends on@contentful/create-contentful-app@3.0.0, which is not available from public npm.create-contentful-app@3.0.0fail withETARGET.How to run after merge
main.npm dist-tag ls create-contentful-appoutput showslatest: 2.0.24.Test plan
ruby -e "require 'yaml'; YAML.load_file('.github/workflows/remediate-create-contentful-app-release.yaml'); puts 'workflow yaml ok'"create-contentful-app@3.0.0fails because@contentful/create-contentful-app@3.0.0is missing from public npm.Generated with Codex
Summary by Bito
This PR adds a manual remediation workflow that uses the existing npmjs token secret to restore the public create-contentful-app dist-tag, moving latest back to create-contentful-app@2.0.24 and deprecating the accidental 3.0.0 release. This avoids requiring a local npm owner/admin to run the fix manually and addresses the issue where PR #3082 triggered an erroneous release that depends on unavailable private packages.
Detailed Changes