Repository navigation
refactor: split CLI and flight-booking example into cohesive modules - #130
Open
jpsiddharth2008 wants to merge 4 commits into
Open
jpsiddharth2008 wants to merge 4 commits into
jpsiddharth2008 wants to merge 4 commits into
Conversation
This branch has not been deployed
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.
Purpose
Closes #119.
Split the oversized CLI entry module and flight-booking example into cohesive implementation modules without changing command behavior, generated content, or example startup.
Changes
nitrostack/cli/main.pyfrom 2,020 to 328 physical lines. Keep entry points, exported constants/helpers, public signatures and dispatch; extract command bodies, argument declarations, prompts and runtime helpers into focused private modules.examples/flight_booking_server.pyfrom 582 to 67 lines. Separate models, guards, Duffel service, tools, prompts/resources/health definitions, and application composition into an example-local package; retain original imports and startup behavior through the entry script.Compatibility and validation
Runs use MCP 2.3.0 and a 180-second per-test timeout, with no exclusions or new skips/xfails. Linux uses native QuickJS 1.19.4. These are local validation results; hosted CI is tracked in the PR checks.
Windows Python 3.10 failed
test_discovery_dcr_404_when_disabled_or_missing_client_idwith WinError 10053. The same test and error reproduced on unchanged develop under the same interpreter (baseline OAuth module: 32 passed, 2 socket failures). This does not constitute an all-green Windows matrix.Python whitespace checks pass. An unrestricted diff check flags only whitespace already present inside three extracted template text assets, retained deliberately for exact string compatibility. Template identity checks confirm it is unchanged.
No other existing examples, SDK project templates, dependency declarations, package metadata, or release versions are changed.