Repository navigation
ci(p0): stabilize workflow topology and freeze CI-sprawl baseline - #427
Conversation
|
CI-P0 self-validation on head
Representative CI-storm evidence: this infrastructure-only PR triggered 9 Actions workflows. Several independently restore/build/test or package the same unchanged application path. This observation is intentionally recorded as a CI-P1 optimization target, not "fixed" by weakening P0 semantics. PR diff is additive only: one lightweight workflow, two read-only Python scripts, one budget JSON and one audit document. No application, engine, release, or field-authority source is modified. |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6e0aadcc81
ℹ️ 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".
| if not in_jobs: | ||
| continue | ||
|
|
||
| job_match = re.match(r"^ ([A-Za-z0-9_-]+):\s*(?:#.*)?$", line) |
There was a problem hiding this comment.
Parse job indentation instead of assuming two spaces
When a valid workflow uses four-space job indentation, this regex records no job IDs; because an empty jobIds collection is not itself an error, duplicate job IDs and duplicate step names in that workflow pass the integrity guard as healthy. Derive nesting from YAML indentation or explicitly reject unsupported layouts, and cover the alternate indentation with a regression fixture.
Useful? React with 👍 / 👎.
| "limits": { | ||
| "workflowFiles": 29, |
There was a problem hiding this comment.
Budget the computed pull-request workflow count
When pull_request is added to an existing push-only workflow, pullRequestWorkflows increases but none of these limits changes, so the budget remains healthy even if another full build/test workflow now runs on every PR. Since the inventory already computes this metric, freezing its baseline here is necessary for the guard to detect this CI-sprawl scenario.
Useful? React with 👍 / 👎.
Closes #426
Purpose
CI-P0 is a stabilization milestone before any workflow consolidation. It does not remove checks, change IEC 61850 runtime behavior, alter physical acceptance semantics, or change release/promotion authority.
Adds
Frozen pre-P0 observations
The new P0 guard itself adds one workflow and one checkout but no .NET setup/restore/build/test and no uploaded artifact. The reviewed budget freezes that post-P0 topology so CI duplication cannot silently grow.
Non-goals
P1 should use this baseline as the before-state and reduce the expensive counts rather than adding another parallel pipeline.