Skip to content

chore(deps): hydra-gates 1.10, so the skip-discipline gate can run - #359

Merged
rubenvdlinde merged 1 commit into
developmentfrom
chore/hydra-gates-1.10-for-the-skip-gate
Aug 27, 2026
Merged

chore(deps): hydra-gates 1.10, so the skip-discipline gate can run#359
rubenvdlinde merged 1 commit into
developmentfrom
chore/hydra-gates-1.10-for-the-skip-gate

Conversation

@rubenvdlinde

Copy link
Copy Markdown
Contributor

launchpad is the only app in the fleet with e2e-skip-blocking: true, and
until now that flag did nothing: the E2E job printed

::warning::check_e2e_skips.py not found (hydra-gates not vendored here
yet) - skip discipline NOT measured on this run

and went green. The app looked like the first in the fleet enforcing skip
discipline while measuring nothing.

Two causes, both now fixed upstream:

  1. check_e2e_skips.py existed only on .github main and was in NONE of
    the last 12 release tags. Cut as v1.10.0.
  2. The workflow looked for it WITHOUT the inner hydra-gates/ path
    segment that composer actually installs it under. Fixed in
    fix(quality): a missing skip-discipline gate must fail, not warn .github#595, merged.

#595 makes a missing gate a hard FAILURE for an opted-in app rather than
a warning, so without this bump launchpad's next run would go red -- the
correct behaviour, and this is the fix it is asking for.

Verified locally: composer update resolves v1.10.0 and the file lands at
exactly the path the workflow probes:

vendor/conduction/hydra-gates/hydra-gates/scripts/lib/check_e2e_skips.py
14546 bytes

launchpad's last E2E run was 137 passed, 0 skipped, so the gate is
expected to pass on real data -- which is the whole point of turning it
on here first.

launchpad is the only app in the fleet with e2e-skip-blocking: true, and
until now that flag did nothing: the E2E job printed

  ::warning::check_e2e_skips.py not found (hydra-gates not vendored here
  yet) - skip discipline NOT measured on this run

and went green. The app looked like the first in the fleet enforcing skip
discipline while measuring nothing.

Two causes, both now fixed upstream:

  1. check_e2e_skips.py existed only on .github main and was in NONE of
     the last 12 release tags. Cut as v1.10.0.
  2. The workflow looked for it WITHOUT the inner hydra-gates/ path
     segment that composer actually installs it under. Fixed in
     ConductionNL/.github#595, merged.

#595 makes a missing gate a hard FAILURE for an opted-in app rather than
a warning, so without this bump launchpad's next run would go red -- the
correct behaviour, and this is the fix it is asking for.

Verified locally: composer update resolves v1.10.0 and the file lands at
exactly the path the workflow probes:

  vendor/conduction/hydra-gates/hydra-gates/scripts/lib/check_e2e_skips.py
  14546 bytes

launchpad's last E2E run was 137 passed, 0 skipped, so the gate is
expected to pass on real data -- which is the whole point of turning it
on here first.
@rubenvdlinde
rubenvdlinde merged commit 9c5e454 into development Aug 27, 2026
37 of 38 checks passed
@rubenvdlinde
rubenvdlinde deleted the chore/hydra-gates-1.10-for-the-skip-gate branch August 27, 2026 21:09
@github-actions

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/launchpad @ 9535dab

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
build
check-manifest
format
check-schema-l10n
composer ✅ 104/104
npm ✅ 538/538
app:check-code ⏭️
info.xml
REUSE
PHPUnit
Newman
Playwright
Hydra gates

Quality workflow — 2026-08-27 21:44 UTC

Download the full PDF report from the workflow artifacts.

This was referenced Aug 28, 2026
rubenvdlinde added a commit that referenced this pull request Aug 28, 2026
…#366)

#354 turned this on. #356 removed it 16 minutes later while rewriting
this file's triggers -- not a revert, just two edits landing together and
one line not surviving.

Worth restoring now for a better reason than the first time. When #354
merged, the gate was a NO-OP: it could not find check_e2e_skips.py and
warned instead of failing, so launchpad looked like it was enforcing skip
discipline while measuring nothing. Three fixes later it genuinely runs:

  - hydra-gates v1.10.0 cut, containing the script (#359 vendored it)
  - ConductionNL/.github#595 fixed the lookup path, which had omitted the
    inner hydra-gates/ segment composer installs under, and made a
    missing gate a hard failure instead of a warning

On development's current head the gate EXECUTED and reported:

  0/137 tests skipped (0.0%) across 30 spec files
    V1 spec files executing ZERO tests            : 0
    V2 skips deferring to a deploy state CI decides: 0
    V3 skips/fixmes with no reason recorded       : 0
  Every skip names a real absence and every spec file ran something.

That answers the open question from #354: tests/e2e/docs-screenshots.spec.ts
does NOT trip the zero-test rule.

So this is measured, not hoped for. launchpad passes on real data, and the
flag can only keep it that way -- which is exactly what the input's own
description asks for: flip it per app once that app is worked down.

Co-authored-by: Conduction Release Bot <release-bot@conduction.nl>
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