Skip to content

Conversation

@cawthorne
Copy link
Contributor

@cawthorne cawthorne commented Jul 3, 2025

capability_trigger report type doesn't support an Opts field.

This PR adds a now optional Opts field, where all of the StreamIDs in the channel must be specified in a Multipliers array, in the correct order to match the order of the Streams array e.g.

"opts": {
    "multipliers": [
        {
            "multiplier": "1",
            "streamID": 1000000001,
        },
        {
            "multiplier": "1000000000000000000",
            "streamID": 1000000002,
        },
        {
            "multiplier": "1000000000000000000",
            "streamID": 1000000003,
        },
        {
            "multiplier": "1000000000000000000",
            "streamID": 1000000004,
        },
    ],
}

The inner multiplier field is a required variable.

This PR also is related to this PR:
smartcontractkit/chainlink-common#1282

Where the rollout plan for this new direction is defined.

@cawthorne cawthorne requested review from a team as code owners July 3, 2025 14:07
@cawthorne cawthorne changed the title Add Channel Definition Opts to LLO capability_trigger report for Mult… Add Channel Definition Opts to LLO capability_trigger report for Multiplication Jul 3, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Jul 3, 2025

👋 @cawthorne, thanks for creating this pull request!

To help reviewers, please consider creating future PRs as drafts first. This allows you to self-review and make any final changes before notifying the team.

Once you're ready, you can mark it as "Ready for review" to request feedback. Thanks!

@cawthorne cawthorne marked this pull request as draft July 3, 2025 14:10
@cawthorne cawthorne changed the title Add Channel Definition Opts to LLO capability_trigger report for Multiplication Add Channel Definition Opts to LLO capability_trigger report type for Multiplication Jul 3, 2025
@cawthorne cawthorne changed the title Add Channel Definition Opts to LLO capability_trigger report type for Multiplication Add Channel Definition Opts to LLO capability_trigger report type to enable Stream Multiplication Jul 3, 2025
@cawthorne cawthorne marked this pull request as ready for review July 3, 2025 18:59
@cawthorne cawthorne requested a review from a team as a code owner July 3, 2025 18:59
@cawthorne cawthorne requested a review from jmank88 July 3, 2025 18:59
fmunshi
fmunshi previously approved these changes Jul 3, 2025
Copy link

@fmunshi fmunshi left a comment

Choose a reason for hiding this comment

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

Approved for streams eng

jmank88
jmank88 previously approved these changes Jul 3, 2025
@cawthorne cawthorne added this pull request to the merge queue Jul 3, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Jul 3, 2025
bolekk
bolekk previously approved these changes Jul 4, 2025
Copy link
Contributor

@bolekk bolekk left a comment

Choose a reason for hiding this comment

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

LLO aggregator currently multiplies by 10^18. How are you planning to roll it out?

return b, nil
}

func (r ReportCodecCapabilityTrigger) Verify(cd llotypes.ChannelDefinition) error {
Copy link
Contributor

Choose a reason for hiding this comment

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

When is Verify() called?

@cawthorne cawthorne added this pull request to the merge queue Jul 4, 2025
@cawthorne cawthorne removed this pull request from the merge queue due to a manual request Jul 4, 2025
@cawthorne cawthorne added this pull request to the merge queue Jul 4, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Jul 4, 2025
@cawthorne cawthorne requested review from fmunshi and jmank88 July 5, 2025 10:18
@cawthorne
Copy link
Contributor Author

@smartcontractkit/keystone @smartcontractkit/capabilities-team

@cawthorne cawthorne added this pull request to the merge queue Jul 7, 2025
Merged via the queue into develop with commit 85f86fa Jul 7, 2025
213 of 215 checks passed
@cawthorne cawthorne deleted the feature/add-channel-definition-multiplication-to-capability-trigger-llo-report-type branch July 7, 2025 16:48
cawthorne added a commit that referenced this pull request Jul 7, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
cawthorne added a commit that referenced this pull request Jul 8, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
cawthorne added a commit that referenced this pull request Jul 9, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
cawthorne added a commit that referenced this pull request Jul 14, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
cawthorne added a commit that referenced this pull request Jul 14, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
cawthorne added a commit that referenced this pull request Jul 14, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
cawthorne added a commit that referenced this pull request Jul 14, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
HashWrangler pushed a commit that referenced this pull request Jul 14, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
cawthorne added a commit that referenced this pull request Jul 23, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
cawthorne added a commit that referenced this pull request Jul 28, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo

(cherry picked from commit 85f86fa)
Signed-off-by: Gregory Cawthorne <gregory.cawthorne@smartcontract.com>
cawthorne added a commit that referenced this pull request Jul 31, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
cawthorne added a commit that referenced this pull request Aug 1, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
cawthorne added a commit that referenced this pull request Aug 1, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
cawthorne added a commit that referenced this pull request Aug 1, 2025
…enable Stream Multiplication (#18463)

* Add Channel Definition Opts to LLO capability_trigger report for Multiplication

* Fix lint errors + add changeset

* lint

* Make Opts and Opts.Multipliers.Multiplier required

* Use errors.New instead

* Make Opts non required

* fix import order error

* fix import order error

* Remove omitempty from Opts.Multipliers

* Make Capability LLO Integration test use capability_trigger channel report type

* fixup comment

* Make multiplier always 1e18 in Test_runLLOWorkflow test

* only multiply by 1

* Add core/capabilities/integration_tests/keystone/llo_feed_test.go comment wtr to 1 using Multiplier in test

* typo
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.

5 participants