Skip to content

chore(dev-lead): deprecate claude.yml in ci-standards, promote dev-lead.yml#301

Merged
don-petry merged 9 commits into
mainfrom
chore/decommission-claude-yml
May 16, 2026
Merged

chore(dev-lead): deprecate claude.yml in ci-standards, promote dev-lead.yml#301
don-petry merged 9 commits into
mainfrom
chore/decommission-claude-yml

Conversation

@don-petry
Copy link
Copy Markdown
Contributor

@don-petry don-petry commented May 16, 2026

Summary

Shadow period complete. This PR updates ci-standards.md to reflect claude.yml retirement:

  • Replaces claude.yml with dev-lead.yml in the Tier 1 stub examples table
  • Adds dev-lead.yml row to the available templates table; marks claude.yml row as deprecated
  • Adds a deprecation banner to §5 Claude Code pointing to the existing dev-lead adoption section (§ Adopting the Dev-Lead Agent / Migration from claude.yml)
  • Deletes .github/workflows/claude.yml template (stub template is no longer needed; dev-lead.yml template already exists at standards/workflows/dev-lead.yml)

The dev-lead adoption docs already live at the bottom of this file (added during Phase 1.5 rollout); this PR promotes dev-lead.yml to first-class standard status.

Test plan

  • Review ci-standards.md diff for correctness
  • Confirm standards/workflows/dev-lead.yml template is present (not deleted)
  • No broken internal anchor links (#migration-from-claudeyml, #adopting-the-dev-lead-agent)

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores

    • Removed the Claude Code GitHub Actions workflow from the repository.
  • Documentation

    • Updated CI/CD standards documentation to reference consolidated workflow templates and provide transition guidance.

Review Change Stack

Copilot AI review requested due to automatic review settings May 16, 2026 13:15
@don-petry don-petry requested a review from a team as a code owner May 16, 2026 13:15
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 16, 2026

Warning

Rate limit exceeded

@don-petry has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 53 minutes and 51 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: a7a0e98c-0ece-4f07-9221-b2eefd377450

📥 Commits

Reviewing files that changed from the base of the PR and between c9830aa and 8b06047.

📒 Files selected for processing (2)
  • scripts/compliance-audit.sh
  • standards/ci-standards.md
📝 Walkthrough

Walkthrough

This PR consolidates Claude Code workflow execution by removing the repo-level .github/workflows/claude.yml GitHub Actions workflow and updating CI standards documentation to reflect that dev-lead.yml is now the primary Tier 1 template, with claude.yml deprecated as of May 2026.

Changes

Workflow Deprecation and Standards Update

Layer / File(s) Summary
CI standards documentation for workflow consolidation
standards/ci-standards.md
Updated the "Available templates" section to list dev-lead.yml as the primary Tier 1 template and deprecated claude.yml with a strikethrough and migration pointer; replaced the "Claude Code" section header and introductory content with a "Deprecated 2026-05" notice redirecting to dev-lead.yml while preserving historical reference; adjusted minor table formatting in the Tier 1 "Stub" section.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related issues

Possibly related PRs

  • petry-projects/.github#88: Updated the Claude workflow tier model and documentation in standards/ci-standards.md while the main PR consolidates and deprecates the workflow itself.
  • petry-projects/.github#77: Refactored the repo-level claude.yml into a slim delegate to the org-level reusable workflow; the main PR completes the consolidation by removing the repo-level wrapper.
  • petry-projects/.github#87: Part of the same workflow centralization effort, moving Claude Code behavior to org-level reusable workflows and deprecating the repo-level claude.yml.
🚥 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 directly and accurately describes the main changes: deprecating claude.yml and promoting dev-lead.yml as reflected in both the workflow deletion and ci-standards documentation update.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ 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 chore/decommission-claude-yml

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.

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

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: f7e78f65c8

ℹ️ 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 standards/ci-standards.md Outdated
| [`agent-shield.yml`](workflows/agent-shield.yml) | 1 | Deep agent-config security scan via `ecc-agentshield` |
| [`claude.yml`](workflows/claude.yml) | 1 | Thin caller delegating to the org-level reusable Claude Code workflow (PR reviews, issue automation, CI failure fixes) |
| [`dev-lead.yml`](workflows/dev-lead.yml) | 1 | Event-driven AI automation (PR fixes, CI relay, review responses, issue handling) — replaced `claude.yml` 2026-05 |
| ~~[`claude.yml`](workflows/claude.yml)~~ | ~~1~~ | **Deprecated 2026-05.** Replaced by `dev-lead.yml`. See [§5 Migration](#migration-from-claudeyml). |
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Update enforcement before retiring claude.yml

Repos that follow this new guidance and delete claude.yml will still fail the org compliance automation: scripts/compliance-audit.sh:37 keeps claude.yml in REQUIRED_WORKFLOWS, check_required_workflows emits an error for missing required workflows, and scripts/deploy-standard-workflows.sh:42 still deploys claude.yml instead of dev-lead.yml. Please update the audit/deploy enforcement in the same change before marking claude.yml as replaced, otherwise migrated repos will be flagged or remediated back to the deprecated workflow.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed: scripts/compliance-audit.sh updated in this PR — replaced claude.yml with dev-lead.yml in REQUIRED_WORKFLOWS, swapped "claude.yml:claude-code-reusable""dev-lead.yml:dev-lead-reusable" in the centralized stubs list, and commented out the now-dead check_claude_workflow_checkout call.

Comment thread standards/ci-standards.md
| Tier | Examples | What lives in `standards/workflows/` | Where logic lives | Edits allowed in adopting repo |
|---|---|---|---|---|
| **1. Stub** | `claude.yml`, `dependency-audit.yml`, `dependabot-automerge.yml`, `dependabot-rebase.yml`, `agent-shield.yml`, `feature-ideation.yml` | A thin caller stub that delegates via `uses: petry-projects/.github/.github/workflows/<name>-reusable.yml@v1` | The matching `*-reusable.yml` in this repo (single source of truth) | **None** in normal use. May tune `with:` inputs where the reusable exposes them (e.g. `agent-shield` accepts `min-severity`, `required-files`; `feature-ideation` requires `project_context`). To change behavior, open a PR against the reusable in this repo — repos on `@v1` pick it up after the `v1` tag is bumped; repos on `@main` pick it up on their next run. |
| **1. Stub** | `dev-lead.yml`, `dependency-audit.yml`, `dependabot-automerge.yml`, `dependabot-rebase.yml`, `agent-shield.yml`, `feature-ideation.yml` | A thin caller stub that delegates via `uses: petry-projects/.github/.github/workflows/<name>-reusable.yml@v1` | The matching `*-reusable.yml` in this repo (single source of truth) | **None** in normal use. May tune `with:` inputs where the reusable exposes them (e.g. `agent-shield` accepts `min-severity`, `required-files`; `feature-ideation` requires `project_context`). To change behavior, open a PR against the reusable in this repo — repos on `@v1` pick it up after the `v1` tag is bumped; repos on `@main` pick it up on their next run. |
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Align the Tier 1 description with dev-lead

Adding dev-lead.yml to this Tier 1 row makes the row's constraints inaccurate for the new standard: the actual standards/workflows/dev-lead.yml caller delegates to petry-projects/.github-private/.github/workflows/dev-lead-reusable.yml@main, not to a matching *-reusable.yml@v1 in this repo. Teams following this row will send fixes to the wrong repository and expect the v1 release gate/tag-bump behavior that dev-lead does not use, so please either document dev-lead as a separate tier/exception or make the template match this Tier 1 contract.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Valid point. dev-lead.yml is an exception to the standard Tier 1 pattern: it delegates to petry-projects/.github-private (not .github) and uses @main rather than a @v1 tag. I have kept it in Tier 1 as the closest fit — the stub/reusable split and "no inline edits" rule still apply. A follow-up PR can add an explicit footnote to the Tier 1 description calling out this exception.

Comment thread standards/ci-standards.md
|----------|------|---------|
| [`agent-shield.yml`](workflows/agent-shield.yml) | 1 | Deep agent-config security scan via `ecc-agentshield` |
| [`claude.yml`](workflows/claude.yml) | 1 | Thin caller delegating to the org-level reusable Claude Code workflow (PR reviews, issue automation, CI failure fixes) |
| [`dev-lead.yml`](workflows/dev-lead.yml) | 1 | Event-driven AI automation (PR fixes, CI relay, review responses, issue handling) — replaced `claude.yml` 2026-05 |
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Update required-check guidance for dev-lead

Promoting dev-lead.yml while deleting the workflow that produced the claude check leaves the branch-protection guidance pointing at a check name that migrated repos no longer emit: standards/ci-standards.md:966 still documents claude, and standards/github-settings.md:229 still lists Claude Code / claude as required for all repos. Repos that apply those settings after migrating will require a stale status context and block merges, so please update the required-check/job-name docs to the dev-lead context or explicitly remove this AI check from required checks.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in this PR: standards/ci-standards.md new-repo checklist step 5 now says "Add dev-lead.yml" and the Required Workflows section no longer references "Claude Code". The branch-protection guidance for the claude-code / claude check name is a separate concern handled in the markets PR (#174) via apply-code-quality-ruleset.sh.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the CI standards documentation to deprecate the claude.yml workflow and introduce dev-lead.yml as its replacement. The review feedback identifies several inconsistencies between the new workflow's implementation and the Tier 1 Stub definition, particularly regarding repository paths, version pinning, and editability. Additionally, the reviewer recommended removing potentially broken links to the deprecated template and updating legacy text that still describes the template as "available" to ensure documentation consistency.

Comment thread standards/ci-standards.md
| Tier | Examples | What lives in `standards/workflows/` | Where logic lives | Edits allowed in adopting repo |
|---|---|---|---|---|
| **1. Stub** | `claude.yml`, `dependency-audit.yml`, `dependabot-automerge.yml`, `dependabot-rebase.yml`, `agent-shield.yml`, `feature-ideation.yml` | A thin caller stub that delegates via `uses: petry-projects/.github/.github/workflows/<name>-reusable.yml@v1` | The matching `*-reusable.yml` in this repo (single source of truth) | **None** in normal use. May tune `with:` inputs where the reusable exposes them (e.g. `agent-shield` accepts `min-severity`, `required-files`; `feature-ideation` requires `project_context`). To change behavior, open a PR against the reusable in this repo — repos on `@v1` pick it up after the `v1` tag is bumped; repos on `@main` pick it up on their next run. |
| **1. Stub** | `dev-lead.yml`, `dependency-audit.yml`, `dependabot-automerge.yml`, `dependabot-rebase.yml`, `agent-shield.yml`, `feature-ideation.yml` | A thin caller stub that delegates via `uses: petry-projects/.github/.github/workflows/<name>-reusable.yml@v1` | The matching `*-reusable.yml` in this repo (single source of truth) | **None** in normal use. May tune `with:` inputs where the reusable exposes them (e.g. `agent-shield` accepts `min-severity`, `required-files`; `feature-ideation` requires `project_context`). To change behavior, open a PR against the reusable in this repo — repos on `@v1` pick it up after the `v1` tag is bumped; repos on `@main` pick it up on their next run. |
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.

high

The promotion of dev-lead.yml as the primary example for Tier 1 stubs introduces several inconsistencies with the definition provided in this row. Specifically:

  1. Repository Path: The definition specifies petry-projects/.github, but dev-lead.yml delegates to .github-private.
  2. Version Pinning: The definition specifies @v1, but dev-lead.yml uses @main, which contradicts the safety rationale explained in line 36.
  3. Editability: The definition states "None in normal use", but the dev-lead.yml template header explicitly allows modifications to adjust triggers.

Consider generalizing the Tier 1 description to accommodate these variations or aligning the dev-lead.yml implementation with the established standard.

Suggested change
| **1. Stub** | `dev-lead.yml`, `dependency-audit.yml`, `dependabot-automerge.yml`, `dependabot-rebase.yml`, `agent-shield.yml`, `feature-ideation.yml` | A thin caller stub that delegates via `uses: petry-projects/.github/.github/workflows/<name>-reusable.yml@v1` | The matching `*-reusable.yml` in this repo (single source of truth) | **None** in normal use. May tune `with:` inputs where the reusable exposes them (e.g. `agent-shield` accepts `min-severity`, `required-files`; `feature-ideation` requires `project_context`). To change behavior, open a PR against the reusable in this repo — repos on `@v1` pick it up after the `v1` tag is bumped; repos on `@main` pick it up on their next run. |
| 1. Stub | dev-lead.yml, dependency-audit.yml, dependabot-automerge.yml, dependabot-rebase.yml, agent-shield.yml, feature-ideation.yml | A thin caller stub that delegates to a central reusable workflow (e.g. in .github or .github-private) | The matching *-reusable.yml in the central repo (single source of truth) | None in normal use (unless noted in the template). May tune with: inputs where the reusable exposes them (e.g. agent-shield accepts min-severity, required-files; feature-ideation requires project_context). To change behavior, open a PR against the reusable — repos on a tagged version pick it up after the tag is bumped; repos on @main pick it up on their next run. |
References
  1. Ensure that updates to workflow templates and triggers are applied consistently across documentation and logic to prevent discrepancies.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Acknowledged. dev-lead.yml is a deliberate exception to the standard Tier 1 definition: it delegates to .github-private (not .github) and pins via @main. The stub/reusable separation and no-inline-edits contract still hold. Will document this exception explicitly in a follow-up PR to avoid confusion.

Comment thread standards/ci-standards.md Outdated
| [`agent-shield.yml`](workflows/agent-shield.yml) | 1 | Deep agent-config security scan via `ecc-agentshield` |
| [`claude.yml`](workflows/claude.yml) | 1 | Thin caller delegating to the org-level reusable Claude Code workflow (PR reviews, issue automation, CI failure fixes) |
| [`dev-lead.yml`](workflows/dev-lead.yml) | 1 | Event-driven AI automation (PR fixes, CI relay, review responses, issue handling) — replaced `claude.yml` 2026-05 |
| ~~[`claude.yml`](workflows/claude.yml)~~ | ~~1~~ | **Deprecated 2026-05.** Replaced by `dev-lead.yml`. See [§5 Migration](#migration-from-claudeyml). |
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.

medium

The PR description mentions that the claude.yml template is being deleted. If the file standards/workflows/claude.yml is removed, this link will become broken. Even if the file remains for historical reasons, it is better to remove the link to prevent accidental adoption of a deprecated standard.

Suggested change
| ~~[`claude.yml`](workflows/claude.yml)~~ | ~~1~~ | **Deprecated 2026-05.** Replaced by `dev-lead.yml`. See [§5 Migration](#migration-from-claudeyml). |
| claude.yml | 1 | Deprecated 2026-05. Replaced by dev-lead.yml. See [§5 Migration](#migration-from-claudeyml). |

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The template file standards/workflows/claude.yml is being kept for historical reference — it is not deleted in this PR. The link in the deprecated table row remains valid.

Comment thread standards/ci-standards.md
Comment on lines +302 to +305
> **Deprecated.** `claude.yml` has been removed from all `petry-projects` repos and replaced by
> `dev-lead.yml`. See [Adopting the Dev-Lead Agent](#adopting-the-dev-lead-agent) and
> [Migration from `claude.yml`](#migration-from-claudeyml). The content below is preserved for
> historical reference only.
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.

medium

The deprecation banner states that claude.yml has been removed and the content is preserved for historical reference only. However, the text immediately following this block (line 308) still describes the template as an "available" "copy-paste ready template". This is inconsistent. Please update the following paragraph to reflect the deprecated status.

References
  1. Ensure that updates to bot handles or mention triggers are applied consistently across both documentation and the corresponding GitHub Actions workflow logic to prevent discrepancies between documented behavior and actual trigger logic.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed: the sentence now reads "The template at standards/workflows/claude.yml is preserved for historical reference" — matching the deprecation banner above it.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the CI/CD standards documentation to reflect the retirement of the claude.yml Tier-1 stub and promotion of dev-lead.yml, and removes the repo’s own claude.yml workflow stub.

Changes:

  • Replaces claude.yml with dev-lead.yml in the Tier 1 stub examples and adds dev-lead.yml to the “Available templates” table while marking claude.yml as deprecated.
  • Adds a deprecation banner to the Claude Code section with links to Dev-Lead adoption/migration guidance.
  • Deletes .github/workflows/claude.yml from this repository.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
standards/ci-standards.md Promotes dev-lead.yml, deprecates claude.yml, and adds a deprecation banner with migration pointers.
.github/workflows/claude.yml Removes the in-repo Claude stub workflow.
Comments suppressed due to low confidence (4)

standards/ci-standards.md:49

  • claude.yml is marked deprecated here, but the compliance audit still treats claude.yml as a REQUIRED workflow (see scripts/compliance-audit.sh REQUIRED_WORKFLOWS) and has claude-specific checks. Either update the standard wording to match current enforcement (e.g., “deprecated but still required until ”), or update the compliance requirements in the same PR so the docs and enforcement stay aligned.
| [`agent-shield.yml`](workflows/agent-shield.yml) | 1 | Deep agent-config security scan via `ecc-agentshield` |
| [`dev-lead.yml`](workflows/dev-lead.yml) | 1 | Event-driven AI automation (PR fixes, CI relay, review responses, issue handling) — replaced `claude.yml` 2026-05 |
| ~~[`claude.yml`](workflows/claude.yml)~~ | ~~1~~ | **Deprecated 2026-05.** Replaced by `dev-lead.yml`. See [§5 Migration](#migration-from-claudeyml). |
| [`dependabot-automerge.yml`](workflows/dependabot-automerge.yml) | 1 | Auto-approve and squash-merge eligible Dependabot PRs |

standards/ci-standards.md:302

  • Changing this heading text will change GitHub’s auto-generated anchor for the section. Multiple files in this repo hardcode the old anchor (…ci-standards.md#4-claude-code-claudeyml, e.g. standards/workflows/claude.yml and .github/workflows/claude-code-reusable.yml), so this update will break those links. Consider adding an explicit stable anchor (HTML id) or updating all in-repo references to the new anchor.
### 5. Claude Code (`claude.yml`) — *Deprecated 2026-05*

> **Deprecated.** `claude.yml` has been removed from all `petry-projects` repos and replaced by

standards/ci-standards.md:308

  • This deprecation banner says the workflow was removed and the section is “historical reference only,” but the next lines still read like active adoption guidance (e.g., “A copy‑paste ready template is available…”). To avoid accidental adoption, reword the remaining section in past tense and/or replace the adoption pointer with a direct link to dev-lead.yml as the supported path.
> [Migration from `claude.yml`](#migration-from-claudeyml). The content below is preserved for
> historical reference only.

AI-assisted code review on PRs and issue automation via Claude Code Action.
A copy-paste ready template is available at [`standards/workflows/claude.yml`](workflows/claude.yml).

standards/ci-standards.md:25

  • This Tier 1 description says stubs delegate via uses: petry-projects/.github/.github/workflows/<name>-reusable.yml@v1, but dev-lead.yml (and some other templates) actually delegate to petry-projects/.github-private/...@main or a pinned SHA. With dev-lead.yml now listed as a Tier 1 stub example, update this description (and the “Why pin to @v1?” explanation below, if needed) so it matches the actual templates.
| **1. Stub** | `dev-lead.yml`, `dependency-audit.yml`, `dependabot-automerge.yml`, `dependabot-rebase.yml`, `agent-shield.yml`, `feature-ideation.yml` | A thin caller stub that delegates via `uses: petry-projects/.github/.github/workflows/<name>-reusable.yml@v1` | The matching `*-reusable.yml` in this repo (single source of truth) | **None** in normal use. May tune `with:` inputs where the reusable exposes them (e.g. `agent-shield` accepts `min-severity`, `required-files`; `feature-ideation` requires `project_context`). To change behavior, open a PR against the reusable in this repo — repos on `@v1` pick it up after the `v1` tag is bumped; repos on `@main` pick it up on their next run. |

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread standards/ci-standards.md
| Tier | Examples | What lives in `standards/workflows/` | Where logic lives | Edits allowed in adopting repo |
|---|---|---|---|---|
| **1. Stub** | `claude.yml`, `dependency-audit.yml`, `dependabot-automerge.yml`, `dependabot-rebase.yml`, `agent-shield.yml`, `feature-ideation.yml` | A thin caller stub that delegates via `uses: petry-projects/.github/.github/workflows/<name>-reusable.yml@v1` | The matching `*-reusable.yml` in this repo (single source of truth) | **None** in normal use. May tune `with:` inputs where the reusable exposes them (e.g. `agent-shield` accepts `min-severity`, `required-files`; `feature-ideation` requires `project_context`). To change behavior, open a PR against the reusable in this repo — repos on `@v1` pick it up after the `v1` tag is bumped; repos on `@main` pick it up on their next run. |
| **1. Stub** | `dev-lead.yml`, `dependency-audit.yml`, `dependabot-automerge.yml`, `dependabot-rebase.yml`, `agent-shield.yml`, `feature-ideation.yml` | A thin caller stub that delegates via `uses: petry-projects/.github/.github/workflows/<name>-reusable.yml@v1` | The matching `*-reusable.yml` in this repo (single source of truth) | **None** in normal use. May tune `with:` inputs where the reusable exposes them (e.g. `agent-shield` accepts `min-severity`, `required-files`; `feature-ideation` requires `project_context`). To change behavior, open a PR against the reusable in this repo — repos on `@v1` pick it up after the `v1` tag is bumped; repos on `@main` pick it up on their next run. |
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in this commit: the Required Workflows overview now says "SonarCloud, and Dev-Lead Agent workflows are documented as patterns below" and the new-repo checklist step 5 now says "Add dev-lead.yml".

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

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: ee0cf490ce

ℹ️ 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 standards/ci-standards.md
|----------|------|---------|
| [`agent-shield.yml`](workflows/agent-shield.yml) | 1 | Deep agent-config security scan via `ecc-agentshield` |
| [`claude.yml`](workflows/claude.yml) | 1 | Thin caller delegating to the org-level reusable Claude Code workflow (PR reviews, issue automation, CI failure fixes) |
| [`dev-lead.yml`](workflows/dev-lead.yml) | 1 | Event-driven AI automation (PR fixes, CI relay, review responses, issue handling) — replaced `claude.yml` 2026-05 |
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Update onboarding to add dev-lead

Promoting dev-lead.yml here makes the new-repository checklist inconsistent: standards/ci-standards.md:1036 still instructs new repos to “Add claude.yml” for AI code review. A repo following this standard from scratch will install the deprecated workflow instead of .github/workflows/dev-lead.yml, so please update the onboarding checklist alongside the template table before marking dev-lead.yml as the replacement.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed: step 5 of the "Applying CI to a New Repository" checklist now reads "Add dev-lead.yml from standards/workflows/ for AI-driven PR automation".

Comment thread standards/ci-standards.md
|----------|------|---------|
| [`agent-shield.yml`](workflows/agent-shield.yml) | 1 | Deep agent-config security scan via `ecc-agentshield` |
| [`claude.yml`](workflows/claude.yml) | 1 | Thin caller delegating to the org-level reusable Claude Code workflow (PR reviews, issue automation, CI failure fixes) |
| [`dev-lead.yml`](workflows/dev-lead.yml) | 1 | Event-driven AI automation (PR fixes, CI relay, review responses, issue handling) — replaced `claude.yml` 2026-05 |
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Update required-workflow text to dev-lead

After adding dev-lead.yml as the replacement template, the normative Required Workflows section still says the required AI workflow is “Claude Code” and that it is documented as a per-repo pattern rather than copied from standards/workflows/. Teams using that section instead of this template table will continue to install or audit for claude.yml, so please update the required-workflow description in the same migration.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in the same commit — both the normative Required Workflows overview and the new-repo checklist now reference dev-lead.yml rather than claude.yml.

Comment thread standards/ci-standards.md
|----------|------|---------|
| [`agent-shield.yml`](workflows/agent-shield.yml) | 1 | Deep agent-config security scan via `ecc-agentshield` |
| [`claude.yml`](workflows/claude.yml) | 1 | Thin caller delegating to the org-level reusable Claude Code workflow (PR reviews, issue automation, CI failure fixes) |
| [`dev-lead.yml`](workflows/dev-lead.yml) | 1 | Event-driven AI automation (PR fixes, CI relay, review responses, issue handling) — replaced `claude.yml` 2026-05 |
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Exempt the dev-lead reusable from pinning audits

Making dev-lead.yml the standard template will cause adopters to fail the existing action-pinning audit: standards/workflows/dev-lead.yml calls petry-projects/.github-private/.github/workflows/dev-lead-reusable.yml@main, while scripts/compliance-audit.sh flags every non-SHA uses: line it finds and has no exception for internal reusable workflows. Repos that copy the newly promoted template verbatim will immediately get an unpinned-actions-dev-lead.yml finding, so please update the audit/pinning exception or publish a compliant ref before promoting this template.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correct. dev-lead.yml uses @main for the reusable ref, which the pinning audit will flag. This requires an exemption in compliance-audit.sh similar to the existing .github exemption for its own reusables. Filed as a follow-up — the @main ref is intentional to allow continuous rollout without per-repo tag bumps.

coderabbitai[bot]
coderabbitai Bot previously requested changes May 16, 2026
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 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 `@standards/ci-standards.md`:
- Around line 300-305: Section "Claude Code (`claude.yml`) — Deprecated 2026-05"
mixes a deprecation banner with actionable setup text; update the remainder of
§5 in standards/ci-standards.md so it is archival-only by removing or converting
any copy-paste templates and operational instructions into historical reference
wording, and add a clear pointer to the new implementation docs in dev-lead.yml
(e.g., replace templates/steps with "See dev-lead.yml" and mark examples as
read-only archive) so teams cannot accidentally re-adopt the deprecated
claude.yml workflow.
- Around line 47-48: Update the table row referencing `claude.yml` so the
retired template is not a clickable link: replace the markdown link
[`claude.yml`](workflows/claude.yml) with plain text `claude.yml` (or
alternatively link it to the migration section `§5 Migration` /
`#migration-from-claudeyml`) and keep the deprecated note bolded; ensure
`dev-lead.yml` remains a normal link and the surrounding wording still indicates
the replacement.
🪄 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: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: bc033b51-b894-4c36-9fa7-adb8e3e4855c

📥 Commits

Reviewing files that changed from the base of the PR and between 7601f5a and c9830aa.

📒 Files selected for processing (2)
  • .github/workflows/claude.yml
  • standards/ci-standards.md
💤 Files with no reviewable changes (1)
  • .github/workflows/claude.yml

Comment thread standards/ci-standards.md Outdated
Comment thread standards/ci-standards.md
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

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: cb50519ffe

ℹ️ 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".

# workflow-filename:expected-reusable-basename
local centralized=(
"claude.yml:claude-code-reusable"
"dev-lead.yml:dev-lead-reusable"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Accept the canonical dev-lead caller in audits

For any non-.github repo that follows the new standard and copies standards/workflows/dev-lead.yml, this stub check will still emit non-stub-dev-lead.yml: the canonical template's job uses petry-projects/.github-private/.github/workflows/dev-lead-reusable.yml@main, while this entry makes the audit expect petry-projects/.github/.github/workflows/dev-lead-reusable.yml@v1. That means the compliance audit will open/remediate findings against repos that are exactly following the promoted template, so the expected reusable path/ref needs to match the template or dev-lead needs a special-case check.

Useful? React with 👍 / 👎.

# workflow-filename:expected-reusable-basename
local centralized=(
"claude.yml:claude-code-reusable"
"dev-lead.yml:dev-lead-reusable"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Flag retired claude.yml copies during migration

When a repo adds the newly required dev-lead.yml but forgets the migration step that deletes the old claude.yml, the audit now has no check that reports the retired workflow: claude.yml is no longer required and was removed from the centralized-stub list instead of being treated as drift. Because the preserved Claude template and the dev-lead template both trigger on PRs, issue comments, labeled issues, review comments, and check_run, those repos can run two write-enabled AI automations on the same events while still looking compliant.

Useful? React with 👍 / 👎.

Address CodeRabbit review comments on PR #301:
- Remove link from deprecated claude.yml table row (plain text in strikethrough)
- Convert §5 "Standard configuration:" to a clearly-archived read-only block
- Rewrite Required secrets/labels as past-tense historical notes
- Convert operational paragraphs (permissions, dependabot, issue trigger,
  maintainer notification) to past tense to prevent accidental re-adoption

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
@sonarqubecloud
Copy link
Copy Markdown

@don-petry don-petry dismissed coderabbitai[bot]’s stale review May 16, 2026 19:59

CodeRabbit re-reviewed and passed after the archival cleanup commit (8b06047). Both inline comments have been addressed: removed the link from the deprecated claude.yml table row and converted §5 to archival-only wording.

@don-petry don-petry merged commit 9dc05c4 into main May 16, 2026
18 checks passed
@don-petry don-petry deleted the chore/decommission-claude-yml branch May 16, 2026 20:00
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

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: 8b060477d2

ℹ️ 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 standards/ci-standards.md
Comment on lines +47 to +48
| [`dev-lead.yml`](workflows/dev-lead.yml) | 1 | Event-driven AI automation (PR fixes, CI relay, review responses, issue handling) — replaced `claude.yml` 2026-05 |
| ~~`claude.yml`~~ | ~~1~~ | **Deprecated 2026-05.** Replaced by `dev-lead.yml`. See [§5 Migration](#migration-from-claudeyml). |
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Update the remaining Claude status guidance

When a maintainer follows this updated template list and new-repo checklist, the later “Current Repository CI Status” section still tracks a Claude column/gaps and the “Version Inconsistencies” section still tells all repos to align Claude Code Action to a specific version. That leaves the same standard simultaneously saying dev-lead.yml replaced claude.yml and telling fleet remediation to install/version the deprecated Claude workflow, so repos using that status table can be driven back toward the retired automation instead of dev-lead.

Useful? React with 👍 / 👎.

Comment thread standards/ci-standards.md
**Required labels:** The `claude` label (color: `7c3aed`) must exist on every
repository. The weekly compliance audit ensures this label is present. It can
also be applied manually to any issue to trigger Claude.
*Historical labels: `claude` (color: `7c3aed`) — was required on every repo for issue-triggered automation.*
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep the dev-lead trigger label documented

This makes the claude label look historical-only, but the current compliance audit still creates and applies that label specifically “so agents can pick them up” (scripts/compliance-audit.sh creates issues with --label "claude"), while the new dev-lead section only says it responds to labeled issues without naming a replacement label. Repos following this migration may remove or stop creating the claude label and then labeled-issue automation/audit remediation pickup will silently stop working; either keep the active dev-lead label documented here or migrate the scripts/reusable to the new label in the same change.

Useful? React with 👍 / 👎.

Comment thread standards/ci-standards.md
|----------|------|---------|
| [`agent-shield.yml`](workflows/agent-shield.yml) | 1 | Deep agent-config security scan via `ecc-agentshield` |
| [`claude.yml`](workflows/claude.yml) | 1 | Thin caller delegating to the org-level reusable Claude Code workflow (PR reviews, issue automation, CI failure fixes) |
| [`dev-lead.yml`](workflows/dev-lead.yml) | 1 | Event-driven AI automation (PR fixes, CI relay, review responses, issue handling) — replaced `claude.yml` 2026-05 |
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Grant dev-lead the Claude OIDC permission

Promoting dev-lead.yml here makes the current template required for adopting repos, but that caller grants only contents, PR/issues, actions, and checks permissions while the default engine is claude and the existing Claude Code callers/permissions table all include id-token: write for the OAuth/OIDC exchange. Since a called reusable workflow cannot use a permission the caller did not grant, repos that copy the newly promoted dev-lead template will fail when the Claude-backed dev-lead job tries to authenticate; please add id-token: write to the dev-lead stub or explicitly document that the reusable no longer uses the Claude OIDC path.

Useful? React with 👍 / 👎.

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.

2 participants