fix: pin feature-ideation.yml reusable workflow to SHA#129
Conversation
Pins petry-projects/.github/.github/workflows/feature-ideation-reusable.yml from @v1 to its resolved SHA ee22b427cbce9ecadcf2b436acb57c3adf0cb63d to satisfy the action-pinning compliance policy. Also syncs the file with the latest upstream template: adds dry_run workflow_dispatch input, actions: read permission, and sources_file optional comment. Closes #88 Co-authored-by: don-petry <don-petry@users.noreply.github.com>
📝 WalkthroughWalkthroughThe PR updates the feature-ideation workflow stub to add a manual ChangesFeature Ideation Workflow Updates
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related issues
Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ 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 |
|
@don-petry — PR is ready for review and merge. This pins the |
There was a problem hiding this comment.
Pull request overview
This PR updates the repository’s Feature Ideation workflow caller stub to comply with action-pinning requirements by pinning the reusable workflow reference to a specific commit SHA, while also syncing a few upstream-template improvements (new input and permissions).
Changes:
- Pin
petry-projects/.github/.github/workflows/feature-ideation-reusable.ymlfrom@v1to commitee22b427cbce9ecadcf2b436acb57c3adf0cb63d. - Add
dry_runas aworkflow_dispatchinput and forward it to the reusable workflow. - Add
actions: readto the job token permissions and document optionalsources_fileusage.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| id-token: write | ||
| uses: petry-projects/.github/.github/workflows/feature-ideation-reusable.yml@v1 | ||
| actions: read | ||
| uses: petry-projects/.github/.github/workflows/feature-ideation-reusable.yml@ee22b427cbce9ecadcf2b436acb57c3adf0cb63d # v1 |
There was a problem hiding this comment.
The file header states you “MUST NOT change” the uses: line and job-level permissions: block, but this PR intentionally updates both (SHA pin + actions: read). Consider updating that guidance to clarify that syncing/pinning the reusable ref and adding required permissions is allowed, so future editors aren’t confused by the contradiction.
Outdated review (superseded by re-review at
|
|
@claude Please address all open review comments on this PR from CodeRabbit and Copilot. |
|
Claude encountered an error —— View job I'll analyze this and get back to you. |
|
Auto-rebase failed — merge conflict — this branch has conflicts with Please resolve the conflicts and push: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
@dev-lead - please fix this PR |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
|
Auto-rebase failed — merge conflict — this branch has conflicts with dev-lead will attempt to resolve this automatically. If it cannot, a follow-up comment will explain what needs manual attention. To resolve manually instead: |
donpetry-bot
left a comment
There was a problem hiding this comment.
Automated review — APPROVED ✓
Risk: LOW
Reviewed commit: 77077edf711a7b7dfeb163b09ca91d84ce032348
Review mode: triage-approved (single reviewer)
Summary
This PR pins the feature-ideation-reusable.yml reusable workflow from the mutable @v1 tag to immutable commit SHA ee22b427cbce9ecadcf2b436acb57c3adf0cb63d, and syncs three small upstream-template improvements: a dry_run workflow_dispatch input, an actions: read permission (required by the reusable workflow's feed-checkpoint step), and an optional sources_file configuration comment. This is a security-hardening change that resolves the compliance finding in #88. The reviewed diff is unchanged in scope since the prior triage approval at 14fe6de9 — only main-branch merge commits have landed since.
Linked issue analysis
Closes #88 (compliance finding: unpinned-actions-feature-ideation.yml). The fix substantively addresses the finding by replacing the mutable @v1 ref with an immutable commit SHA. Pinned SHA was verified to exist in petry-projects/.github (commit message: feat(feature-ideation): add curated reputable source list for Mary (#102), dated 2026-04-17).
Findings
- CodeRabbit inline comment (Line 91) — not actionable. CodeRabbit flags that the pinned SHA
ee22b427…does not match what thev1tag currently resolves to (d3d768da…) and asks for an update. This is a misunderstanding of SHA-pinning intent: the entire purpose of pinning to a SHA is to not follow tag movements (whichv1is allowed to do). The pinned SHA is valid, references real code in the upstream repo, and the workflow will resolve correctly at runtime. No change required. The# v1trailing comment is mildly stale (it now refers to a prior v1 release) but is informational only. - Optional follow-up: if a newer reusable workflow version (e.g., a security or bug fix landed in upstream v1 since this SHA) is needed, a separate PR can bump the pin — but that's a maintenance task, not a defect in this PR.
- Merge-state blocker (operational, not code-review). This branch is currently in
CONFLICTING/DIRTYstate with a long history of auto-rebase failures. The PR cannot merge until the conflicts are resolved manually. This does not affect the code-review verdict but must be addressed before merging.
CI status
All checks green: Analyze (actions) ✓, CodeQL ✓, SonarCloud quality gate passed.
Reviewed automatically by the PR-review agent (single-reviewer mode: opus 4.7). Reply if you need a human review.
Superseded by automated re-review at 77077ed.
|
Closing due to merge conflict that cannot be auto-rebased. Re-implementing from fresh main via dev-lead. |
Pull request was closed
Summary
petry-projects/.github/.github/workflows/feature-ideation-reusable.ymlfrom@v1to SHAee22b427cbce9ecadcf2b436acb57c3adf0cb63dto resolve the action-pinning compliance findingdry_runworkflow_dispatch input,actions: readpermission, andsources_fileoptional commentSHA Verification
SHA was looked up via:
Closes #88
Generated with Claude Code
Summary by CodeRabbit
New Features
dry_runparameter for manual workflow dispatchesChores