Skip to content

Fix review app release runner resource defaults - #802

Open
justin808 wants to merge 5 commits into
masterfrom
fix/review-app-release-runner-resources
Open

Fix review app release runner resource defaults#802
justin808 wants to merge 5 commits into
masterfrom
fix/review-app-release-runner-resources

Conversation

@justin808

@justin808 justin808 commented Jul 24, 2026

Copy link
Copy Markdown
Member

Why

Review-app builds could finish successfully but then stall while the release runner never exposed a replica. The previous resource-only repair did not solve that observation failure and left the workflow without a bounded, useful outcome.

What changed

  • Give review-app one-off runners app-sized CPU and memory defaults and a 15-minute server deadline.
  • Pin only the review-app deploy wrapper to the immutable repair revision from Bound runner replica observation by a monotonic deadline control-plane-flow#435.
  • Keep every non-canary cpflow wrapper on one stable release while allowing only the exact review-app deploy job to use a full 40-character canary SHA.
  • Record the exact first-party upstream repository in the closed action-trust seam; no wildcard trust was added.

How to review

  1. Confirm .controlplane/controlplane.yml changes only the review-app runner defaults and deadline.
  2. Confirm the workflow diff changes only the immutable upstream revision; triggers, permissions, conditions, and credential mapping are unchanged.
  3. Review bin/test-cpflow-github-flow for the narrow canary exception and its rejection paths.
  4. Treat the hosted replay below as release-blocking evidence: it proved the new bound, but it did not produce a usable deployment.

Validation

  • Workflow YAML parse: passed.
  • Targeted actionlint: passed.
  • Full cpflow GitHub-flow validation against the exact upstream checkout: passed.
  • Negative validator cases rejected a moving canary, wrong upstream workflow, second divergent wrapper, and duplicate canary entry.
  • Secure workflow scan: zero candidate-only findings and zero findings on the changed workflow; 53 unrelated trusted-base findings remain unchanged.
  • git diff --check: passed.
  • Independent maker-distinct Sol/xhigh audit: no blocking code finding; publish verdict for this exact head.

Authorized hosted replay

Current disposition: external-gate-failing; do not merge. No retry or waiver is inferred.

Tracking and post-merge exercise

#784 remains the required exercise tracker for this semantic workflow change. If a later authorized repair succeeds and this PR becomes mergeable, that issue owns one fresh-default verification PR, deployed behavior and endpoint evidence, cleanup, and closing the verification PR unmerged. Owner: batch coordinator.

Review decisions:

  • The immutable control-plane-flow canary is temporary. Issue Follow-up: Repair review-app setup and exercise deployed smoke #784 owns replacing it with the next durable released revision after upstream PR Update gems, RoR to 10.1.4 #435 merges and releases; this PR is not proceeding to merge on the canary.
  • The 900-second deadline deliberately applies to every one-off runner in review apps. The available configuration seam is app-level rather than release-job-specific, and the shared bound prevents any review-app one-off job from waiting indefinitely.
Agent details

QA Evidence

  • QA required: yes; workflow, deployment, and runner behavior changed.
  • QA lane: maker-distinct ror17-fleet-c-tutorial-checker-4, observed codex-collaboration/gpt-5.6-sol/xhigh.
  • Exact head: 1fc3f390bea00655b0846d83b2831a38b3589e34.
  • Result: local gates and independent review passed; the sole hosted deployment failed; cleanup passed.
  • Hosted QA receipt: unavailable because no successful deployment identity or behavioral criteria exist.

Coordination

Summary by CodeRabbit

  • New Features

    • Review-app workflows now support reconciliation run IDs and clearer run names.
    • Review-app one-off jobs have defined resource limits and a 15-minute timeout.
    • Added review-app contract validation and offline CI checks.
  • Improvements

    • Review-app workflows now use Control Plane Flow 5.3.0, while other workflows remain on pinned 5.2.0 references.
    • CI workflows use immutable action and workflow references.
    • Improved workflow permissions and credential handling.
    • Expanded trusted GitHub Actions for automated workflows.
    • Updated guidance for release validation and workflow version management.

@github-actions

Copy link
Copy Markdown

🚀 Quick Review App Commands

Welcome! Here are the commands you can use in this PR:
They require the repository to have cpflow review apps configured, including the CPLN_TOKEN_STAGING secret.

+review-app-deploy

Deploy your PR branch for testing.

+review-app-delete

Remove the review app when done.

+review-app-help

Show detailed instructions, environment setup, and configuration options.

Comment +review-app-help for full setup details.

@coderabbitai

coderabbitai Bot commented Jul 24, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Team

Run ID: d3950665-9bf4-48bf-a429-fe9e9a060692

📥 Commits

Reviewing files that changed from the base of the PR and between 235563e and 6377676.

📒 Files selected for processing (2)
  • .controlplane/readme.md
  • .github/cpflow-help.md

Included review availability: Your plan provides up to 4 included reviews per hour; 3 remain after this review.


Walkthrough

The repository updates Control Plane review-app workflows to version 5.3.0, pins reusable workflows and third-party actions, restricts workflow credentials, adds composite-action input safeguards, and introduces offline release-contract validation with supporting tests and documentation.

Changes

Control Plane workflows and validation

Layer / File(s) Summary
Review-app release contract
Gemfile, .github/workflows/cpflow-{deploy,delete}-review-app.yml, bin/check-cpflow-review-app-contract, spec/cpflow_review_app_contract_spec.rb
Pins the review-app callers and cpflow gem to 5.3.0. Adds validation for workflow structure, permissions, events, guards, references, dependency versions, and malformed inputs.
Workflow references and security boundaries
.github/workflows/*.yml, spec/cpflow_review_app_contract_spec.rb
Pins reusable workflows and third-party actions to commits. Restricts token permissions, disables checkout credential persistence, scopes promotion metadata, and blocks forked pull requests from the credentialed review job.
Composite action command boundaries
.github/actions/cpflow-setup-environment/action.yml, .github/actions/cpflow-delete-control-plane-app/action.yml, spec/cpflow_review_app_contract_spec.rb
Passes action inputs through environment variables, pins Ruby setup, validates required profile inputs, and quotes the delete script path.
Workflow validation and release documentation
bin/test-cpflow-github-flow, .controlplane/docs/*, .controlplane/readme.md, .github/cpflow-help.md
Adds offline validation, checks immutable stable references and promotion setup, and documents the split 5.3.0/5.2.0 release contracts and validation flow.
Runner and trusted-action configuration
.controlplane/controlplane.yml, .agents/agent-workflow.yml
Adds review-app runner CPU, memory, and timeout defaults. Expands the trusted action list.

Estimated code review effort: 4 (Complex) | ~45 minutes

Merge Risk: 🟡 Moderate · up to 63776

Review-app runners receive new resource defaults and a longer deadline, but the only deployment attempt did not expose a replica, so endpoint and behavioral validation could not complete. This leaves the release path insufficiently verified for merge.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 4 functions across 1 files. (2 skipped: 2 … Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the primary change: updating review-app release runner resource defaults. It is concise and matches the stated PR objective.
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.
Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 4 functions across 1 files. (2 skipped: 2 unsupported.)

  • Fix all pre-merge checks with AI
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/review-app-release-runner-resources

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.

Comment thread .controlplane/controlplane.yml
@claude

claude Bot commented Jul 24, 2026

Copy link
Copy Markdown

Review

Overview

Single-file, additive config change to .controlplane/controlplane.yml. It adds three cpflow one-off-job overrides (runner_job_default_cpu: "300m", runner_job_default_memory: "1Gi", runner_job_timeout: 900) scoped to the qa-react-webpack-rails-tutorial (review-app) entry, aiming to give one-off/release jobs the same baseline resources as the Rails workload. Production, staging, and the shared common alias are untouched.

Code quality / correctness

  • Change is minimal, well-scoped, and placed logically within the existing qa-react-webpack-rails-tutorial block (merges via <<: *common, doesn't touch the alias itself).
  • CPU/memory values are correctly quoted as strings (Kubernetes-style resource quantities with units), while the integer timeout is left unquoted — consistent with how these fields are typically consumed.
  • The explanatory comment is a little redundant with the PR description but is reasonable to keep for future readers who won't see the PR body.
  • No YAML anchors/aliases were changed, so react-webpack-rails-tutorial-staging and -production are unaffected, matching the stated intent.

Risk / potential issues

  • Scope of the timeout: runner_job_timeout: 900 applies to all one-off jobs run against QA/review apps, not just the release/migration job. A legitimate longer-running one-off (manual debugging task, data backfill, etc.) run against a review app will now be killed after 15 minutes. The PR description acknowledges this explicitly — left an inline comment on the relevant line for visibility.
  • Unproven root-cause fix: per the PR's own description, this is a speculative mitigation for issue Follow-up: Repair review-app setup and exercise deployed smoke #784 (missing runner replica/logs) — live deployment verification is still pending. The resource bump may not address the actual root cause if it's a scheduler/provider-side issue rather than a resource-starvation issue. Since this is low-risk, reversible config (review apps only), that seems like an acceptable way to test the hypothesis, but worth confirming the follow-up verification actually happens before treating Follow-up: Repair review-app setup and exercise deployed smoke #784 as resolved.
  • No automated test coverage for this (expected, since it's a deploy-tooling YAML config, not app code) — the PR description's manual cpflow config / YAML-load validation steps are a reasonable substitute.

Security

No credentials, identities, images, permissions, or endpoints are touched — consistent with the PR's stated config-security assertions. No concerns here.

Suggestions

  • Consider whether the 900s timeout should be documented as applying to all review-app one-offs (not just release) somewhere more discoverable than the PR description, e.g., in .controlplane/docs/ or the inline comment, so a future engineer debugging a killed one-off job in a review app has a pointer back to this decision.

@greptile-apps

greptile-apps Bot commented Jul 24, 2026

Copy link
Copy Markdown

Greptile Summary

Updates review-app one-off runner defaults.

  • Assigns 300m CPU and 1Gi memory to one-off jobs for prefix-matched QA/review apps.
  • Adds a 900-second active deadline for those jobs.
  • Leaves shared, staging, and production runner defaults unchanged.

Confidence Score: 5/5

The PR appears safe to merge, with no concrete blocking or non-blocking defects identified in the changed configuration.

The runner overrides are confined to the prefix-matched QA configuration, align with the Rails workload resources, and do not alter production or staging settings.

Important Files Changed

Filename Overview
.controlplane/controlplane.yml Adds internally consistent, review-app-scoped CPU, memory, and timeout defaults without an identified actionable defect.

Reviews (1): Last reviewed commit: "Fix release runner scheduling resource r..." | Re-trigger Greptile

@justin808

Copy link
Copy Markdown
Member Author

Address-review summary

Scan scope: full PR history after the complete current-head review wave.

Mattered

  • None.

Skipped

  • One current-head inline concern was verified as already documented and intentionally scoped to QA/review apps. The broader one-off timeout tradeoff was accepted, production and staging remain unchanged, and no code change was warranted. Rationale was posted and the thread was resolved: Fix review app release runner resource defaults #802 (comment)

Next default scan starts after this comment. Say check all reviews to rescan the full PR.

@justin808

Copy link
Copy Markdown
Member Author

+review-app-deploy

@github-actions

github-actions Bot commented Jul 24, 2026

Copy link
Copy Markdown

❌ Review App Deployment Failed

Deployment failed for PR #802, commit ec08723

🎮 Control Plane Console
📋 View Failed Action Build and Deploy Logs

@github-actions
github-actions Bot had a problem deploying to review/qa-react-webpack-rails-tutorial-802 July 24, 2026 13:51 Failure
@justin808

Copy link
Copy Markdown
Member Author

+review-app-delete

@github-actions

github-actions Bot commented Jul 24, 2026

Copy link
Copy Markdown

✅ Review App Deleted

Review app for PR #802 is deleted

🎮 Control Plane Console
📋 View Workflow Logs

@justin808
justin808 force-pushed the fix/review-app-release-runner-resources branch from ec08723 to 1fc3f39 Compare August 31, 2026 11:53
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Aug 31, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-06T08:59:10.460892Z 6377676 New commits
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Comment thread .github/workflows/cpflow-deploy-review-app.yml Outdated
Comment thread .controlplane/controlplane.yml
@claude

claude Bot commented Aug 31, 2026

Copy link
Copy Markdown

Review summary

Small, well-scoped infra change (50/-11 across 4 files) that (1) gives review-app one-off jobs the same CPU/memory as the Rails workload and a 15-minute active deadline, (2) points the review-app deploy reusable workflow at an unreleased control-plane-flow commit to test a fix, and (3) extends bin/test-cpflow-github-flow to allow that one workflow to diverge from the shared stable ref, but only via a full 40-char commit SHA.

Checked and looks correct:

  • runner_job_default_cpu: "300m" / runner_job_default_memory: "1Gi" in .controlplane/controlplane.yml match the Rails workload template (.controlplane/templates/rails.yml), consistent with the PR's stated intent.
  • YAML nesting is correctly scoped under qa-react-webpack-rails-tutorial only; common, production, and staging are untouched.
  • The new commit SHA in cpflow-deploy-review-app.yml is a well-formed 40-char hex string, and the updated bin/test-cpflow-github-flow canary logic correctly requires exactly one such divergent entry and validates it's a full SHA (not a mutable tag/branch).
  • .agents/agent-workflow.yml's new trusted_actions: [shakacode/control-plane-flow] entry appears intended to authorize exactly this kind of pinned-ref change to an already same-org-controlled repo.

Two things worth a second look (left as inline comments):

  1. .github/workflows/cpflow-deploy-review-app.yml — pinning to a commit on an unmerged PR (control-plane-flow#435) rather than a released tag is provisional by design (per the PR description), but carries a real risk: if that PR branch is later force-pushed/rebased/deleted before merging, the SHA could become unresolvable and silently break every review-app deploy. Recommend a tracked follow-up to swap to a released tag once Update gems, RoR to 10.1.4 #435 ships.
  2. .controlplane/controlplane.ymlrunner_job_timeout: 900 applies to all one-off jobs on qa-* apps, not just the release job. The PR description already flags this tradeoff, but it's a real behavior change for anyone running longer manual one-off tasks against review apps.

No security issues found (no credentials, permissions, or identity fields touched; SHA-pinning is actually a security improvement over the previous floating @v5.2.0 tag for that one workflow). No test coverage concerns beyond the existing bin/test-cpflow-github-flow script, which was appropriately extended.

@github-actions

github-actions Bot commented Aug 31, 2026

Copy link
Copy Markdown

❌ Review App Deployment Failed

Deployment failed for PR #802, commit 1fc3f39

🎮 Control Plane Console
📋 View Failed Action Build and Deploy Logs

@github-actions
github-actions Bot had a problem deploying to review/qa-react-webpack-rails-tutorial-802 August 31, 2026 11:56 Failure
@github-actions

github-actions Bot commented Aug 31, 2026

Copy link
Copy Markdown

✅ Review App Deleted

Review app for PR #802 is deleted

🎮 Control Plane Console
📋 View Workflow Logs

@justin808

Copy link
Copy Markdown
Member Author

Hosted replay result for head 1fc3f390bea00655b0846d83b2831a38b3589e34: external-gate-failing; do not merge.

The conditional fresh-default verification deployment is not eligible because this repair deployment did not succeed. No protected app URL, platform identifier/value, log, token, or secret name is included here.

@justin808

Copy link
Copy Markdown
Member Author

Address-review summary

Scan scope: since the previous summary at 2026-07-24T04:08:12Z.

Status: cutoff-safe review summary. Detailed review outcomes are collapsed below. The PR itself remains not merge-ready because the sole authorized hosted deployment failed.

Detailed review outcomes

Mattered

  • Deferred the temporary immutable canary lifecycle to existing tracker Follow-up: Repair review-app setup and exercise deployed smoke #784. The PR decision log records replacement with a durable released revision after upstream PR Update gems, RoR to 10.1.4 #435 merges and releases; the review thread is complete.
  • Declined a narrower timeout-scope code change. The configuration seam is review-app-wide, so the PR decision log records that the 900-second bound intentionally covers every review-app one-off runner; the review thread is complete.
  • The deployment gate remains external-gate-failing; no retry, merge, or fresh-default verification was performed.

Skipped

  • Nine general PR comments since the prior cutoff were operator evidence or automated review/workflow status receipts. Metadata triage found no separate action requirement; they remain preserved as durable status evidence.

Deferred-work tracking: existing issue #784.

Next default scan starts after this comment. Say check all reviews to rescan the full PR.

@github-actions

github-actions Bot commented Sep 5, 2026

Copy link
Copy Markdown

No description provided.

@justin808

Copy link
Copy Markdown
Member Author

Reviewed security repair — deployment still blocked

Candidate: 235563ec8cd5211e895753c5fc9e0c8582266dc0 against default 88b69bb0029c8f5fb63f557a8b8d1a78c16ff63d. Tracks #784.

The maintainer-approved security expansion pins existing action sources, closes shell-expression injection paths, narrows test permissions and checkout credential persistence, and adds regression coverage. The review-app deploy/delete pair remains on released cpflow 5.3.0; older workflow callers remain on the same immutable 5.2.0 cohort. No unrelated product changes are included.

Independent maker-distinct native Astra/high review found and verified a packaging regression in the proposed remote-action conversion. This candidate fixes it with matching source-checkout Git metadata scoped only to the setup step. An independent local archive/package reproduction verified the actual gem contains its library and caller template (222 packaged files); regression checks enforce the exact source identity and step-only binding.

Exact-candidate local verification:

  • Trusted workflow-security scanner: zero findings (previous baseline: 52).
  • Contract RSpec: 28 examples, zero failures.
  • Repository lint and validation: pass.
  • Offline workflow contract helper and full workflow actionlint: pass.
  • Whitespace check and clean committed worktree: pass.
  • Independent exact-head QA: pass; packaging P1 fixed and verified.

Publication is not a deployment authorization. A fresh read-only observation confirmed the exact review app absent, no accepted intent markers, and no active/pending Actions runs before publication. The reviewed synchronize path skips app creation/build/deploy when the app is absent. This is a snapshot, not an atomic lock against another actor changing state.

Status: NOT COMPLETE / external-gate-failing. The last authorized repair deployment failed. No automatic retries, merge, or deployed-behavior claim are authorized by this update. Current-head hosted checks/reviews still require fresh triage. A skipped deploy workflow is not deployment evidence.

Required closeout remains: successful explicitly authorized repair replay; gates-clean merge; the already-conditionally-authorized fresh-default verification PR and deployment; image/deploy/endpoint/behavior smoke and default reachability; cleanup and close the temporary PR unmerged. Retain only public-safe pass/fail evidence. Issue #784 remains the coordinator-owned tracker. Changed default-only workflows also need their appropriate post-merge exercise evidence; staging/production operations require separate authority and are not exercised here.

@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: 235563ec8c

ℹ️ 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 .controlplane/docs/testing-cpflow-github-actions.md
@github-actions

github-actions Bot commented Sep 6, 2026

Copy link
Copy Markdown

No description provided.

@justin808

Copy link
Copy Markdown
Member Author

Review update

Published 6377676c74ba314296fb5eeef1eb39422a6ffce5. The canonical upgrade-guide conflict is fixed and its review thread is resolved. This is a non-cutoff status: new-head CI/reviews must settle before final triage.

Verification and disposition

Mattered

  • Review finding 3940050965: accepted and fixed in the two cited canonical guides. Both now document the immutable release split, preserve customized callers, link the migration checklist, and separate validation from deployment authority. Reply and verification.
  • Maker-distinct native Astra/high QA passed at the exact new head: zero workflow-security findings, 28 passing contract tests, repository lint/validation, offline helper, full actionlint, local documentation links, and whitespace checks. Workflows, dependencies, and repository trust settings are unchanged by this documentation commit.
  • Maintainer explicitly acknowledged only the three existing installer/test-stub suspicious-text findings for PR Fix review app release runner resource defaults #802. The consumer repository's trust configuration is unchanged; broader coordinator trust is not substituted for it. The acknowledgment grants no deployment, retry, or merge-gate waiver.

Skipped

  • Previous-head Claude review workflow completed by security-validation skip because workflow files differ from default; this is not a successful code review. Independent native QA supplies actual review evidence.
  • Previous-head CodeRabbit docstring warning is optional polish, not a correctness blocker. No nit-only commit was made.
  • Historical status/acknowledgment posts do not authorize further work.

The repair deployment and deployed behavior remain unverified. No automatic retry is authorized; the conditional fresh-default verification remains reserved until successful repair deployment and gates-clean merge. Issue #784 remains open.

Non-cutoff status only. The next review pass must use check all reviews.

@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: 6377676c74

ℹ️ 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 on lines +15 to +16
template_root = File.join(Gem::Specification.find_by_name("cpflow", VERSION).full_gem_path,
"lib/github_flow_templates")

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 Activate Bundler before locating cpflow

When dependencies are installed under a configured bundle path such as vendor/bundle, the documented direct command and the helper's plain ruby bin/check-cpflow-review-app-contract invocation do not activate Bundler, so Gem::Specification.find_by_name cannot see the installed cpflow gem and validation exits with Gem::LoadError. The RSpec case does not catch this because its child Ruby inherits the environment established by bundle exec rspec; activate bundler/setup in this executable or consistently invoke it via bundle exec ruby.

Useful? React with 👍 / 👎.

Comment thread .controlplane/readme.md
Comment on lines +649 to +650
Do not run blanket `cpflow update-github-actions` regeneration or
`bin/pin-cpflow-github-ref` for this split. They can overwrite the separate

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 remaining split-migration instructions

Although this guide now warns against blanket regeneration, a repo-wide search still finds .github/testing-github-actions.md:27-35 directing prerelease testers to pin all generated reusable workflows to one SHA via bin/pin-cpflow-github-ref, while .controlplane/shakacode-team.md:131-145 still says every wrapper is on v5.2.0 and should be regenerated together. Following either guide overwrites the intentional v5.3.0 review-app/v5.2.0 non-review split and produces a state the new validators reject, so these remaining instructions need the same exception or a link to this section.

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.

1 participant