Docs · Developers

Get a review

The three steps on the Seal page, what each one needs, and what to expect while the press runs.

Before you start

You need three things.

  1. A repository on GitHub that compiles with Foundry, or is a Hardhat or Remix project with plain Solidity files. Preparing your repository has the details.
  2. The contract: either its address on Robinhood Chain, or its runtime bytecode if it is not deployed yet.
  3. Five minutes.

Step 1: the repository

Go to zkcheck.dev/seal and click Connect GitHub. GitHub asks you to authorise the zkCheck app, then to install it on a repository. Pick the one to review, and only that one. The app can read contents and nothing else.

Back on the page, choose the repository from the list and the branch or commit. The default branch is filled in. The review will run at the tip of that ref, and the seal will record the commit hash.

If the app is installed nowhere, the page says so and links to the install page. If you connected earlier and want to add another repository, Add a repository opens the same GitHub page.

Step 2: the contract

Deployed on Robinhood Chain. Paste the address. The page fetches the code with eth_getCode and shows its hash and size. That hash is what the seal will name.

Not deployed. Paste the runtime bytecode: deployedBytecode.object from a Foundry artifact, or deployedBytecode from a Hardhat one. Not bytecode, which is the creation code. The hash is computed in your browser.

Give the project a name and, optionally, a ticker. They appear on the seal and the post as typed.

Step 3: the press

Send to the press. The page shows each step as the worker reaches it:

  1. Resolving the commit
  2. Fetching the tree at one commit
  3. Compiling with Foundry
  4. Matching the bytecode on the chain
  5. Running the eight checks
  6. Simulating a transfer in and out on a fork (deployed contracts only)
  7. Writing the review
  8. Signing the seal

A typical run is under a minute for compile and checks, plus the review. When it finishes, the page links to the seal.

If it stops, the page shows why, in one sentence: no match, no code at the address, a build error, a submodule that is not on GitHub. Fix and Try again; each attempt is a new job.

What you get

A page at /seals/<hash> with the eight answers and their evidence, the review, the commit, the auditor and the signature. If all eight passed, a post on X from the zkCheck account with a card. And an entry on /seals.

Resubmitting

A new commit is a new review. If the code did not change, the hash did not change, and the new seal replaces the old one at the same hash. If the contract was not deployed at the first review and is now, resubmit with the address: the match is the same and check 07 gets its answer.