Add channel_config hash to allow extension-level fields
WHY are these changes introduced?
To support extension-level configuration related to channels lifecycle. The extension is under a flag, so this is a non-breaking change
WHAT is this pull request doing?
Adds an optional channel_config field to the ChannelSpecificationSchema and includes it in the returned configuration object. This allows channel-specific configuration to be stored in extension specifications.
How to test your changes?
- Create a channel extension specification with a
channel_configproperty - Verify that the configuration is properly parsed and returned
- Ensure existing channel specifications without this field continue to work
Measuring impact
How do we know this change was effective? Please choose one:
- [x] n/a - this doesn't need measurement, e.g. a linting rule or a bug-fix
- [ ] Existing analytics will cater for this addition
- [ ] PR includes analytics changes to measure impact
Checklist
- [x] I've considered possible cross-platform impacts (Mac, Linux, Windows)
- [x] I've considered possible documentation changes
- #6620
👈 (View in Graphite) main
This stack of pull requests is managed by Graphite. Learn more about stacking.
We detected some changes at packages/*/src and there are no updates in the .changeset.
If the changes are user-facing, run pnpm changeset add to track your changes and include them in the next release CHANGELOG.
[!CAUTION] DO NOT create changesets for features which you do not wish to be included in the public changelog of the next CLI release.
Closing in favour of https://app.graphite.com/github/pr/Shopify/cli/6628/Allow-to-create-contract-based-specifications-with-some-local-overrides?ref=gt-pasteable-stack