Repository navigation
chore: use reusable workflow for CI action - #256
Merged
Merged
Conversation
### what Switch linting and testing CI actions to use the reusable workflow ### why Less duplication, replace local reusable workflow ### testing runs on the PR ### docs n/a
albertodonato
marked this pull request as ready for review
October 20, 2026 14:35
There was a problem hiding this comment.
1 issue found across 4 files
Confidence score: 4/5
- Renaming the jobs in
.github/workflows/ci.yamlchanges the status-check names, so branch protection that requireslintortestmay leave PRs waiting on checks that no longer exist. Keep the IDs or update the required checks alongside the rename.
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name=".github/workflows/ci.yaml">
<violation number="1" location=".github/workflows/ci.yaml:29">
P2: Renaming the job ids from `lint`/`test` to `Lint`/`Tests` changes the status check names reported on PRs. If branch protection requires the existing `lint`/`test` checks, PRs can get stuck waiting on checks that never report. Keep the original lowercase job ids, and confirm the required check names in branch protection match the new ones.</violation>
</file>
Architecture diagram
sequenceDiagram
participant GH as GitHub Actions
participant Local as Local Repo Workflow
participant Remote as Remote Reusable Workflow
participant RemoteRepo as stacklet/github-tooling Repo
participant Runner as CI Runner (ubuntu-latest)
participant Tooling as Pre-commit Tooling
participant Just as Just Task Runner
Note over GH,Just: CI Pipeline Runtime Flow
GH->>Local: Trigger CI workflow (push/PR)
Local->>GH: Declare Lint job (permissions: contents: read)
Local->>Remote: Call reusable run-script.yml workflow
Remote->>RemoteRepo: Resolve workflow at pinned commit
RemoteRepo-->>Remote: Workflow definition
Remote->>GH: Pass secrets (STEP_SECURITY_API_KEY)
Remote->>Runner: Provision runner
Runner->>Tooling: Install mise + tools (incl. prek 0.5.6)
Tooling->>Tooling: Ensure just is available
Runner->>Remote: Execute pre-commit cache setup
Remote->>Runner: Configure GitHub token auth
Runner->>Just: Invoke "just lint" command
Just->>Just: Run prek --all-files (lint targets)
Just-->>Runner: Completion status
Runner-->>Remote: Lint results
Remote-->>GH: Job completion
alt Lint succeeds
GH->>Local: Trigger Tests job
Local->>Remote: Call run-script.yml again
Remote->>Runner: Provision second runner
Runner->>Just: Invoke "just test" command
Just->>Just: Execute test suite
Just-->>Runner: Test results
Runner-->>Remote: Test status
Remote-->>GH: Job completion
else Lint fails
GH->>Local: Fail workflow immediately
Local-->>GH: Workflow stopped
end
Note over GH,Just: Secrets passed securely and no local workflow duplication
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
| test: | ||
| name: test | ||
| uses: ./.github/workflows/_run-just.yaml | ||
| Tests: |
There was a problem hiding this comment.
P2: Renaming the job ids from lint/test to Lint/Tests changes the status check names reported on PRs. If branch protection requires the existing lint/test checks, PRs can get stuck waiting on checks that never report. Keep the original lowercase job ids, and confirm the required check names in branch protection match the new ones.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. At .github/workflows/ci.yaml, line 29:
<comment>Renaming the job ids from `lint`/`test` to `Lint`/`Tests` changes the status check names reported on PRs. If branch protection requires the existing `lint`/`test` checks, PRs can get stuck waiting on checks that never report. Keep the original lowercase job ids, and confirm the required check names in branch protection match the new ones.</comment>
<file context>
@@ -13,15 +13,25 @@ permissions:
- test:
- name: test
- uses: ./.github/workflows/_run-just.yaml
+ Tests:
+ permissions:
+ contents: read
</file context>
Suggested change
| Tests: | |
| test: |
Contributor
Author
There was a problem hiding this comment.
intended change, to match other repos using the workflow
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
what
Switch linting and testing CI actions to use the reusable workflow
why
Less duplication, replace local reusable workflow
testing
runs on the PR
docs
n/a