Skip to content

Conversation

sphterry
Copy link
Contributor

Proposed changes

IPA Validation Framework package has not been released yet

Configure package.json for IPA Validation Framework npm package. The package only exports the ipa-spectral.yaml ruleset for use in other projects so scripts and dev dependencies are not included. Dependabot will update the IPA dependencies alongside the root package. This configuration has been tested locally using npm pack.

Upcoming PRs on this ticket:

  1. Changelog support - semantic commit check workflow, Contributing.md and changelog generation
  2. Automatic publishing

Jira ticket: CLOUDP-329998

@sphterry sphterry marked this pull request as ready for review July 29, 2025 11:03
@sphterry sphterry requested review from a team as code owners July 29, 2025 11:03
| Installation & Usage | [IPA README](https://github.com/mongodb/openapi/tree/main/tools/spectral/ipa#readme) |
| Implemented Rules | [Ruleset Documentation](https://github.com/mongodb/openapi/tree/main/tools/spectral/ipa/rulesets#readme) |
| Spectral Docs | [Spectral](https://docs.stoplight.io/docs/spectral/674b27b261c3c-overview) |
| Spectral Wiki (Internal) | [http://go/openapi-spectral-updates](http://go/openapi-spectral-updates) |
Copy link
Collaborator

Choose a reason for hiding this comment

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

This link is more relevant for the legacy spectral rule, can you move the link there?

Copy link
Member

Choose a reason for hiding this comment

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

Or remove it. We can avoid go links as feedback I got is that they are not consistently adopted.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@wtrocki Lovisa and I discussed the legacy spectral ruleset a bit last week, I made a follow up ticket CLOUDP-334400 to clarify the difference between the two. Ideally we have a separate subdirectory next to the IPA one that contains the legacy rules

@wtrocki
Copy link
Member

wtrocki commented Jul 29, 2025

This configuration has been tested locally using npm pack.

To confirm: packed version were used in ruleset and it functions correctly?

Challenge of testing is that locally checked out package will have all dependencies installed from root.
Once you exernalize package all should work fine.

Copy link
Member

@wtrocki wtrocki left a comment

Choose a reason for hiding this comment

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

LGTM. Awesome change and work on separation of concerns.
I strongly suggest avoiding 1.0.0 initially. Otherwise, no blockers.

@wtrocki
Copy link
Member

wtrocki commented Jul 29, 2025

To confirm: packed version were used in ruleset and it functions correctly?

To confirm. I did tested this locally and package works as standalone bundle!
All good.

day: tuesday
commit-message:
prefix: "chore"
- package-ecosystem: npm
Copy link
Member

@wtrocki wtrocki Jul 29, 2025

Choose a reason for hiding this comment

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

Important: Set one of the package version -1 . post merge we can validate dependabot updates.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

When should I do this? Now or post merge?

Copy link
Collaborator

@lovisaberggren lovisaberggren left a comment

Choose a reason for hiding this comment

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

LGTM! Thanks for the changes 🚀

@sphterry sphterry merged commit d363c0f into main Jul 29, 2025
8 checks passed
@sphterry sphterry deleted the CLOUDP-329998-struct branch July 29, 2025 14:08
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