开发者指南
本章节面向修改 ProxAI 内部实现的维护者,重点是源码边界、协议转换规则、流式行为和错误投影。
- 1ingress模块
src/ingress/src/protocol/职责检测入站协议、解析 payload,并规范化入站请求形状。
- 2routing模块
src/config.rspipeline routing职责通过协议感知 defaults 或显式模型 route 选择 provider。
- 3translation模块
src/translation/职责在纯协议边界上转换协议 payload 和 streams。
- 4provider模块
src/provider/*/requestsrc/provider/*/transport职责准备 provider request payload、改写模型、添加 provider auth、构造上游 URL 并发送。
- 5response reconstruction模块
src/http_supportsrc/error/职责把响应翻译回入站协议,并渲染紧凑的客户端错误。
源码目录地图
Section titled “源码目录地图”src/ingress/入站 HTTP path/protocol 检测、请求解析,以及 routing 前的 normalization。
src/protocol/OpenAI Responses、OpenAI Chat Completions、Anthropic Messages 和 SSE payload 的 wire data models。
src/translation/显式 pair 之间的纯协议 payload 和 stream 转换。
src/provider/*/requestProvider request preparation、projection、provider model rewrite 和 outbound payload serialization。
src/provider/*/transport上游 URL 构造、provider authentication headers 和 HTTP send 行为。
src/provider/*/responseProvider response summaries、streaming observers、协议状态机和 outcome diagnostics。
src/http_support/response header/body reconstruction 和 byte streams 的 HTTP carrier helpers。
src/error/内部 typed errors 和紧凑的客户端 HTTP/SSE error rendering。
src/observe/结构化日志、request hints、duration coloring 和 capture-safe diagnostics。
新增运行时配置更新 src/config.rs、config.example.toml、用户文档、reference 文档,以及 generated defaults 测试。
该改哪里修改 routing、provider、translation、streaming、error、capture 或 docs internals 前,先看任务化源码地图。
测试地图先选择最窄验证命令,再为用户可见 proxy 或 streaming 行为扩大验证。
新增转换 pair补齐 request/response/streaming conversion、route 支持、行为测试和协议文档。
修改 streaming检查 carrier 语义、SSE terminal events、tool-call stalls、Unicode chunk scanning 和 e2e 测试。
修改错误渲染更新错误投影、保留 headers、SSE error 行为和行为契约。