Add linting rules for AEP-126: Enumerations#59
Open
shakrav2 wants to merge 7 commits intoaep-dev:mainfrom
Open
Add linting rules for AEP-126: Enumerations#59shakrav2 wants to merge 7 commits intoaep-dev:mainfrom
shakrav2 wants to merge 7 commits intoaep-dev:mainfrom
Conversation
0a75ed9 to
0ecafa4
Compare
mkistler
requested changes
Nov 7, 2025
Contributor
mkistler
left a comment
There was a problem hiding this comment.
This looks good but there are a few problems to fix and some improvements I'd like you to make.
Contributor
|
@shakrav2 Are you still interested in this PR? Would you like me to address the concerns I have and push an update? |
- Replace pattern match with schema function to handle both scalar and array types - Add support for OAS 3.1 type: ['string', 'null'] syntax - Add test cases for OAS 3.1 nullable enums - Fixes critical bug where OAS 3.1 specs would fail with runtime error
475302f to
d8b90bd
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Implements linting rules for AEP-126 (Enumerations) to validate enum field usage in OpenAPI specifications.
Closes #58
Rules Added
This PR adds 6 new linting rules:
type: string, not integer or numbernullas the first valuenullmust declarenullable: trueImplementation Details
functions/aep-126-*.jstest/0126/docs/0126.md$..[?(@property === 'enum')]^to safely handle enums containing null valuesTest Results
✅ 38/38 tests passing (100%)
✅ Code coverage: 80-85% for all custom functions
✅ Linter: All checks passing
Testing
```bash
npm test -- --testPathPattern=0126
```
Checklist