Skip to content

feat: link refactor#71

Merged
ChrisAmora merged 3 commits into
mainfrom
feat/link-v2
May 27, 2026
Merged

feat: link refactor#71
ChrisAmora merged 3 commits into
mainfrom
feat/link-v2

Conversation

@ChrisAmora
Copy link
Copy Markdown
Contributor

@ChrisAmora ChrisAmora commented May 25, 2026

This pull request refactors how LINK token deployment is handled in the MCMS changeset tests and introduces a new, reusable LINK token deployment changeset in the codebase. The main changes include switching to the new DeployLinkTokenChangeset for both EVM and Solana chains, updating test code to use the new data store pattern for contract lookups.

@ChrisAmora ChrisAmora force-pushed the feat/link-v2 branch 2 times, most recently from 989ac55 to 8752a72 Compare May 25, 2026 21:35
@ChrisAmora ChrisAmora changed the title feat: link feat: link refactor May 25, 2026
@jkongie
Copy link
Copy Markdown
Collaborator

jkongie commented May 26, 2026

You may want to leave the existing changesets instead of replacing them.

Think about an easy to use directory structure that would be intuitive for users to use.

Perhaps something link

-- tokens
----| link
--------| changesets
--------| operations
----| native
--------| changesets
--------| operations

We will also want to consider how to handle different chains

@ChrisAmora ChrisAmora force-pushed the feat/link-v2 branch 2 times, most recently from 328e048 to 30dcf46 Compare May 26, 2026 13:45
@ChrisAmora ChrisAmora marked this pull request as ready for review May 26, 2026 20:01
@ChrisAmora ChrisAmora requested a review from a team as a code owner May 26, 2026 20:01
Copilot AI review requested due to automatic review settings May 26, 2026 20:01
@ChrisAmora
Copy link
Copy Markdown
Contributor Author

You may want to leave the existing changesets instead of replacing them.

Think about an easy to use directory structure that would be intuitive for users to use.

Perhaps something link

-- tokens
----| link
--------| changesets
--------| operations
----| native
--------| changesets
--------| operations

We will also want to consider how to handle different chains

Yeah, changed the structure a little bit too.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR refactors LINK token deployment and transfer test setup to align with the newer CLDF deployment flow, resolving contract addresses via the DataStore (instead of the legacy AddressBook) and introducing reusable LINK token changesets/operations.

Changes:

  • Added new LINK token deployment operations (EVM burn/mint + EVM static + Solana SPL) and a multi-chain DeployLinkTokenChangeset that persists results to the DataStore.
  • Added TransferLinkTokenChangeset for building an MCMS timelock proposal to transfer LINK using addresses resolved from the DataStore.
  • Updated legacy MCMS tests to use the new LINK deployment changeset and to resolve LINK token addresses from the DataStore.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
tokens/link/operations/deploy.go Introduces EVM/Solana LINK token deploy operations used by the new changeset flow.
tokens/link/changesets/validation.go Adds shared helpers for type/version selection, selector-family validation, and datastore address ref persistence.
tokens/link/changesets/deploy_link_token.go New LINK deployment changeset that deploys per-chain and writes resulting addresses to a datastore output.
tokens/link/changesets/deploy_link_token_test.go Adds tests for the new LINK deployment changeset behavior (variants, family validation, existing-state blocking).
tokens/link/changesets/transfer_link_token.go New changeset to build an MCMS timelock proposal for transferring LINK based on datastore-resolved addresses.
tokens/link/changesets/transfer_link_token_test.go Adds tests for transfer preconditions, proposal building, and ValidUntil behavior.
legacy/mcms/changesets/transfer_to_mcms_with_timelock_test.go Updates legacy MCMS timelock transfer tests to deploy LINK via new changeset and resolve via datastore.
legacy/mcms/changesets/set_config_mcms_test.go Updates legacy MCMS config test setup to use the new LINK changeset import + invocation.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread tokens/link/changesets/deploy_link_token.go
Comment thread tokens/link/changesets/deploy_link_token.go
Comment thread tokens/link/changesets/transfer_link_token.go Outdated
Comment thread tokens/link/changesets/transfer_link_token.go Outdated
Comment thread legacy/mcms/changesets/transfer_to_mcms_with_timelock_test.go Outdated
@ChrisAmora ChrisAmora force-pushed the feat/link-v2 branch 2 times, most recently from f78146c to 33355b0 Compare May 26, 2026 20:35
@ChrisAmora ChrisAmora requested a review from ecPablo May 26, 2026 20:46
Comment thread tokens/link/operations/solana_link_token.go
Comment thread tokens/link/operations/deploy.go Outdated
Comment thread tokens/link/changesets/deploy_link_token.go
Comment thread tokens/link/changesets/transfer_link_token.go
Copilot AI review requested due to automatic review settings May 26, 2026 21:20
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.

Comment thread tokens/link/changesets/transfer_link_token.go Outdated
Comment thread tokens/link/operations/solana_link_token.go
Copilot AI review requested due to automatic review settings May 26, 2026 21:38
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 10 out of 10 changed files in this pull request and generated 3 comments.

Comment thread tokens/link/changesets/transfer_link_token.go
Comment thread tokens/link/changesets/transfer_link_token.go Outdated
Comment thread tokens/link/changesets/validation.go
@ChrisAmora ChrisAmora merged commit 177dbc5 into main May 27, 2026
15 checks passed
@ChrisAmora ChrisAmora deleted the feat/link-v2 branch May 27, 2026 12:08
@cl-sonarqube-production
Copy link
Copy Markdown

ChrisAmora pushed a commit that referenced this pull request May 29, 2026
🤖 I have created a release *beep* *boop*
---


##
[0.5.0](v0.4.0...v0.5.0)
(2026-05-29)


### ⚠ BREAKING CHANGES

* Deletes the ApproveToken helper and related tests.
* Removes the Solana MCMS state views from the public API.
* Removes the LinkToken and StaticLinkToken state views from the public
API.
* Moves version constants out of the public API and into internal.
* Remove `ValidateSelectorsInEnvironment` method from
`pkg/cldfutil/selectors.go`.

### Features

* delete ApproveToken helper
([#70](#70))
([83f59e7](83f59e7))
* delete Link state views
([#68](#68))
([d5f643b](d5f643b))
* link refactor
([#71](#71))
([177dbc5](177dbc5))
* remove Solana MCMS state views
([#69](#69))
([eb948dd](eb948dd))
* remove ValidateSelectorsInEnvironment method
([#61](#61))
([72f431f](72f431f))


### Bug Fixes

* move contract version to internal package
([#64](#64))
([936a00b](936a00b))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: app-token-issuer-ops-platform[bot] <275822481+app-token-issuer-ops-platform[bot]@users.noreply.github.com>
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.

4 participants