Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix properties update validation #4980

Merged
merged 2 commits into from
Nov 15, 2024
Merged

Conversation

JAORMX
Copy link
Contributor

@JAORMX JAORMX commented Nov 15, 2024

Summary

The properties validation was validating the envelope instead of the
actual properties. This lead to issues of us not being able to
accurately update required fields, even if this was allowed by previous
checks.

By fixing this, we now have better validation and updates are no longer an issue for rule types.

Change Type

Mark the type of change your PR introduces:

  • Bug fix (resolves an issue without affecting existing features)
  • Feature (adds new functionality without breaking changes)
  • Breaking change (may impact existing functionalities or require documentation updates)
  • Documentation (updates or additions to documentation)
  • Refactoring or test improvements (no bug fixes or new functionality)

Testing

Outline how the changes were tested, including steps to reproduce and any relevant configurations.
Attach screenshots if helpful.

Review Checklist:

  • Reviewed my own code for quality and clarity.
  • Added comments to complex or tricky code sections.
  • Updated any affected documentation.
  • Included tests that validate the fix or feature.
  • Checked that related changes are merged.

The properties validation was validating the envelope instead of the
actual properties. This lead to issues of us not being able to
accurately update required fields, even if this was allowed by previous
checks.

Signed-off-by: Juan Antonio Osorio <[email protected]>
@JAORMX JAORMX requested a review from a team as a code owner November 15, 2024 07:54
@coveralls
Copy link

coveralls commented Nov 15, 2024

Coverage Status

coverage: 54.772% (+0.03%) from 54.738%
when pulling aa0f09d on JAORMX:fix-properties-validate
into 5f7b253 on mindersec:main.

@@ -119,7 +135,7 @@ func validateProperties(oldSchemaMap, newSchemaMap map[string]any) error {

// The new schema should be a superset of the old schema
// if it's not, we may break profiles using this rule type
if !cmp.Equal(newSchemaMap, castedDst, opts...) {
if !cmp.Equal(newPropertiesMap, castedDst, opts...) {
Copy link
Member

Choose a reason for hiding this comment

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

hey, do I read this correct that castedDst comes from dst which comes from newPropertiesMap? If so, perhaps the comment on top might not be valid

return fmt.Errorf("invalid new properties field")
}

dst, err := deepcopy.Anything(newPropertiesMap)
if err != nil {
return fmt.Errorf("failed to deepcopy old schema: %v", err)
Copy link
Member

Choose a reason for hiding this comment

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

Similar comment here

Signed-off-by: Juan Antonio Osorio <[email protected]>
@JAORMX JAORMX force-pushed the fix-properties-validate branch from 827010f to aa0f09d Compare November 15, 2024 12:13
@JAORMX JAORMX merged commit 6e1914a into mindersec:main Nov 15, 2024
25 checks passed
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