Skip to content

registry/display: complete integration with genesis and execution layer#25240

Merged
amnn merged 3 commits intoml/display-registryfrom
amnn/disp-integ
Feb 5, 2026
Merged

registry/display: complete integration with genesis and execution layer#25240
amnn merged 3 commits intoml/display-registryfrom
amnn/disp-integ

Conversation

@amnn
Copy link
Copy Markdown
Contributor

@amnn amnn commented Feb 3, 2026

Description

  • Create Display Registry at sentinel address (0xd).
  • Add carve outs in ID leak verifier in execution layer (carve out in Move compiler already exists).
  • Regenerate framework related snapshots.
  • Update well-known address lists everywhere.
  • Hook into genesis, if enabled in protocol config.

Test plan

How did you test the new or updated feature?


Release notes

Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.

For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates.

  • Protocol:
  • Nodes (Validators and Full nodes):
  • gRPC:
  • JSON-RPC:
  • GraphQL:
  • CLI:
  • Rust SDK:
  • Indexing Framework:

@amnn amnn self-assigned this Feb 3, 2026
@amnn amnn requested a review from a team as a code owner February 3, 2026 14:57
@amnn amnn temporarily deployed to sui-typescript-aws-kms-test-env February 3, 2026 14:57 — with GitHub Actions Inactive
@vercel
Copy link
Copy Markdown

vercel bot commented Feb 3, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
sui-docs Ready Ready Preview, Comment Feb 5, 2026 0:48am
2 Skipped Deployments
Project Deployment Actions Updated (UTC)
multisig-toolkit Ignored Ignored Preview Feb 5, 2026 0:48am
sui-kiosk Ignored Ignored Preview Feb 5, 2026 0:48am

Request Review

Copy link
Copy Markdown
Contributor

@manolisliolios manolisliolios left a comment

Choose a reason for hiding this comment

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

lgtm!

amnn added 3 commits February 5, 2026 12:45
## Description

Previously, the Move Compiler's ID Leak check was updated, but not
the verifier used during execution. This change also switches Display
Registry to be created at its well-known address (0xd).

## Test plan

Without this change, E2E tests would fail to execute the transaction
that creates the Display Registry.
## Description

Regenerate sui framework snapshots for Display Registry changes.

## Test plan

CI
## Description
Make it so that if Display Registry is enabled at Genesis, the Display
Registry object is created.

## Test plan
Used for E2E tests up the stack.
@amnn amnn temporarily deployed to sui-typescript-aws-kms-test-env February 5, 2026 12:46 — with GitHub Actions Inactive
@amnn amnn merged commit d6ab2d8 into ml/display-registry Feb 5, 2026
51 of 54 checks passed
@amnn amnn deleted the amnn/disp-integ branch February 5, 2026 13:10
amnn added a commit that referenced this pull request Mar 10, 2026
## Description
GraphQL will look for and preference `sui::display_registry::Display<T>`
over `sui::display::Display<T>` (+ its events) when computing the
Display output for a given Move Value.

## Test plan

New E2E tests:

```
$ cargo nextest run            \
  -p sui-indexer-alt-e2e-tests \
  --test transactional_tests   \
  -- display_v2
```

## Stack

- #23710 
- #25240 
- #25241

---

## Release notes

Check each box that your changes affect. If none of the boxes relate to
your changes, release notes aren't required.

For each box you select, include information after the relevant heading
that describes the impact of your changes that a user might notice and
any actions they must take to implement updates.

- [ ] Protocol: 
- [ ] Nodes (Validators and Full nodes): 
- [ ] gRPC:
- [ ] JSON-RPC: 
- [x] GraphQL: Adds support for Display Registry to GraphQL:
`MoveValue.display` will look for a `Display<T>` stored in the Display
Registry and will use that as the source of truth for its type's format.
This takes precedence over any Display v1 formats that exist for this
type.
- [ ] CLI: 
- [ ] Rust SDK:
- [ ] Indexing Framework:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants