-
-
Notifications
You must be signed in to change notification settings - Fork 0
feat(gates): retire Deno from check-ts-allowlist — the gate is now bash + awk #730
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
ff89c74
1768113
2babcd7
df2e0ec
4f4d77d
538e5a6
9fba1ed
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -169,10 +169,9 @@ across the estate. Three sub-layers: | |
|
|
||
| === 4a: Built-in path / filename allowlist | ||
|
|
||
| Hard-coded in `scripts/check-ts-allowlist.affine` (source of truth; | ||
| compiled to `scripts/check-ts-allowlist.deno.js` which the workflow | ||
| invokes). Covers paths that are *always* exempt regardless of per-repo | ||
| configuration: | ||
| Hard-coded in `scripts/check-ts-allowlist.sh`, which the governance | ||
| workflow invokes directly. Covers paths that are *always* exempt | ||
| regardless of per-repo configuration: | ||
|
|
||
| * Directory segments: `bindings`, `tests`, `test`, `scripts`, | ||
| `mcp-adapter`, `cli`, `vendor`, `examples`, `ffi`, `node_modules`, | ||
|
|
@@ -266,21 +265,23 @@ sufficient. Most repos will pick one or the other. | |
| This document seeds the doctrine. | ||
| * AffineScript port (standards#283 seed, #310 compile/runtime fixes, | ||
| #311 workflow swap): `.ts` → `.affine` self-referential port under | ||
| the TS→AffineScript campaign (#239 / #241 STEP 2). The `.ts` | ||
| archetype is kept for the regression suite and parallel-validation; | ||
| the workflow now runs the compiled `.deno.js`. Retirement of the | ||
| `.ts` is a follow-up after the dual-target window. | ||
| the TS→AffineScript campaign (#239 / #241 STEP 2). The workflow ran | ||
| the compiled `.deno.js`. | ||
| * Deno retirement (2026-09-04): the `.affine` source, its compiled | ||
| `.deno.js`, and the `deno run` workflow step were all deleted and | ||
| replaced by `scripts/check-ts-allowlist.sh` — pure bash + awk, so no | ||
|
Comment on lines
+270
to
+272
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win Document the active compatibility contract. The workflow no longer uses Deno, but the compatibility shims remain for 269 repositories. The documentation must distinguish workflow retirement from artifact removal.
📍 Affects 1 file
🤖 Prompt for AI Agents |
||
| JS runtime is installed on any estate runner. The 18-case corpus was | ||
| run against both implementations first and gave identical verdicts on | ||
| every case. | ||
|
|
||
| == Cross-references | ||
|
|
||
| * `docs/HYPATIA-BASELINE-FORMAT.adoc` — the baseline file format. | ||
| * `.machine_readable/hypatia-baseline.schema.json` — machine schema. | ||
| * `scripts/check-ts-allowlist.affine` — the AffineScript source of | ||
| truth for the Layer 4 detector (since standards#283 / #310 / #311). | ||
| * `scripts/check-ts-allowlist.deno.js` — the compiled artifact the | ||
| governance workflow runs. | ||
| * `scripts/check-ts-allowlist.ts` — the Deno archetype, retained as the | ||
| regression-suite target (`scripts/tests/check-ts-allowlist-test.sh`) | ||
| and for parallel-validation during the TS→AS dual-target window. | ||
| * `scripts/check-ts-allowlist.sh` — the bash + awk implementation of the | ||
| Layer 4 detector that the governance workflow runs (since 2026-09-04; | ||
| previously an AffineScript source compiled to a Deno artifact). | ||
| * `scripts/tests/check-ts-allowlist-test.sh` — the 18-case regression | ||
| corpus that pins its behaviour. | ||
| * `hyperpolymath/standards#????` — proposal that landed this consumer. | ||
| * `hyperpolymath/hypatia` — the scanner that emits findings. | ||
This file was deleted.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎯 Functional Correctness | 🟠 Major | ⚡ Quick win
Use the local gate for every standards pull request.
When
scripts/check-ts-allowlist.shalready exists onmain, Line 379 is false. The job then runs the stale.standards-checkoutcopy, so a standards pull request that changes the gate does not execute its changed gate. Select the local script first wheneverGITHUB_REPOSITORYishyperpolymath/standards. Keep the shared copy for consumer repositories.Proposed fix
📝 Committable suggestion
🤖 Prompt for AI Agents