Skip to content

运营批挂账:内存峰值采集 / queue 跨进程竞态 / 镜像 gh CLI / 取消按钮 #139

Closed

Description

@steponeerror

来源

产品化批(PR #138)整批 code-review 双轴终审 + 五票 implementer 报告的挂账项。spec:docs/superpowers/plans/2026-10-19-ops-agent-productization.md。

挂账

  1. 轮次内存峰值入台账(冷启动验收 feat(backend): add FeodoTracker (abuse.ch) botnet C2 source #5):agent 冻结面无采集实现,现以 docker stats 人工替代(runbook §7)。裁决方向:agent 侧采集(需动冻结面)vs 容器层采集(P5 镜像)vs 维持人工——月后与定时器/预算裁决同批(裁⑥)。
  2. queue.md 跨进程竞态:node agent(轮次中写)与 POST /api/ops/ruling(Python append_queue)同容器两进程,读-改-写窗口存在(终审 Spec 轴 minor;窗口窄+幂等自愈)。真修需 node/python 双边 flock,agent 面现为冻结——单边修是假修,挂账待解冻窗口。
  3. 镜像内 gh_search 不可用:gh CLI 未装,discover 轮 zero_asset-REJECT 闭包检查路径死(ENQUEUE 不受影响)。补 gh+GH_TOKEN = 部署后按需裁。
  4. 运行中轮次取消按钮:后端复用面已在(/api/tasks/{id}/cancel),前端未做(P4 挂账)。

Blocked by

None(全部可独立裁决/实施;#1 建议等月后台账数据)

Activity

  1. steponeerror commented on Oct 20, 2026

    @steponeerror
    OwnerAuthor

    #142 评审挂账追加(P2 全可选,2026-10-20):①死 i18n 键 ops.round.state.done/ops.round.state.failed/ops.round.log + OpsCockpit STATE_BADGE done/failed/cancelled 三项(旧 RoundPanel 拆后无消费方)②驾驶舱台账兜底 catch 吞非 401 错(卡片显「尚无轮次」措辞与「无证据≠清白」轻微出入,下方过去轮次表兜得住;可选:显加载失败文案)③过去轮次表不渲染备注列——失败行 spawn error_code 证据恰在备注,后续历史成败面的现成出口④GLOSSARY:28 既有错字「兑底」→「兜底」(benign 词条,非 #142 引入)。建议随下次 i18n/文案清理批一并。

  2. steponeerror commented on Oct 21, 2026

    @steponeerror
    OwnerAuthor

    #143 评审挂账追加(P2,2026-10-21):①_ops_rounds.py 首个 try 只捕 RuntimeError,物化 auth.json 的 OSError(盘满等)会逃逸成线程死+无台账行——下次触达顺手 except (RuntimeError, OSError)(评审 P2-2)②models.mjs loadModels 返回的 catalog 字段零消费方(catalog.mjs 自建 dump)可删死面(P2-4)③report-only 两条:#140 既有面(坏 models.json 静默跳过三层语义/tail4 对 <4 字符 key 整键回显),若对齐「坏配置显式报错」属独立小批。

  3. added a commit that references this issue on Oct 24, 2026
  4. steponeerror commented on Oct 24, 2026

    @steponeerror
    OwnerAuthor

    挂账项「镜像 gh CLI」已落地:PR #177(gh v2.103.2 官方 tar.gz pin+构建期断言)已合并部署;GH_TOKEN 经 override 注入(部署文档 deploy/ops-cron.md)。本票其余项(内存峰值采集/queue 跨进程竞态/取消按钮)仍挂。

  5. steponeerror commented on Oct 25, 2026

    @steponeerror
    OwnerAuthor

    Triage(2026-10-26,整改批 #197 落地后复查)

    • ③镜像 gh CLI:已落地,闭——PR ops 工具通道修复批:判例检索单源 + 通道错误分类学四码 + gh 入镜像(#139 提前收) #177 装 gh(官方 tar.gz pin 版,Dockerfile:36-38);生产实查 gh 2.103.2 在位 + docker-compose.override.yml 已配 GH_TOKEN。
    • ④取消按钮:已落地,闭——frontend/src/admin/BatchPanel.tsx:247 逐行取消按钮(aria-label + BatchPanel.test.tsx:103 点击传 id 测试在);/api/tasks/{id}/cancel 复用面经 TaskProvider.cancelTask 接通。
    • ①内存峰值入台账:转实施——agent 侧采集走 cgroup v2(容器内 /sys/fs/cgroup/memory.peak,round start/close 各读一次入台账行);「冻结面」前提已过时(hotfix hotfix: C1 轮次线程 try-finally 兜底 + C4 spawn env 白名单(合并即部署) #196/C2 本批均动过 _ops_rounds.py)。
    • ②queue.md 跨进程竞态:转实施——双边 flock(node queue_action + python append_queue,同一锁文件);「挂账待解冻窗口」前提同上过时(C6 本批动了 tools 面)。

    实施走集成分支 feature/ops-backlog-139(SDD:① ② 各一实现票,merger 审合)。

  6. added
    ready-for-agenttriage role (mattpocock/skills canonical)
    and removed
    needs-triagetriage role (mattpocock/skills canonical)
    on Oct 25, 2026
  7. added 11 commits that reference this issue on Oct 25, 2026
  8. added 2 commits that reference this issue on Oct 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    ready-for-agenttriage role (mattpocock/skills canonical)

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions