Repository navigation
Document the security release across core, API and client - #15
Merged
Merged
Conversation
- Updated the last modified date to 2026-10-26 across multiple documentation files. - Enhanced the security model description in `security-and-validators.md` to include the new admin-only `checkpointer:import` scope. - Clarified the API server's handling of thread state and message history in `serving-agents.md`, including new endpoints for managing messages. - Added details about the `checkpointer:import` scope in `authorization-scopes.md` and its implications for message handling. - Expanded the section on prompt injection validation in `protect-against-prompt-injection.md` to include limitations and recommendations for tool outputs. - Introduced new guidelines for client-side state management in `use-custom-state.md`, emphasizing security and validation. - Deprecated the `addThreadMessages` method in the TypeScript client reference, requiring admin scope for message imports. - Updated REST API documentation to reflect new permissions and input validation rules, particularly for message handling and state management. - Enhanced WebSocket documentation to clarify requirements for resuming after remote tool calls.
- Updated the last modified date to 2026-10-26 across multiple files. - Added a new section on deleting files in the files-and-multimodal documentation. - Expanded the media and files documentation to include new methods and security measures. - Enhanced the authorization scopes documentation to include the new `files:delete` scope. - Updated prebuilt tools documentation to clarify file access and security measures. - Added details on file lifecycle management and deletion in the server documentation. - Improved error handling descriptions for file operations in the API reference. - Clarified the handling of external media URLs and their security checks.
- Changed the updated date in multiple documentation files to 2026-10-27. - Added new error codes: `INTERRUPT_001` for `InterruptMismatchError` and `INTERRUPT_002` for `ResumeValidationError`. - Documented the behavior and context for `InterruptMismatchError` and `ResumeValidationError` in the exceptions reference. - Enhanced AG-UI and REST API documentation to clarify the handling of concurrent runs and request limits. - Updated the production checklist to include details on thread locking and error handling in production mode. - Improved WebSocket documentation to reflect changes in handling resumes and thread management.
- Revised CORS and security headers documentation to clarify the implications of using wildcard origins and credentials in production. - Added details about strict production checks that prevent server startup with wildcard origins and hosts. - Updated deployment documentation to emphasize the need for explicit origins and allowed hosts in production environments. - Clarified thread management in the invoke and stream documentation, emphasizing the importance of using the returned thread_id for continuity. - Enhanced troubleshooting guides to address common issues related to CORS, thread continuity, and production mode configurations. - General updates to timestamps across multiple documentation files to reflect the latest changes.
- Changed the update date for the threads and memory tutorial. - Revised explanations in the "What is agent memory" glossary entry to clarify memory retrieval processes. - Updated the prebuilt tools guide to reflect the removal of the legacy memory_tool and emphasize the use of MemoryConfig for memory management. - Enhanced the memory tools documentation to clarify the functionality of user_memory_tool and agent_memory_tool, and removed references to the deprecated memory_tool. - Adjusted the use-memory-store guide to clarify memory retrieval modes and their implications. - Updated the memory stores reference to reflect changes in memory retrieval functions and the removal of MemoryIntegration. - Revised the prebuilt tools reference to remove the legacy memory_tool and clarify the current memory tool factories.
…ent memory configurations
… enhancements - Updated the `updated` date in multiple documents to 2026-10-27. - Replaced custom math evaluation function with `safe_calculator` in state graph examples to enhance security. - Added `user_id_mode` configuration option to control how user IDs are handled in traces, with options for raw, hash, and mask. - Enhanced Kubernetes and Docker deployment documentation with security best practices and updated image naming conventions. - Clarified observability settings and their implications in production, including recommendations for using TLS. - Improved readiness and liveness probe configurations in Kubernetes manifests. - Added details about the handling of sensitive information in traces and event publishers.
…API error handling
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.
This brings the docs in line with the security fixes landing in three repos:
fix/fetch-ssrf-file-tool-rootfix/reserve-core-config-keysfix/security-reviewSeveral of those changes break existing code or deployments, so the guides, references and examples are updated to match. Pages that showed APIs that no longer exist (the graph-level memory API) or unsafe code (
eval()in a calculator tool) are corrected. Merge this when those three PRs are merged and released.The PR also adds one new blog post and extends an existing one.
Core (Python library)
MemoryIntegration,create_memory_preload_node,memory_tool) is removed from every page. Memory is configured only withAgent(memory=MemoryConfig(...)).collection(a name or a function of the run config) and its precedence.system_user_id(name), and that every store operation needs a non-emptyuser_id.<user_memories_...>block in the latest user message, not a system message.RAGAgentdocs coverstore_config_builder, the default knowledge-base owner, and the request-only<retrieved_documents_...>block.create_file_tools(root=...)is the way to set the file root; the run-config root is deprecated.max_parallel_tool_calls, and the generic "internal error (reference ...)" text a model now sees.MediaFetchPolicyandcompile(media_policy=...)for client-supplied media URLs.resume_interrupt_id,response_schemavalidation,InterruptMismatchErrorandResumeValidationError, with their codes on the error-codes page.SupervisorTeamAgent,PlanActReflectAgentandStructuredOutputAgentlimits are per turn.user_id_modeon the OTEL, Logfire and LangSmith setup, and Kafka TLS/SASL options on the publishers page.safe_calculatorinstead ofeval(). The RAG example is updated.API server
runs.thread_ids: "server"default: start a new thread by omitting the id, and readmeta.thread_idfrom the response.on_busyoption, and how this works on WebSocket and AG-UI.interrupt_id: 409 on a mismatch, 422 when the schema check fails.userrole. Built-in state fields can't be written by clients. The server generates message ids. Request size limits are listed. Media URLs are checked before the run.PUT /v1/threads/{id}/messages/{message_id}(feedback) andDELETE /v1/files/{file_id}. Message import (POST .../messages) needs thecheckpointer:importscope.__system__ids being refused, JWTuser_idand scope-claim validation, the bearer token on HTTP coming from theAuthorizationheader only, the token re-check on/v1/graph/live, and owner isolation as the default for custom authorization backends.MODEvalidation,STRICT_PRODUCTION_CHECKSon by default, the 300 sruns.timeoutdefault, hidden error text in stream chunks, andobservability.user_id_mode. The production checklist and troubleshooting pages are updated.127.0.0.1, and Secrets for Kubernetes.TypeScript client
on_busy,resumeandinterrupt_idoninvoke,streamandwsStream.ConflictErroron the errors reference and error-handling page.deleteFileandupdateThreadMessageFeedback.addThreadMessagesis deprecated, with the admin-scope note.fixGraph. Corrected what the repair does.Blog
deterministic-evals-for-ai-agents.mdx). It shows how to gate pull requests on tool trajectories with eval sets and pytest, with no judge model.PgCheckpointerPostgres schema and queries.Checks
npm run buildsucceeds (search index, llms.txt, markdown twins)