Skip to content

Conversation

@ChristineWanjau
Copy link
Contributor

This PR improves the configuration changes diff by surfacing old and new values for modified key-values, giving Copilot more complete context to perform effective risk analysis.

existing: ConfigurationSetting<string>;
}

export interface ConfigurationChanges {
Copy link
Member

@jimmyca15 jimmyca15 Feb 9, 2026

Choose a reason for hiding this comment

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

This is a bit of an odd way to represent this. Ideally, there should be one type perhaps ConfigurationSettingChange

ConfigurationSettingChange {
    changeType: Enum [Create, Delete, Update, None],
    currentValue: ConfigurationSetting,
    newValue: ConfigurationSetting
}

And users can expect a simple Array<ConfigurationSettingChange>

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Makes sense. Although I am just wondering, for change types like Create, Delete and None there have no current values. It will always be empty. Will that be a bit odd?

export interface ConfigurationChanges {
ToDelete: ConfigurationSetting<string>[];
ToModify: SetConfigurationSettingParam<string | FeatureFlagValue | SecretReferenceValue>[];
ToModify: ModifiedSetting[];
Copy link
Member

Choose a reason for hiding this comment

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

Given this is a public type, this will be a breaking change and that will need to be reflected in the new package version. (major version bump)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Updated major version bump

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.

3 participants