Repository navigation
Conversation
默认跟随请求模型,调用方窗口经内部字段送到当前 job,面板值可热配置。
窗口在入站清理前提取,再经内部字段进入 native body。
窗口必须在 settings 删除前提取,再传给 native body。
A replaced helper keeps the old inode and the listen port. Ownership now treats that process as down and the next start or fleet refresh stops every helper bound to the proxy config, including one the pidfile no longer names.
Fleet refresh now waits for every helper bound to the proxy config to exit before binding the new one. install.sh no longer treats a failed refresh as a successful upgrade.
账本列出文件里的真实配置项,claude.setting 可编辑后播种。遥测开/关与进程状态分开,种子页打开时 2 秒刷新。
编辑框只显示当前槽文件的原文。文件缺失或为空都保持空白,不再回退到策略文本或默认串。
GET /seed-settings 不再用策略默认串填补不存在的文件。空文件仍返回空串,策略字段保持独立。
|
部署验证通过,PR 保持未合并。
密码登录门未用:主机 systemd 环境里没有面板用户名/密码,master 鉴权通过。 |
|
关闭:发版审拒——厨房水槽(含 #604/#605/#600 旧稿与重叠、另捆 auto_compact+种子页,dirty、无 CHANGELOG、无五职绿)。
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 2 potential issues.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 2c62e8e. Configure here.
|
|
||
| export function needsLegacyServiceMigration(info, { sourceDir = '' } = {}) { | ||
| return !!info && !hasBindDestination(info, LIVE_BIN, sourceDir) | ||
| } |
There was a problem hiding this comment.
KVM telemetry fleet recreates slots
High Severity
Telemetry fleet treats any container without a read-only /opt/kin-live bind as legacy, then remounts slot-bin at that path. KVM runners actually overlay slot-bin at /opt/kin-guest/opt/kin-live, so already-current KVM slots look stale, get stopped and recreated on Go-only refresh, and the new bind sits where the guest never sees kin-worker.
Additional Locations (1)
Triggered by learned rule: Slot-bin v3; telemetry fleet restarts Go only
Reviewed by Cursor Bugbot for commit 2c62e8e. Configure here.
| await rename(docker, name, backup) | ||
| let createdId = null | ||
| try { | ||
| createdId = await create(docker, name, body) |
There was a problem hiding this comment.
Migration keeps IP on renamed backup
High Severity
Legacy slot migration copies the old IPv4 into the replacement body, then only stops and renames the original container. On user-defined networks a stopped container still holds that address, so create with the same IPAMConfig fails and the rollback path has to put the old container back.
Reviewed by Cursor Bugbot for commit 2c62e8e. Configure here.
|
更正:第一次覆盖层的 web/dist 混入了未提交的设置页文案(
|


Summary
settings.json列出真实配置项;claude.setting可编辑后播种。遥测开/关和进程状态分开,页签打开时 2 秒刷新。GET /seed-settings的claude_setting返回null,空文件返回空串,不再用默认串冒充。Test plan
pnpm -C web exec vitest run src/features/vm/seed-settings.test.ts src/features/vm/seed-policy-card.test.tspnpm -C web exec tsc -bnode --test test/unit/panel-vm-seed-settings.test.mjspnpm -C web buildverify-live.py 1.3.199VERSION 仍是 1.3.199。这次不跑
wrap-cli/sync。Note
Medium Risk
槽容器迁移、安装后强制 fleet 刷新与 egress 进程生命周期改动会影响升级与 SOCKS 出口;种子 API 与遥测重启路径变更需回归。
Overview
种子页从策略预设改为以槽内文件为准:展示当前
settings.json键值、可编辑claude.setting,播种时写回;遥测配置与进程状态分开显示,种子页签约 2 秒轮询。GET/PUT /seed-settings对缺失的claude.setting返回null,空文件返回空串;遥测开关变化或显式重启时走fleet-update的telemetry动作,只重启 Go 遥测与 kin-egress,不重建 VM。Go 服务升级:
kin-worker/kin-egress经持久化slot-bin挂到/opt/kin-live(槽布局 v3);远程槽可迁移旧容器(重命名保留回滚副本)。安装/面板升级后调用fleet-services.mjs刷新各槽二进制。kin-egress 在二进制被替换或 PID 陈旧时会停掉旧进程并重启,避免旧可执行文件仍占端口。另加路由
auto_compact_window(面板协议页、kernel.json、CLI hop 保留调用方窗口)及PRODUCT.md/TELEMETRY.md文档。Reviewed by Cursor Bugbot for commit 2c62e8e. Configure here.