Skip to content

feat: merge-train/spartan#23971

Open
AztecBot wants to merge 15 commits into
nextfrom
merge-train/spartan
Open

feat: merge-train/spartan#23971
AztecBot wants to merge 15 commits into
nextfrom
merge-train/spartan

Conversation

@AztecBot

@AztecBot AztecBot commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator

BEGIN_COMMIT_OVERRIDE
chore(ci): notify slack on benchmark success (#23964)
fix: interrupt publisher send-at-slot sleep on sequencer stop (#23990)
chore: aztec-node render external secrets (#23997)
chore: expose ROLLUP_VERSION (#23998)
chore: enable workload identity (#23999)
feat: kong ingress (#24000)
feat: add version RPC deployments (#24001)
feat: add readiness gate (#24002)
chore: update IAM roles (#24011)
chore: conflicts (#24019)
chore: resolve merge conficts (#24044)
chore(ci): align nightly scheduled workflow times (#24045)
chore: merge next into merge-train/spartan (resolve conflicts) (#24052)
fix(docs): repair webapp tutorial build on spartan train (#24057)
END_COMMIT_OVERRIDE

@ludamad ludamad left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 Auto-approved

@AztecBot AztecBot enabled auto-merge June 9, 2026 21:32
@AztecBot

AztecBot commented Jun 9, 2026

Copy link
Copy Markdown
Collaborator Author

🤖 Auto-merge enabled after 4 hours of inactivity. This PR will be merged automatically once all checks pass.

spypsy and others added 8 commits June 10, 2026 13:44
## Summary

- Propagate `CheckpointProposalJob.interrupt()` to its
`SequencerPublisher` so the publisher's `sendRequestsAt` slot-deadline
sleep is cancelled on sequencer stop.
- Check `interrupted` *before* sleeping in `sendRequestsAt`, since
`InterruptibleSleep.interrupt()` only resolves sleeps already in flight.

Completes #23930, which made the job's own polling waits interruptible
but not the publisher's. In [this `e2e_ha_full.test.ts`
flake](http://ci.aztec-labs.com/1c46f3d4a226073d) a node became proposer
165ms before teardown and took the no-broadcast votes path, leaving
`pendingL1Submission = publisher.sendRequestsAt(targetSlot)` sleeping
until the target slot — ~22 wall-clock minutes away under the warped
test clock. `Sequencer.stop()` blocked on it ("Awaiting pending L1
payload submission"), node stops were abandoned, and Jest hung on leaked
handles until CI killed the run. Nothing in the shutdown path interrupts
the per-job `SequencerPublisher`: `publisherFactory.stopAll()` only
interrupts the underlying `L1TxUtils`.

## Tests

- `checkpoint_proposal_job.test.ts`: pending L1 submission blocked in
the publisher resolves promptly on `job.interrupt()` (red without the
fix).
- `sequencer-publisher.test.ts`: `sendRequestsAt` returns immediately
when interrupted before the sleep starts (red without the fix).
Spartan RPC deployment prep.

Stack: #23997 -> #23998 -> #23999 -> #24000 -> #24001 -> #24002

Fixes: A-1142, A-1134, A-1135, A-1136.
Exposes rollup version to Spartan deployments.

Stack: #23997 -> #23998 -> #23999 -> #24000 -> #24001 -> #24002

Fixes: A-1142, A-1134, A-1135, A-1136.
Enables workload identity for Spartan GKE clusters.

Stack: #23997 -> #23998 -> #23999 -> #24000 -> #24001 -> #24002

Fixes: A-1142, A-1134, A-1135, A-1136.
Adds Kong-based RPC gateway infrastructure.

Stack: #23997 -> #23998 -> #23999 -> #24000 -> #24001 -> #24002

Fixes: A-1142, A-1134, A-1135, A-1136, A-1186
Adds versioned RPC Terraform deployment wiring.

Stack: #23997 -> #23998 -> #23999 -> #24000 -> #24001 -> #24002

Fixes: A-1142, A-1134, A-1135, A-1136.
Adds RPC readiness gating for Spartan deployments.

Stack: #23997 -> #23998 -> #23999 -> #24000 -> #24001 -> #24002

Fixes: A-1142, A-1134, A-1135, A-1136.
@alexghr

alexghr commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Merge conflict fixes in #24019

@alexghr

alexghr commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Resolve merge conflicts #24044

alexghr and others added 3 commits June 12, 2026 10:12
Updates the scheduled (cron) times for the nightly workflows to the
agreed schedule. Stacked on top of #24044 (base branch
`ag/chore-mt-conflicts-2`).

All times UTC:

| Time | Workflow | Change |
|---|---|---|
| 04:00 | Nightly Release Tag (`nightly-release-tag.yml`, next +
v5-next) | `0 2` → `0 4` |
| 04:00 | Ensure Funded Environments (`ensure-funded-environments.yml`)
| `0 2` → `0 4` |
| 06:00 | Deploy Next Net (`deploy-next-net.yml`) | already `0 6`,
unchanged |
| 06:00 | Deploy to staging internal (`deploy-staging-internal.yml`) |
`0 7` → `0 6` |
| 06:00 | Deploy to staging public (`deploy-staging-public.yml`) | `0 7`
→ `0 6` |
| 06:00 | Nightly Spartan Benchmarks (`nightly-spartan-bench.yml`) | `30
7` → `0 6` |

The tag/fund jobs now run at 04:00 and the deploy/bench jobs at 06:00,
so deploys still happen after the nightly tag is created.

---
*Created by
[claudebox](https://claudebox.work/v2/sessions/3afdab240c44faa8) ·
group: `slackbot`*

---------

Co-authored-by: Charlie <5764343+charlielye@users.noreply.github.com>
Co-authored-by: alexghr <3816165+alexghr@users.noreply.github.com>
Co-authored-by: PhilWindle <60546371+PhilWindle@users.noreply.github.com>
Co-authored-by: ludamad <adam.domurad@gmail.com>
Co-authored-by: Josh Crites <jc@joshcrites.com>
Co-authored-by: Alex <alexghr@users.noreply.github.com>
Co-authored-by: Santiago Palladino <spalladino@gmail.com>
…n-resolve

# Conflicts:
#	.github/workflows/deploy-staging-internal.yml
#	.github/workflows/nightly-release-tag.yml
## Why

`merge-train/spartan` ([PR
#23971](#23971)) has
been in state `dirty` and has not merged into `next` for ~2 days. This
PR merges current `next` into the train branch and resolves the
conflicts so #23971 becomes mergeable again.

## Conflicts resolved

Both conflicts were cron-schedule differences. The train branch's commit
`chore(ci): align nightly scheduled workflow times (#24045)`
deliberately set these times, and that alignment is exactly what the
train is bringing into `next` — so the train (HEAD) side was kept in
both:

- `.github/workflows/deploy-staging-internal.yml` — kept `cron: "0 6 * *
*"` (train) over `"0 7 * * *"` (next)
- `.github/workflows/nightly-release-tag.yml` — kept `cron: "0 4 * * *"`
(train) over `"0 2 * * *"` (next)

After resolution, `origin/next` is an ancestor of this branch; the only
net file change versus the current train tip is
`spartan/terraform/gke-cluster/iam.tf` (+24, brought in from `next`).

## ⚠️ Merge with a merge commit, not squash

This PR carries a real merge commit so that `next` stays an ancestor of
`merge-train/spartan`. It must be landed with **Create a merge commit**
(hence the `ci-no-squash` label) — squashing would drop the merge and
leave #23971 dirty.

---
*Created by
[claudebox](https://claudebox.work/v2/sessions/011e27d5de05b232) ·
group: `slackbot`*
@AztecBot AztecBot added this pull request to the merge queue Jun 12, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jun 12, 2026
## Why

PR #23971 was removed from the `next` merge queue at
`2026-06-12T15:23:40Z`. The failing merge-group run was CI3 run
`27424805463` on
`gh-readonly-queue/next/pr-23971-fa063393c7d16e1484957ca86d0b2d53a81d9d48`
(`66597f3f1e56113db60a31224946b3c130c32289`).

The failed job was `ci`, specifically shard `x9-full`:

- GitHub run:
https://github.com/AztecProtocol/aztec-packages/actions/runs/27424805463
- CI shard log: http://ci.aztec-labs.com/4eea34658df3797a
- Nested CI log: http://ci.aztec-labs.com/1781277359755775
- Docs build log: http://ci.aztec-labs.com/646d705612721e2a

The docs webapp tutorial build failed with:

```text
src/components/TwoPlayerLocal.tsx(67,20): error TS2339: Property 'connectTestAccount' does not exist on type 'NodeEmbeddedWallet'.
src/components/TwoPlayerLocal.tsx(68,30): error TS2339: Property 'getConnectedAccount' does not exist on type 'NodeEmbeddedWallet'.
[vite]: Rollup failed to resolve import "vite-plugin-node-polyfills/shims/buffer" from ".../yarn-project/stdlib/dest/aztec-address/index.js".
```

## Fix

- Make the tutorial `EmbeddedWallet.initialize()` method return the
tutorial subclass type explicitly, preserving `connectTestAccount()` and
`getConnectedAccount()` for callers.
- Set Vite `resolve.preserveSymlinks` in the tutorial app and extension
configs so linked `@aztec/*` packages resolve plugin-injected polyfill
shims from the tutorial app install.

## Verification

- `git diff --check`
- `./bootstrap.sh ci` was attempted locally but this checkout has no
root `ci` command and exits with `Unknown command: ci`.
- `docs/examples/bootstrap.sh` was attempted for the focused failing
area, but this container is missing built toolchain artifacts
(`noir/noir-repo/target/release/nargo`, `l1-contracts/solc-0.8.30`), so
it stops before the CI-reported webapp tutorial TypeScript/Vite
failures.

---
*Created by
[claudebox](https://claudebox.work/v2/sessions/2f1c9c03de015041) ·
group: `slackbot`*
@PhilWindle PhilWindle requested a review from a team as a code owner June 12, 2026 15:50
@PhilWindle PhilWindle enabled auto-merge June 12, 2026 15:50
@PhilWindle PhilWindle added this pull request to the merge queue Jun 12, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Jun 12, 2026
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.

5 participants