From 79656b485f2f820b88f024ef4024b3bca7ceca43 Mon Sep 17 00:00:00 2001 From: dtzp555 Date: Mon, 27 Jul 2026 09:05:33 +1000 Subject: [PATCH] =?UTF-8?q?ci:=20drop=20the=20alignment.yml=20paths=20chan?= =?UTF-8?q?ge=20=E2=80=94=20it=20would=20have=20been=20a=20green=20check?= =?UTF-8?q?=20for=20a=20check=20that=20never=20ran?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reverting my own half of this PR. The reviewer proved the alignment.yml change was theatre, and my issue #198 was filed on a wrong premise. What I verified myself before reverting: - the alignment job BODY references models.json zero times; only the paths filter I added mentioned it - test.yml is `pull_request:` with NO paths filter, so it already runs on every PR, models.json-only ones included - on a deliberately corrupted models.json (contextWindow 1000000, a typo'd openclawName), `npm test` catches it: 455 passed, 2 failed So the real guard on models.json already existed and always ran. Adding the path would only have made a job execute that inspects nothing about models.json, and then reported a green "Alignment Guardrail" — implying a check that did not happen. That is strictly worse than the job not running, which is precisely the reviewer's point. #198's premise was also wrong. The blacklist greps server.mjs for known hallucinated tokens. A models.json-only PR cannot introduce a token into server.mjs, so CLAUDE.md hard-requirement #2 is INAPPLICABLE on such a PR, not vacuous. I read "the guardrail didn't run" as "coverage gap" without checking what the guardrail actually inspects. The release.yml half is unaffected and stays: that one is a real, reproduced failure (the no-CHANGELOG branch never wrote the file the create step consumes). Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_017gbqUZ8HfBZpjjbzQ85oH8 --- .github/workflows/alignment.yml | 8 -------- 1 file changed, 8 deletions(-) diff --git a/.github/workflows/alignment.yml b/.github/workflows/alignment.yml index 5764bf7..ca65d1d 100644 --- a/.github/workflows/alignment.yml +++ b/.github/workflows/alignment.yml @@ -9,14 +9,6 @@ on: - 'lib/**' - 'ocp' - 'ocp-connect' - # models.json is NOT inert data: it drives MODEL_MAP and VALID_MODELS, the default - # request model, and — since ADR 0009 — the global MAX_PROMPT_CHARS truncation budget. - # A models.json-only PR can therefore change server.mjs's runtime behavior, and before - # this the guardrail simply did not run on one (#198). models.schema.json is included - # for the same reason one level up: loosening the schema is what would let a bad - # models.json through. - - 'models.json' - - 'models.schema.json' - '.github/workflows/alignment.yml' jobs: