Skip to content

Commit ca712e1

Browse files
authored
Merge branch 'merge-train/spartan-v5' into phil/a-1418-prover-node-make-epoch-proving-robust-to-prune-induced-fork
2 parents a436301 + b7a7d1b commit ca712e1

950 files changed

Lines changed: 104722 additions & 21688 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/ci3_labels_to_env.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,9 @@ function main {
127127
echo "WARNING: Skipping main CI because Chonk input refresh was requested; the update step will run after this step succeeds." >&2
128128
ci_mode="skip"
129129
elif has_label "ci-release-pr"; then
130+
# Release-PR mode creates and pushes a release tag for this PR's head (ci3.sh::handle_release_pr).
131+
# In the private repo that tag triggers a private release via the safety gate below — this is the
132+
# manual way to cut a private release from a PR, alongside the nightly tag cron.
130133
ci_mode="release-pr"
131134
elif has_label "ci-full"; then
132135
ci_mode="full"
@@ -141,6 +144,9 @@ function main {
141144
elif has_label "ci-barretenberg" || [ "$target_branch" == "merge-train/barretenberg" ]; then
142145
ci_mode="barretenberg"
143146
elif [[ "${GITHUB_REF:-}" == refs/tags/v* ]]; then
147+
# A pushed semver tag is a release; REF_NAME is the tag (see ci3/source_refname). In the private
148+
# repo this is the nightly path (nightly-release-tag*.yml push v<ver>-nightly.<date> tags on next and
149+
# v5-next); the private-repo safety gate below routes it to the internal Artifact Registry.
144150
ci_mode="release"
145151
else
146152
ci_mode="fast"
@@ -149,6 +155,17 @@ function main {
149155
echo "CI_MODE=$ci_mode" >> $GITHUB_ENV
150156
echo "CI mode: $ci_mode"
151157

158+
# Private-repo safety gate. The release flow can publish to DockerHub/npmjs/crates.io/github; that
159+
# MUST NEVER run in the private fork. So whenever this repo would release — for ANY trigger (a pushed
160+
# nightly tag, a ci-release-pr tag, anything future) — force the private path: publish only the docker
161+
# image and npm packages to our internal Artifact Registry (bootstrap.sh::private_release). Keyed on
162+
# the repo name (case-insensitive) so it can't be reached in the public repo.
163+
if [ "$ci_mode" = "release" ] &&
164+
[ "$(printf '%s' "${GITHUB_REPOSITORY:-}" | tr 'A-Z' 'a-z')" = "aztecprotocol/aztec-packages-private" ]; then
165+
echo "PRIVATE_RELEASE=1" >> $GITHUB_ENV
166+
echo "SKIP_COMPAT_E2E=1" >> $GITHUB_ENV
167+
fi
168+
152169
# Determine if benchmarks should be uploaded (merge-queue, full, or full-no-test-cache modes)
153170
if [[ "$ci_mode" == "merge-queue" || "$ci_mode" == "merge-queue-heavy" || "$ci_mode" == "full" || "$ci_mode" == "full-no-test-cache" ]]; then
154171
echo "SHOULD_UPLOAD_BENCHMARKS=1" >> $GITHUB_ENV

.github/workflows/avm-circuit-inputs.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ concurrency:
1515

1616
jobs:
1717
collect-avm-circuit-inputs:
18+
if: github.repository != 'AztecProtocol/aztec-packages-private'
1819
runs-on: ubuntu-latest
1920
steps:
2021
- name: Checkout
@@ -66,6 +67,7 @@ jobs:
6667

6768
avm-check-circuit:
6869
needs: collect-avm-circuit-inputs
70+
if: github.repository != 'AztecProtocol/aztec-packages-private'
6971
runs-on: ubuntu-latest
7072
steps:
7173
- name: Checkout

.github/workflows/ci3.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ name: CI3
77
on:
88
workflow_dispatch:
99
push:
10+
branches:
11+
- next
1012
tags:
1113
- "v*"
1214
pull_request:
@@ -115,6 +117,9 @@ jobs:
115117
EXTERNAL_ETHEREUM_CONSENSUS_HOST_API_KEY: ${{ secrets.GCP_SEPOLIA_API_KEY }}
116118
EXTERNAL_ETHEREUM_CONSENSUS_HOST_API_KEY_HEADER: "X-goog-api-key"
117119
GCP_PROJECT_ID: ${{ secrets.GCP_PROJECT_ID }}
120+
# Internal GCP Artifact Registry the private repo's release pushes the docker image to (see
121+
# bootstrap.sh::private_release). Empty in the public repo, where releases publish normally.
122+
INTERNAL_DOCKER_REGISTRY: ${{ vars.INTERNAL_DOCKER_REGISTRY }}
118123
MERGE_GROUP_BASE_REF: ${{ github.event.merge_group.base_ref }}
119124
PR_BASE_REF: ${{ github.event.pull_request.base.ref }}
120125
PR_HEAD_REF: ${{ github.event.pull_request.head.ref }}

.github/workflows/docs-typesense.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,11 @@ jobs:
3939
run: |
4040
set -euo pipefail
4141
42+
if [ -z "$TYPESENSE_API_KEY" ] || [ -z "$TYPESENSE_HOST" ]; then
43+
echo "Typesense secrets are not configured; skipping docs search reindex."
44+
exit 0
45+
fi
46+
4247
docker run \
4348
-e "TYPESENSE_API_KEY=$TYPESENSE_API_KEY" \
4449
-e "TYPESENSE_HOST=$TYPESENSE_HOST" \

.github/workflows/fuzzing-docker-avm-build-private.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
name: Build Private Fuzzing AVM Container
22

33
on:
4-
push:
5-
branches:
6-
- next
74
workflow_dispatch:
85
inputs:
96
commit:

.github/workflows/fuzzing-docker-build-private.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
name: Build Private Fuzzing Container
22

33
on:
4-
push:
5-
branches:
6-
- next
74
workflow_dispatch:
85
inputs:
96
commit:
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Nightly Release Tag (v4-next)
1+
name: Nightly Release Tag (v5-next)
22
on:
33
schedule:
44
# Run the workflow every night at 5:00 AM UTC.
@@ -9,24 +9,24 @@ permissions:
99
contents: write
1010

1111
concurrency:
12-
group: ${{ github.workflow }}-v4-next
12+
group: ${{ github.workflow }}-v5-next
1313

1414
jobs:
15-
nightly-release-tag-v4-next:
15+
nightly-release-tag-v5-next:
1616
runs-on: ubuntu-latest
1717
steps:
1818
- uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1
1919
with:
20-
ref: v4-next
20+
ref: v5-next
2121
token: ${{ secrets.AZTEC_BOT_GITHUB_TOKEN }}
2222

23-
- name: Create v4-next Nightly Tag
23+
- name: Create v5-next Nightly Tag
2424
run: |
2525
git config --global user.email "tech@aztecprotocol.com"
2626
git config --global user.name "AztecBot"
2727
current_version=$(jq -r '."."' .release-please-manifest.json)
2828
echo "Current version: $current_version"
2929
nightly_tag="v${current_version}-nightly.$(date -u +%Y%m%d)"
30-
echo "v4-next nightly tag: $nightly_tag"
30+
echo "v5-next nightly tag: $nightly_tag"
3131
git tag -a "$nightly_tag" -m "$nightly_tag"
3232
git push origin "$nightly_tag"
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Public Next PR Body
2+
3+
on:
4+
push:
5+
branches:
6+
- next
7+
- public-next
8+
workflow_dispatch:
9+
10+
concurrency:
11+
group: public-next-pr-body
12+
cancel-in-progress: true
13+
14+
jobs:
15+
update-public-next-pr-body:
16+
name: Update next to public-next PR body
17+
runs-on: ubuntu-latest
18+
permissions:
19+
contents: read
20+
pull-requests: write
21+
steps:
22+
- name: Checkout public-next workflow scripts
23+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
24+
with:
25+
ref: public-next
26+
fetch-depth: 0
27+
token: ${{ secrets.AZTEC_BOT_GITHUB_TOKEN }}
28+
29+
- name: Update holding PR body
30+
env:
31+
GH_TOKEN: ${{ secrets.AZTEC_BOT_GITHUB_TOKEN }}
32+
BASE_BRANCH: public-next
33+
HEAD_BRANCH: next
34+
run: ./scripts/merge-train/update-public-next-pr-body.sh
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: Public Next Auto-Pull
2+
3+
on:
4+
push:
5+
branches:
6+
- public-next
7+
workflow_dispatch:
8+
9+
concurrency:
10+
group: public-next-to-next
11+
cancel-in-progress: false
12+
13+
jobs:
14+
merge-to-next:
15+
name: Merge public-next to next
16+
runs-on: ubuntu-latest
17+
steps:
18+
- name: Checkout public-next automation
19+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
20+
with:
21+
ref: public-next
22+
fetch-depth: 0
23+
token: ${{ secrets.AZTEC_BOT_GITHUB_TOKEN }}
24+
persist-credentials: true
25+
26+
- name: Configure Git
27+
run: |
28+
git config user.name AztecBot
29+
git config user.email tech@aztecprotocol.com
30+
31+
- name: Merge public-next into next
32+
env:
33+
GH_TOKEN: ${{ secrets.AZTEC_BOT_GITHUB_TOKEN }}
34+
SOURCE_BRANCH: public-next
35+
TARGET_BRANCH: next
36+
CONFLICT_EXIT_CODE: 1
37+
run: ./scripts/merge-train/merge-public-next.sh
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Public v5-next PR Body
2+
3+
on:
4+
push:
5+
branches:
6+
- v5-next
7+
- public-v5-next
8+
workflow_dispatch:
9+
10+
concurrency:
11+
group: public-v5-next-pr-body
12+
cancel-in-progress: true
13+
14+
jobs:
15+
update-public-v5-next-pr-body:
16+
name: Update v5-next to public-v5-next PR body
17+
runs-on: ubuntu-latest
18+
permissions:
19+
contents: read
20+
pull-requests: write
21+
steps:
22+
- name: Checkout public-v5-next workflow scripts
23+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
24+
with:
25+
ref: public-v5-next
26+
fetch-depth: 0
27+
token: ${{ secrets.AZTEC_BOT_GITHUB_TOKEN }}
28+
29+
- name: Update holding PR body
30+
env:
31+
GH_TOKEN: ${{ secrets.AZTEC_BOT_GITHUB_TOKEN }}
32+
BASE_BRANCH: public-v5-next
33+
HEAD_BRANCH: v5-next
34+
run: ./scripts/merge-train/update-public-next-pr-body.sh

0 commit comments

Comments
 (0)