Skip to content

Commit 2c5f69f

Browse files
committed
docs(ci): point the required-context prose at its new machine assertion (#6865)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01F8q5J1MQyocgtNspb15fSn
1 parent 3efa2bf commit 2c5f69f

1 file changed

Lines changed: 14 additions & 5 deletions

File tree

.github/workflows/ci.yml

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -430,6 +430,9 @@ jobs:
430430
# means a future shard-count change cannot deadlock the repo. `name:` and
431431
# `if: always()` are therefore both load-bearing: this must not become
432432
# `if: !cancelled()` (see dogfood-gate), and it must not be renamed.
433+
# Both halves are now asserted rather than only written down: the `name:`
434+
# literal by `check:required-contexts` (#6865), the `if: always()` and the
435+
# attestation roster by `check:shard-attestation` (#6082).
433436
#
434437
# ── It COUNTS credentials; it does not read one aggregate word (#6082) ──
435438
#
@@ -519,7 +522,8 @@ jobs:
519522
# temporal conformance matrix holds to one standard. Its NAME still says
520523
# "live PG + MySQL" on purpose: the name IS the required check, so renaming
521524
# it would silently drop the gate wherever branch protection lists it — the
522-
# same trap the dogfood shards note below.
525+
# same trap the dogfood shards note below. `check:required-contexts` pins
526+
# this literal, parenthetical and all (#6865).
523527
temporal-conformance:
524528
name: Temporal Conformance (live PG + MySQL)
525529
needs: filter
@@ -960,7 +964,10 @@ jobs:
960964
# EVERY pull request in the repo sat permanently BLOCKED (mergeable, all
961965
# checks green, merge button dead). #3622's own comment called for updating
962966
# branch protection; keeping the contract HERE instead means a future
963-
# shard-count change cannot deadlock the repo a second time.
967+
# shard-count change cannot deadlock the repo a second time — and since
968+
# #6865 the bare name is pinned by `check:required-contexts` rather than
969+
# only described here, so a rename fails in the ESLint job instead of in
970+
# the queue.
964971
#
965972
# Also aggregates dogfood-verify (the CLI pass that used to ride shard 1),
966973
# so the one required context still covers everything it covered before
@@ -1040,8 +1047,9 @@ jobs:
10401047
needs: filter
10411048
# See THE FILTER CONTRACT on the filter job's outputs (#4928). No
10421049
# aggregation gate stands behind this job — its own name IS the required
1043-
# context — so this `if:` is the only thing between a filter flake and a
1044-
# green "Build Core" that built nothing.
1050+
# context, pinned by `check:required-contexts` since #6865 — so this `if:`
1051+
# is the only thing between a filter flake and a green "Build Core" that
1052+
# built nothing.
10451053
if: ${{ !cancelled() && needs.filter.outputs.core != 'false' }}
10461054
runs-on: ubuntu-latest
10471055
timeout-minutes: 30
@@ -1273,7 +1281,8 @@ jobs:
12731281
#
12741282
# The NAME is the required-check contract — the same trap the dogfood shards
12751283
# note above: renaming it silently drops the gate wherever branch protection
1276-
# lists it, with every PR still green.
1284+
# lists it, with every PR still green. Pinned by `check:required-contexts`
1285+
# since #6865.
12771286
console-pin:
12781287
name: Console Pin Gate
12791288
needs: filter

0 commit comments

Comments
 (0)