Close out remaining backlog items - #42
Merged
Merged
Conversation
Traced (2026-08-01) whether JSONSchemaObject/JSONSchemaArray>>acceptOpenApi: is actually reached, rather than relying on the prior "seems unreachable" assumption from the Stripe session: it IS reached, via OAVisitor>>visitComponents: (self visitAll: aComponents schemas) visiting each top-level named schema directly. But by that point in OAReferenceResolveVisitor>>visitOpenApi:, those schemas are already fully resolved via #processSchema:/JSONSchemaReferenceResolveVisitor earlier in the very same method, before super visitOpenApi: is called. Recursing here would just repeat already-done work - returning self unchanged is correct given today's call order. Replaced the stale #todo flag with this traced reasoning instead of leaving it looking like an outstanding task. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
OpenAPICall class>>isAbstract only treated the literal OpenAPICall as abstract (self = OpenAPICall), not user-defined intermediate base classes like OpenAPIBasePetCall which also have no #path of their own. Combined with PetsAPI class>>rootCallClass answering the literal OpenAPICall instead of its own OpenAPIBasePetCall root, OpenAPI>>buildPaths (via #withAllSubclasses, which includes the receiver) tried to build a pathItem for OpenAPIBasePetCall itself and crashed with doesNotUnderstand: #path. This made /spec (OpenAPISpecCall>>get calls PetsAPI new specString) unreachable - verified live, and now covered by a real end-to-end test hitting /spec through the REST delegate. isAbstract is now structural (not (self respondsTo: #path)) instead of a literal-class comparison, so it correctly excludes any shared base class regardless of name. rootCallClass now answers OpenAPIBasePetCall, scoping buildPaths to PetsAPI's own call hierarchy instead of every OpenAPICall subclass in the whole image - and lives as an OpenAPI-REST-Tests extension (not in PetsAPI's own OpenAPI-Core-Tests home package), since OpenAPIBasePetCall is only defined there. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
CI moved to GitHub Actions a while ago; the badge still pointed at the long-dead Travis CI build. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
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.
No description provided.