Skip to content

feat: implement issue #194 — Compliance: non-stub-dependency-audit.yml - #235

Merged
don-petry merged 11 commits into
mainfrom
dev-lead/issue-194-20260608-1948
Jun 13, 2026
Merged

don-petry merged 11 commits into
mainfrom
dev-lead/issue-194-20260608-1948

Conversation

@don-petry

@don-petry don-petry commented Jun 8, 2026 •

Copy link
Copy Markdown
Contributor

Closes #194

Implemented by dev-lead agent. Please review.

Summary by CodeRabbit

  • Chores
    • Updated internal CI/CD workflow configuration.

@don-petry
don-petry requested a review from a team as a code owner June 8, 2026 19:49
Copilot AI review requested due to automatic review settings June 8, 2026 19:49
@gemini-code-assist

Copy link
Copy Markdown

Note

Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported.

@coderabbitai

coderabbitai Bot commented Jun 8, 2026 •

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

This PR updates .github/workflows/dependency-audit.yml to pin the dependency-audit job's reusable workflow reference to @v1 instead of @v2, aligning with organizational workflow standards.

Changes

Compliance Update

Layer / File(s) Summary
Dependency audit workflow version pin
.github/workflows/dependency-audit.yml
The dependency-audit job's uses: reference is updated from the @v2 version to the org-standard @v1 version of the reusable dependency-audit workflow.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Possibly related issues

  • #194: This compliance finding explicitly requires pinning the centralized dependency-audit workflow to @v1 per org standards, which this PR directly resolves.

Possibly related PRs

  • petry-projects/ContentTwin#52: Both PRs update .github/workflows/dependency-audit.yml's dependency-audit job to use the org reusable workflow at @v1 version.
🚥 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 accurately references issue #194 and describes the main change: implementing compliance by updating the dependency-audit workflow to use the non-stub version.
Linked Issues check ✅ Passed The PR fulfills issue #194's requirement by updating the workflow to use @v1 instead of @v2, bringing it into compliance with org standards for pinning reusable workflows.
Out of Scope Changes check ✅ Passed Only the dependency-audit.yml workflow version was updated; no unrelated changes are present. The modification is narrowly scoped to resolve the compliance finding.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch dev-lead/issue-194-20260608-1948

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 and usage tips.

@don-petry

Copy link
Copy Markdown
Contributor Author

Dev-Lead — waiting on PR blockers (intent: review-changes)

PR: #235
No changes were committed, but the PR still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews). The retry cron will re-attempt automatically. Next attempt after: 2026-06-08T20:20:38Z

@don-petry

Copy link
Copy Markdown
Contributor Author

Note

I reviewed this PR and no code changes were needed, but it still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews), so I cannot mark it done yet. I'll re-check automatically.
Next attempt after: 2026-06-08T20:20:38Z

@don-petry
don-petry enabled auto-merge (squash) June 8, 2026 19:50

Copilot AI 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.

Pull request overview

This PR brings the repository’s centralized dependency audit workflow into compliance with org standards by pinning the reusable workflow reference to @v1, aligning with issue #194’s requirement for a non-stub dependency audit workflow.

Changes:

  • Updated .github/workflows/dependency-audit.yml to use petry-projects/.github/.github/workflows/dependency-audit-reusable.yml@v1 (org-standard pin).

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 646d8d1d8d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .github/workflows/dependency-audit.yml
@don-petry
don-petry disabled auto-merge June 8, 2026 19:52

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

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 @.github/workflows/dependency-audit.yml:
- Line 33: The unpinned `uses:` in dependency-audit.yml (the line referencing
petry-projects/.github/.github/workflows/dependency-audit-reusable.yml@v1) will
trigger zizmor’s `unpinned-uses` rule and cannot be changed in this caller stub,
so either (A) update the central reusable workflow repository to publish a
pinned ref: change the reusable workflow `dependency-audit-reusable.yml`
publication/consumer to reference a specific commit SHA (i.e., replace the `@v1`
tag with an exact SHA) so callers remain compliant, or (B) add an org-level
zizmor exemption/suppression for this canonical caller stub (the
`dependency-audit.yml` caller) to allow the shared `@v1` reference; target the
reusable filename `dependency-audit-reusable.yml` and the `uses:` invocation in
`dependency-audit.yml` when applying the fix.
🪄 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

Run ID: 7433e163-104b-46b3-a4e6-a3b2bb12af46

📥 Commits

Reviewing files that changed from the base of the PR and between f0d29fa and 646d8d1.

📒 Files selected for processing (1)
  • .github/workflows/dependency-audit.yml

Comment thread .github/workflows/dependency-audit.yml
@don-petry

Copy link
Copy Markdown
Contributor Author

Dev-Lead — fix-bot-comment (no-changes)

Agent reasoning
Issues addressed: 0
Files changed: none
Skipped (informational): 0
Notes:
- PR change (@v2 → @v1) is correct per issue #194 and the org standard stub
- Codex P1 thread is a false positive; ACTOR is empty so thread cannot be resolved
- dev-lead/ci-relay "cancelled" is a prior-agent infrastructure artifact, not a code issue
- All substantive CI checks pass; no code changes required
```

@don-petry
don-petry enabled auto-merge (squash) June 8, 2026 19:53
@don-petry
don-petry disabled auto-merge June 8, 2026 19:57
@don-petry
don-petry enabled auto-merge (squash) June 8, 2026 20:00
@don-petry
don-petry disabled auto-merge June 8, 2026 20:04
@don-petry

Copy link
Copy Markdown
Contributor Author

Dev-Lead — waiting on PR blockers (intent: fix-reviews)

PR: #235
No changes were committed, but the PR still has blocking checks or reviews (failing or cancelled checks, or changes-requested reviews). The retry cron will re-attempt automatically. Next attempt after: 2026-06-08T20:36:19Z

@donpetry-bot donpetry-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.

Automated review — APPROVED ✓

Risk: LOW
Reviewed commit: 1d315a2f8abaf611a5b7007850d5b588153d465a
Cascade: triage → audit (triage: haiku 4.5 → deep: sonnet 4.6 + duck: o4-mini → audit: opus 4.7)

Summary

The deep review's central claim is factually incorrect: the org .github repo standard template and compliance-audit script both designate @v1 as the expected pin for dependency-audit-reusable.yml. This PR brings ContentTwin's stub from the non-compliant @v2 into alignment with the canonical @v1 template — closing issue #194 as intended. No security, supply-chain, or required-status-check concerns; the v1 reusable preserves the Detect ecosystems job name.

Findings

  • INFO: Verified via gh api that petry-projects/.github main standards/workflows/dependency-audit.yml pins uses: to dependency-audit-reusable.yml@v1. The deep review's assertion that the standard template pins to @v2 is incorrect.
  • INFO: Verified via gh api that petry-projects/.github main scripts/compliance-audit.sh, function check_centralized_workflow_stubs, declares the expected pin as dependency-audit.yml:dependency-audit-reusable:v1. The deep review's claim that the org has 'upgraded the standard to @v2' is contradicted by the compliance script itself.
  • INFO: Issue #194 explicitly states: 'Centralized workflow dependency-audit.yml references the reusable but is not pinned to @v1 (org standard). Replace with the canonical stub from standards/workflows/dependency-audit.yml which delegates to petry-projects/.github/.github/workflows/dependency-audit-reusable.yml@v1.' This PR performs exactly the remediation requested.
  • INFO: The 'MUST NOT change uses: line' guidance in the stub header is a constraint against deviating from the canonical template, not against aligning with it. ContentTwin main currently deviates (@v2) from the canonical template (@v1); the PR restores alignment, which is the correct read of the stub contract.
  • INFO: Both v1 and v2 reusables expose the detect job named Detect ecosystems, so the required status check dependency-audit / Detect ecosystems continues to be produced after the downgrade. No branch-protection break.
  • INFO: The pin moves between two tags on petry-projects/.github (the org's own reusable workflow repo) — not an external dependency. v1 tag resolves to commit d3d768dabb7f28cc63283cdfe48630da53700e50, v2 to 376a4fcb1117444595e3e702fa450873d0e54310. Both are first-party and governed by the org's release process. No typosquat, no third-party action introduced.
  • INFO: The Codex P1 advisory comment incorrectly assumed @v2 is the org standard based on it being the higher tag number. This contradicts the standards template, the compliance script, and issue #194. The dev-lead agent's dismissal of the Codex finding as a false positive was correct.
  • INFO: CodeRabbit's zizmor unpinned-uses flag (separate from the v1/v2 question) is non-blocking: this repo's CI Lint job runs only shellcheck. Per the stub header, SHA-pinning would have to be applied upstream in petry-projects/.github, not in this caller stub.

Reviewed by the PR-review cascade (triage: haiku 4.5 → deep: sonnet 4.6 + duck: o4-mini → audit: opus 4.7). Reply if you need a human review.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@don-petry
don-petry disabled auto-merge June 13, 2026 10:19
@don-petry

Copy link
Copy Markdown
Contributor Author

Dev-Lead — review-changes (no-changes)

No changes were needed for this PR.

@don-petry
don-petry enabled auto-merge (squash) June 13, 2026 10:19
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@don-petry
don-petry disabled auto-merge June 13, 2026 10:25
@don-petry

Copy link
Copy Markdown
Contributor Author

Dev-Lead — fix-bot-comment (no-changes)

Agent reasoning
Issues addressed: 0
- Quality Gate passed with 0 new issues, 0 security hotspots — no fixes required
Files changed: None (Quality Gate clean)
Skipped (informational): 0
```
The PR is ready to proceed pending completion of in-flight CI checks.

@don-petry
don-petry enabled auto-merge (squash) June 13, 2026 10:25
@sonarqubecloud

Copy link
Copy Markdown

@don-petry
don-petry merged commit 9283d30 into main Jun 13, 2026
19 of 21 checks passed
@don-petry
don-petry deleted the dev-lead/issue-194-20260608-1948 branch June 13, 2026 10:27
@github-actions

Copy link
Copy Markdown
Contributor

CI Failure: SonarCloud Code Analysis

Step: SonarCloud Code Analysis
Root cause: Config error

The PR downgrades the reusable dependency-audit workflow reference from @v2 to @v1 in .github/workflows/dependency-audit.yml. SonarCloud scans the repository including workflow files, and the @v1 reference may reference a pinned version that conflicts with organization-level policies or SonarCloud quality gate rules around dependency security practices. Quality gates configured to flag outdated or downgraded CI tooling references would surface this as a blocking issue.

Suggested fix: Revert the change in .github/workflows/dependency-audit.yml back to uses: petry-projects/.github/.github/workflows/dependency-audit-reusable.yml@v2 to restore the approved workflow version.

View run logs

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.

Compliance: non-stub-dependency-audit.yml

3 participants