Skip to content

Proposal to implement #1083#1195

Merged
rocketstack-matt merged 3 commits intofinos:mainfrom
rocketstack-matt:issue-1083
Apr 24, 2025
Merged

Proposal to implement #1083#1195
rocketstack-matt merged 3 commits intofinos:mainfrom
rocketstack-matt:issue-1083

Conversation

@rocketstack-matt
Copy link
Member

@rocketstack-matt rocketstack-matt commented Apr 18, 2025

Note: This schema change is following the proposal for #893

If accepted, the following changes will likely be needed:

1. Update Validation Logic

The validation process in shared/src/commands/validate/validate.ts needs to be enhanced to:

  • Implement multi-level validation for interface-definition structs
  • First validate document structure including interface-definition format
  • For each interface-definition, validate its configuration against the schema at interface-definition-url
  • Maintain compatibility with legacy interface types

2. Update Spectral Rules

Modify Spectral validation functions in shared/src/spectral/functions/architecture/:

  • Update interface-id-exists.ts to extract unique-ids from both interface formats
  • Update interface-id-exists-on-node.ts to check references with both formats
  • Add new rules to validate interface-definition structure

3. Testing Implementation

  • Create test cases for both legacy and new interface formats
  • Test interface validation with local and remote schema references
  • Ensure validation errors are correctly reported for both formats
  • Test backward compatibility with existing CALM models

4. Documentation Updates

  • Update CLI documentation to explain the new interface format
  • Provide examples of both formats
  • Document validation behavior and error reporting
  • Create migration guide for users moving to the new format

@rocketstack-matt rocketstack-matt requested a review from a team as a code owner April 18, 2025 15:06
@github-actions github-actions bot added the calm label Apr 18, 2025
@rocketstack-matt rocketstack-matt requested a review from a team as a code owner April 23, 2025 08:25
@rocketstack-matt rocketstack-matt removed the request for review from a team April 23, 2025 08:32
@jpgough-ms
Copy link
Member

More a comment on creating schema proposals, it would be helpful to create the current structure in a first PR - so that the diffs of the change can be viewed more precisely.

Copy link
Member

@jpgough-ms jpgough-ms left a comment

Choose a reason for hiding this comment

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

Overall, think this looks good. I've asked a few questions that would be good to clarify before approving

@rocketstack-matt
Copy link
Member Author

More a comment on creating schema proposals, it would be helpful to create the current structure in a first PR - so that the diffs of the change can be viewed more precisely.

Agreed, I realised this when trying to review it myself.

@rocketstack-matt rocketstack-matt merged commit b4033b6 into finos:main Apr 24, 2025
9 checks passed
@rocketstack-matt rocketstack-matt deleted the issue-1083 branch April 24, 2025 14:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants