Skip to content

merge queue: embarking main (f6c85ce), #2052 and #1826 together#2069

Closed
mergify[bot] wants to merge 23 commits intomainfrom
mergify/merge-queue/d1fc5c04c7
Closed

merge queue: embarking main (f6c85ce), #2052 and #1826 together#2069
mergify[bot] wants to merge 23 commits intomainfrom
mergify/merge-queue/d1fc5c04c7

Conversation

@mergify
Copy link
Copy Markdown

@mergify mergify bot commented Mar 9, 2026

✨ Pull request #2052 which was ahead in the queue has been dequeued (for the following reason: checks timeout). The pull request #1826 has been re-embarked. ✨

Branch main (f6c85ce), #2052 and #1826 are embarked together for merge.

This pull request has been created by Mergify to speculatively check the mergeability of #1826.
You don't need to do anything. Mergify will close this pull request automatically when it is complete.

Required conditions of queue main for merge:

  • check-success = run-e2e-tests / fhevm-e2e-test
  • #approved-reviews-by >= 1 [🛡 GitHub branch protection]
  • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • branch-protection-review-decision = APPROVED [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-success = common-pull-request/lint (bpr)
    • check-neutral = common-pull-request/lint (bpr)
    • check-skipped = common-pull-request/lint (bpr)
  • any of [🛡 GitHub branch protection]:
    • check-skipped = coprocessor-cargo-listener-tests/cargo-tests (bpr)
    • check-neutral = coprocessor-cargo-listener-tests/cargo-tests (bpr)
    • check-success = coprocessor-cargo-listener-tests/cargo-tests (bpr)
  • any of [🛡 GitHub branch protection]:
    • check-success = coprocessor-cargo-test/cargo-tests (bpr)
    • check-neutral = coprocessor-cargo-test/cargo-tests (bpr)
    • check-skipped = coprocessor-cargo-test/cargo-tests (bpr)
  • any of [🛡 GitHub branch protection]:
    • check-success = coprocessor-dependency-analysis/dependencies-check (bpr)
    • check-neutral = coprocessor-dependency-analysis/dependencies-check (bpr)
    • check-skipped = coprocessor-dependency-analysis/dependencies-check (bpr)
  • any of [🛡 GitHub branch protection]:
    • check-skipped = gateway-contracts-deployment-tests/sc-deploy (bpr)
    • check-neutral = gateway-contracts-deployment-tests/sc-deploy (bpr)
    • check-success = gateway-contracts-deployment-tests/sc-deploy (bpr)
  • any of [🛡 GitHub branch protection]:
    • check-skipped = kms-connector-tests/test-connector (bpr)
    • check-neutral = kms-connector-tests/test-connector (bpr)
    • check-success = kms-connector-tests/test-connector (bpr)

Required conditions to stay in the queue:

  • #approved-reviews-by >= 1 [🛡 GitHub branch protection]
  • #changes-requested-reviews-by = 0 [🛡 GitHub branch protection]
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • base = main
  • branch-protection-review-decision = APPROVED [🛡 GitHub branch protection]
  • label!=do-not-merge
  • any of [🛡 GitHub branch protection]:
    • check-success = common-pull-request/lint (bpr)
    • check-neutral = common-pull-request/lint (bpr)
    • check-skipped = common-pull-request/lint (bpr)
  • any of [🛡 GitHub branch protection]:
    • check-skipped = coprocessor-cargo-listener-tests/cargo-tests (bpr)
    • check-neutral = coprocessor-cargo-listener-tests/cargo-tests (bpr)
    • check-success = coprocessor-cargo-listener-tests/cargo-tests (bpr)
  • any of [🛡 GitHub branch protection]:
    • check-success = coprocessor-cargo-test/cargo-tests (bpr)
    • check-neutral = coprocessor-cargo-test/cargo-tests (bpr)
    • check-skipped = coprocessor-cargo-test/cargo-tests (bpr)
  • any of [🛡 GitHub branch protection]:
    • check-success = coprocessor-dependency-analysis/dependencies-check (bpr)
    • check-neutral = coprocessor-dependency-analysis/dependencies-check (bpr)
    • check-skipped = coprocessor-dependency-analysis/dependencies-check (bpr)
  • any of [🛡 GitHub branch protection]:
    • check-skipped = gateway-contracts-deployment-tests/sc-deploy (bpr)
    • check-neutral = gateway-contracts-deployment-tests/sc-deploy (bpr)
    • check-success = gateway-contracts-deployment-tests/sc-deploy (bpr)
  • any of [🛡 GitHub branch protection]:
    • check-skipped = kms-connector-tests/test-connector (bpr)
    • check-neutral = kms-connector-tests/test-connector (bpr)
    • check-success = kms-connector-tests/test-connector (bpr)
---
checking_base_sha: c390ff49fd129a986fd77a808338e0ef442393a9
previous_failed_batches: []
pull_requests:
  - number: 1826
...

Eikix and others added 23 commits March 5, 2026 18:36
Deploy with --coprocessors 2 --coprocessor-threshold 2 so both
coprocessors must independently compute identical ciphertext digests
for on-chain consensus to be reached. All existing tests pass
unchanged — consensus enforcement is transparent.

Adds a consensus watchdog (Mocha root hook) that monitors gateway
chain events during tests:
- Detects ciphertext digest divergence immediately
- Detects consensus stalls within 3 minutes
- No-op when GATEWAY_RPC_URL is unset (single-coprocessor runs)

Closes zama-ai/fhevm-internal#1132
- Add public flush() method instead of casting to any to call private poll()
- Add polling guard to prevent overlapping poll cycles from setInterval
- Remove non-null assertion on INPUT_VERIFICATION_ADDRESS before null check
- Prune resolved entries from maps (delete on consensus + track count via integers)
- Remove consensusReached field from interfaces (no longer needed)
- Simplify summary() to use map.size and counters instead of 4 array copies
12 tests covering:
- Ciphertext digest divergence detection
- SNS digest divergence detection
- Input verification divergence detection
- Consensus stall timeout detection
- Map pruning on consensus resolution
- Polling guard preventing overlapping polls
- Summary output for resolved and pending entries
- Graceful no-op when env vars are not set

Also exports ConsensusWatchdog class for testability.
- Destroy real ethers provider before replacing with stub in mockWatchdog()
- Wrap env var mutation in try/finally to guarantee cleanup on test failure
@mergify
Copy link
Copy Markdown
Author

mergify bot commented Mar 9, 2026

🧪 CI Insights

Here's what we observed from your CI run for 4a9b9b2.

🟢 All jobs passed!

But CI Insights is watching 👀

@mergify mergify bot closed this Mar 10, 2026
@mergify mergify bot deleted the mergify/merge-queue/d1fc5c04c7 branch March 10, 2026 00:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants