@@ -26,34 +26,29 @@ jobs:
2626
2727 - name : Check for TypeScript
2828 run : |
29- # Exclusions, in order of specificity. Each is "essential glue" —
30- # the platform requires TypeScript and a ReScript replacement is
31- # not viable.
32- #
33- # - bindings/deno/ : Deno FFI files using Deno.dlopen.
34- # - *.d.ts : TypeScript declarations for ReScript FFI.
35- # - affinescript-deno-test/ : Deno-native test runner (Deno is
36- # TS-native; the test driver imports Deno.test which has no
37- # ReScript binding).
38- # - editors/vscode/ : VS Code extension. The extension API is
39- # exclusively TypeScript; no ReScript path exists.
40- # - faces/ : vendored snapshots of upstream face
41- # implementations; the antipattern policy applies to upstream,
42- # not to a vendored copy in this repo.
29+ # Allowlist (TS legitimate as a bridge/adapter to a non-ReScript ecosystem):
30+ # bindings/ - language bindings (Deno/TS/AssemblyScript FFI to ReScript core)
31+ # *.d.ts - TypeScript type declarations for ReScript FFI
32+ # tests/, test/ - Deno test runners verifying ReScript output
33+ # scripts/ - Deno build scripts (bundle, dev-server, etc.)
34+ # mcp-adapter/ - MCP server adapters (MCP protocol is Deno/TS-typed by spec)
35+ # vscode/ - VSCode extensions (TS is the ecosystem default)
4336 TS_FILES=$(find . \( -name "*.ts" -o -name "*.tsx" \) \
4437 | grep -v node_modules \
45- | grep -v 'bindings/deno ' \
38+ | grep -v '/ bindings/' \
4639 | grep -v '\.d\.ts$' \
47- | grep -v '^\./affinescript-deno-test/' \
48- | grep -v '^\./editors/vscode/' \
49- | grep -v '^\./faces/' \
40+ | grep -v '/tests/' \
41+ | grep -v '/test/' \
42+ | grep -v '/scripts/' \
43+ | grep -v '/mcp-adapter/' \
44+ | grep -v '/vscode/' \
5045 || true)
5146 if [ -n "$TS_FILES" ]; then
5247 echo "❌ TypeScript files detected - use ReScript instead"
5348 echo "$TS_FILES"
5449 exit 1
5550 fi
56- echo "✅ No TypeScript files (essential-glue exclusions applied) "
51+ echo "✅ No TypeScript files outside allowlisted bridge/adapter paths "
5752
5853 - name : Check for Go
5954 run : |
0 commit comments