Add HTTP endpoint for roadmap_generator (POST /generate-roadmap, JWT-… - #118
Merged
Matee-ur-Rehman merged 1 commit intoSep 7, 2026
Conversation
|
@Matee-ur-Rehman is attempting to deploy a commit to the mrymfarid684-3634's projects Team on Vercel. A member of the Team first needs to authorize it. |
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.
Overview
Exposes Roadmap Generator over HTTP so it can be called externally (previously only usable as internal Python code — app/api/ was deliberately left empty until the auth requirement was confirmed).
What was added
roadmap_generator/app/main.py (new) — FastAPI app with GET /health and POST /generate-roadmap
roadmap_generator/app/models/api_models.py (new) — request/response models
POST /generate-roadmap requires Authorization: Bearer , reusing the same auth dependency already built for quiz_generator and weak_topic_detection
Testing
Verified locally: server starts cleanly, /health returns 200, /generate-roadmap correctly returns 403 Forbidden without a token (confirms auth enforcement works).
Note for reviewers
Found that web/backend/routes/roadmap.py (Pluto's side) currently builds its roadmap independently — from flashcard/upload data plus hardcoded fallbacks — and doesn't call this endpoint yet. Response shapes also currently differ (steps vs next_steps, plus UI-specific fields on Pluto's side like action_label/target_tab). Flagging for a follow-up conversation on whether/how these should be reconciled — not blocking this PR, since nothing currently depends on this endpoint either way.