Repository navigation
Auto-merge green Dependabot updates and group the pm toolchain into one daily PR - #125
Conversation
…ne daily PR Version bumps of @unbrained/pm-cli, pm-ops and pm-changelog are mechanical. Dependabot now checks npm daily and groups the pm toolchain (and other minor/patch updates) into single pull requests; a least-privilege workflow enables squash auto-merge for every non-major Dependabot PR, so it lands as soon as the required checks pass and a failing bump stays open as a defect. pm item: pm-graph-088p
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 40 minutes. View limit detailsLimit details: You’ve used the included review currently available. Review configuration: ⚙️ Run configuration
📒 Files selected for processing (5)
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (5)
Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review. Summary by CodeRabbit
WalkthroughDependabot now checks npm updates daily and groups selected packages into separate update groups. A new workflow enables squash auto-merge for eligible Dependabot pull requests. The changelog and task records document the automation and rollout. ChangesDependabot automation
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~10 minutes Change: Feature Sequence Diagram(s)sequenceDiagram
participant Dependabot
participant GitHubActions
participant DependabotMetadata
participant GitHub
Dependabot->>GitHubActions: Open pull request triggers workflow
GitHubActions->>DependabotMetadata: Fetch dependency metadata
GitHubActions->>GitHub: Enable squash auto-merge when update is eligible
GitHub->>GitHub: Required checks gate the merge
Merge Risk: ⚪ Minimal · up to Daily grouped Dependabot updates with conditional squash auto-merge look safe to merge. Branch-protection checks still gate every merge. Security Architecture ReviewSecurity architecture risk: 🔵 Low · up to The automation is restricted to Dependabot pull requests, uses narrowly scoped repository permissions, and requests auto-merge without an administrative bypass. However, effective branch protection and behavior after subsequent pull-request changes have not been verified. Retained concerns Security review detailsSecurity Blast Radius
Trust Boundaries and Controls
Hardening Proposals
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
Reviewer's GuideDependabot now checks npm dependencies daily, groups the PM toolchain separately from routine minor/patch updates, and uses a least-privilege, SHA-pinned workflow to enable squash auto-merge for green eligible updates while leaving unrelated major updates for manual review. Sequence diagram for Dependabot auto-merge of eligible updatessequenceDiagram
participant Dependabot
participant Workflow as dependabot-auto-merge
participant Metadata as fetch-metadata
participant GitHub as GitHub merge queue
participant Checks as Required checks
Dependabot->>Workflow: pull_request
Workflow->>Metadata: fetch metadata
Metadata-->>Workflow: dependency-group and update-type
alt pm-toolchain or non-major update
Workflow->>GitHub: gh pr merge --auto --squash
GitHub->>Checks: wait for required checks
Checks-->>GitHub: checks pass
GitHub-->>Dependabot: squash merge PR
else unrelated major update
Workflow-->>Dependabot: leave PR for manual review
end
Flow diagram for daily Dependabot update groupingflowchart TD
A[Daily npm Dependabot scan] --> B{PM toolchain package?}
B -->|Yes| C[pm-toolchain PR]
B -->|No| D{Minor or patch update?}
D -->|Yes| E[dependencies PR]
D -->|No| F[Un-grouped major update]
C --> G[Eligible for auto-merge]
E --> G
F --> H[Manual review]
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
|
pm item: pm-graph-088p
|
@coderabbitai full review |
✅ Action performedFull review finished. |
…sions Review feedback: an update that fetch-metadata cannot classify must not auto-merge, so the condition now requires semver-minor or semver-patch outside the calendar-versioned pm-toolchain group. The job's write scopes are documented, the dependencies group selects every package explicitly, and the item's acceptance criteria name the pm-toolchain exception. pm item: pm-graph-088p
|
@coderabbitai full review |
|
What
.github/dependabot.yml: npm is checked daily;@unbrained/pm-cliandpm-*packages arrive as onepm-toolchainPR, other minor/patch updates as onedependenciesPR. Other ecosystems are unchanged..github/workflows/dependabot-auto-merge.yml: for Dependabot PRs only (and only inunbraind),dependabot/fetch-metadata(SHA-pinned v3.1.0) classifies the update; thepm-toolchaingroup (calendar-versioned, so a year rollover reads as semver-major) and every other non-major update getgh pr merge --auto --squash. Workflow default permissions are{}; the job alone getscontents: write+pull-requests: write.Why
Fleet rule ([companion pm-cli-website-6d05]): a pm CLI release must reach every package without a hand-written certification PR. Branch protection still requires
test (22),test (26),windows-prepare-lifecycle, so nothing merges red; a bump that fails CI stays open as a real defect. Major updates still need a person. Same change as the reviewed pilot unbraind/pm-presets#118.pm item
Summary by Sourcery
Automate the delivery of compatible Dependabot updates while keeping major upgrades subject to manual approval.
New Features:
Enhancements:
Documentation:
Chores:
Summary by cubic
Automates delivery of compatible Dependabot npm updates and groups the pm toolchain into one daily PR, so version bumps land without a hand-written certification PR.
@unbrained/pm-cliandpm-*packages are grouped into a singlepm-toolchainPR and other minor/patch updates into onedependenciesPR.pm-toolchaingroup (a year rollover reads as semver-major) and for updatesdependabot/fetch-metadataclassifies as minor or patch; unclassified updates wait for a person.Written for commit 6625aa7. Summary will update on new commits.