Skip to content

feat: add local ci parity command#4226

Open
lucarlig wants to merge 4 commits intomainfrom
feature/find-make-ci-command
Open

feat: add local ci parity command#4226
lucarlig wants to merge 4 commits intomainfrom
feature/find-make-ci-command

Conversation

@lucarlig
Copy link
Copy Markdown
Collaborator

@lucarlig lucarlig commented Apr 15, 2026

✨ Feature / Enhancement PR

🔗 Epic / Issue

Link to the epic or parent issue:
Closes #


🚀 Summary (1-2 sentences)

Add make ci as a workflow-driven local CI parity command that selects the union of GitHub jobs for PRs to main and pushes to main. Document that the command is best-effort parity, not a guarantee, and mark Node-backed jobs as approximations when local bootstrap differs from GitHub.


🧪 Checks

  • make lint passes
  • make test passes
  • CHANGELOG updated (if user-facing)

📓 Notes (optional)

Rationale: the goal is to make local validation a strong predictor of GitHub CI without hiding the places where local execution cannot truly match GitHub-hosted runners. The implementation reads the workflow files as the source of truth for selection, then labels each mapped job as exact, approx, or not_reproducible so reviewers can see where parity is real versus best-effort.

Local parity intentionally blocks publish, signing, artifact upload, and similar GitHub-hosted side effects. Node-backed jobs are marked as approximations because the local runner does not reproduce the workflow bootstrap that pins the Node version, upgrades npm, and configures the registry before executing those checks.

Signed-off-by: lucarlig <luca.carlig@ibm.com>
Signed-off-by: lucarlig <luca.carlig@ibm.com>
Signed-off-by: lucarlig <luca.carlig@ibm.com>
…command

Signed-off-by: lucarlig <luca.carlig@ibm.com>

# Conflicts:
#	.secrets.baseline
@lucarlig lucarlig marked this pull request as ready for review April 15, 2026 15:21
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