Skip to content

Commit 9da26e7

Browse files
ci(abi-drift): expand allowlist 56 -> 66 (Refs standards#92) (#133)
## Summary Re-surveyed all 81 paired cartridges against the freshly-merged iseriser binary (#20 GADT-skip emitter, #21 runtogether candidate, #22 terminal-\`false\` switch-arm tolerance). Allowlist grows from **56 → 66** cartridges. ### Newly clean (+11) — unblocked by iseriser #20/#21/#22 \`chapeliser-mcp\`, \`cloud-mcp\`, \`comms-mcp\`, \`container-mcp\`, \`git-mcp\`, \`gitlab-api-mcp\`, \`ml-mcp\`, \`mongodb-mcp\`, \`queues-mcp\`, \`research-mcp\`, \`vordr-mcp\` ### Newly drifting (-1) — browser-mcp Genuine cartridge-side drift: Idris2 \`BrowserAction.Type\` (Zig candidate \`type\`) vs Zig \`type_text\`. Cartridge-side fix needed, not a verifier defect; not Class B/C/D — filed as out-of-scope. ### Class taxonomy after the fixes | Class | Pre-PR | Post-PR | Status | | --- | --- | --- | --- | | Clean (allowlist) | 56 | **66** | this PR | | Class B (name-norm) | covered | partial | iseriser#21 closed multi-cap acronyms; remaining ums-mcp prefix-stripping is open | | Class C (missing Zig enum) | tracked | tracked | standards#150-155 | | Class D (abbreviation/acronym boundary) | implicit | filed | standards#156 (3 cartridges: postgresql/hetzner/redis) | | Class P (verifier parser limit) | 5 | **0** | iseriser#22 closed | | Class E (malformed Idris2 source) | 1 | **0** | iseriser#20 closed | ## Test plan - [x] Local re-survey on \`origin/main\` snapshot (zero cartridge changes between survey and this PR's base commit) - [x] All 66 cartridges in the new list verified \`abi-verify: OK\` - [x] Removed cartridge (browser-mcp) verified to actually drift - [ ] CI green on this PR (the workflow itself runs the same 66-cartridge check) Refs hyperpolymath/standards#92, hyperpolymath/standards#89, hyperpolymath/iseriser#20, hyperpolymath/iseriser#21, hyperpolymath/iseriser#22. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent c212b49 commit 9da26e7

1 file changed

Lines changed: 29 additions & 10 deletions

File tree

.github/workflows/abi-drift.yml

Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -70,15 +70,24 @@ jobs:
7070
7171
- name: Resolve cartridge allowlist
7272
id: discover
73-
# 80 cartridges in the tree carry a paired Safe*.idr + *_ffi.zig.
74-
# 56 are audited green against the Phase 1b emitter + Phase 1
75-
# verifier (re-run 2026-05-20 with current `main` iseriser binary;
76-
# earlier 16-cartridge survey was contaminated by a stale local
77-
# build pre-iseriser#15). 18 carry real drift (Class B name-norm,
78-
# Class C missing-enum-in-Zig, Class D abbreviation drift — see
79-
# standards#92 + sub-issues iseriser#18 / standards#150-155 /
80-
# standards#TBD-class-D). 5 hit a verifier parser limit
81-
# (iseriser#19). 1 has a malformed Idris2 source (boj-server#111).
73+
# 81 cartridges in the tree carry a paired Safe*.idr + *_ffi.zig.
74+
# 66 are audited green against the Phase 1b emitter + Phase 1
75+
# verifier (re-run 2026-05-20 after iseriser#20 / #21 / #22 merged:
76+
# GADT-skip in the emitter, runtogether candidate for multi-cap
77+
# acronyms, and terminal `false` switch-arm tolerance in the
78+
# verifier). Versus the previous 56-cartridge allowlist this:
79+
# * ADDS 11 cartridges that the three iseriser fixes unblocked
80+
# (chapeliser, cloud, comms, container, git, gitlab-api, ml,
81+
# mongodb, queues, research, vordr)
82+
# * REMOVES browser-mcp — newly-detected genuine drift
83+
# (`BrowserAction.Type` ↔ Zig `type_text`; cartridge-side
84+
# fix, not a verifier defect)
85+
# 15 cartridges carry real drift across Classes B/C/D — see
86+
# standards#92 plus open sub-issues standards#150-155 (Class C)
87+
# and standards#156 (Class D). Class P (verifier parser limit)
88+
# and Class E (malformed Idris2 source) are now empty: iseriser#22
89+
# closed Class P (5 cartridges) and the vordr-mcp Class E case
90+
# was closed via iseriser#20 + the cartridge's clean re-survey.
8291
run: |
8392
set -euo pipefail
8493
{
@@ -88,10 +97,13 @@ jobs:
8897
echo 'agent-mcp'
8998
echo 'airtable-mcp'
9099
echo 'arango-mcp'
91-
echo 'browser-mcp'
92100
echo 'buildkite-mcp'
101+
echo 'chapeliser-mcp'
93102
echo 'clickhouse-mcp'
103+
echo 'cloud-mcp'
94104
echo 'cloudflare-mcp'
105+
echo 'comms-mcp'
106+
echo 'container-mcp'
95107
echo 'crates-mcp'
96108
echo 'discord-mcp'
97109
echo 'dns-shield-mcp'
@@ -100,8 +112,10 @@ jobs:
100112
echo 'feedback-mcp'
101113
echo 'fleet-mcp'
102114
echo 'fly-mcp'
115+
echo 'git-mcp'
103116
echo 'github-actions-mcp'
104117
echo 'github-api-mcp'
118+
echo 'gitlab-api-mcp'
105119
echo 'google-docs-mcp'
106120
echo 'google-sheets-mcp'
107121
echo 'grafana-mcp'
@@ -114,6 +128,8 @@ jobs:
114128
echo 'linear-mcp'
115129
echo 'local-coord-mcp'
116130
echo 'matrix-mcp'
131+
echo 'ml-mcp'
132+
echo 'mongodb-mcp'
117133
echo 'neo4j-mcp'
118134
echo 'neon-mcp'
119135
echo 'nesy-mcp'
@@ -127,8 +143,10 @@ jobs:
127143
echo 'prometheus-mcp'
128144
echo 'proof-mcp'
129145
echo 'pypi-mcp'
146+
echo 'queues-mcp'
130147
echo 'railway-mcp'
131148
echo 'render-mcp'
149+
echo 'research-mcp'
132150
echo 'rokur-mcp'
133151
echo 'secrets-mcp'
134152
echo 'sentry-mcp'
@@ -138,6 +156,7 @@ jobs:
138156
echo 'telegram-mcp'
139157
echo 'todoist-mcp'
140158
echo 'turso-mcp'
159+
echo 'vordr-mcp'
141160
echo 'zotero-mcp'
142161
echo 'EOF'
143162
} >> "$GITHUB_OUTPUT"

0 commit comments

Comments
 (0)