Skip to content

docs: cover IBCMulticall in permissions and upgrades - #1603

Merged
gjermundgaraba merged 2 commits into
mainfrom
gg/permissions-doc-ibcmulticall
Oct 26, 2026
Merged

gjermundgaraba merged 2 commits into
mainfrom
gg/permissions-doc-ibcmulticall

Conversation

@gjermundgaraba

Copy link
Copy Markdown
Contributor

Description

Since #1584, ibc deploy core deploys IBCMulticall behind the core access manager and binds its multicall to PUBLIC_ROLE. Since #1585, the relayer sends every relay batch through it. docs/5-ibc-solidity-contracts/6-permissions-and-upgrades.md still described only the router and ICS27GMP as governed by the manager. This PR adds IBCMulticall to:

  • the summary bullet and the "Three contracts defer to it" paragraph;
  • the contract and authority table, with a link to IBCMulticall.sol;
  • the RELAYER_ROLE row: IBCRolesLib.multicallRelayerSelectors lists multicall on IBCMulticall;
  • "What a deployment assigns": its multicall is public. The router reports IBCMulticall as the relayer to applications, because relayer is _msgSender(). The contract's NatSpec describes the locked-down RELAYER_ROLE setup;
  • the proxies table and the _authorizeUpgrade sentence: UUPS, and _authorizeUpgrade is restricted.

I checked these facts against IBCMulticall.sol, IBCRolesLib.sol and ICS26Router.sol at the pinned ibc-contracts commit (f564e633), and against ProvisionMulticall in cli/internal/deploy/evm/driver.go. refgen.py all --check is clean.

closes: n/a (follow-up to #1584 and #1585)


🤖 Generated with Claude Code

Since #1584, ibc deploy core deploys IBCMulticall behind the core access manager and opens its multicall to PUBLIC_ROLE, and since #1585 the relayer sends every batch through it. The permissions page still described only the router and ICS27GMP.

Signed-off-by: Gjermund Garaba <gjermund@garaba.net>
@github-actions

github-actions Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

Vulnerable dependencies

0 advisories across 0 libraries need attention, 3 accepted.

Accepted

Listed in .govulncheck-ignore with a reason.

github.com/cosmos/evm

In use: v0.7.3 — reached from e2e

Advisory CVE Fixed in Summary
GO-2025-3684 — no fix yet Cosmos EVM Allows Partial Precompile State Writes in github.com/cosmos/evm

github.com/pion/dtls/v2

In use: v2.2.12 — reached from cli

Advisory CVE Fixed in Summary
GO-2026-4479 CVE-2026-26014 no fix yet Usage of random nonce generation with AES GCM ciphers risks leaking the authentication key in github.com/pion/dtls

golang.org/x/crypto

In use: v0.57.0 — reached from cli, e2e

Advisory CVE Fixed in Summary
GO-2026-5932 — no fix yet The golang.org/x/crypto/openpgp package is unmaintained, unsafe by design, and has known security issues

From make vulncheck-json on this run: logs.

@gjermundgaraba
gjermundgaraba marked this pull request as ready for review October 26, 2026 11:12
@gjermundgaraba
gjermundgaraba requested a review from a team as a code owner October 26, 2026 11:12
@greptile-apps

greptile-apps Bot commented Oct 26, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerView in GreptileConfidence Score: 5/5

[Low impact] This documentation update appears safe to merge.

Summary

Updates the permissions and upgrades guide to include IBCMulticall.

  • The permissions guide now explains IBCMulticall's roles and upgrades.

No actionable issues were found.

Reviews (1) · Last reviewed commit: "docs: cover IBCMulticall in permissions ..." · Reviewed by Greptile

@gjermundgaraba
gjermundgaraba added this pull request to the merge queue Oct 26, 2026
Merged via the queue into main with commit d7f9322 Oct 26, 2026
22 checks passed
@gjermundgaraba
gjermundgaraba deleted the gg/permissions-doc-ibcmulticall branch October 26, 2026 16:20
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