Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
5b2c9f2
v4.4: validator: Swallow identity not found error during wait (backpo…
mergify[bot] Sep 30, 2026
c1c294b
v4.4: SIMD-0123: Gate `clone_and_filter_for_vat` on feature (backport…
mergify[bot] Oct 1, 2026
63c8867
v4.4: ci: use github app token to create version bump PRs (backport o…
mergify[bot] Oct 5, 2026
b45ac63
v4.4: ci: add bypass user list to the buildkite triggering pipeline (…
mergify[bot] Oct 5, 2026
57a3591
v4.4: ci: url encode username in bulidkite triggering piepline (backp…
mergify[bot] Oct 5, 2026
52570c9
v4.4: Perf - Checks the ELF header of loader-v1/v2 programs earlier (…
mergify[bot] Oct 7, 2026
ad5909d
v4.4: bigtable: don't upload past the blockstore's max root (backport…
mergify[bot] Oct 7, 2026
63e3388
v4.4: vote-program: Disable `DepositDelegatorRewards` (backport of #1…
mergify[bot] Oct 7, 2026
9ef7cde
v4.4: gossip: reduce bufferbloat (backport of #15636) (#15752)
mergify[bot] Oct 7, 2026
8039fb4
v4.4: runtime: ebpp relax relatch (backport of #15766) (#15810)
mergify[bot] Oct 8, 2026
565cb11
v4.4: program-runtime: extract: use rooted access slot (backport of #…
mergify[bot] Oct 8, 2026
bfd97ee
v4.4: fix: use Alpenglow slot timing for transaction buffering (backp…
mergify[bot] Oct 8, 2026
968b24c
v4.4: fix: make Alpenglow slot timing available on Windows (backport …
mergify[bot] Oct 8, 2026
d0cb719
v4.4: vendor quinn-proto 0.11.18 and quinn 0.11.12 (#15954)
gregcusack Oct 12, 2026
3ad9da2
Bump version to 4.4.0-beta.1 (#15983)
agave-version-bumper[bot] Oct 13, 2026
eec1c67
Merge tag 'v4.4.0-beta.1' into release/4.x
sduchesneau Oct 14, 2026
2e5ca2e
Update CHANGELOG.sf.md for v4.4.0-beta.1-fh3.0
sduchesneau Oct 14, 2026
65e5b16
Add dependency review and secret scanning checks
sduchesneau Oct 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions .github/workflows/bump-version.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,6 @@ jobs:
version-bump:
if: github.repository_owner == 'anza-xyz'
runs-on: ubuntu-24.04
permissions:
pull-requests: write
environment: "Version Bump"
steps:
- name: Create github app token
Expand Down Expand Up @@ -78,7 +76,7 @@ jobs:
NEW_VERSION: ${{ steps.process.outputs.new_version }}
TARGET_BRANCH: ${{ steps.process.outputs.target_branch }}
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
github-token: ${{ steps.app-token.outputs.token }}
script: |
const pr = await github.rest.pulls.create({
owner: context.repo.owner,
Expand Down
18 changes: 18 additions & 0 deletions .github/workflows/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: "Dependency Review"
on:
pull_request:

permissions:
contents: read

jobs:
dependency-review:
runs-on: ubuntu-latest
if: ${{ github.actor != 'dependabot[bot]' }}
steps:
- name: "Checkout Repository"
uses: actions/checkout@v4
- name: "Dependency Review"
uses: actions/dependency-review-action@v4
with:
fail-on-severity: high # Fail on high, critical
15 changes: 15 additions & 0 deletions .github/workflows/secret-scanning.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Secret Scanning Check
on:
pull_request:

jobs:
check-secrets:
runs-on: ubuntu-latest
steps:
- name: Run Secret Scanning Review
if: ${{ github.event.pull_request.head.repo.full_name == github.repository && github.actor != 'dependabot[bot]' }}
uses: advanced-security/secret-scanning-review-action@v2.2.4
with:
token: ${{ secrets.SECRETS_ALERTS }}
fail-on-alert: true # This turns it into a hard status check
runtime: python
13 changes: 12 additions & 1 deletion .github/workflows/trigger-buildkite-pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,22 @@ jobs:
REPO: ${{ github.repository }}
USERNAME: ${{ github.event.sender.login }}
run: |
TRUSTED_CI_USERS=(
"mergify[bot]"
)
for trusted_ci_user in "${TRUSTED_CI_USERS[@]}"; do
if [[ "$USERNAME" == "$trusted_ci_user" ]]; then
echo "should_trigger=true" >> "$GITHUB_OUTPUT"
exit 0
fi
done

ENCODED_USERNAME=$(jq -rn --arg username "$USERNAME" '$username | @uri')
ROLE_NAME=$(curl -sS -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer $GH_TOKEN" \
-H "X-GitHub-Api-Version: 2026-03-10" \
https://api.github.com/repos/$REPO/collaborators/$USERNAME/permission | jq -r ".role_name")
"https://api.github.com/repos/$REPO/collaborators/$ENCODED_USERNAME/permission" | jq -r ".role_name")

case "$ROLE_NAME" in
admin|maintain|write|triage)
Expand Down
47 changes: 47 additions & 0 deletions CHANGELOG.sf.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,53 @@ This file tracks StreamingFast-specific changes to this fork of
[anza-xyz/agave](https://github.com/anza-xyz/agave). Upstream changes are documented in
[CHANGELOG.md](CHANGELOG.md).

## v4.4.0-beta.1-fh3.0

### Changed

- Merged upstream `v4.4.0-beta.1` (previously `v4.4.0-beta.0`), which brings in 15
upstream commits. The merge was clean: no conflicts. The tree differs from upstream only by
`Dockerfile`, `.github/workflows/docker-publish.yml`, `CHANGELOG.sf.md`, the novote guard
in `geyser-plugin-manager/src/accounts_update_notifier.rs`, and the two workflows below.

Released as image `ghcr.io/streamingfast/solana:v4.4.0-beta.1-fh3.0`.

- Added the StreamingFast pull request checks that `release/4.x` requires before merging:
`.github/workflows/dependabot.yml` (`dependency-review`) and
`.github/workflows/secret-scanning.yml` (`check-secrets`).

- The Geyser plugin interface is unchanged: Agave still pins
`agave-geyser-plugin-interface = "=5.0.0"`, and `transaction-status`,
`transaction-context` and the `rpc-client` crates are byte-for-byte identical to
`v4.4.0-beta.0`. Consumers only need to re-pin versions.

- Rust toolchain stays at `1.98.1`.

### Feature activations

- `block_revenue_sharing` (SIMD-0123) is rekeyed from
`7MYx95UBiJufqnumyN7HfskJ9vKdcGMmhreVguqrE97K` to
`Crbnc267wkJvFhYakqwWWX57sx5bkrftJLekzy6yWKLT` (#15795), because its behavior changed.
The new ID is not activated on mainnet or testnet (checked 2026-10-14). The effect on the
Firehose block is the same as before: block fees can be split into two `Fee` rewards, one
of them to an address other than the leader.

### Upstream changes worth knowing about

- The vote program's `DepositDelegatorRewards` instruction always returns an error
(#15795).
- `clone_and_filter_for_vat` only counts `pending_delegator_rewards` when SIMD-0123 is
active (#15529).
- Banking stage buffers transactions using Alpenglow slot timing (#15589, #15886).
- Bigtable upload stops at the blockstore's max root (#15804).
- `quinn` and `quinn-proto` are replaced by vendored `anza-quinn 0.11.12` and
`anza-quinn-proto 0.11.18` (#15954).
- The program cache extracts entries using the rooted access slot (#15811), and the
epoch-boundary program cache preparation restarts less often (#15766).
- Loader-v1/v2 programs have their ELF header checked earlier (#15544).
- `agave-validator wait-for-restart-window` ignores identity-not-found errors while
waiting (#15617).

## v4.4.0-beta.0-fh3.0

### Changed
Expand Down
Loading
Loading