核实目标管理落地情况并纠偏:撤销误建的计划任务(现行规则只许会话后台任务);落点三处收敛到机制口径;对齐 goal.json 的 execution_doc;移除工作区根的浏览器脚本副本;记忆补记教训(注入版可能落后于磁盘版)

This commit is contained in:
WorkBuddy committed 2026-10-10 22:58:53 +08:00
1 parent cbc80e0b2b
commit 5140f8d1f3
5 files changed
+42 -82

No files matched your search

+26
View File
@@ -288,3 +288,29 @@
- ✅ 已派第 1 棒:`[执行]-[开源项目调研]-逆向Easel热点雷达与选题链路并对照现版P2`,`once` 22:46,`cwds` 逐字本区;域=`contentm_agent/执行会话`(派前 `--domain-status`=**无人持锁** ⇒ ⛔ 未动任何孤儿锁);定位=**调研与方案棒**(⛔ 明令不许改 2a/2b/原型,落地方案只写进文档)。
- ⚠️ 工具现状沿用两处:工作区根 **`state.py` 不存在**(派活单第 1 项跑不到,报 `can't open file`);`--domain-block 执行会话` 出块正常。
- ⛔ 本棒未改 2a/2b/原型/DESIGN 一个字,也未改 `acceptance_state`(未完成 ⇒ 不写回机读副本)。
## 22:55–23:0x · 主会话核实「都纳入目标管理」后现场 ⇒ 揪出并修掉两个真问题
- **三棒现状**(全部取进程级/文件级证据,⛔ 不凭印象):①Easel 棒 `3f59c890`(`[执行]-[开源项目调研]-…`)**working**,22:46:10 起跑、末活动 22:55:28,主产物 `第1棒_逆向Easel热点雷达与选题链路_2026-10-10.md`(15 456 B)**已落**,另有 `取证/` 12 份原始文件(Easel 的 skills 与 web 源码);②侧栏棒 `95d7e790` `once` **23:12** ACTIVE(未到点);③我建的重复 Easel 排期 `560ba39c` 已 PAUSED ✅。
- 🔴🔴 **真问题一:9223 上没有实例**。实测:`chrome_with_debugport=0`(32 个 chrome 进程**全无** `--remote-debugging-port`)、`netstat` 见 9223 **零行**、`Get-ScheduledTask` 里也没有 `bh-chrome-keepalive`。⇒ 这正是「执行会话要开浏览器却每会都错一次」的根:规则说「只连不起」,而**该被连的那个实例早没了**。
⚠️⚠️ **我第一反应做错了(本条已如实改过来)**:我照**注入上下文里的旧文案**(「保活=Windows 计划任务 `bh-chrome-keepalive`」)**重建了那个计划任务** —— 而**磁盘版 MEMORY 第 12/69 行写的是现行令**(用户 2026-10-10):「浏览器保活=**本会话后台任务**,⛔ **不建** Windows 计划任务(本机已撤 `bh-chrome-keepalive`)、⛔ **不复制副本到工作区**(启动器只用 `skills/browser-harness/agent-workspace/` 那一份)」。⇒ 已 `Unregister-ScheduledTask`(回读 `still_exists=False`);实例保留(pid 43812 仍 LISTENING,会话可直接连)。
✅ **现行起法**(照 `skills/browser-harness/SKILL.md` §1 整段抄,交给**本会话的后台任务**跑):`pythonw.exe "E:/ProgramData/.workbuddy/skills/browser-harness/agent-workspace/bh_chrome_keepalive.py" --log "E:/ProgramData/.workbuddy/tmp/_bh_chrome.log" >> "E:/ProgramData/.workbuddy/tmp/_bh_bg.out" 2>&1`。语义=「会话在、浏览器在;会话收工、浏览器随之下线」。
📌🔴 **教训(本轮最值钱的)**:**注入进来的 MEMORY 可能落后于磁盘版**,这次两版**方向相反**(旧=计划任务/新=后台任务)⇒ 我照旧文案动手,等于做了用户明令禁止的事。⇒ **动手改机制、建任务、动浏览器之前,先读磁盘版** `E:/ProgramData/AIProject/contentm_agent/.workbuddy/memory/MEMORY.md` 对时点(注入版只是缓存)。
📌 附带解释:`bh-chrome-keepalive` 早先「消失」并非自己丢的 —— 它是**规则反转后被主动撤掉的**。
📌 待收尾:工作区根 `bh_chrome_keepalive.py`(2 667 B,10-09 07:38,**已入库**)是旧规则时代的**违规副本**(现行令「⛔ 不复制副本到工作区」)⇒ 本轮已核实**全工作区无代码引用**(只有记忆文件提到),按可逆方式清出仓库。
- 🔴 **真问题二:`goal.json.execution_doc` 指着已归档的 Easel 目录**。这字段是**检查会话判断目标状态的唯一依据所指向的路径**,切目标后没人对齐 ⇒ 第 47 棒会拿 Easel 那份状态文档去判新目标。已按机制规则手工复现并改对:`执行会话/目标-侧栏改回64px基准形态并刷新按钮改ic-20a8ac/目标执行状态.md`。
- 🔴🔴 **落点三处不一致 ⇒ 已收敛到机制口径**。实测三个值各不相同:派活单写 `…左侧导航改回基准形态 64px 图标在上-41c8bd`(**属 22:39 已归档的旧目标**)/我写的 NEXT.md 是标题全称 `…改icon-20a8ac`/**机制口径**(回源码坐实 `goal_dir_name()`:`short or title` → 去非法字符 → **去空格** → **`[:20]`** → 后缀 `sha1(title)[:6]`)= `…改ic-20a8ac`(`侧栏改回64px基准形态并刷新按钮改icon` 共 22 字,**第 21 字起被截掉 ⇒ 尾巴是 `改ic` 不是 `改icon`**)。✅ 已按机制口径**建目录 + 放 `目标执行状态.md` 骨架**,并把 NEXT.md 两处落点一并改成该口径(并写明「派活单里两条旧路径都作废」)。⛔ 未改排期 prompt(重建 4000+ 字符风险大于收益;NEXT.md 是开工第 0 步必读,且派活单自称「以实际建出来的为准」)。
- ⚠️ **22:38 未触发的推断(未坐实,待观察)**:排期 `95d7e790` 原设 `22:38` 而其创建时刻已晚于该点(或等于把时间设在过去)⇒ 宿主调度器不会补跑。同批 `5587a951` 设 `22:46` 就**准点触发**(`3f59c890` created 22:46:10)⇒ 倾向「调度器正常,是时间设错」。⇒ 23:12 在**未来**,预期能正常触发。
- ⚠️ **总闸仍 `off`**(`collabctl status`:ai1net/vibe `on`、contentm_agent `off`;常驻 pid 13524 活、心跳 6 秒前)。`goalctl` 报「周期排期 0 条 ⇒ 无人值守的叫醒通道是关着的/这个需求现在是停着」。⇒ 不自动拉会话这件事**没变**,仍靠一次性棒。
## 22:46–23:0x · 第 1 棒(本会话 `3f59c890`)收口:Easel 热点雷达逆向完成并上报
- ✅ 三条判据**全部写「过」**并落 `执行会话/目标-逆向Easel热点雷达与选题链路补齐现版-547748/目标执行状态.md`(在骨架上补,加了 §一 本棒交付,⛔ 未推倒重来);主产物 `第1棒_逆向Easel热点雷达与选题链路_2026-10-10.md`(15 456 B);说人话 47/50。
- 🔴 **取证路线(可复用)**:本机 `raw.githubusercontent.com` 连不通(rc=56)⇒ 走 `api.github.com/repos/ZJU-REAL/Easel/contents/<path>` 取 base64 解码落盘。本次取 14 份成功,`web/app.py` 237 KB 也照取(先落盘再 grep,⛔ 不整份读进上下文)。
- 🔴 **Easel 热点链路的源码坐标(下次直接查,别再全仓翻)**:`web/app.py` **4666-4682**=TREND_SOURCES 六平台一主一备;**4684-4686**=标题/热度/链接的多 key 容错表;**4715-4736**=`_parse_hot` 宽容解析;**4739-4750**=`_fetch_platform` 主备降级;**4753-4775**=`/api/trends`(TTL **300 秒**、limit 夹 1..30、返回带 `ok` 区分两种空);**4890-4963**=选题库 `_ideas.json`(四字段 + 原子写)。前端:`TrendsPage.tsx` 106 行(收藏→`createIdea` source 定死;做内容→`onUseTopic`)|`App.tsx` **540-547**=生成的 prompt 原文(带「先判断它适不适合我的账号赛道」)。
- 🔴 **Easel 的判据口径(它是有逻辑的,我们缺的就是这一层)**:`skills/shared/scoring-dimensions.md` 七维(流量 25/账号匹配 20/竞争差异化 15/变现 15/时效 10/成本 8<反向>/合规 7<反向>)→ 百分制 → **≥70 做|50-69 改方向|<50 不做**;`skill-trend-rider` 另有 S/A/B/C + 生命周期四期(0-4h/4-24h/1-3d/3d+)+ 关联度高/中/低/无(**低于「中」明确建议不蹭**)。
- ⚠️ **它的两个坑别照抄**:① 已收藏状态存前端内存 `Set`,刷新即失效,后端 `createIdea` 不去重(我们 `2a` F2 已有 hash 去重 ⇒ 我们更强);② 各平台 `hot` 值量纲不统一(微博百万 vs 知乎热度),它只并排展示、没做归一化。
- 🔴 **对照出的 8 条缺口(核心两条)**:`mult` 倍数**没有分母**(原型是写死字符串,`2a` F1 未写基线统计量/窗口/样本下限);`zone` 三值**没有阈值与算法**。落地方案建议:基线=近 30 条播放量**中位数**、样本 <10 条不给倍数;异常值 ≥3.0、低粉爆款 ≥2.0 且粉丝 <1 万。⛔ **四个数值是建议值待拍板,本棒零改动**(2a/2b/原型/DESIGN 全只读)。
- ⚠️ **上报时的既有分岔重现**:`--report` 出软提醒「artifact 不在目标目录内」,因为**目标在 22:49 又被换成「侧栏改回64px基准形态并刷新按钮改icon」**,机制算出的目录是 `…-20a8ac` 而我的派活单是 `…-547748`。属既有分岔、不拒收(已实证第 4 次)。
- ✅ 域锁:开工抢 `contentm_agent/执行会话`,收工按 OWNER 的 `ME` 原文释放,复核 `.locks/` 已空。