GitNexus/.github/workflows
Navid EMAD d51fbdbf9a
test(zig): fail CI when the optional Zig grammar is absent
`@tree-sitter-grammars/tree-sitter-zig` is an optionalDependency, so every
Zig suite gates on `isLanguageAvailable(Zig)` and the ABI load-smoke accepts
a clean load failure for an optional grammar. Both are the right contract for
a platform with no prebuild, and together they leave a hole: if the grammar
never installed on any CI runner, this PR would merge with all eight Zig
resolver suites plus the structure-phase suite reported green-by-skip, having
never executed the native Zig parser once.

Close it with the `GITNEXUS_REQUIRE_FTS` idiom already used for the FTS
suites. `GITNEXUS_REQUIRE_ZIG=1` declares "this runner has a prebuild, the
grammar MUST be here", and a missing grammar becomes a failure instead of a
skip. tree-sitter-zig@1.1.2 publishes prebuilds for {darwin,linux,win32}-
{x64,arm64}, so the flag is set on two required jobs that all run on covered
platforms: the sharded ubuntu `tests` job and the three-OS `abi-assert` job.

- test/helpers/optional-grammar.ts: the registry mapping a language to its
  require-variable, plus `describeGrammarPresence`, a presence assertion that
  FAILS when required-but-absent. Deliberately a separate test rather than
  flipping the suites from skip to fail: a skipped suite reports success, so
  only a failing test can turn "Zig never ran" into a red job.
- parser-loader-abi.test.ts: the optional exemption is revoked for a language
  the environment declares required, so an ABI-broken Zig binding fails the
  smoke instead of passing as a clean absence.
- optional-grammar-gate.test.ts: pins the two ways the gate could silently
  never fire — reading a variable name CI does not set, or accepting a value
  CI does not write.

Nothing changes for a run that leaves the variable unset: local runs and any
future prebuild-less platform still skip. Verified both directions --
`GITNEXUS_REQUIRE_ZIG=1` alone: 149 passed, 0 skipped; with
`GITNEXUS_SKIP_OPTIONAL_GRAMMARS=1` forcing the grammar away it fails 2 tests
with an actionable message; with the skip flag but no require flag it is
green-by-skip exactly as before.

Addresses the test-only blocker in the gitnexus-check review of #1432.
2026-08-24 19:56:18 +02:00
..
build-tree-sitter-prebuilds.yml chore(deps): bump actions/attest-build-provenance from 4.1.1 to 4.2.2 (#3005) 2026-08-24 09:46:14 +01:00
ci-devcontainer.yml chore(deps): bump actions/setup-node from 6.4.0 to 7.0.0 2026-07-22 20:18:29 +00:00
ci-e2e.yml chore(deps): bump dorny/paths-filter from 4.0.2 to 4.0.3 (#2948) 2026-08-13 06:21:54 +01:00
ci-quality.yml chore(deps): bump actions/setup-node from 6.4.0 to 7.0.0 2026-07-22 20:18:29 +00:00
ci-report.yml fix(ci): stop CI Report dying silently when the tests job fails (#2728) 2026-08-01 18:31:49 +01:00
ci-tests.yml test(zig): fail CI when the optional Zig grammar is absent 2026-08-24 19:56:18 +02:00
ci.yml refactor(ingestion): delete legacy call-resolution DAG + heritage processor (RING4-1, #942) (#2023) 2026-06-04 11:07:37 +01:00
claude.yml chore(deps): bump actions/checkout from 6.0.3 to 7.0.0 (#2292) 2026-06-25 06:53:47 +01:00
codeql.yml chore(deps): bump the codeql-action group with 3 updates (#2947) 2026-08-13 06:22:13 +01:00
commit-fork-prebuilds.yml chore(deps): bump actions/checkout from 6.0.3 to 7.0.0 (#2292) 2026-06-25 06:53:47 +01:00
dependency-review.yml chore(deps): bump actions/checkout from 6.0.3 to 7.0.0 (#2292) 2026-06-25 06:53:47 +01:00
docker.yml chore(deps): bump actions/attest-build-provenance from 4.1.1 to 4.2.2 (#3005) 2026-08-24 09:46:14 +01:00
gitleaks.yml chore(deps): bump actions/checkout from 6.0.3 to 7.0.0 (#2292) 2026-06-25 06:53:47 +01:00
gitnexus-review-agent.yml fix(ci): stop the placeholder review, verify citations, repair once (#2733) 2026-07-28 18:51:01 +01:00
gitnexus-skill-evolution.yml chore(deps): bump actions/setup-node from 6.4.0 to 7.0.0 2026-07-22 20:18:29 +00:00
grammar-update-monitor.yml chore(deps): bump actions/setup-node from 6.4.0 to 7.0.0 2026-07-22 20:18:29 +00:00
impact-pdg-mutation-report.yml chore(deps): bump actions/checkout from 6.0.3 to 7.0.0 (#2292) 2026-06-25 06:53:47 +01:00
pr-autofix-apply.yml chore(deps): bump actions/checkout from 6.0.3 to 7.0.0 (#2292) 2026-06-25 06:53:47 +01:00
pr-autofix-publish.yml feat(autofix): replace inline reviewdog with /autofix ChatOps button (#1458) 2026-05-09 16:32:38 +01:00
pr-autofix.yml chore(deps): bump actions/setup-node from 6.4.0 to 7.0.0 2026-07-22 20:18:29 +00:00
pr-description-check.yml chore(deps): bump actions/github-script from 7.0.1 to 9.0.0 2026-04-15 20:17:08 +00:00
pr-labeler.yml chore(deps): bump release-drafter/release-drafter from 7.6.0 to 7.7.0 (#2853) 2026-08-06 08:18:01 +01:00
publish.yml Merge branch 'main' into dependabot/github_actions/softprops/action-gh-release-3.0.2 2026-07-23 09:23:26 +01:00
scorecard.yml chore(deps): bump the codeql-action group with 3 updates (#2947) 2026-08-13 06:22:13 +01:00
skill-sync.yml chore(deps): bump actions/setup-node from 6.4.0 to 7.0.0 2026-07-22 20:18:29 +00:00
tree-sitter-upgrade-readiness.yml chore(deps): bump actions/checkout from 6.0.3 to 7.0.0 (#2292) 2026-06-25 06:53:47 +01:00
triage-sweep.yml chore(deps): bump actions/setup-python from 6.3.0 to 7.0.0 (#2757) 2026-07-31 13:05:18 +01:00
trivy.yml chore(deps): bump the codeql-action group with 3 updates (#2947) 2026-08-13 06:22:13 +01:00
workflow-lint.yml chore(deps): bump the codeql-action group with 3 updates (#2947) 2026-08-13 06:22:13 +01:00