Skip to content

ci(workflows): skip miner-package tests when the miner package is untouched#3775

Merged
JSONbored merged 1 commit into
mainfrom
ci/skip-miner-tests-when-untouched
Jul 6, 2026
Merged

ci(workflows): skip miner-package tests when the miner package is untouched#3775
JSONbored merged 1 commit into
mainfrom
ci/skip-miner-tests-when-untouched

Conversation

@JSONbored

Copy link
Copy Markdown
Owner

Summary

  • test/unit/check-miner-package.test.ts and test/unit/miner-calibration-types.test.ts are self-contained w.r.t. root src/** — the same trust boundary the existing mcpCliHarness filter already established for the MCP CLI test cluster — but ran unconditionally on every PR that touched any backend path (virtually all of them, since test/** alone qualifies for the backend filter).
  • Every such PR was paying for a real npm pack --dry-run of packages/gittensory-miner, and — as just seen live — a miner-only breakage (chore(miner): scaffold calibration module types (#2332) #3704's nested lib/calibration/ directory, fixed in fix(miner): flatten calibration module to match the flat lib/ convention #3772) blocked every subsequent unrelated PR's CI instead of staying contained to PRs that actually touch the miner package.
  • Add a minerTestHarness paths-filter output and a SKIP_MINER_TEST_HARNESS exclude branch in the "Test with coverage" step of .github/workflows/ci.yml, mirroring the existing SKIP_MCP_CLI_HARNESS pattern exactly (same filter shape: tooling/config files + the package directory + the specific test files).
  • The standalone "Miner package check" / "Build miner CLI" steps were already correctly gated on the narrower miner filter — untouched by this PR.
  • Push events to main are unaffected: the full suite always runs there, keeping the coverage baseline solid.

No issue filed — small, mechanical, self-evident CI optimization matching an existing reviewed pattern.

Scope

  • The PR title follows type(scope): short summary Conventional Commit format.
  • This PR is focused — one filter + one skip branch, mirroring an existing pattern, nothing else.
  • This follows CONTRIBUTING.md and does not touch site/, CNAME, or GitHub Pages.
  • No issue linked; the summary explains why (small, mechanical, self-evident).

Validation

  • git diff --check
  • npm run actionlint
  • YAML sanity-parsed with pyyaml to confirm both the new changes job output and the nested filters: block parse correctly
  • npm run typecheck / npm run test:coverage — no src/** or test code changed, only .github/workflows/ci.yml; not run in full
  • npm audit --audit-level=moderate

If any required check was skipped, explain why:

  • Typecheck/coverage steps skipped: this PR touches only .github/workflows/ci.yml (CI configuration), no application or test source.

Safety

  • No secrets, wallet details, hotkeys, coldkeys, user PATs, private keys, raw trust scores, private rankings, or private maintainer evidence are exposed.
  • Public GitHub text stays sanitized, low-noise, and does not imply compensation guarantees or optimization tactics.
  • No auth/cookie/CORS/GitHub App/Cloudflare/session changes.
  • No API/OpenAPI/MCP behavior changed.
  • No UI changes.

Notes

@superagent-security

Copy link
Copy Markdown
Contributor

Superagent didn't find any vulnerabilities or security issues in this PR.

@codecov

codecov Bot commented Jul 6, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 93.29%. Comparing base (2302554) to head (e1c2244).
⚠️ Report is 1 commits behind head on main.
✅ All tests successful. No failed tests found.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #3775   +/-   ##
=======================================
  Coverage   93.29%   93.29%           
=======================================
  Files         317      317           
  Lines       32368    32368           
  Branches    11872    11872           
=======================================
  Hits        30199    30199           
  Misses       1537     1537           
  Partials      632      632           
🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

…ouched

test/unit/check-miner-package.test.ts and test/unit/miner-calibration-types.test.ts
are self-contained w.r.t. root src/** (same trust boundary as the existing
mcpCliHarness filter), yet ran unconditionally on every PR that touched ANY
backend path -- virtually all of them, since test/** alone qualifies. Every
such PR paid for a real npm pack --dry-run of packages/gittensory-miner, and a
miner-only breakage (#3704's nested lib/calibration/ directory) blocked every
subsequent unrelated PR's CI instead of staying contained to PRs that actually
touch the package.

Add a minerTestHarness paths-filter output and a SKIP_MINER_TEST_HARNESS
exclude branch in the "Test with coverage" step, mirroring the existing
SKIP_MCP_CLI_HARNESS pattern exactly. Push events are unaffected -- the full
suite always runs on main to keep the coverage baseline solid.
@JSONbored
JSONbored force-pushed the ci/skip-miner-tests-when-untouched branch from 6bcbeb5 to e1c2244 Compare July 6, 2026 08:51
@JSONbored JSONbored self-assigned this Jul 6, 2026
@JSONbored
JSONbored merged commit ede8961 into main Jul 6, 2026
10 checks passed
@JSONbored
JSONbored deleted the ci/skip-miner-tests-when-untouched branch July 6, 2026 09:02
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