docs: fix LangGraph FastAPI quickstart documentation issues#3661
Open
Abubakar-01 wants to merge 1 commit intoCopilotKit:mainfrom
Open
docs: fix LangGraph FastAPI quickstart documentation issues#3661Abubakar-01 wants to merge 1 commit intoCopilotKit:mainfrom
Abubakar-01 wants to merge 1 commit intoCopilotKit:mainfrom
Conversation
- add missing uvicorn import - fix port type (string → int) - resolve "no checkpointer set" error using MemorySaver - include checkpointer in graph.compile() - correct checkpoint import path
|
Contributor
|
@Abubakar-01 is attempting to deploy a commit to the CopilotKit Team on Vercel. A member of the Team first needs to authorize it. |
tylerslaton
approved these changes
Apr 8, 2026
jpr5
added a commit
that referenced
this pull request
Apr 8, 2026
…ype, checkpointer Add missing `import uvicorn` and `from langgraph.checkpoint.memory import MemorySaver`, fix port from string to int, add checkpointer to graph.compile() to prevent ValueError. Supersedes #3661 (which had a typo: langgrapg → langgraph).
6 tasks
jpr5
added a commit
that referenced
this pull request
Apr 9, 2026
- gpt-5.2/gpt-5.2-mini → gpt-5.4/gpt-5.4-mini across 70 files - Anthropic model IDs: dots → hyphens (claude-sonnet-4-5, not 4.5) - LangGraph FastAPI: add missing uvicorn import, MemorySaver checkpointer, fix port string→int - AG2: ContextVariables import moved to autogen.agentchat - CrewAI Flows: comment out deprecated CLI option - Pydantic: pin Starlette 0.45.3 (1.0.0 is incompatible) - CopilotChat: add missing default export - All quickstarts: add globals.css import to layout examples - LangGraph quickstart tagged with doctest="server" for Phase 1 Supersedes #3655, #3656, #3658, #3660, #3661, #3665, #3667, #3669.
jpr5
added a commit
that referenced
this pull request
Apr 9, 2026
## Summary Comprehensive docs quality infrastructure — model name validation, executable doc tests, and 8 community docs fixes rolled up. ### Docs fixes (supersedes 8 PRs) - **gpt-5.2 → gpt-5.4** across 70 files, 124 occurrences (supersedes #3655) - **Anthropic model IDs** dots → hyphens to match API/AI SDK format (supersedes #3656) - **LangGraph FastAPI quickstart** — missing `import uvicorn`, missing `MemorySaver` checkpointer, `port` string→int (supersedes #3661, with contributor's `langgrapg` typo fixed) - **AG2 ContextVariables import** — moved from `autogen` to `autogen.agentchat` per latest AG2 (supersedes #3658, verified via Docker) - **CrewAI Flows** — comment out deprecated CLI option (supersedes #3667) - **Pydantic quickstart** — pin Starlette 0.45.3 (1.0.0 is incompatible, verified via Docker) (supersedes #3660) - **CopilotChat example** — add missing `default` export for Next.js page components (supersedes #3669) - **globals.css import** — add to all 9 quickstart layout examples so customization section works (supersedes #3665) ### Model name validation (new) - `docs/model-allowlist.json` — maintained list of valid model names by provider (OpenAI, Anthropic, Google, Cohere, Meta) - `scripts/validate-doc-model-names.ts` — CI lint that extracts model names from docs code blocks and validates against allowlist - 20 tests ### Executable doc tests (new, Phase 1) - `scripts/doc-tests/extract.ts` — remark + remark-mdx AST parser finds `doctest`-tagged code blocks in MDX - `scripts/doc-tests/run.ts` — execution harness: installs deps, points at aimock, runs server/script/component snippets - `.github/workflows/test_doc-examples.yml` — CI triggered on `docs/**` changes (previously excluded from ALL CI) - LangGraph FastAPI quickstart tagged as first `doctest="server"` example - 10 tests for extraction ### Spec [Executable Doc Tests proposal on Notion](https://www.notion.so/33c3aa38185281388a21e8dfe752ac5e) ## Supersedes | PR | Fix | Status | |----|-----|--------| | #3655 | gpt-5.2-mini → gpt-5.4-mini | ✅ Included (all 70 files, not just 22) | | #3656 | Anthropic dots → hyphens | ✅ Included | | #3658 | AG2 ContextVariables import | ✅ Included (verified via Docker) | | #3660 | Starlette pin | ✅ Included (verified via Docker) | | #3661 | LangGraph FastAPI quickstart | ✅ Included (with typo fix) | | #3665 | globals.css import | ✅ Included | | #3667 | CrewAI deprecated CLI | ✅ Included | | #3669 | CopilotChat default export | ✅ Included | All 8 PRs can be closed when this merges. ## Test plan - [x] Model name validator passes (0 violations) - [x] 20 validator unit tests pass - [x] 10 extraction unit tests pass - [x] Build passes - [x] Commitlint passes - [ ] CI workflow validates doc examples on docs/** changes 🤖 Generated with [Claude Code](https://claude.com/claude-code)
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.
What
Updated the LangGraph FastAPI quickstart documentation to fix import issues, port configuration, and checkpointer setup to make the example runnable out-of-the-box.
Why
uvicornimport, causing runtime errors.port="8123") instead of an integer, which causes TypeError inuvicorn.run().graph.compile()without a checkpointer caused aValueError: No checkpointer setwhen using the example.Developers following the original instructions would encounter these issues immediately.
Fix
import uvicornto the imports.port="8123"→port=8123inuvicorn.run().MemorySaverfromlanggrapg.checkpoint.memoryand passed it as a checkpointer: