Skip to content

ci: retire the dead A2ML validation gate (13 repos — the renamed-action population) #1010

Description

@hyperpolymath

Summary

A2ML does not exist. It was killed by the ML-community name clash and is standing estate
doctrine. Yet Validate A2ML manifests is still a live, enforcing CI gate — it is
currently red in metadatastician/first-post, gossamer and paint-type, where it is one
of the checks blocking the actions.lock desync fixes.

The owner ruling (2026-09-22, selection UI) is to retire it estate-wide in one pass,
rather than clearing it per-repo as it surfaces. Clearing it three times leaves it to redden
the next PR in every other repo that carries it.

Census (measured 2026-09-22T21:07Z)

gh api "search/code?q=%22Validate+A2ML+manifests%22+org:<org>&per_page=100" \
  --jq '.items[]|"\(.repository.full_name)\t\(.path)"'

142 file-instances across 112 repositories — 84 in workflows, 44 in
.pre-commit-config.yaml, the remainder in docs and action definitions.

⚠ Two things the raw count hides:

  1. The gate is a step inside dogfood-gate.yml, not a standalone workflow. Retiring it
    means removing that step (and any job that exists only to host it) — not deleting the
    workflow, which carries unrelated live checks.
  2. Several hits are already inert and must not be touched as if live:
    protocol-squisher/provenance/.github-retired/, squisher-corpus/.github-retired/,
    bowtie-workbench/ci/rsr-reference/dogfood-gate.yml.disabled.
    Documentation hits (Axiom.jl, typed-wasm, standards/docs/DEPENDABOT-POLICY.adoc,
    007-lang/Debtfile.adoc) are prose, not gates, and are out of scope for the CI change.
Full census, 142 rows
hyperpolymath/007-lang	Debtfile.adoc
hyperpolymath/accessibility-everywhere	.github/workflows/dogfood-gate.yml
hyperpolymath/alloyiser	.github/workflows/dogfood-gate.yml
hyperpolymath/anvomidaviser	.github/workflows/dogfood-gate.yml
hyperpolymath/Axiom.jl	docs/design-diary/PEPYS-DESIGN-DIARY.adoc
hyperpolymath/Axiom.jl	docs/flagship-rubric.adoc
hyperpolymath/boinc-boinc	.github/workflows/dogfood-gate.yml
hyperpolymath/boj-server	.github/workflows/dogfood-gate.yml
hyperpolymath/bunsenite	.github/workflows/dogfood-gate.yml
hyperpolymath/cloud-sync-tuner	.github/workflows/dogfood-gate.yml
hyperpolymath/deed-core	actions/validate/action.yml
hyperpolymath/deed-core	actions/validate/README.adoc
hyperpolymath/deed-ecosystem	validate-action/action.yml
hyperpolymath/developer-ecosystem	affinescript-ecosystem/affinescript-vite/.pre-commit-config.yaml
hyperpolymath/developer-ecosystem	affinescript-ecosystem/rattlescript/.pre-commit-config.yaml
hyperpolymath/developer-ecosystem	.github/workflows/dogfood-gate.yml
hyperpolymath/dotmatrix-fileprinter	.github/workflows/dogfood-gate.yml
hyperpolymath/echidna	.github/workflows/dogfood-gate.yml
hyperpolymath/echidna	.pre-commit-config.yaml
hyperpolymath/excel-economic-numbers-tool	.github/workflows/dogfood-gate.yml
hyperpolymath/explicit-trust-plane	.github/workflows/dogfood-gate.yml
hyperpolymath/.git-private-farm	ci-deadlock-report.tsv
hyperpolymath/.git-private-farm	dispatch-templates/seed/dogfood-gate.yml
hyperpolymath/grim-repo	.github/workflows/dogfood-gate.yml
hyperpolymath/gv-clade-index	.github/workflows/dogfood-gate.yml
hyperpolymath/hesiod-dns-map	.github/workflows/dogfood-gate.yml
hyperpolymath/heterogenous-mobile-computing	.github/workflows/dogfood-gate.yml
hyperpolymath/hybrid-automation-router	.github/workflows/dogfood-gate.yml
hyperpolymath/hypatia	.github/workflows/dogfood-gate.yml
hyperpolymath/hyperpolymath.github.io	.github/workflows/dogfood-gate.yml
hyperpolymath/hyperpolymath	.github/workflows/dogfood-gate.yml
hyperpolymath/ideas-to-alphas	.github/workflows/dogfood-gate.yml
hyperpolymath/ideas-to-alphas	.pre-commit-config.yaml
hyperpolymath/idrisiser	.github/workflows/dogfood-gate.yml
hyperpolymath/im-docs	.github/workflows/dogfood-gate.yml
hyperpolymath/ipfs-overlay	.github/workflows/dogfood-gate.yml
hyperpolymath/iseriser	.github/workflows/dogfood-gate.yml
hyperpolymath/jaffascript	.pre-commit-config.yaml
hyperpolymath/kaldor-iiot	.github/workflows/dogfood-gate.yml
hyperpolymath/kea	.github/workflows/dogfood-gate.yml
hyperpolymath/kitchenspeak	.github/workflows/dogfood-gate.yml
hyperpolymath/krl	.pre-commit-config.yaml
hyperpolymath/laminar	.github/workflows/dogfood-gate.yml
hyperpolymath/laniakea	.github/workflows/dogfood-gate.yml
hyperpolymath/lithoglyph	.pre-commit-config.yaml
hyperpolymath/live-files	.github/workflows/dogfood-gate.yml
hyperpolymath/llm-grace	.github/workflows/dogfood-gate.yml
hyperpolymath/lustreiser	.github/workflows/dogfood-gate.yml
hyperpolymath/maa-framework	.github/workflows/dogfood-gate.yml
hyperpolymath/metadata-grammar	.github/workflows/dogfood-gate.yml
hyperpolymath/methodologies	.github/workflows/dogfood-gate.yml
hyperpolymath/natsci-studio	.github/workflows/dogfood-gate.yml
hyperpolymath/natsci-studio	.pre-commit-config.yaml
hyperpolymath/neurophone	.github/workflows/dogfood-gate.yml
hyperpolymath/neurophone	.pre-commit-config.yaml
hyperpolymath/nexia-list	.github/workflows/dogfood-gate.yml
hyperpolymath/nextgen-databases	.github/workflows/dogfood-gate.yml
hyperpolymath/nextgen-typing	.pre-commit-config.yaml
hyperpolymath/otpiser	.github/workflows/dogfood-gate.yml
hyperpolymath/panic-attack	.github/workflows/dogfood-gate.yml
hyperpolymath/panic-attack	.pre-commit-config.yaml
hyperpolymath/panll	.pre-commit-config.yaml
hyperpolymath/panoply	ci/.pre-commit-config.yaml
hyperpolymath/plasma-parser-writer	.github/workflows/dogfood-gate.yml
hyperpolymath/polyglot-formalisms-gleam	.github/workflows/dogfood-gate.yml
hyperpolymath/polyglot-i18n	.github/workflows/dogfood-gate.yml
hyperpolymath/polysafe-gitfixer	.github/workflows/dogfood-gate.yml
hyperpolymath/preference-injector	.github/workflows/dogfood-gate.yml
hyperpolymath/protocol-squisher	provenance/.github-retired/dogfood-gate.yml
hyperpolymath/protocol-squisher	provenance/.pre-commit-config.yaml
hyperpolymath/proven-servers	.github/workflows/dogfood-checks.yml
hyperpolymath/proven-tests-and-benches	.pre-commit-config.yaml
hyperpolymath/rattlescript	.pre-commit-config.yaml
hyperpolymath/reasonably-good-token-vault	.github/workflows/dogfood-gate.yml
hyperpolymath/recon-silly-ation	.pre-commit-config.yaml
hyperpolymath/robodog-defensive-systems-lab	.github/workflows/dogfood-gate.yml
hyperpolymath/robot-vacuum-cleaner	.github/workflows/dogfood-gate.yml
hyperpolymath/rpa-elysium	.github/workflows/dogfood-gate.yml
hyperpolymath/sanctify-php	.github/workflows/dogfood-gate.yml
hyperpolymath/sdp-hkdf-deployment	.github/workflows/dogfood-gate.yml
hyperpolymath/social-media-tools	.github/workflows/dogfood-gate.yml
hyperpolymath/somethings-fishy	.pre-commit-config.yaml
hyperpolymath/squisher-corpus	.github-retired/dogfood-gate.yml
hyperpolymath/standards	docs/DEPENDABOT-POLICY.adoc
hyperpolymath/statistikles	.github/workflows/dogfood-gate.yml
hyperpolymath/supernorma	.github/workflows/dogfood-gate.yml
hyperpolymath/the-nash-equilibrium	.github/workflows/dogfood-gate.yml
hyperpolymath/the-nash-equilibrium	.pre-commit-config.yaml
hyperpolymath/tree-navigator	.github/workflows/dogfood-gate.yml
hyperpolymath/trope-checker	.machine_readable/root-allow.txt
hyperpolymath/twingate-helm-deploy	.github/workflows/dogfood-gate.yml
hyperpolymath/typed-wasm	docs/wiki/Phase-0-Status.md
hyperpolymath/unified-dataset-vocab	.github/workflows/dogfood-gate.yml
hyperpolymath/universal-chat-extractor	.github/workflows/dogfood-gate.yml
hyperpolymath/universal-extension-format	.github/workflows/dogfood-gate.yml
hyperpolymath/universal-language-server-plugin	.github/workflows/dogfood-gate.yml
hyperpolymath/verisimdb-data	.github/workflows/dogfood-gate.yml
hyperpolymath/verisimdb	.github/workflows/dogfood-gate.yml
hyperpolymath/vocarium	.pre-commit-config.yaml
hyperpolymath/voyage-enterprise-decision-system	.github/workflows/dogfood-gate.yml
metadatastician/boj-server-mk2	.github/workflows/dogfood-gate.yml
metadatastician/boj-server-mk2	.pre-commit-config.yaml
metadatastician/bowtie-workbench	ci/.pre-commit-config.yaml
metadatastician/bowtie-workbench	ci/rsr-reference/dogfood-gate.yml.disabled
metadatastician/burble	.github/workflows/dogfood-gate.yml
metadatastician/burble	.pre-commit-config.yaml
metadatastician/cadastra	.github/workflows/dogfood-gate.yml
metadatastician/cadastra	.pre-commit-config.yaml
metadatastician/chronicles-of-slavia	.github/workflows/dogfood-gate.yml
metadatastician/chronicles-of-slavia	.pre-commit-config.yaml
metadatastician/common-signal	.github/workflows/dogfood-gate.yml
metadatastician/common-signal	.pre-commit-config.yaml
metadatastician/consent-aware-web	.github/workflows/dogfood-gate.yml
metadatastician/consent-aware-web	.pre-commit-config.yaml
metadatastician/enaction-engine	.github/workflows/dogfood-gate.yml
metadatastician/enaction-engine	.pre-commit-config.yaml
metadatastician/enterglide-ncc-137-k	ci/.pre-commit-config.yaml
metadatastician/first-post	.github/workflows/dogfood-gate.yml
metadatastician/first-post	.pre-commit-config.yaml
metadatastician/gossamer	.github/workflows/dogfood-gate.yml
metadatastician/gossamer	.pre-commit-config.yaml
metadatastician/harvard-dehallucinator	.github/workflows/dogfood-gate.yml
metadatastician/harvard-dehallucinator	.pre-commit-config.yaml
metadatastician/paint-type	.github/workflows/dogfood-gate.yml
metadatastician/paint-type	.pre-commit-config.yaml
metadatastician/_pathroot	.github/workflows/dogfood-gate.yml
metadatastician/_pathroot	.pre-commit-config.yaml
metadatastician/planer-1	ci/.pre-commit-config.yaml
metadatastician/pong-ping	ci/.pre-commit-config.yaml
metadatastician/pong-ping	.github/workflows/dogfood-gate.yml
metadatastician/project-ovine	.github/workflows/dogfood-gate.yml
metadatastician/project-ovine	.pre-commit-config.yaml
metadatastician/sim-public-relations	.github/workflows/dogfood-gate.yml
metadatastician/sim-public-relations	.pre-commit-config.yaml
metadatastician/sr71-blackglider	.github/workflows/dogfood-gate.yml
metadatastician/sr71-blackglider	.pre-commit-config.yaml
metadatastician/stapeln	.github/workflows/dogfood-gate.yml
metadatastician/stapeln	.pre-commit-config.yaml
metadatastician/stealth-glider-ecosystem	ci/.pre-commit-config.yaml
metadatastician/svalinn	.pre-commit-config.yaml
metadatastician/tardis-rule-disruption	ci/.pre-commit-config.yaml
metadatastician/x15-rocket-glider	ci/.pre-commit-config.yaml

Acceptance criteria

  1. No workflow in either org runs a step named Validate A2ML manifests, nor any step
    that validates .a2ml / REGISTRY.a2ml artefacts. Verified by re-running the census
    query above and finding zero hits under .github/workflows/.
  2. Every removal is paired with its actions.lock consequence in the same commit. If
    removing the step orphans a uses: ref, the lock entry goes in the same commit; if a
    whole workflow is removed, its lock key goes too. A workflow present in the lock but
    absent from disk, and a workflow on disk absent from the lock, are both fatal —
    each yields jobs=0 / startup_failure for every workflow in the repo.
  3. .pre-commit-config.yaml hooks are retired in the same pass, so a contributor's
    local hook does not enforce a format CI no longer knows about.
  4. No check is turned green by weakening it. No continue-on-error: true, no downgrade
    of an error to a warning, no if: false. The step is removed, not silenced. Repair the
    defect, never mute the diagnostic.
  5. first-post#14, gossamer#174 and paint-type#73 each lose the
    Validate A2ML manifests red
    and are re-measured afterwards; the remaining reds in
    first-post#16, gossamer#176 and paint-type#83 are updated to strike this line.
  6. Inert paths in the note above are left untouched and listed as deliberately skipped.

Why this is not just tidying

A gate enforcing a format that does not exist can only ever do one of two things: pass
vacuously, or block correct work. It is currently doing the second, to three PRs, in a
campaign about CI correctness.

🤖 Generated with Claude Code

https://claude.ai/code/session_01X3hgXxWm6umMgZkjYyHnnm

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    refactorRestructuring that preserves observable behaviourscope:estateAffects many or all repos across the estate

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions