Commit Graph

12 Commits

Author SHA1 Message Date
Codex e8b0b7896a fix: runner proxy and transient env secret 2026-06-09 22:49:53 +08:00
Codex c1018efb65 fix: assemble UniDesk SSH endpoint env 2026-06-09 21:33:02 +08:00
Codex f08a4e75cd feat(v0.1): runner Job 直接挂载 per-session PVC + env 透传
PR C 起步:k8s-job.ts 加 sessionPvc volume + env passthrough

- src/runner/k8s-job.ts: 新 RunnerSessionPvcOptions 接口;manifest 多渲染
  agentrun-sessions volume + volumeMount;env 多透传 AGENTRUN_SESSION_PVC_NAME /
  _NAMESPACE / _MOUNT_PATH / AGENTRUN_CODEX_ROLLOUT_SUBDIR
- src/mgr/kubernetes-runner-job.ts: run 引用 session 时查 session storage
  kind=pvc 自动构造 sessionPvc 透传给 manifest 渲染;kind=evicted 已在
  PR B 短路返回 session-store-evicted
- selftest: 1 新 case runner-k8s-job-session-pvc-volume-and-env 验证 PVC volume
  + env 全套透传

后续 PR C 剩余:src/backend/codex-stdio.ts emit codex-rollout-storage-mounted
事件 + session-store-evicted 升级;3 个 codex-stdio 端到端 case。
2026-06-03 20:21:03 +08:00
Codex e8cfa4c692 feat(v0.1): add mgr session PVC lifecycle for true session state persistence
PR B for #770: mgr/session-pvc.ts + server endpoints + selftest.

- 新模块 src/mgr/session-pvc.ts: createSessionPvc / getSessionPvcSummary / deleteSessionPvc / refreshSessionPvcSummary / runSessionStorageGc / startSessionStorageGcLoop
- Server 增量 4 个 endpoint:
  * POST /api/v1/sessions: 创建 session 同步创建 PVC
  * GET /api/v1/sessions/:id/storage: 查询 PVC 摘要
  * DELETE /api/v1/sessions/:id/storage: 删 PVC + storage_kind=evicted
  * POST /api/v1/sessions/:id/storage/refresh: runner 上报 PVC 摘要
  * POST /api/v1/sessions/storage/gc: 手动触发 GC
- mgr SA RBAC 已在 PR A 增加;manager server 不直连 Kubernetes API(kubectl 由 mgr 容器内执行)
- SessionRecord 增量 storageKind / storagePvcName / storageNamespace / storageSizeBytes / storageFilesCount / storageSha256 / storageUpdatedAt / storagePvcPhase / storageEvictedAt / codexRolloutSubdir
- kubernetes-runner-job 短路:run 引用 evicted session 时直接返回 session-store-evicted,不创建 runner Job
- KubectlHandler 可注入,selftest 覆盖 create / summary / refresh / eviction / gc / REST 路径
- GC loop 默认 5min(AGENTRUN_SESSION_GC_INTERVAL_MS 可调)

runner / backend / HWLAB adapter 在 PR C / PR D 落地。
2026-06-03 19:19:09 +08:00
Codex 458d814fa2 feat: 装配 UniDesk SSH 工具凭证 2026-06-02 15:40:48 +08:00
Codex 82e2349030 fix: 放开 transientEnv 数量限制 2026-06-02 08:24:22 +08:00
Codex 159b99e763 feat: 支持 runner tool credential 装配 2026-06-02 00:22:38 +08:00
Codex 44ff391918 feat: 支持 runner transient env 2026-06-01 17:50:13 +08:00
Codex 62846f6369 feat: 补齐 HWLAB 手动调度能力 2026-06-01 11:40:08 +08:00
Codex 860da3c387 fix: 收口 v0.1 规格缺口 2026-05-29 17:38:47 +08:00
Codex da50a34eef fix: prepare writable codex home for runner jobs 2026-05-29 13:27:11 +08:00
Codex 2b8a5dfc99 feat: 打通 v0.1 runner job 正式路径 2026-05-29 12:44:37 +08:00