Skip to content

chore(preflight): bump skill integrity pin for v2 (NEAR-Intents cross-check) - #247

Merged
szhygulin merged 1 commit into
mainfrom
chore/preflight-pin-bump-near-intermediate
Apr 26, 2026
Merged

chore(preflight): bump skill integrity pin for v2 (NEAR-Intents cross-check)#247
szhygulin merged 1 commit into
mainfrom
chore/preflight-pin-bump-near-intermediate

Conversation

@szhygulin

Copy link
Copy Markdown
Collaborator

Coordinated with `vaultpilot-skill#3`.

Summary

The `vaultpilot-preflight` skill picks up an agent-side cross-check for LiFi intermediate-chain bridges (Invariant #6 in the skill PR — agent independently verifies `BridgeData.destinationChainId` against a hardcoded list of known intermediate-chain bridges, with NEAR Intents at chain ID `1885080386571452` as the only entry today). That content change shifts both:

  • the SHA-256 of `SKILL.md`
  • the in-file integrity sentinel (`v1_7780bfeee9a49f01` → `v2_43b1d2403a0c2a94`)

This MCP pins both values in source (`src/index.ts` ~line 1161 and ~line 1167). The pin must be bumped to the new values, otherwise every `prepare_` / `preview_` flow will fail the integrity check until the next release of this MCP.

Why two copies of the allowlist

PR #239 added `INTERMEDIATE_CHAIN_BRIDGES` to this MCP (`src/modules/swap/intermediate-chain-bridges.ts`). That alone has the well-known limitation: a compromised MCP can rewrite the constant. The skill carries an independent copy, lives outside this MCP's reach (separate repo, separate npm package, lives under `~/.claude/skills/`), and the agent is now instructed to cross-check both. Single-side tamper attempts get caught.

Test plan

  • `npm run build` clean
  • `npm test` — 1194 / 1194 pass
  • `grep` confirms no leftover `v1_` / old-SHA references
  • Merge both this PR and `vaultpilot-skill#3`, then trigger any `prepare_*` flow in a fresh session — the integrity check should pass with the new pin

🤖 Generated with Claude Code

…-check)

The vaultpilot-preflight skill (separate repo, lives under
~/.claude/skills/) gains an agent-side cross-check for LiFi
intermediate-chain bridges in v2: the agent now consults its own
hardcoded copy of the (bridge name, intermediate chain ID) allowlist
when verifying cross-chain bridge calldata, so a tampered MCP that
secretly widens its own allowlist gets caught.

The skill content change shifts both the SHA-256 of SKILL.md and the
in-file integrity sentinel. Update the pin in this MCP's source so the
on-each-flow integrity check the MCP delegates to the agent (see same
file, ~30 lines above) succeeds against the new skill version.

  - SHA-256:
      10db66ad5fcfa250b4a5a753fd745eac4dc358b41ccfc1a1258f67040b7eddea (old, v1)
    → fc4a40469e11156e7cccdc1539b93e430b60a49bf75d01b41de112d8c301f1a8 (new, v2)
  - Sentinel fragment B: _v1_ → _v2_
  - Sentinel fragment C: 7780bfeee9a49f01 → 43b1d2403a0c2a94

Coordinated with the matching PR in szhygulin/vaultpilot-skill.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@szhygulin
szhygulin merged commit 5644d53 into main Apr 26, 2026
3 checks passed
@szhygulin
szhygulin deleted the chore/preflight-pin-bump-near-intermediate branch May 19, 2026 04:24
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.

1 participant