Skip to content

docs: verified Etherscan links for deployed examples and working install commands - #28

Open
Eikix wants to merge 4 commits into
mainfrom
elias/code-map-etherscan
Open

Eikix wants to merge 4 commits into
mainfrom
elias/code-map-etherscan

Conversation

@Eikix

@Eikix Eikix commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Two documentation fixes after #25.

Code map: verified Etherscan links for every deployed example

The Solidity code map now links each deployed example to its verified source on Etherscan. Before this change, the swap and the batchers had only registry names, and the ERC-7984 wrappers were missing.

Pattern Contract Source
ERC-7984 wrapper of an ERC-20 cUSDC, proxy to ConfidentialWrapper (0xe978…72B2) registry CONFIDENTIAL_USDC
Finding a token's wrapper on-chain ConfidentialTokenWrappersRegistry (0xeb50…bBA0) registry TOKEN_WRAPPER_REGISTRY
Batched deposits with an aggregate reveal Steakhouse Prime USDC deposit (0xA07c…15D5) and redeem (0x3a90…083D) batchers registry, marked "Generation 3 (current)"
Swap with escrow and fees ConfidentialSwap, proxy (0x8Fe2…8C01) registry CONFIDENTIAL_SWAP
Sealed bids, per-user wallets AuctionToken, WalletFactory unchanged

Each row names the functions worth reading, checked against the verified source:

  • The wrapper's finalizeUnwrap deletes the request, checks the proof, then pays.

Each row also gives the registry key where the registry tracks the contract, and the intro says the registry decides which deployment is current. AuctionToken and WalletFactory are named as the fixed deployments the registry does not track. The batcher row notes that each new generation gets a new address. Two notes are added:

  • The cUSDC row says it is Zama's upgradeable variant with a blocklist. New tokens build on OpenZeppelin's ERC7984ERC20Wrapper.
  • A line under the table says the compliance access grants in the swap and the auction belong to those apps.

The batcher router is left out on purpose. It calls the FHEVM executor directly instead of going through the FHE library, which apps should not copy, and its token check is already a rule in erc7984.md.

Proxies link the proxy address, because the implementation can change on upgrade. The skill says to open the implementation from the proxy's code tab.

README: install and update commands that work as written

Every install path in the README was run as written in a throwaway home directory. These commands needed fixing:

  • Claude Code: marketplace update refreshes the catalog but leaves the installed plugin at its cached version. The update now also runs claude plugin update zama-protocol@zama-skills, then a restart.
  • npx skills: --list only lists skills, it does not let you pick them. The command now uses -g, which installs into ~/.agents/skills and links each detected agent. --skill installs a single skill, and npx skills update -g updates.
  • Codex: the plugin installs from the CLI with codex plugin add zama-protocol@zama-skills, and the update step runs it again after marketplace upgrade, because Codex caches plugins by version. /plugins stays as the alternative. The note about which files Codex reads is for maintainers and was removed.
  • Cursor: the generator needs uv, and the update step is the last two commands.

Verification

Code map:

  • Blockscout reports all eight contracts as verified. It names the implementations of the three proxies: ConfidentialWrapper, ConfidentialTokenWrappersRegistry and ConfidentialSwap.
  • All links return 200.
  • Unit tests, the Cursor and Codex --checks, git diff --check and the skill validator pass. The version is bumped to 0.4.1.

README, all commands ran against zama-ai/skills main, each in its own throwaway home:

  • Claude Code CLI: claude plugin marketplace add, install, marketplace update and update succeed. claude plugin details lists the three skills at 0.4.0, and claude plugin validate passes. The /plugin slash commands were exercised through these CLI equivalents, not inside the app.
  • npx skills: add --list, add -g -y and update -g -y succeed. The skills land in ~/.agents/skills and are linked from the agent directories.
  • Codex 0.162: codex plugin marketplace add, codex plugin add and marketplace upgrade succeed. The installed plugin is 0.4.0 with all three skills.
  • Cursor: a fresh clone generates 11 rules, including into a project with no .cursor/rules folder yet.
  • Manual clone and symlink: all three SKILL.md files resolve.

Not verified

Whether codex plugin marketplace upgrade alone moves an installed plugin to a new version. Codex refuses local file:// marketplaces, so this could not be tested without publishing a new version.

Eikix added 2 commits October 12, 2026 14:59
…rscan source

Add the ERC-7984 wrapper, the wrapper registry, the current vault batchers and the batcher router, and give the swap a direct link. Bump to 0.4.1.
Tested each path in a throwaway home: Claude Code needs a plugin update after the marketplace update, npx skills needs -g for a global install (--list only lists), Codex installs from the CLI with codex plugin add, and the Cursor path needs uv.
@Eikix Eikix changed the title docs(zama-solidity): link every deployed example to its verified Etherscan source docs: verified Etherscan links for deployed examples and working install commands Oct 13, 2026
Eikix added 2 commits October 13, 2026 13:51
Give each registry-tracked contract its registry key and let the registry decide which deployment is current. Tell agents to copy only the router's token check and to keep inputs on FHE.fromExternal. Note that cUSDC is Zama's upgradeable variant, and that the compliance grants in the swap and auction belong to those apps. Reinstall the Codex plugin after an upgrade, and drop a duplicated README sentence.
The router calls the executor directly, which apps should not do, and its token check is already a rule in erc7984.md. Spell out the redeem batcher's registry key, name the deployments the registry does not track, and note that each batcher generation gets a new address.
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