协作与审计
第3章 · 笔记 3
笔记 3
- 2026-10-26 [阿普] t_83adbfbe search_files 空返回死循环熔断落地:结论=根因是熔断判据粒度错配(参数级精确重复计数 vs 形态级同类空返回),已按结果形态加熔断(3 空警告/5 空硬阻断,换工具或非空清零);证据=回归测试 11/11 过、三 run 会话 300 次 API 全空返回实证(state.db 取证);改动=tools/file_tools.py + tools/file_tools_read_tracking.py(补丁 15 已登记+隔离重放逐字节一致)+ 重建 cron ba4e9019bb9e(外援审计·循环健康检查,next 2026-11-01 23:00)+ 外援审计索引/自动审计体系/踩坑记录同步;异常=无
## 2026-10-26 泡影越界信号③(跨 profile/全局配置)漏拦收口(卡 t_467d324f,运维型)
- 结论:做完——根因定为条文竞争解释(主:信号③行负例「只动一个文件」吸走「改全局文件单条目」判定+「卡面明确要求→照做」跨信号泛化)+工具降级路径无自检触发点(辅);双层收口落地:paoying/SOUL.md 条文收窄+建卡入口机械前置识别,回归矩阵 7/7、四类负例零误伤
- 证据:两漏拦卡 kanban logs 零「越界」提及+t_1c00fc08 轨迹「cron update not found→直改全局 jobs.json」降级路径实证;对照 t_a508aba5 单 profile 正确未阻塞;回归矩阵第 2 轮 HIT HIT NO-HIT NO-HIT NO-HIT HIT NO-HIT(c1/c2 真实漏拦卡面现可命中)
- 改动:paoying/SOUL.md 3 处(信号③行负例收窄+「卡面明确要求≠免检」+工具降级指引);kanban_create_preset.py 增 global_config_write_signal()+GLOBAL_CFG_HINT_BLOCK 注入(备份 ~/.hermes/backups/ 两份 t_467d324f tag);看板系统.md「泡影越界转派通道」节+踩坑记录 2 条+技术调研报告索引 1 条
- 异常:无。机械层为软提醒不阻塞(「改 vs 只读」自然语言判定无法 100% 机械化,机械层取高精确、执行侧条文取高召回);弱锚点私有语境降级的极端漏拦面已记录在交付物§七
- 10-20 23:46 重启定性 = macOS 27.0.1 升级安装重启(正常),panic_monitor 补升级豁免判据(2026-10-21)
- 结论:已定性+已修——无 panic/无新 ResetCounter/NVRAM 断言未更新(仍 10-19 15:15:27)+ 双 boot 标记(23:44:41 安装 boot + 23:46:09 最终 boot)+ ProductMetadata.plist mtime 23:47 → 升级安装重启,非异常;观察期「27.0.1 待升」落地,进入「升级自愈」验证阶段
- 监控修复:panic_monitor.py 增 get_os_version() 版本快照 + upgrade_artifact_near() 安装产物旁证,升级重启判「正常重启:系统升级重启(26.7.1(25G241)→27.0.1(26A434))」;旁证对旧 boot 不误伤(10-19 False)
- 异常:log show --start/--end 尾部越界(26.7.1 实测两例),断流取证改锚点法(已记踩坑记录)
- 改动:~/.hermes/scripts/panic_monitor.py(备份 ~/.hermes/backups/panic_monitor.py.bak-20261021-001550~b4665346e3-upgrade-reboot-exemption)
- 2026-10-20 【运维/t_6f1fb18a】峰值费用占比全史回刷核实 + 费用派生指标定价单源收口: 结论:做完——①台账全史(2026-07-07..10-11 共 97 行)peak_cost_share 已全部对齐修复口径(97/97 前后不同=全史同源失真坐实;14:06 t_8c872733 全史 backfill 顺带重算完成,本卡核实+补缺口),并修复 est_cost model=None 崩溃回归救回 08-22/09-09/09-24/09-25 四行被炸 cost 整组(09-09 total ¥126.3 找回);②PRICING/CREDITS/FREE/FX 定价表收单一真源(真源=token_weekly_audit.py,qianpo_metrics_collector 副本删除改 AST 运行时提取,78 条 est_cost 基线断言零漂移),peak 归日口径/is_peak 双实现按约束保留+绑定校验写入口径清单 §1b。证据:对照 8 代表日(0 极 07-17/08-29/09-09 旧 71.29/40.09/3.92→新 0.0)、幂等复跑 md5 一致 2140d337231cb55ff40b3dd64313d4df、cache_hit_rate 前后逐日一致(未写入)。交付 /Users/mac/.hermes/kanban/deliverables/t_6f1fb18a_峰值占比全史回刷与双实现收口.md。异常:无|阿普
- 2026-10-20 【运维/t_8c872733】返工缺陷排除表 v4 增补运维语境排除词(正生同意收口): 结论:做完——REWORK_DEFECT_EXCLUDE 增补「幂等/不再/自动刷新/重跑致/防重跑」五词(精确词组不用单字「防」),近三十天(09-20~10-19)rework_defect 29→24(5 张运维语境误命中转 other 2→7,总命中 32 不动),真返工 13 张(换版质检重跑×5/阿如说故事重写×6/修复版交付×2)+重做类 11 张 0 误伤;全史 105 行回刷 61→56;口径清单/月报「已知高估约 5/29」标注改写为实测值。证据:全史 61 张 defect 标题逐张交叉扫描,五词各仅命中那 5 张误命中本身;台账三分列恒等式 105 行 0 违例;VERIFY 24/56/7/1 四组真跑全过。改动:qianpo_metrics_collector.py(排除表 v4+注释+caliber 标注,备份 bak-20261020-140425)、qianpo_metrics.jsonl 全史回刷(备份 140628)、t_21c9abe4 口径清单/乾婆月报/W41 外援报告/决策清单 B-1019-02 四文档同步(备份 140730)、脚本系统.md 采集器条目补 v4、技术调研报告索引登记、交付报告 deliverables/t_8c872733_返工排除表v4运维语境词.md。异常:无|阿普
- 2026-10-20 【运维/t_ad114e20】峰值费用占比读零修复 + 运维日均入费用日报: 结论:做完——①peak_cost_share 计算段双缺陷修复(est_cost 未命中定价表掉档静默计 0 + is_peak 时区双重偏移),2026-10-18 读数 0 回补为 17.12,同窗口 10-12..10-19 共 8 行按修复口径回刷(cache_hit_rate 重算不变);②费用日报新增「🔧 运维任务(近14天·治理观测)」行(任务数+日均新建),wiki 条目/E1 文本/E3 卡片三输出面生效。证据:复现探针缺键口径逐值复现周报第四期(10-18=0.0/10-15=64.74/10-12,13,16,17=100.0);改动:qianpo_metrics_collector.py(PRICING 补 glm/mimo/免费 + est_cost fail-closed + is_peak CN_TZ)、token_daily_report.py(ops_task_verdict 三处插入)、qianpo_metrics.jsonl 8 行回补。异常:10-11 及更早历史值同源失真未回刷(超点名范围留裁决);归日口径(启动时刻 vs 调用时刻)未动。
- 主动改造类机制暂停(可恢复):10 cron + 2 crontab 行 + 入口/补建建链开关(t_53409388,2026-10-20)
- 结论:做完——按正生 2026-10-20 拍板暂停一切主动改造类机制(保留可恢复,不等于退役):10 个 cron job 全部 paused(定义保留)、crontab self_wakeup_notifier daily(20:30)/neican(20:00) 两行注释停跑、统一播客入口 daily 相位不建日报链不发需求收集、neican 相位不建分析卡、熔断恢复补建同口径拦截防绕行;佛学链与相位推进逻辑零改动。
- 证据:jobs.json 回读 10/10 state=paused(paused_at 2026-10-20T10:20:4x);crontab 活跃 self_wakeup 行计数 0;PODCAST_DRY_RUN=1 干跑输出「主动改造暂停开关(1=暂停): 需求收集=1 日报链=1 内参分析卡=1」+今日(内参日)「分析卡将跳过(暂停中)」,相位状态 {"phase":3,"show":"neican"} 次日 buddhist 序列保持;bash -n / py_compile 过;_pause_on 三键 True、缺失键 False。
- 改动:jobs.json 10 job paused;crontab 2 行注释(备份 ~/.hermes/backups/crontab.t_53409388.bak-20261020-102022);scripts/run_daily_podcasts.sh(pause_on 函数+daily/neican 分支暂停判断+dry-run 开关输出);scripts/recover_podcast_after_meltdown.py(_pause_on+build_show_chain 拦截);新增 scripts/.proactive_pause.json 开关文件;concepts/自动审计体系.md(9 行状态列+暂停登记区块)、concepts/踩坑记录.md 1 条、concepts/关键配置参考.md 开关条目;交付清单 deliverables/t_53409388_主动改造机制暂停清单.md。
- 异常:每3天自我评估(eeb5429ebe2d) 此前未登记进自动审计体系总览表(快照滞后,已随登记区块补录);external_findings 收割器暂停期 metadata.external_findings 将积压 task_runs,恢复后自动恢复收割|阿普
- 节点自愈判据单点误判修复:多目标复核 + 网络层失败分类(t_5fadc7bd,2026-10-20)
- 结论:做完——speedcat_node_health.py 节点健康判据从「单点 HEAD 一次请求判死」改为「多目标复核」:4xx/5xx=服务可达不判死,仅全部探测目标网络层失败(timeout/ssl/connect/protocol)才判不可达;失败记账同收窄,单点误判不再累计进淘汰判据(阈值未动)。
- 证据:对照实测四态(A 正常 200 两版一致 / B SSL EOF 两版均判死=正确 / C HEAD reset+GET 404 改前判死改后可达「← 误判已修复」/ D 主目标超时+复核 200 同修复);真实单节点探测三目标全 404 可达(777/662/1001ms);CLI --force --no-switch 实跑 ✅ HTTP 404 exit0;对照脚本 deliverables/t_5fadc7bd_probe_judge_compare_test.py 从交付位置复跑过。
- 改动:scripts/speedcat_node_health.py L44-58 PROBE_TARGETS / L196-280 判据函数组(_is_reachable / _classify_probe_error / _probe_one / _probe_fish_audio 返回三元组)/ L337-346、L431-454、L501 三处调用方同步;concepts/踩坑记录.md 1 条(数据区首行);concepts/脚本系统.md speedcat_node_health 条目 2 处判据描述;报告 deliverables/t_5fadc7bd_节点判据修复报告.md。
- 异常:无。同族单点判据残留 check_fish_connectivity.py L39/L59、speedcat_monitor.py probe()、check_api_health.py L2124 maybe_sample(范围外走 external_findings)|阿普
- paoying 主模型通道治本:openrouter.ai 入 paoying NO_PROXY 显式直连(t_8f3297ec,2026-10-20)
- 结论:做完——profiles/paoying/.env NO_PROXY 追加 openrouter.ai,.openrouter.ai(模型调用显式直连,正生 2026-10-08 t_70667ad9 口径的模型调用侧遗漏点收口);三条验收判据全过。未重启 gateway:paoying 无独立 gateway(multiplex-only 单进程),且 .env 热加载(子进程 spawn 全量加载 + in-process per-turn secret scope 按 fstat 签名重解析)——重启零增益且是全 agent 断线级动作,实测新会话即生效。
- 证据:真实会话 20261020_085705_724ade(platform=cli,与 10-19 故障同形态)API call #1: model=nvidia/nemotron-3.5-super-vl:free provider=openrouter、零 Fallback activated、零 APIConnectionError;会话进程 os.environ['NO_PROXY'] 实测含 openrouter.ai,.openrouter.ai;should_bypass_proxy openrouter.ai=True / api.openrouter.ai=True / huggingface=False(代理面保留);check_agent_model_parity.py --with-db --agent paoying 两项 PASS RC=0;validate_no_proxy.py 全 profile 一致静默 RC=0。
- 改动:profiles/paoying/.env L1 NO_PROXY 追加两域(备份 ~/.hermes/backups/.env.bak-20261020-085533~1e61f6b93f-t_8f3297ec);~/.hermes/scripts/validate_no_proxy.py KNOWN_DIVERGENCE 增 paoying 条目(合法差异登记,防次日 20:50 校验告警);concepts/踩坑记录.md 1 条(「重启 gateway 使 env 生效」过时认知坑);concepts/关键配置参考.md NO_PROXY 章节 4 处(快照分叉标注/白名单条目/登记表现状/生效方式)。
- 异常:无。模型选型决策(nemotron vs deepseek-flash)仍在上游 t_d6b5b88c 呈报流程,本卡不消费;全局 .env 未动(卡面边界),以 KNOWN_DIVERGENCE 登记消差而非同步全局|阿普
- 代理节点半死致 paoying 主模型持续 fallback,模型清单漂移 cron 报 FAIL(t_d6b5b88c,2026-10-20)
- 结论:做完——FAIL 根因不是 config 写错,是 SpeedCat 节点半死:经 7892 全站 SSL: UNEXPECTED_EOF_WHILE_READING(~5s)而直连 openrouter.ai/github/httpbin 全 200;paoying 唯一主模型走 openrouter 且 .env NO_PROXY 不含该域 → 每会话头两次连接失败即 fallback deepseek-flash(10-19 17:06 起 11 次),累计窗口内 fallback 过半即判 FAIL。已切节点恢复线路并复跑至全绿。
- 证据:经代理 openrouter 3/3 200(08:43:35 / 08:43:56 / 08:44:17);两次真实 nemotron 会话零 fallback(08:42:29、08:43:21,agent.log 无 Fallback activated);check_agent_model_parity.py --with-db paoying 两项 PASS(声明值 10/20 次)、cron 包装脚本 EXIT=0;核心 PID 13446 监听 7892,切换锁已 clear、无残留 flag。
- 改动:concepts/踩坑记录.md 追加 1 条(标(技能:speedcat-node-ops)直连);节点香港-02 → 新加坡-06(脚本日志留存 ~/.hermes/kanban/deliverables/t_d6b5b88c_speedcat_switch.log);建延展卡 t_8f3297ec(apu:openrouter.ai 加入 paoying NO_PROXY 治本)。
- 异常:遍历脚本验证轮以 Fish 为判据、Fish 9999ms 超时后继续切(实测 Fish 经代理 404 可达=误判),已人工 kill 遍历防打回好节点;paoying 主模型是否改 deepseek-flash(免费 vs 稳定)待决策,已入本卡 decisions_pending|泡影
- apu-neican-analysis 技能补内参日自查用法(t_02c631d6,2026-10-20)
- 结论:做完——内参日「无成品稿」自查用法补进技能自检清单段(--script 传报告自身、与 --analysis 同参双传做单文件自校验 + --date 便利模式停更后勿用陷阱),脚本系统.md 同步指针,需求池 R-1020-01 收口。
- 证据:用法示例锚点 grep 命中 1(「双参同传单文件自校验」/「check_structure_blocks.py --analysis」各 1);写入参数与 check_structure_blocks.py --help 逐项一致;本期实测单文件校验 PASS(主选题 5313 字 / 扫描面全景 4319 字,exit 0)对照 --date 20261020 FATAL exit 2。
- 改动:skills/devops/apu-neican-analysis/SKILL.md 自检清单段 +1 条;concepts/脚本系统.md check_structure_blocks 条目 +1 句指针;需求池 R-1020-01 → 已解决(painpool resolve)。
- 异常:无未决项|skill_manage 本 run 未暴露,按 skill-version-control 纪律走 skill_version 备份 + 文件 patch 等价通道(回滚=skill_version.py rollback)。
- apu 私有技能断指针收口 2 处(t_43089149,2026-10-20)