testnet-v1.75.1

facebookresearch/tribev2testnet-v1.75.1Jul 7, 2026by ebmifa

AI Summary

Introduces protocol version 129 with updates to binary pools and linked tables, enhances gRPC and GraphQL with new cursor handling and tracing capabilities, and improves CLI and node configuration options.

Key Highlights

  • Protocol version 129 with binary pool bounds
  • Support for `gs://` state-sync archives
  • New `RUST_LOG_TAILS` environment variable for advanced logging
  • New GraphQL cursor field and tracing capabilities

Breaking Changes

  • Opaque pagination cursors in gRPC and GraphQL have a new internal encoding; users should restart pagination from the beginning if they encounter errors.

New Features

  • New `insert_before` and `insert_after` in linked_table
  • New `IAddressable.asTransactionObject` in GraphQL
  • Cursor field added to Checkpoint object

Full Release Notes

## Protocol
#### Sui Protocol Version in this release: `129`

https://github.com/MystenLabs/sui/pull/27096: Introduces a new protocol version that adds explicit bounds for binary pools that were otherwise implicitly constrained before. No user-visible change.

https://github.com/MystenLabs/sui/pull/26914: adds `insert_before` and `insert_after` to `sui::linked_table`

https://github.com/MystenLabs/sui/pull/27067: use `defining_ids` in `sui::coin`

## Nodes (Validators and Full nodes)

https://github.com/MystenLabs/sui/pull/27063: the state-sync archive fallback now supports `gs://` (Google Cloud Storage) ingestion URLs. A new `remote-store-headers` option under `state-archive-read-config` attaches default HTTP headers to archive requests, which enables requester-pays GCS buckets via `x-goog-user-project`. Previously only `file` / `s3` / `http` archive stores were supported.

https://github.com/MystenLabs/sui/pull/27026: New optional `RUST_LOG_TAILS` env var additionally writes individual tracing targets to dedicated files (format inferred from the file extension — `.jsonl`/`.ndjson` for JSON, otherwise text), leaving normal log output unchanged. Backward-compatible — unset by default, so log output is unchanged and no action is required.

## gRPC

https://github.com/MystenLabs/sui/pull/27035: Opaque pagination cursors returned by the scanning apis `list_transactions`, `list_events`, and `list_checkpoints` have a new internal encoding. Cursors remain opaque and clients should continue treating them as such. Users should restart pagination from the beginning if they encounter a cursor-related error.

## GraphQL

https://github.com/MystenLabs/sui/pull/27018: Introduce `IAddressable.asTransactionObject` as a generalization of `Address.asTransactionObject`.

https://github.com/MystenLabs/sui/pull/27004: GraphQL request payloads can be captured for replay by enabling the `graphql_request` tracing target at trace level — all kinds via `RUST_LOG=graphql_request=trace`, or a single operation kind via `RUST_LOG="graphql_request[{kind=mutation}]=trace"`. Disabled by default.

https://github.com/MystenLabs/sui/pull/26731: Add cursor field to Checkpoint object

https://github.com/MystenLabs/sui/pull/27035: The opaque pagination cursor returned for a `Transaction` edge of the `TransactionConnection` have a new internal encoding. Cursors remain opaque and clients should continue treating them as such. Users should restart pagination from the beginning if they encounter a cursor-related error.

https://github.com/MystenLabs/sui/pull/26714: Support resumable checkpoints subscription in features `staging`

## CLI

https://github.com/MystenLabs/sui/pull/27094: `sui start` respects the fullnode RPC socket address that's part of its network config, if one is provided.

## Indexing Framework

https://github.com/MystenLabs/sui/pull/27026: The same `RUST_LOG_TAILS` env var is available to indexer binaries (e.g. `sui-indexer-alt-graphql`). Set it alongside `RUST_LOG` (e.g. `RUST_LOG="info,graphql_request=trace"` with `RUST_LOG_TAILS="graphql_request=/var/log/sui/graphql_request.jsonl"`) to capture that target as NDJSON for replay while normal logs stay readable. Opt-in; no action required otherwise.

---
#### Full Log: https://github.com/MystenLabs/sui/commits/testnet-v1.75.1