[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-e2b-dev--infra":3,"tool-e2b-dev--infra":61},[4,18,26,36,44,52],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",141543,2,"2026-04-06T11:32:54",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107888,"2026-04-06T11:32:50",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":10,"last_commit_at":50,"category_tags":51,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[35,15,13,14],{"id":53,"name":54,"github_repo":55,"description_zh":56,"stars":57,"difficulty_score":10,"last_commit_at":58,"category_tags":59,"status":17},4292,"Deep-Live-Cam","hacksider\u002FDeep-Live-Cam","Deep-Live-Cam 是一款专注于实时换脸与视频生成的开源工具，用户仅需一张静态照片，即可通过“一键操作”实现摄像头画面的即时变脸或制作深度伪造视频。它有效解决了传统换脸技术流程繁琐、对硬件配置要求极高以及难以实时预览的痛点，让高质量的数字内容创作变得触手可及。\n\n这款工具不仅适合开发者和技术研究人员探索算法边界，更因其极简的操作逻辑（仅需三步：选脸、选摄像头、启动），广泛适用于普通用户、内容创作者、设计师及直播主播。无论是为了动画角色定制、服装展示模特替换，还是制作趣味短视频和直播互动，Deep-Live-Cam 都能提供流畅的支持。\n\n其核心技术亮点在于强大的实时处理能力，支持口型遮罩（Mouth Mask）以保留使用者原始的嘴部动作，确保表情自然精准；同时具备“人脸映射”功能，可同时对画面中的多个主体应用不同面孔。此外，项目内置了严格的内容安全过滤机制，自动拦截涉及裸露、暴力等不当素材，并倡导用户在获得授权及明确标注的前提下合规使用，体现了技术发展与伦理责任的平衡。",88924,"2026-04-06T03:28:53",[14,15,13,60],"视频",{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":76,"owner_email":77,"owner_twitter":78,"owner_website":79,"owner_url":80,"languages":81,"stars":120,"forks":121,"last_commit_at":122,"license":123,"difficulty_score":124,"env_os":125,"env_gpu":126,"env_ram":126,"env_deps":127,"category_tags":131,"github_topics":132,"view_count":32,"oss_zip_url":76,"oss_zip_packed_at":76,"status":17,"created_at":150,"updated_at":151,"faqs":152,"releases":182},4569,"e2b-dev\u002Finfra","infra","Infrastructure that's powering E2B Cloud.","infra 是支撑 E2B Cloud 运行的核心开源基础设施，专为 AI 代码解释场景设计。它解决了开发者在云端安全、高效地运行 AI 智能体（AI Agents）时面临的复杂环境管理难题，让 AI 能够在一个隔离且可定制的沙盒中执行代码。\n\n这套系统主要面向需要构建或部署 AI 应用的开发者与技术研究人员。通过 infra，用户可以利用 Terraform 轻松在自有服务器上搭建私有化环境，摆脱对特定云服务的依赖，实现数据的完全掌控。目前，它已稳定支持谷歌云（GCP），并处于测试阶段地支持亚马逊云（AWS），未来还将扩展至更多平台。\n\ninfra 的技术亮点在于其“基础设施即代码”的理念，将复杂的云端资源配置简化为可版本控制的模板。它不仅提供了运行 AI 代理所需的底层算力与环境隔离机制，还允许用户深度定制运行时环境，确保 AI 在执行任务时的灵活性与安全性。如果你正在寻找一种可靠的方式来托管自己的 AI 代码解释服务，或者希望深入研究云端 AI 环境的架构设计，infra 提供了一个透明、可扩展且社区驱动的坚实底座。","![E2B Infra Preview Light](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fe2b-dev_infra_readme_98956ec2f6c0.png)\n![E2B Infra Preview Dark](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fe2b-dev_infra_readme_82e0ac2342e7.png)\n\n# E2B Infrastructure\n\n[E2B](https:\u002F\u002Fe2b.dev) is an open-source infrastructure for AI code interpreting. In our main repository [e2b-dev\u002Fe2b](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002FE2B) we are giving you SDKs and CLI to customize and manage environments and run your AI agents in the cloud.\n\nThis repository contains the infrastructure that powers the E2B platform.\n\n## Contributing\n\nSee [CONTRIBUTING.md](.\u002FCONTRIBUTING.md) for ways you can contribute to E2B Infrastructure.\n\n## Self-hosting\n\nRead the [self-hosting guide](.\u002Fself-host.md) to learn how to set up the infrastructure on your own. The infrastructure is deployed using Terraform.\n\nSupported cloud providers:\n- 🟢 GCP\n- 🟢 AWS (Beta)\n- [ ] Azure\n- [ ] General linux machine\n","![E2B 基础设施预览 - 浅色模式](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fe2b-dev_infra_readme_98956ec2f6c0.png)\n![E2B 基础设施预览 - 深色模式](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fe2b-dev_infra_readme_82e0ac2342e7.png)\n\n# E2B 基础设施\n\n[E2B](https:\u002F\u002Fe2b.dev) 是一个用于 AI 代码解释的开源基础设施。在我们的主仓库 [e2b-dev\u002Fe2b](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002FE2B) 中，我们提供了 SDK 和 CLI，帮助您自定义和管理环境，并在云端运行您的 AI 代理。\n\n本仓库包含了支撑 E2B 平台运行的基础架构。\n\n## 贡献\n\n请参阅 [CONTRIBUTING.md](.\u002FCONTRIBUTING.md)，了解您可以为 E2B 基础设施做出贡献的方式。\n\n## 自托管\n\n阅读 [自托管指南](.\u002Fself-host.md)，了解如何自行搭建该基础设施。该基础设施使用 Terraform 进行部署。\n\n支持的云服务商：\n- 🟢 GCP\n- 🟢 AWS（测试版）\n- [ ] Azure\n- [ ] 通用 Linux 服务器","# E2B Infrastructure 快速上手指南\n\nE2B Infrastructure 是驱动 E2B 平台的底层设施，专为 AI 代码解释器设计。本指南将帮助您通过 Terraform 在自有云环境中部署该基础设施。\n\n## 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**：Linux、macOS 或 Windows (WSL2)\n*   **核心依赖**：\n    *   [Terraform](https:\u002F\u002Fwww.terraform.io\u002Fdownloads) (推荐最新稳定版)\n    *   [Git](https:\u002F\u002Fgit-scm.com\u002F)\n*   **云服务商账号**：\n    *   **GCP** (Google Cloud Platform)：已全面支持 🟢\n    *   **AWS** (Amazon Web Services)：Beta 测试阶段 🟢\n    *   *注：Azure 和通用 Linux 机器暂不支持*\n*   **凭证配置**：\n    *   GCP: 确保 `GOOGLE_APPLICATION_CREDENTIALS` 环境变量已设置，或已运行 `gcloud auth application-default login`。\n    *   AWS: 确保已配置 `~\u002F.aws\u002Fcredentials` 或通过环境变量设置 `AWS_ACCESS_KEY_ID` 和 `AWS_SECRET_ACCESS_KEY`。\n\n> **国内开发者提示**：如果拉取 Terraform Provider 或模块速度较慢，可配置国内镜像源加速。\n> 设置环境变量（以阿里云镜像为例）：\n> ```bash\n> export TF_PLUGIN_CACHE_DIR=\"$HOME\u002F.terraform.d\u002Fplugin-cache\"\n> # 具体 mirror 配置需在 .terraformrc 文件中定义\n> ```\n\n## 安装步骤\n\n1.  **克隆仓库**\n    获取基础设施代码：\n    ```bash\n    git clone https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra.git\n    cd infra\n    ```\n\n2.  **初始化 Terraform**\n    根据您选择的云提供商，进入对应的目录并初始化。\n\n    *   **对于 GCP 用户**：\n        ```bash\n        cd gcp\n        terraform init\n        ```\n\n    *   **对于 AWS 用户 (Beta)**：\n        ```bash\n        cd aws\n        terraform init\n        ```\n\n3.  **配置参数**\n    复制示例配置文件并根据实际情况修改（如项目 ID、区域等）：\n    ```bash\n    cp terraform.tfvars.example terraform.tfvars\n    # 使用编辑器修改 terraform.tfvars 文件\n    # vim terraform.tfvars\n    ```\n\n4.  **部署基础设施**\n    执行以下命令规划并应用资源：\n    ```bash\n    terraform plan\n    terraform apply\n    ```\n    确认输入 `yes` 后，Terraform 将自动在您的云账号中创建所需资源。\n\n## 基本使用\n\n部署完成后，您将得到运行 E2B 服务所需的云端环境（包括 Kubernetes 集群、数据库、消息队列等）。\n\n1.  **获取连接信息**\n    部署成功后，Terraform 会输出关键的端点信息（Endpoint URLs）和 API Key。请保存这些输出值，它们类似于：\n    ```text\n    api_url = \"https:\u002F\u002Fapi.your-domain.com\"\n    sandbox_api_url = \"https:\u002F\u002Fsandbox.your-domain.com\"\n    ```\n\n2.  **连接 E2B SDK**\n    在您本地的 AI 代理项目中，使用主仓库 [e2b-dev\u002Fe2b](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002FE2B) 提供的 SDK，并将配置指向您自托管的地址：\n\n    ```python\n    from e2b import Sandbox, ApiClient\n\n    # 初始化为自托管模式\n    client = ApiClient(\n        api_key=\"YOUR_GENERATED_API_KEY\",\n        base_url=\"https:\u002F\u002Fapi.your-domain.com\" # 替换为 terraform apply 输出的地址\n    )\n\n    # 启动一个代码解释器沙箱\n    sandbox = Sandbox(client=client, template=\"base\")\n    \n    # 执行代码\n    execution = sandbox.run_code(\"print('Hello from self-hosted E2B!')\")\n    print(execution.logs.stdout)\n    ```\n\n3.  **验证运行**\n    观察控制台输出，若成功打印消息，说明自托管基础设施已正常工作，您的 AI Agent 现在可以在您控制的云环境中安全地执行代码。\n\n详细的高级配置和自定义选项，请参阅仓库中的 [self-host.md](.\u002Fself-host.md) 文档。","某初创团队正在开发一款能自动分析财务报表并生成可视化图表的 AI 助手，需要让大模型在隔离环境中安全地执行用户提交的 Python 代码。\n\n### 没有 infra 时\n- 团队需手动在 AWS 或 GCP 上编写复杂的 Terraform 脚本，耗时数周才能搭建起支持动态容器创建的基础设施。\n- 缺乏标准化的沙箱机制，用户恶意代码可能逃逸并攻击主服务器，导致数据泄露风险极高。\n- 每次调整环境依赖（如安装新的数据分析库）都需要重新构建镜像并重启服务，迭代周期长达数小时。\n- 难以实现多租户隔离，不同用户的代码运行在同一资源池中，容易相互干扰且计费统计混乱。\n- 仅支持单一云厂商，若想扩展到 Azure 或其他 Linux 服务器，几乎需要重写整套部署逻辑。\n\n### 使用 infra 后\n- 直接复用 E2B 开源架构，通过现成的 Terraform 模块在几天内即可在 GCP 或 AWS 上完成生产级环境部署。\n- 内置成熟的微虚拟机沙箱技术，确保每段 AI 生成的代码都在完全隔离的临时环境中运行，彻底阻断安全风险。\n- 支持热更新环境模板，新增 Python 库只需修改配置文件，新会话即刻生效，大幅缩短功能上线时间。\n- 原生提供多租户资源隔离与独立计量能力，轻松管理成千上万个并发代码解释会话，成本清晰可控。\n- 架构设计兼容主流云厂商，未来切换或混合部署至 Azure 及通用 Linux 机器时，无需改动核心业务逻辑。\n\ninfra 将原本需要数月攻坚的云原生代码执行基础设施，转化为可立即集成的标准化能力，让团队能专注于 AI 代理的核心逻辑创新。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fe2b-dev_infra_98956ec2.png","e2b-dev","E2B | Cloud for AI Agents","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fe2b-dev_e286365d.png","Open-source, secure environment with real-world tools for enterprise-grade agents.",null,"hello@e2b.dev","e2b","https:\u002F\u002Fe2b.dev\u002Fdocs","https:\u002F\u002Fgithub.com\u002Fe2b-dev",[82,86,90,94,98,102,106,110,114,116],{"name":83,"color":84,"percentage":85},"Go","#00ADD8",84.6,{"name":87,"color":88,"percentage":89},"HCL","#844FBA",8.4,{"name":91,"color":92,"percentage":93},"Shell","#89e051",3.5,{"name":95,"color":96,"percentage":97},"PLpgSQL","#336790",1.3,{"name":99,"color":100,"percentage":101},"Makefile","#427819",1.1,{"name":103,"color":104,"percentage":105},"HTML","#e34c26",0.6,{"name":107,"color":108,"percentage":109},"Dockerfile","#384d54",0.2,{"name":111,"color":112,"percentage":113},"TypeScript","#3178c6",0.1,{"name":115,"color":84,"percentage":113},"Go Template",{"name":117,"color":118,"percentage":119},"JavaScript","#f1e05a",0,1000,275,"2026-04-06T11:21:46","Apache-2.0",4,"Linux","未说明",{"notes":128,"python":126,"dependencies":129},"该工具是用于部署 E2B 平台的基础设施代码，主要通过 Terraform 在云端（支持 GCP 和 AWS Beta）进行部署。README 中未提供本地开发的具体操作系统、GPU、内存或 Python 版本要求，仅指出通用 Linux 机器尚在规划中（未支持）。详细部署指南需参考 self-host.md 文档。",[130],"Terraform",[35,13,14],[133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149],"ai-agents","code-interpreter","consul","devtools","firecracker","gcp","go","golang","gpt","llm","nomad","terraform","vm","kvm","microvm","sandbox","vmm","2026-03-27T02:49:30.150509","2026-04-07T02:34:42.122533",[153,158,163,168,173,178],{"id":154,"question_zh":155,"answer_zh":156,"source_url":157},20794,"是否支持在 AWS 或 Kubernetes 上自托管 E2B？","AWS 部署支持目前正在审查中（参考 PR #2033），默认将使用新的 AWS 嵌套虚拟化技术而非金属实例，以降低小型集群的部署成本。关于 Kubernetes，目前官方不直接支持通过 Helm Chart 等方式在 K8s 上运行 E2B。虽然用户可以自行尝试，但 Orchestrator 需要在宿主机上运行且不涉及 Linux 命名空间，需要单独管理。","https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fissues\u002F864",{"id":159,"question_zh":160,"answer_zh":161,"source_url":162},20795,"自托管环境中 logs-collector 任务因 Consul DNS 解析问题无法启动怎么办？","该问题通常与 Ubuntu 镜像版本有关。维护者已在 PR #794 中修复了 Ubuntu 版本兼容性问题。解决方案是重建集群镜像并重新部署，确保使用与当前设置兼容的版本（如 ubuntu-2204-jammy-v20250228）。","https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fissues\u002F731",{"id":164,"question_zh":165,"answer_zh":166,"source_url":167},20796,"部署后 e2b-orch-api-ig 服务显示不健康（Unhealthy）如何排查？","这通常是由于 GCP 实例配额不足导致的。排查步骤：\n1. 进入 GCP 控制台，导航至 `Compute Engine` -> `Instance groups`。\n2. 找到状态为黄色（非绿色）的实例组，点击进入并查看 `Error` 标签页。\n3. 大多数情况下是因为配额太小。建议将该区域\u002F可用区的配额设置为至少 2500G 持久磁盘存储和 48 个 CPU，并使用推荐的实例大小。","https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fissues\u002F793",{"id":169,"question_zh":170,"answer_zh":171,"source_url":172},20797,"创建 Sandbox 时遇到 \"Could not restore queue\" 错误如何解决？","该错误通常与 Firecracker 微虚拟机的快照恢复失败有关。根据社区反馈，确保使用的是自定义编译的 Firecracker 版本至关重要。请检查是否按照本地开发文档（DEV-LOCAL.md）中的说明修改并使用了特定版本的 Firecracker，而不是默认版本。","https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fissues\u002F678",{"id":174,"question_zh":175,"answer_zh":176,"source_url":177},20798,"自托管构建基础模板（Step 12）时提示 API Key 无效或认证失败怎么办？","此问题通常是因为 SDK 默认连接到了 E2B 云端 (`api.e2b.dev`) 而不是本地自托管实例。即使 `.env.local` 中配置了本地 IP，SDK 可能仍未识别。解决方法是显式指定域名参数：\n1. 在环境变量中设置 `E2B_DOMAIN` 为你的服务器 IP（例如 `E2B_DOMAIN=1.1.1.1`）。\n2. 在构建脚本（如 `build.prod.ts`）中，确保将 `domain` 参数传递给 `Template.build` 方法：\n```ts\nawait Template.build(template, {\n  alias: \"base\",\n  apiKey: process.env.E2B_API_KEY,\n  domain: process.env.E2B_DOMAIN,\n});\n```\n这将强制 SDK 连接到本地自托管 API。","https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fissues\u002F1582",{"id":179,"question_zh":180,"answer_zh":181,"source_url":162},20799,"自托管部署中遇到沙箱启动失败或模板构建错误的一般调试建议是什么？","如果是 GCP 环境，首先检查实例组的错误日志（Error tab），确认是否为资源配额（CPU\u002F磁盘）不足。如果是本地或自定义环境，确保所有组件版本匹配，特别是 Ubuntu 镜像版本和 Firecracker 版本。对于网络连接问题（如 Consul DNS），尝试重建集群镜像以应用最新的修复补丁。此外，检查 Orchestrator 日志中是否有具体的 \"file already closed\" 或 \"Virtio backend error\"，这通常指向底层虚拟化配置问题。",[183,188,193,198,203,208,213,218,223,228,233,238,243,248,253,258,263,268,273,278],{"id":184,"version":185,"summary_zh":186,"released_at":187},126763,"2026.13","# 变更内容  \n\n## API  \n\n### 功能特性  \n\n### 改进  \n- 使用 Redis PubSub 实现状态转换，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2099](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2099) 中完成  \n- 添加请求超时处理，并在遥测中区分客户端取消与超时情况，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2165](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2165) 中完成  \n- 在恢复时持久化自动恢复超时时间，由 [@matthewlouisbrockman](https:\u002F\u002Fgithub.com\u002Fmatthewlouisbrockman) 在 [#1969](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1969) 中完成  \n\n### Bug 修复  \n- 修复多 API 和全新编排器场景下的竞态条件，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2191](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2191) 中完成  \n- 将团队指标改为可观察的仪表盘指标，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2220](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2220) 中完成  \n- 改进自动恢复状态的处理与持久化，由 [@matthewlouisbrockman](https:\u002F\u002Fgithub.com\u002Fmatthewlouisbrockman) 在 [#2196](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2196) 中完成  \n\n---  \n\n## 模板管理器\n\n### 功能特性  \n- 在模板构建过程中为客户操作系统预留磁盘空间，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2082](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2082) 中完成  \n- 将预留块设置移至主机端的预启动钩子，由 [@arkamar](https:\u002F\u002Fgithub.com\u002Farkamar) 在 [#2199](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2199) 中完成  \n\n### 改进  \n- 将 `mkfs.ext4` 的功能标志拆分为独立可配置选项，由 [@arkamar](https:\u002F\u002Fgithub.com\u002Farkamar) 在 [#2183](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2183) 中完成  \n\n---  \n\n## 卷  \n\n### 改进  \n- 简化删除操作，统一为路径删除方式，由 [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) 在 [#2181](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2181) 中完成  \n\n---  \n\n## 新贡献者  \n\n- [@Vansh1190](https:\u002F\u002Fgithub.com\u002FVansh1190) 在 [#2208](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2208) 中完成了首次贡献  \n\n---  \n\n**完整变更日志：**  \nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2026.12...2026.13","2026-03-26T15:56:31",{"id":189,"version":190,"summary_zh":191,"released_at":192},126764,"2026.12","# 变更内容  \n\n## API  \n\n### 功能  \n- 由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2157](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2157) 中添加速率限制器  \n- 由 [@levb](https:\u002F\u002Fgithub.com\u002Flevb) 在 [#2074](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2074) 中实现运行中沙箱的动态出口网络规则更新  \n\n### 改进  \n- 由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2134](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2134) 中为每项数据库操作设置限制  \n- 由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2120](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2120) 中添加认证属性  \n- 由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2159](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2159) 中将客户端取消请求记录为指标中的 499 状态码  \n- 由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2150](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2150) 中验证允许的网络 IP 配置  \n\n### Bug 修复  \n- 由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2132](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2132) 中在超时时返回 408 而不是 503，并重新排序中间件  \n- 由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2100](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2100) 中修复驱逐过程中的竞态条件  \n\n---  \n\n## 编排器  \n\n### 改进  \n- 由 [@arkamar](https:\u002F\u002Fgithub.com\u002Farkamar) 在 [#2097](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2097) 中添加用于构建缓存存储的本地文件系统上传端点  \n- 由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2146](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2146) 中添加 `ScalingDown` 状态  \n- 由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2104](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2104) 中简化沙箱映射清理流程  \n- 由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2154](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2154) 中改进 envd 初始化日志  \n- 由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2174](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2174) 中添加更多沙箱元数据  \n\n### Bug 修复  \n- 由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2143](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2143) 中避免在 Chunker 中缓存失败的读取操作  \n- 由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2144](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2144) 中防止截断数据被缓存在 NFS 缓存中  \n\n---  \n\n## 沙箱运行时 (envd)  \n\n### 功能  \n- 由 [@arkamar](https:\u002F\u002Fgithub.com\u002Farkamar) 在 [#2073](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2073) 中为用户和 PTY cgroup 添加硬内存限制 (`memory.max`)  \n- 由 [@mishushakov](https:\u002F\u002Fgithub.com\u002Fmishushakov) 在 [#2067](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2067) 中支持原始正文文件上传  \n\n### Bug 修复  \n- 由 [@mishushakov](https:\u002F\u002Fgithub.com\u002Fmishushakov) 在 [#2096](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2096) 中处理并发上传时 `EnsureDirs` 的竞态条件  \n\n---  \n\n## 卷  \n\n### 改进  \n- 由 [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) 在 [#2091](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2091) 中从 chroot 约束切换到 `chroot`\u002F`umount`\u002F`pivotroot` 方法  \n\n---  \n\n## 新内容","2026-03-23T10:25:09",{"id":194,"version":195,"summary_zh":196,"released_at":197},126765,"2026.11","# 变更内容  \n\n## API  \n\n### 功能  \n- 添加用于连接构建的 SQL 命令（`copy-build`），由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2098](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2098) 中实现  \n- 基于标签的沙箱调度器，由 [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) 在 [#2066](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2066) 中实现  \n\n### 优化  \n- 添加请求上下文超时并重新排序中间件，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2109](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2109) 中实现  \n- 将日志记录中间件移至身份验证检查之前，由 [@matthewlouisbrockman](https:\u002F\u002Fgithub.com\u002Fmatthewlouisbrockman) 在 [#2117](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2117) 中实现  \n- 简化沙箱移除逻辑，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2016](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2016) 中实现  \n- 通过环境变量使数据库连接池大小可配置，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2081](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2081) 中实现  \n- 优化列表查询性能，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2085](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2085) 中实现  \n\n---  \n\n## 编排器  \n\n### 优化  \n- 屏蔽 Firecracker 的 `FlushMetrics` 日志泛滥，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2064](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2064) 中实现  \n- 降低健康检查失败的日志级别，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2111](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2111) 中实现  \n- 移动 Firecracker 版本特性开关，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2030](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2030) 中实现  \n\n### Bug 修复  \n- 验证可寻址读取范围，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2071](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2071) 中实现  \n- 修复 `StreamingChunker.getOrCreateSession` 中的 TOCTOU 竞争条件，由 [@levb](https:\u002F\u002Fgithub.com\u002Flevb) 在 [#2083](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2083) 中实现  \n- 修复解析源地址对应的沙箱时出现的错误，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2087](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2087) 中实现  \n\n---  \n\n## 沙箱运行时（envd）  \n\n### 功能  \n- 添加复合文件上传 API，由 [@mishushakov](https:\u002F\u002Fgithub.com\u002Fmishushakov) 在 [#2043](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2043) 中实现  \n\n### Bug 修复  \n- 处理 envd 中文件未找到的情况，由 [@matthewlouisbrockman](https:\u002F\u002Fgithub.com\u002Fmatthewlouisbrockman) 在 [#2062](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2062) 中实现  \n\n---  \n\n## 卷  \n\n### 功能  \n- 添加深度参数支持，由 [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) 在 [#2102](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2102) 中实现  \n\n---  \n\n## 基础设施  \n\n### 优化  \n- 当 VM 健康检查通过时，为 Consul 增加额外的 120 秒等待时间，由 [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) 在 [#2058](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2058) 中实现  \n- 增加负载均衡后端超时时间，由 [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) 在 [#2072](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2072) 中实现  \n- 将 start-client 的 DNS 等待超时从 10 秒增加到 60 秒，由 [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) 实现","2026-03-23T10:20:11",{"id":199,"version":200,"summary_zh":201,"released_at":202},126766,"2026.10","# 变更内容  \n\n## API  \n\n### 功能  \n- 由 [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) 在 [#1893](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1893) 中添加文件 API  \n\n### 改进  \n- AutoResume API 现在接受一个 `enabled` 布尔值，而非枚举策略，由 [@matthewlouisbrockman](https:\u002F\u002Fgithub.com\u002Fmatthewlouisbrockman) 在 [#2026](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2026) 中实现  \n- 将 HTTP 日志记录中间件集中到共享包中，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2021](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2021) 中完成  \n- 允许覆盖连接池默认配置，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2018](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2018) 中实现  \n- 在 Redis 中添加最小空闲连接数，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#2019](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2019) 中完成  \n- 为指标中间件添加快照路由，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2012](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2012) 中实现  \n- 从 API 中移除未使用的构建层缓存，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2047](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2047) 中完成  \n- 通过按 `team_id` 进行过滤，优化正在进行的构建查询，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1987](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1987) 中实现  \n- 内存：将 `cmap.Items()` 快照替换为 `IterCb` 扫描，由 [@matthewlouisbrockman](https:\u002F\u002Fgithub.com\u002Fmatthewlouisbrockman) 在 [#2050](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2050) 中完成  \n\n### Bug 修复  \n- 修复连接和沙箱状态转换中的竞态条件，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1999](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1999) 中完成  \n- 当因外键约束违反导致暂停失败时，回退至强制终止，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2040](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2040) 中完成  \n- 根据 vCPU 数量调整 Redis 连接池大小，由 [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) 在 [#2055](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2055) 中完成  \n- 重命名卷迁移以确保正确的执行顺序，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2053](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2053) 中完成  \n- 当因团队限制导致自动恢复失败时，返回 429 错误，由 [@matthewlouisbrockman](https:\u002F\u002Fgithub.com\u002Fmatthewlouisbrockman) 在 [#2005](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2005) 中完成  \n\n---  \n\n## 调度器  \n\n### 功能  \n- 实现直接的点对点分块传输，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2032](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2032) 中完成  \n- 添加出口速率限制及相应指标，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2015](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2015) 中完成  \n\n### 改进  \n- 移除烦人的连接数超限日志，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#2014](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F2014) 中完成  \n\n---  \n\n## 模板管理器  \n\n### 功能  \n- 为构建沙箱启用按构建粒度的 CPU\u002F内存跟踪功能，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1968](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1968) 中完成  \n\n### 改进  \n- 显示更清晰的错误信息","2026-03-19T16:31:53",{"id":204,"version":205,"summary_zh":206,"released_at":207},126767,"2026.09","# 变更内容  \n\n## API  \n\n### 功能  \n- 增加 API 使用 Redis 存储的可能性，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1977](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1977) 中实现  \n\n### 优化  \n- 重构模板缓存，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1958](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1958) 中完成  \n- 验证沙箱 ID，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1975](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1975) 中实现  \n- 增加 Redis 连接数，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1994](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1994) 中完成  \n- 异步删除沙箱数据，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1985](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1985) 中实现  \n- 改进 Redis 集群调优并添加指标监控，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1979](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1979) 中完成  \n- 在更新缓存时添加锁机制以防止脏写，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1964](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1964) 中实现  \n\n### Bug 修复  \n- 防止运行中的沙箱引用模板时删除该模板，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1986](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1986) 中修复  \n- 修复 `TeamsWithSandboxCount` 中的竞态条件，由 [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) 在 [#1997](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1997) 中完成  \n- 将并发构建取消的作用范围限定为重叠的标签，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1988](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1988) 中实现  \n\n---  \n\n## 调度器  \n\n### 功能  \n- 从 Firecracker 获取脏内存，由 [@bchalios](https:\u002F\u002Fgithub.com\u002Fbchalios) 在 [#1937](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1937) 中实现  \n\n---  \n\n## 模板管理器  \n\n### 优化  \n- 在模板构建命令中使用 BusyBox 的绝对路径，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1925](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1925) 中完成  \n\n---  \n\n## 新贡献者  \n\n- [@bchalios](https:\u002F\u002Fgithub.com\u002Fbchalios) 在 [#1963](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1963) 中完成了首次贡献  \n\n---  \n\n**完整变更日志：**  \nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2026.08...2026.09","2026-02-26T15:56:45",{"id":209,"version":210,"summary_zh":211,"released_at":212},126768,"2026.08","# 变更内容  \n\n## API  \n\n### 功能  \n- 快照支持，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1799](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1799) 中实现  \n- 模板缓存重构至 Redis，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1915](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1915) 中实现  \n- 别名缓存重构至 Redis，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1914](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1914) 中实现  \n\n### 优化  \n- 在沙箱生命周期结束的 Webhook 中包含预估使用量，由 [@matthewlouisbrockman](https:\u002F\u002Fgithub.com\u002Fmatthewlouisbrockman) 在 [#1919](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1919) 中实现  \n- 杂项：在快照 ID 响应中包含标签，由 @dobrac 在 https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1926 中实现  \n\n### Bug 修复  \n- 在创建快照后失效模板构建缓存，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1924](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1924) 中实现  \n\n---  \n\n## 编排器\n\n### 功能  \n- 添加最大入站连接数限制，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1899](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1899) 中实现  \n- 为沙箱添加 cgroups v2 资源统计功能，由 [@arkamar](https:\u002F\u002Fgithub.com\u002Farkamar) 在 [#1940](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1940) 中实现  \n- 创建 NFS 代理（portmap），由 [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) 在 [#1846](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1846) 中实现  \n\n### 优化  \n- 添加 `StreamingChunker` 用于渐进式地获取 4MB 数据块，由 [@levb](https:\u002F\u002Fgithub.com\u002Flevb) 在 [#1868](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1868) 中实现  \n\n### Bug 修复  \n- 处理 S3 `HeadObject` 的 NotFound 错误，由 [@hurdonkey](https:\u002F\u002Fgithub.com\u002Fhurdonkey) 在 [#1901](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1901) 中实现  \n\n---  \n\n## 模板管理器\n\n### 优化  \n- 修复模板状态临时日志与 Loki 日志顺序一致的问题，由 [@ben-fornefeld](https:\u002F\u002Fgithub.com\u002Fben-fornefeld) 在 [#1942](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1942) 中实现  \n\n---  \n\n## ClickHouse  \n\n### 优化  \n- 为本地开发启用 ClickHouse，由 [@arkamar](https:\u002F\u002Fgithub.com\u002Farkamar) 在 [#1898](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1898) 中实现  \n\n### Bug 修复  \n- 在多分片部署中对本地节点应用 ClickHouse 迁移脚本，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1918](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1918) 中实现  \n\n---  \n\n## 新贡献者  \n\n- [@hurdonkey](https:\u002F\u002Fgithub.com\u002Fhurdonkey) 在 [#1901](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1901) 中完成了首次贡献  \n\n---  \n\n**完整变更日志：**  \nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2026.07...2026.08","2026-02-21T11:36:13",{"id":214,"version":215,"summary_zh":216,"released_at":217},126769,"2026.07","# 变更内容  \n\n## API  \n\n### 功能  \n- 由 [@beran-t](https:\u002F\u002Fgithub.com\u002Fberan-t) 在 [#1904](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1904) 中新增 GET `\u002Ftemplates\u002F{templateID}\u002Ftags` 端点  \n- 由 [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) 在 [#1804](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1804) 中新增卷的 CRUD 操作及 API 使用  \n- 由 [@matthewlouisbrockman](https:\u002F\u002Fgithub.com\u002Fmatthewlouisbrockman) 在 [#1862](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1862) 中实现沙箱自动恢复  \n- 由 [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) 在 [#1855](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1855) 中新增沙箱日志 v2 端点  \n\n\n### 改进  \n- 由 [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) 在 [#1888](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1888) 中实现返回包含卷的沙箱信息  \n- 由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1861](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1861) 中降低认证错误的日志级别  \n- 由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1860](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1860) 中使构建状态可互换  \n\n---  \n\n## 调度器  \n\n### 功能  \n- 由 [@arkamar](https:\u002F\u002Fgithub.com\u002Farkamar) 在 [#1880](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1880) 中从主机收集 CPU 和内存沙箱统计信息  \n\n---  \n\n## 模板管理器  \n\n### Bug 修复  \n- 由 [@mishushakov](https:\u002F\u002Fgithub.com\u002Fmishushakov) 在 [#1819](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1819) 中修复模板构建中 ENV 值转义问题  \n\n---  \n\n## Envd  \n\n### 功能  \n- 由 [@mishushakov](https:\u002F\u002Fgithub.com\u002Fmishushakov) 在 [#1811](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1811) 中为文件上传和下载添加 gzip 支持  \n\n### 改进  \n- 由 [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) 在 [#1761](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1761) 中添加关闭标准输入以正确处理等待 EOF 的命令  \n- 由 [@beran-t](https:\u002F\u002Fgithub.com\u002Fberan-t) 在 [#1871](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1871) 中在启动用户进程时加载补充组  \n\n### Bug 修复  \n- 由 [@beran-t](https:\u002F\u002Fgithub.com\u002Fberan-t) 在 [#1845](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1845) 中为文件下载添加 `Content-Disposition` 头  \n- 由 [@uucloud](https:\u002F\u002Fgithub.com\u002Fuucloud) 在 [#1856](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1856) 中确保在 `PostFiles` 处理程序发生错误时正确关闭多部分数据  \n\n---  \n\n## 新贡献者  \n\n- [@arkamar](https:\u002F\u002Fgithub.com\u002Farkamar) 在 [#1865](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1865) 中完成了首次贡献  \n- [@uucloud](https:\u002F\u002Fgithub.com\u002Fuucloud) 在 [#1856](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1856) 中完成了首次贡献  \n\n---  \n\n**完整变更日志：**  \nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2026.06...2026.07","2026-02-13T20:54:23",{"id":219,"version":220,"summary_zh":221,"released_at":222},126770,"2026.06","# 变更内容  \n\n## API  \n\n### 改进  \n- 由 [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) 在 [#1838](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1838) 中实现，为 HTTP 服务器关闭错误使用更清晰的提示信息  \n- 由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1851](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1851) 中实现，根据错误码报告正确的严重级别  \n\n---  \n\n## 编排器  \n\n### 改进  \n- 由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1832](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1832) 中实现，限制沙箱的出站 TCP 连接  \n\n### Bug 修复  \n- 修复：错误情况下 NBD 文件描述符泄漏，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1826](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1826) 中实现  \n- 修复：防止 TCP 防火墙出现短暂的接受错误，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1827](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1827) 中实现  \n\n---  \n\n## Envd\n\n### 功能  \n- 在恢复过程中通过 MMDS 哈希验证访问令牌，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1822](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1822) 中实现  \n- 内存安全的令牌存储，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1823](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1823) 中实现  \n\n---  \n\n## 新贡献者  \n\n- [@gaord](https:\u002F\u002Fgithub.com\u002Fgaord) 在 [#1834](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1834) 中完成了他们的首次贡献  \n\n---  \n\n**完整变更日志：**  \nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2026.05...2026.06","2026-02-05T22:20:22",{"id":224,"version":225,"summary_zh":226,"released_at":227},126771,"2026.05","# 变更内容  \n\n## API  \n\n### 功能  \n- 团队本地模板名称，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1806](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1806) 中实现  \n\n### 优化  \n- 向 nodemanager 客户端添加 gRPC 保活机制，由 [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) 在 [#1770](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1770) 中实现  \n- 统一中间件日志记录，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1779](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1779) 中实现  \n\n### Bug 修复  \n- 如果沙箱位于远程集群中，则跳过将沙箱路由存储到 Redis 的操作，由 [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) 在 [#1765](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1765) 中实现  \n- 修正沙箱资源端点的 HTTP 状态码，由 [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) 在 [#1778](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1778) 中实现  \n- 修复沙箱指标处理程序中的拼写错误，由 [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) 在 [#1762](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1762) 中实现  \n\n---  \n\n## 调度器  \n\n### Bug 修复  \n- 修复：构建缓存上传顺序，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1776](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1776) 中实现  \n\n---  \n\n## 模板管理器  \n\n### 优化  \n- 预安装 iptables，由 [@mishushakov](https:\u002F\u002Fgithub.com\u002Fmishushakov) 在 [#1758](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1758) 中实现  \n- 将 git 添加到沙箱所需软件包列表中，由 [@matthewlouisbrockman](https:\u002F\u002Fgithub.com\u002Fmatthewlouisbrockman) 在 [#1814](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1814) 中实现  \n\n### Bug 修复  \n- 修复：允许构建调度在节点进入排水状态时继续执行，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1796](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1796) 中实现  \n- 修复：防止关闭时出现挂起现象，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1783](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1783) 中实现  \n\n---  \n\n## 数据库  \n\n### 优化  \n- 添加一个用于读取的认证副本数据库客户端，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1759](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1759) 中实现  \n- 添加数据库连接重试机制，由 [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) 在 [#1768](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1768) 中实现  \n\n---  \n\n## Envd  \n\n### Bug 修复  \n- feat(envd)：拒绝在网络文件系统上监视路径，由 [@mishushakov](https:\u002F\u002Fgithub.com\u002Fmishushakov) 在 [#1810](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1810) 中实现  \n\n---  \n\n## 新贡献者  \n\n- [@matthewlouisbrockman](https:\u002F\u002Fgithub.com\u002Fmatthewlouisbrockman) 在 [#1814](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1814) 中完成了首次贡献  \n\n---  \n\n**完整变更日志：**  \nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2026.04...2026.05\n","2026-01-30T12:09:40",{"id":229,"version":230,"summary_zh":231,"released_at":232},126772,"2026.04","# 变更内容  \n\n## API  \n\n### 改进  \n- 由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1748](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1748) 中改进请求超时设置  \n- 由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1753](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1753) 中简化标签的指定方式  \n\n### Bug 修复  \n- 修复：正确报告运行中的构建数量为零的问题，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1757](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1757) 中完成  \n\n---  \n\n## 编排器  \n\n### Bug 修复  \n- 修复：Nomad 调度出现内存溢出（OOM）的问题，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1742](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1742) 中完成  \n\n---  \n\n## 模板管理器\n\n### Bug 修复\n- 修复：将同步命令的路径改为绝对路径，由 [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) 在 [#1749](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1749) 中完成\n\n--- \n\n### \n**完整变更日志：**  \nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2026.03...2026.04\n","2026-01-22T16:03:03",{"id":234,"version":235,"summary_zh":236,"released_at":237},126773,"2026.03","# What’s Changed\r\n\r\n## API\r\n\r\n### Improvements\r\n* Add vCPU validation for Firecracker constraints by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1720](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1720)\r\n* Return template names for assign tag by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1730](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1730)\r\n\r\n### Bug Fixes\r\n* Fix: propagate base template as user error by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1717](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1717)\r\n\r\n---\r\n\r\n## Orchestrator\r\n\r\n### Features\r\n\r\n* Swap to gRPC client by [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) in [#1706](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1706)\r\n* Parallelize Firecracker start and NBD initialization by [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) in [#1704](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1704)\r\n* Add memory prefetching by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1705](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1705)\r\n* Add zero-allocation fetch copy by [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) in [#1702](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1702)\r\n\r\n### Improvements\r\n\r\n* Add additional useful attributes by [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) in [#1726](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1726)\r\n\r\n### Bug Fixes\r\n\r\n* Fix: uffd fd close by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1725](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1725)\r\n\r\n---\r\n\r\n**Full Changelog:**\r\n[https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2026.02...2026.03](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2026.02...2026.03)","2026-01-15T17:24:46",{"id":239,"version":240,"summary_zh":241,"released_at":242},126774,"2026.02","# What's Changed  \r\n\r\n> [!WARNING]\r\n> If you want to migrate builds without downtime (noting that migration with downtime will occur automatically otherwise), first run `make migrate-template-manager-detach` to remove the existing template-manager-system job from the Terraform state. Then, run make plan as usual, but remember to build and upload the new `nomad-nodepool-apm` job first.\r\n>\r\n> Once everything is deployed, go to the Nomad UI and stop the allocations in the `template-manager-system` job one by one. Ensure each allocation has finished draining before proceeding to the next. The new job should start allocations as soon as the port is freed. Finally, manually remove the `template-manager-system` job from Nomad after all traffic has been migrated.\r\n\r\n## API  \r\n\r\n### Features  \r\n- Transparently check if template alias exists by [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) in [#1678](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1678)  \r\n\r\n---\r\n\r\n## Orchestrator  \r\n\r\n### Improvements  \r\n- Optimize NFS read ahead by [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) in [#1693](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1693)  \r\n\r\n### Bug Fixes  \r\n- fix: tcp firewall no header routing by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1674](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1674)  \r\n- fix: handle half close gracefully by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1695](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1695)  \r\n- Fix cache dirty marking misalignment during copy by [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) in [#1681](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1681)  \r\n\r\n---\r\n\r\n## Template Builder  \r\n\r\n### Features  \r\n- Write to cache when building a template by [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) in [#1133](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1133)  \r\n\r\n### Improvements  \r\n- chore: improve error handling for templates by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1687](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1687)  \r\n\r\n### Bug Fixes  \r\n- fix: template manager rolling deployments by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1683](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1683)  \r\n\r\n---\r\n\r\n## New Contributors  \r\n\r\n- [@yaninyzwitty](https:\u002F\u002Fgithub.com\u002Fyaninyzwitty) made their first contribution in [#1667](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1667)  \r\n\r\n---\r\n\r\n**Full Changelog:**  \r\nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2026.01...2026.02\r\n","2026-01-09T08:05:32",{"id":244,"version":245,"summary_zh":246,"released_at":247},126775,"2026.01","# What's Changed  \r\n\r\n> [!WARNING]\r\n> To migrate, run make `migrate-clusters-terraform` followed by `make apply` to update your configuration and create a new build managed group. Once the new build nodes appear in Nomad, drain the old build nodes, including system jobs. After all old nodes are fully drained, you can run `make plan` as usual; this will remove the old build instance group.\r\n\r\n## API  \r\n\r\n### Features  \r\n- feat: add template versioning using tags by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1524](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1524)  \r\n\r\n---\r\n\r\n## Orchestrator  \r\n\r\n### Bug Fixes  \r\n- fix: tcp firewall hostname spoof by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1652](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1652)  \r\n- Fix kernel copy limits by [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) in [#1658](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1658)  \r\n\r\n---\r\n\r\n## Template Builder  \r\n\r\n### Improvements  \r\n- Build system: add mountpoint to provisioning script by [@mishushakov](https:\u002F\u002Fgithub.com\u002Fmishushakov) in [#1648](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1648)  \r\n\r\n---\r\n\r\n## Envd\r\n\r\n### Bug Fixes\r\n- fix: correct IPv6 socat handling by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1655](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1655)  \r\n\r\n---\r\n\r\n## Infrastructure & IaC  \r\n\r\n### Improvements  \r\n- Add client and builder cluster configuration via JSON by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1602](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1602) \r\n\r\n---\r\n\r\n**Full Changelog:**  \r\nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2025.52...2026.01\r\n","2026-01-06T16:10:49",{"id":249,"version":250,"summary_zh":251,"released_at":252},126776,"2025.52","# What's Changed  \r\n\r\n> [!WARNING]\r\n> The orchestrator needs custom Firecracker, run `make copy-public-builds` or build the firecracker yourself. You can find more [here](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Ffc-versions) \r\n\r\n## API  \r\n\r\n### Improvements  \r\n- Don't return an error when sandbox is already present in sandbox store by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1623](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1623)  \r\n\r\n---\r\n\r\n## Orchestrator  \r\n\r\n### Performance  \r\n- Copy Firecracker memory directly (Improve Pause speed) by [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) in [#1600](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1600)  \r\n\r\n### Bug Fixes  \r\n- Fix context timeout for node connect during nodes sync pipeline by [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) in [#1637](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1637)  \r\n\r\n---\r\n\r\n\r\n\r\n**Full Changelog:**  \r\nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2025.51...2025.52\r\n","2025-12-30T11:38:54",{"id":254,"version":255,"summary_zh":256,"released_at":257},126777,"2025.51","# What's Changed  \r\n\r\n## API  \r\n\r\n### Improvements\r\n- Add migration to index snapshots by `base_env_id` by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1618](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1618)  \r\n\r\n### Bug Fixes  \r\n- Fix issue when files for paused sandbox are not uploaded yet by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1615](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1615)  \r\n\r\n---\r\n\r\n## Orchestrator  \r\n\r\n### Features  \r\n- feat: add hostname-based egress firewall by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1597](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1597)  \r\n\r\n---\r\n\r\n## Template Builder  \r\n\r\n### Bug Fixes  \r\n- fix: template build logs order by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1622](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1622)  \r\n\r\n---\r\n\r\n## Infrastructure & IaC  \r\n\r\n### Features  \r\n- Make cache disk type configurable for client and build clusters by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1611](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1611)  \r\n\r\n---\r\n\r\n**Full Changelog:**  \r\nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2025.50...2025.51\r\n","2025-12-18T16:05:19",{"id":259,"version":260,"summary_zh":261,"released_at":262},126778,"2025.50","# What's Changed  \r\n\r\n## API  \r\n\r\n### Features  \r\n- feat: add separate build logs endpoint by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1589](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1589) \r\n- Make node placement based on machine info by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1558](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1558)\r\n- Forward ClickHouse through Edge by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1584](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1584) \r\n- Add retrieval of sandbox metrics from Edge by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1588](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1588) \r\n\r\n### Improvements  \r\n- Save CPU information on pause by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1578](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1578)  \r\n\r\n---\r\n\r\n## Orchestrator  \r\n\r\n### Features  \r\n- Add ability to change FC IO engine by [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) in [#1553](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1553)  \r\n\r\n### Improvements\r\n- Improved clean-nfs-cache performance by [@levb](https:\u002F\u002Fgithub.com\u002Flevb) in [#1572](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1572)\r\n\r\n---\r\n\r\n## Template Builder  \r\n\r\n### Improvements  \r\n- Put envd, ptys, socats, and commands into their own cgroups by [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) in [#1580](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1580)  \r\n- Only check free space on ENOSPC error by [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) in [#1599](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1599)  \r\n- Remove swap by [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) in [#1566](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1566)  \r\n\r\n---\r\n\r\n## Infrastructure\r\n\r\n### Features  \r\n- feat(iac): add memory metric for client autoscaler by [@ken8203](https:\u002F\u002Fgithub.com\u002Fken8203) in [#1574](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1574)  \r\n- feat(iac): make boot disk type and cache disk count configurable by [@ken8203](https:\u002F\u002Fgithub.com\u002Fken8203) in [#1601](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1601)\r\n\r\n---\r\n\r\n## New Contributors  \r\n- [@ken8203](https:\u002F\u002Fgithub.com\u002Fken8203) made their first contribution in [#1574](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1574)\r\n\r\n---\r\n\r\n**Full Changelog:**  \r\nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2025.49...2025.50\r\n","2025-12-12T13:20:53",{"id":264,"version":265,"summary_zh":266,"released_at":267},126779,"2025.49","# What's Changed  \r\n\r\n## API  \r\n\r\n### Bug Fixes  \r\n- fix: build logs return from Loki by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1569](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1569)\r\n\r\n### Misc\r\n- Save CPU platform information about build node for templates by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1549](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1549)  \r\n\r\n---\r\n\r\n## Orchestrator  \r\n\r\n### Features  \r\n- change default io engine by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1577](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1577)\r\n- Add ability to change Firecracker IO engine by [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) in [#1553](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1553) \r\n\r\n---\r\n\r\n## Template manager\r\n\r\n### Bug Fixes  \r\n- fix: always use sync IoEngine for builds by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1559](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1559)  \r\n\r\n---\r\n\r\n## New Contributors  \r\n- [@RatArt](https:\u002F\u002Fgithub.com\u002FRatArt) made their first contribution in [#1556](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1556)\r\n\r\n---\r\n\r\n**Full Changelog:**  \r\nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2025.48...2025.49\r\n","2025-12-04T16:18:36",{"id":269,"version":270,"summary_zh":271,"released_at":272},126780,"2025.48","# What's Changed  \r\n\r\n## API  \r\n\r\n### Improvements  \r\n- Remove goent by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1527](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1527)  \r\n\r\n### Bug Fixes  \r\n- Use correct key for redis locks by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1530](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1530)  \r\n- fix: don't require node id before template build starts by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1526](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1526)  \r\n\r\n---\r\n\r\n## Orchestrator \r\n\r\n### Improvements  \r\n- Add CPU info to the service info by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1511](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1511)  \r\n- Cleanup connections handling by [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) in [#1535](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1535)  \r\n\r\n---\r\n\r\n## Misc\r\n\r\n### Improvements  \r\n- Update default kernel version to `vmlinux-6.1.158` by [@tomassrnka](https:\u002F\u002Fgithub.com\u002Ftomassrnka) in [#1542](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1542)  \r\n- feat: connect traces with logs [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1531](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1531) + [#1532](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1532)  \r\n\r\n---\r\n\r\n## New Contributors  \r\n\r\n- [@levb](https:\u002F\u002Fgithub.com\u002Flevb) made their first contribution in [#1544](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1544)  \r\n\r\n---\r\n\r\n**Full Changelog:**  \r\n[2025.47...2025.48](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2025.47...2025.48)\r\n","2025-11-27T16:09:55",{"id":274,"version":275,"summary_zh":276,"released_at":277},126781,"2025.47","# What's Changed  \r\n\r\n## API\r\n\r\n### Features  \r\n- feat: add sandbox network out configuration by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1447](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1447)\r\n\r\n### Improvements  \r\n- Refactor snapshot to sqlc by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1140](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1140)\r\n- Support template creation in local dev by [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) in [#1449](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1449)\r\n\r\n### Misc\r\n- Populate Redis with sandbox data by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1446](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1446)\r\n\r\n---\r\n\r\n## Orchestrator  \r\n\r\n### Features  \r\n- Support envd proxying via header as well as host by [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) in [#1448](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1448)\r\n\r\n### Bug Fixes  \r\n\r\n- Fix NBD write buffer by [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) in [#1500](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1500)\r\n- fix: slot return on network fail and improve validation by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1485](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1485)\r\n\r\n---\r\n\r\n## Template Builder  \r\n\r\n### Features  \r\n- Add command for mounting template filesystem by [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) in [#1494](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1494)\r\n\r\n### Misc  \r\n- Disable systemd time watchdog for networkd and journald by [@ValentaTomas](https:\u002F\u002Fgithub.com\u002FValentaTomas) in [#1513](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1513)\r\n- chore: increase template manager force kill timeout by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1505](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1505)\r\n\r\n### Bug Fixes  \r\n- Fix filesystem flush after provisioning completion by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1504](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1504)\r\n- fix: speed up provisioning shutdown by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1507](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1507)\r\n\r\n---\r\n\r\n## Infrastructure  \r\n\r\n### Features  \r\n- Setup valkey cluster with enabled TLS by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1483](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1483)\r\n- Add SSL policies to HTTPS proxies in network configuration by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1468](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1468)\r\n\r\n\r\n---\r\n\r\n## Misc  \r\n\r\n### Improvements  \r\n- Upgrade to Go 1.25.4 by [@djeebus](https:\u002F\u002Fgithub.com\u002Fdjeebus) in [#1515](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1515)\r\n\r\n---\r\n\r\n**Full Changelog:**  \r\nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2025.46...2025.47\r\n","2025-11-20T18:06:03",{"id":279,"version":280,"summary_zh":281,"released_at":282},126782,"2025.46","# What's Changed  \r\n\r\n## Orchestrator  \r\n\r\n### Features  \r\n- feat: add mask request host by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1479](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1479)  \r\n- feat: add sandbox network out configuration by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1447](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1447)  \r\n- Allow optional sandbox ingress traffic auth by [@sitole](https:\u002F\u002Fgithub.com\u002Fsitole) in [#1474](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1474)  \r\n- Use the FC API `\u002Fentropy` endpoint to configure virtio-rng by [@0div](https:\u002F\u002Fgithub.com\u002F0div) in [#658](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F658)\r\n\r\n### Misc  \r\n- Add lock for NFS write by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1475](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1475)\r\n\r\n---\r\n\r\n## Template Builder  \r\n\r\n### Misc  \r\n- Exit early on invalid image architecture by [@dobrac](https:\u002F\u002Fgithub.com\u002Fdobrac) in [#1476](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1476)\r\n\r\n---\r\n\r\n## Infrastructure  \r\n\r\n### Misc  \r\n- Add SSL policies to HTTPS proxies in network config by [@jakubno](https:\u002F\u002Fgithub.com\u002Fjakubno) in [#1468](https:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fpull\u002F1468)\r\n\r\n---\r\n\r\n**Full Changelog:**  \r\nhttps:\u002F\u002Fgithub.com\u002Fe2b-dev\u002Finfra\u002Fcompare\u002F2025.45...2025.46\r\n","2025-11-13T15:06:56"]