PR U: NotaryRegistry E2E round-trip via ganache CLI + in-process solc #25

Merged
nsatoshi merged 1 commits from devin/1776891791-pr-u-notary-e2e into main 2026-04-22 21:11:53 +00:00

1 Commits

Author SHA1 Message Date
Devin AI
a7b355beef PR U: NotaryRegistry E2E round-trip via ganache CLI + in-process solc
Some checks failed
CI / Frontend Lint (pull_request) Failing after 7s
CI / Frontend Type Check (pull_request) Failing after 6s
CI / Frontend Build (pull_request) Failing after 7s
CI / Frontend E2E Tests (pull_request) Failing after 8s
CI / Orchestrator Build (pull_request) Failing after 7s
CI / Orchestrator Unit Tests (pull_request) Failing after 5s
CI / Orchestrator E2E (Testcontainers) (pull_request) Has been skipped
CI / Contracts Compile (pull_request) Failing after 6s
CI / Contracts Test (pull_request) Failing after 6s
Code Quality / SonarQube Analysis (pull_request) Failing after 20s
Code Quality / Code Quality Checks (pull_request) Failing after 5s
Security Scan / Dependency Vulnerability Scan (pull_request) Failing after 5s
Security Scan / OWASP ZAP Scan (pull_request) Failing after 4s
- Spawn ganache CLI as child process on a random dev port; deploy
  NotaryRegistry.sol compiled via in-process solc-js (no hardhat).
- Add OZ v5 Ownable initialOwner constructor to NotaryRegistry.sol
  (required by OpenZeppelin v5; contract was written pre-v5 and would
  not compile otherwise).
- Fix Step tuple ABI in services/notaryChain.ts — the prior shape
  (uint8, address, uint256, bytes) diverged from IComboHandler.Step
  (uint8, bytes, address, uint256), producing a different function
  selector and silently reverting every on-chain call.
- Disable JsonRpcProvider response cache (cacheTimeout=-1) so
  back-to-back anchor+finalize calls on fast chains no longer read a
  stale getTransactionCount and collide on nonce.
- Gated on RUN_E2E=1 to stay out of the fast unit-test path. 3/3
  tests pass: anchor on-chain write, finalize with receipt hash,
  graceful mock fallback when envs cleared. Full unit suite: 10/10
  (128 tests) still green, tsc --noEmit clean.

Closes gap-analysis v3 §7.9 / §8.5 (chain round-trip coverage).
2026-04-22 21:03:11 +00:00