Skip to content

chore(check-abi-drift): skip AAStarBLSAlgorithm name-collision (mirror #301)#302

Open
jhfnetboy wants to merge 1 commit into
mainfrom
chore/check-abi-drift-collision-skip
Open

chore(check-abi-drift): skip AAStarBLSAlgorithm name-collision (mirror #301)#302
jhfnetboy wants to merge 1 commit into
mainfrom
chore/check-abi-drift-collision-skip

Conversation

@jhfnetboy

Copy link
Copy Markdown
Member

Follow-up to #301. check:abi-drift is a second drift script (separate from abi:sync) that had the identical name-collision blind spot — it diffed the SDK's AAStarBLSAlgorithm.json (tracks the YetAnotherAA-Validator DVT contract, registerWithProof) against airaccount-contract's same-named-but-unrelated aggregator artifact → false-positive DRIFT, failing the gate.

Adds the same NAME_COLLISIONS skip. Now both drift checks agree.

Verification: pnpm run check:abi-drift → PASS. All four sync gates green (abi:sync, check:abi, check:addresses, check:abi-drift).

Upstream rename decision tracked in Seeder CC-27.

https://claude.ai/code/session_01HNw7f92HzUUCSFgJi7o1WV

…#301)

check:abi-drift is a second drift script separate from abi:sync and had the same
name-collision blind spot: it diffed the SDK's AAStarBLSAlgorithm.json (which
tracks the YetAnotherAA-Validator DVT contract with registerWithProof) against
airaccount-contract's same-named-but-unrelated aggregator artifact, producing a
false-positive DRIFT and failing the gate.

Add the same NAME_COLLISIONS skip introduced in scripts/abi-sync.ts (#301) so
both drift checks agree. Verified: `pnpm run check:abi-drift` -> PASS.

See CC-27 for the upstream rename decision.

Claude-Session: https://claude.ai/code/session_01HNw7f92HzUUCSFgJi7o1WV
@jhfnetboy
jhfnetboy requested a review from fanhousanbu as a code owner July 8, 2026 09:41
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@clestons clestons left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

aastar-sdk#302 Review — APPROVE

Mirror of #301: applies the same NAME_COLLISIONS skip to scripts/check-abi-drift.ts so both drift gates agree. Rationale is identical — SDK's AAStarBLSAlgorithm.json tracks the DVT registerWithProof contract, not airaccount's same-named aggregator (refactored in v0.27.0).

This script additionally increments skipped++ and emits an ℹ️ log line for the skipped name, which is better observability than abi-sync.ts's silent continue. check:abi-drift → PASS verified.

2-round review (chore mirror of #301, single file). Sonnet verdict.

@clestons clestons left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

aastar-sdk#302 Review — APPROVE

CC-27 跟踪:check-abi-drift.ts 新增 NAME_COLLISIONS 跳过逻辑,镜像 #301 已合并的 abi-sync.ts 同一修复。

AAStarBLSAlgorithm 在 SDK 侧跟踪 YAAA-Validator 的 DVT 合约(含 registerWithProof),而 airaccount-contract 有一个同名但截然不同的聚合器合约(无 registerWithProof)。跳过此 name-collision 防止漂移脚本产生误报,逻辑正确。

已验证:pnpm run check:abi-drift → PASS。无行为变更。

CHORE-track (CI tooling only). PK skipped — trivial additive guard, mirrors approved #301 pattern.

@clestons clestons left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review — APPROVE [2-round: 机械核验 + 一致性检查]

check-abi-drift.ts 新增 NAME_COLLISIONS = new Set(['AAStarBLSAlgorithm']),扫描时跳过并 skipped++。无阻断项。

核实结论(非纸面信任):

  • 已核对 scripts/abi-sync.ts:55 确有完全相同NAME_COLLISIONS skip(L100 消费)——本 PR 只是把同款一致镜像到 drift 检查侧,两处对齐。
  • 跳过理由成立:该检查 diff 的是 airaccount-contractout/(v0.27.0 已重构成纯 key aggregator,无 registerWithProof),而 SDK 实际追踪的是 YAAA-Validator 的同名 DVT 合约——扫错源,对该名只能产生误报,跳过是正确修复而非放松真检查。
  • 作用域精确到单个合约名,注释引用 CC-27 + abi-sync.ts,可追溯。

结论

APPROVE — 消除一个已确证的 ABI drift 误报,与 abi-sync.ts 既有 skip 对齐,不影响其它合约的漂移检测。

@clestons clestons left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

APPROVE — correct CI-tooling fix.

Adding AAStarBLSAlgorithm to a NAME_COLLISIONS skip set (with skipped++ accounting and a logged reason) correctly suppresses a false-positive drift: the SDK tracks the YAAA-Validator DVT contract (registerWithProof), while airaccount-contract's same-named contract is the v0.27.0 pure key-aggregator — a distinct source not in the scanned out/ dirs. Mirrors #301 and abi-sync.ts. Drift-check hygiene only, no runtime impact.

— clestons (Opus review)

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants