31 Commits
Author SHA1 Message Date
admin df9dcfb2b3 chore(记忆): 状态层瘦身 8296→7649(修三处硬伤:作废的会话类别口径/错的工作区路径/死指针;压掉已下沉的细节) 2026-10-10 23:35:52 +08:00
admin 8f92ad6cb8 chore(记忆): 收口记录(技能库推送 fd9c902 · 清理后 566M→144M · 保留 supervise-inbox 的原因) 2026-10-10 23:28:50 +08:00
admin 7cb3834b47 chore(记忆): 补今日日志(仓搬迁两步 · 技能库清理 · 浏览器孤儿守卫排查) 2026-10-10 23:28:12 +08:00
admin c1b5e4d966 chore(工作区): 全量入库 + 补齐 .gitignore(以工作区为准)
- 变更规模:新增 514 / 修改 62 / 重命名 155 / 删除 4(归档重组与文档轮次)
- .gitignore 修:`归档/**/db-cwd归一-备份-*/` —— 原规则写绝对层级(归档/db-cwd归一-…),
  目录搬进 归档/配置与备份/ 后**静默失效**,43 MB 的 DB 备份又变成未跟踪
- .gitignore 补:嵌套 git 内部数据(归档/内嵌git-20261008/、归档/skills-git-旧线-20261007/dotgit-原样移出/)
- .gitignore 补:运行态与部署副本(.workbuddy/collab/、.workbuddy/tools/、.workbuddy/.load-pending、.workbuddy/tmp-*)
- .gitignore 补:备份件(*.bak-*)
- 未跟踪文件从 2190 降到 890(其余为 归档/ 归档件与 .workbuddy/memory/ 知识文件,按口径入库)
2026-10-10 23:13:22 +08:00
admin c510b84bdc 日志补 §56:两部分内容去重归位会话机制(含一次过头改写与回滚记录) 2026-10-06 22:51:03 +08:00
admin e9fb7b33e5 排版:待拍板项强制四行竖排;决策注入补两个停止点与排序轴;日志 §55 2026-10-06 22:42:47 +08:00
admin a7123a2af3 日志补 §54:承认越界上抛;按决策方法自决完成技能仓同步(快进推送 64dd820) 2026-10-06 22:28:03 +08:00
admin 2c22a8c0e1 日志补 §53:技能仓推送停在红线前(远端重建为去凭据)
- 工作区仓已推(4106327);技能仓本地提交 c4de1ae 未推。
- 远端 workbuddy_skills 已被重建为「仅收录 session-mechanism」且不含 .neodata_token;
  本地 master 为 25 技能且**当前版本仍跟踪该凭据文件** ⇒ 强推=把凭据推回远端,属安全事件,停手上抛。
2026-10-06 22:15:52 +08:00
admin 4106327424 排版规则补「变相征询」禁令;日志补 §49–§52
- CODEBUDDY.md:REPLY-CORE 块由 apply-reply-rules.py 重新生成
  (核心块 562 → 835 字符),新增「变相征询同样禁止」条款。
- 工作区日志 2026-10-06:补 §49(vibe 技能指针假红)、§50(统一用工作区版本=既有设计)、
  §51(技能机制全量体检:stop-dialog-guard 崩溃 + 2 处判据缺陷,均已修并变异对照)、
  §52(提问机制核实:规则每轮都在注入,失的是执行;并补堵变相征询缺口)。
2026-10-06 22:14:47 +08:00
admin f97541fd29 memory: §44 A方案收工vibe-product(已取证) + 界面四处返修(嵌套grid/虚胖/维度纠偏/命名) 2026-10-06 09:39:24 +08:00
admin ee9b4f673b memory: §42 界面统一视图/提示收进!/数据时效 + §43 vibe-product 核查三条新问题 2026-10-06 09:18:07 +08:00
admin 89f820a0f8 项目管理界面:改为跨工作区 + 增删落地(回收站走 SHFileOperationW)
用户口径:「项目管理管的是本机所有工作区的项目 不是单个工作区的,可以
通过项目管理工具 创建新目标(新工作区),管理目标」。

数据面
- ⛔ 不再拉「单一上游看板」(并非每个区都起着 board.py ⇒ 会静默漏区)
- ✅ 直读各区文件:goal.json / tasks.json / collabd-state.json / collabd.config.json
- 「装了机制」判据=有 collabd.config.json 或 goal.json;跳过的也带出来
  (skipped 列表,同族 P0「作用域不许静默排除」)

增删
- 增:POST /api/create → init_workspace.py(骨架+目标登记)
- 删(轻):POST /api/delete{mode:"goal"} ⇒ goal.json 改名归档(可逆)
- 删(重):POST /api/delete{mode:"ws"} ⇒ 送系统回收站(可逆)

回收站:本机 gio/trash-put/trash 全没有,PowerShell Add-Type 被安全策略
拦 ⇒ 改走纯 ctypes 调 Windows Shell API SHFileOperationW。两个坑:
  ① pFrom 必须手搓双 NUL 结尾缓冲(LPCWSTR 会在第一个 NUL 截断)
  ② 判据⛔ 不是 rc==0 —— 实测成功时 rc 恒为 2(Shell 脏状态)⇒ 假报错。
     真判据=原路径不存在 且 fAnyOperationsAborted 为假

其它修复
- init_workspace.py 子进程输出按 GBK 解码 ⇒ 中文乱码 ⇒ 显式 encoding=utf-8
- 起服务只许触发计划任务(裸 & 活不过工具调用边界,被 SIGTERM)

实测:列表 3 个项目 + 12 个未装机制目录;增删两种粒度 HTTP 端到端全通;
      _pmtest-* 五个测试目录已进回收站且可恢复($I 元数据逐条核对)。
2026-10-06 09:01:10 +08:00
admin 0cf981f419 memory: goalctl 两处口径分叉修复记录(§40)+ vibe-product 收口挂账 2026-10-06 08:46:08 +08:00
admin 1b68b1ac3f 项目管理界面:照 dsh-task-board 模式新建(目标=项目 · 只读复用现有看板 · 端口20100)
用户逐字:「不动现有任务会话看板 不是让你整体搬是照的他的模式做一个 项目管理的界面
          来管理 执行任务,目标等于项目」

- 新增 交付物/项目管理界面/{project-board.py,.html,-launch.py}
- 映射:目标→项目、任务类别→工作流、台账条目→卡片、会话→可跳转
- 数据源=现有看板已算好的 /board.json(⛔ 不重算、⛔ 不直读台账)
- 列=机制真实四态(待执行/执行中/有阻碍/已完成),⛔ 不硬套它那五列
- 现有看板 20099 / board.py / board.html 零改动
- 坑:pythonw.exe 下 sys.stdout is None ⇒ print/flush 崩(终端好、计划任务死)⇒ 加 _say() 兜
2026-10-06 08:23:15 +08:00
admin 87a9c97b54 memory: 2026-10-06 评估 dsh-task-board 移植可行性(宿主不同、不可移植,可借两处设计) 2026-10-06 05:16:49 +08:00
admin 1c5ee377ff memory: 2026-10-06 tab 按创建时间排序(含 declared_at 被块丢掉的静默坑) 2026-10-06 05:11:12 +08:00
admin 746e4f2afe memory: 2026-10-06 看板改名「检查程序」+ 队列按目标过滤(含行尾 CRLF 坑) 2026-10-06 04:49:24 +08:00
admin 77b9f733e6 chore(automation记忆): 35e1bfbc 补规划棒/拍板落地棒两节(含新增铁律)
- 规划棒 p36c:只读取证 + 出方案;根因 = src/worker/agent.ts:376 的 20s 超时常量被对账 :426 与下载 :508 共用;另 7 条 D2–D8
- 拍板落地棒 p36d:口径(C案=层A+B-1~B-4 → B案=层B-5,层C 不做)/落盘 5 处/提交 2a1226c→90acb1c 对账 0 0/automation PAUSED+登记/锁反序释放
- 事故与铁律:禁用 open(...,"wb").write(表达式) 复合式(open 先截断、表达式后求值 ⇒ 入口被清 0 字节,已无损复原)
- 下一棒(da73ab87)必读:唯一执行单 + 第一件事为取证设备侧载体
2026-09-26 06:50:47 +08:00
admin 90acb1c030 docs(平台线): 补 §9 收口记录(命令原文+输出原文+退出码)
- 本件新增 §9:落盘四处 / 事故与无损复原 / 提交推送对账 / 文档库侧 / automation / 锁
- 日志追加上节「收口(06:4x–06:5x)」:提交 2a1226c · 推送 · 对账 0 0 · 仅 3 件入库 · 未碰他线

判据留档要点
- 入口被清 0 字节事故:复核命令 git hash-object == git rev-parse HEAD:<file>(1d44073b…)
- 新增铁律:禁用 open(...,"wb").write(表达式) 复合式(open 先截断,表达式后求值)
- docs-sync-check ❌ 差异 21+4 全为他线在途,非本线引入
2026-09-26 06:47:23 +08:00
admin 2a1226ca13 docs(平台线): 版本管理与包更新机制 拍板落地(C案→B案 · 执行棒登记)
用户拍板(2026-09-26 06:36 原话):
  「C 方案,然后B,这次就用版本更新机制去更新网络上各节点,子节点和设备」

口径(唯一执行单 = 交付物/版本管理与包更新机制-现状与方案-20260926.md)
- 用户说的 C 案 = 层 A(止血)+ 层 B-1~B-4(版本目录化 / channel 灰度 / 定向钉版 / 设备纳入)
- 随后做的 B 案 = 层 B-5(全局版本矩阵视图)
- 层 C 跨区拓扑本次不做(属覆盖网络线),但实现须兼容其口径
- 收尾必须真跑一次分发到 47 本机 worker + 106 子节点 + 设备
- 执行棒第一件事 = 取证设备(桌面端)侧载体(承缺陷 D6)

本棒产出
- 交接单 §5 改为「已拍板」+ 新增 §8 执行棒细化(S1 止血 → S2 完整版本管理 → S3 全局矩阵视图 → S4 真跑分发)
- 入口 §0 落 06:36 拍板行 + §2 落续作二/续作三注
- 05-交接单/README.md §一 第 44 行追加拍板(该目录 gitignore → 不入库,按既有口径)
- 执行棒 automation da73ab87-fb2f-47f0-a8d8-8ea3ad35eb19(一次性 · 2026-09-26T06:52)

事故与判据(已自愈 · 无损)
- tmp/p36/patch-c3.py 复合式 open(P,"wb").write(join(...)) —— Python 先求值 open() 即截断,
  join() 再抛 TypeError ⇒ 入口被清成 0 字节;已 git checkout -- 复原(341,330 B / 968 行,
  sha 1d44073b… 与 HEAD 逐字节一致),随后改用 Edit 精确片段替换补写
- 新增铁律:改共享文件只准 Edit 片段替换,或「先算全量 bytes 再一次性写」;
  禁用 open(...,"wb").write(表达式) 复合式

边界
- 未改 D:/github/dsh_shenxian/src/** 一行(只读取证)
- 未 ssh 真机做任何变更;未碰他线在途改动(CODEBUDDY.md / state.py / MEMORY.md 等)
2026-09-26 06:45:59 +08:00
admin a38d8b674d docs(平台线): 版本管理与包更新机制现状与方案(规划棒产出 · 根因=20s 超时常量共用) 2026-09-26 06:31:35 +08:00
admin df876aec90 chore(工作区): 第 36 棒续作收口(A2 实例进程内面达成 · A8 改判)
- 拍板①「A」:实例一直在跑(实时视图 running@20001);进程内 /mcn/api/accounts 200 · total:5
  ⇒ A2 实例进程内面达成。纠正上一棒:其判「stopped」所据 PG dsh_instances.status 是滞后失真
- 拍板②「worker 用插件更新机制」:机制已落地且在跑(agent POST /shared-layer/pull + 定时轮询)
  真机对账快照 w-106 @23:52:11:stale:[mcn-suite] + failed:[timeout]
  ⇒ 106 自主拉取成立、该件拉取超时失败 ⇒ A8 由「未取证」改判为「机制在跑 · 该件超时」
- 平台侧问题(拉取超时 / 台账滞后)只报告不改码
- 收尾:R4 临时会话 DELETED=1 / POC_LEFT=0;未启动未停止任何实例
2026-09-26 00:36:34 +08:00
admin 6aa8811086 chore(工作区): 插件投放与分库线收口入库(第 36 棒 · 三表切 platform)
- ① 修 canonicalJsonText() 键序敏感(新增 sortKeysDeep + 导出 canonicalStringify)⇒ 单测 67/67、本机证明 10/10
- ② 出包 0.5.1(2,018,751 B / 324 条目 / md5 56c17c7e41a18704922e18d75816da59)→ 上池 → share 200 action:"replaced"
- ③ 删本地 5 条重复 aweme_id 旧副本 ⇒ account_video_source 39 → 34(留档 .bak + dump + export-dup5.json)
- ④ 影子读全绿:34=34 / 362=362 / 5=5;三表 match=true;正文 34/34 · 分析 34/34 · 差异 0
- ⑤ 三表切 platform ⇒ 实例 data-plane.json 7 表全 platform;A2 取数口面 TOTAL_WRITES=0
- ⛔ 未达成:A2 真实例进程内(实例 stopped,启停属控制面职责);A8 两机一致(106 无 ssh 通道)
- 收尾:R10 ROOT_OWNED_COUNT=0;R4 临时会话 DELETED=5 / POC_LEFT=0;47 /tmp/p36* 清零

交付件 = 交付物/MCN数据面接入-阶段二-切档与收口-20260925.md
2026-09-26 00:05:19 +08:00
admin 318430c9e9 chore(工作区): 插件投放与分库线收口入库(第 35 棒 + 22:44 拍板落盘)
范围 = 本线(插件投放与分库线)产物 + 记忆类,共 27 件:
- 接续入口_插件投放与分库线(1 件):§0 新增 22:44 拍板行;§2 第 36 棒范围改 5 步、条件步转无条件
- 交付物(22 件):MCN 数据面接入阶段一/阶段二系列(含 B 案落地与 shadow 读数)、
  P0 修通与移动端真机验收、pnpm-EPERM、两机 lib 差异、共享层台账语义、
  基础插件身份与回滚、插件接入验收、插件数据面取数口、移动端迁包与字号扩面、跨机错误消息
- 记忆(4 件):2026-09-24 / 2026-09-25 日志、MEMORY.md、本棒 automation 执行记录

⛔ 未含他线在途改动(只报告、不代提交):机制层 CODEBUDDY.md / state.py /
.codebuddy/rules/server-ops.md、接续入口_IM线、接续入口_StoryForge验收线、
其余 29 个 automation 目录、docs/规则与载体/、归档/、接续包_*。
2026-09-25 23:06:29 +08:00
admin c1461fd958 引用纠偏补修: 接续包 §6 补记推镜像与开源根常量修正 2026-09-24 08:40:27 +08:00
admin 9a2896f179 引用纠偏: 工作区 16 件旧路径 AI技能->AIProject + 接续包 §6 执行记录 2026-09-24 08:25:34 +08:00
admin 12e9497609 chore(memory): 同步接续包最终 md5 = ab17bde7bb65782d10be7d122546a8c5 2026-09-24 08:11:20 +08:00
admin 17e209279f chore(接续包): 补「叙述旧名件不回改」口径 + 记体检日志
- 接续包 §3.1 增一行:本包与体检报告正文里的 AI技能 是旧名叙述,不是待执行路径
- 验收口径明确:用 §3.1 逐条清单统计,不用 grep -rl 全量计数
- 今日日志与 automation 记忆追加本棒执行摘要
- 接续包 md5 更新为 ab17bde7bb65782d10be7d122546a8c5(automation 8117f930 已同步)
2026-09-24 08:10:26 +08:00
admin 7bd1151c67 chore(工作区): 归档交接单 27 件 + 新增 CODEBUDDY §9 工作区卫生
交接单按归属约定(正文落文档库、工作区只放指针)归档至
归档/交接单-20260924-归档/,含逐件判定 README:
- 16 件已被文档库正式版取代(T09–T21 + 覆盖网络-24/25/26)
- 4 件主题已被覆盖网络线入口汇总
- 7 件历史接续包/规划件

CODEBUDDY §9:收口清本棒 tmp、tmp 保留期 7 天、禁「待清理」中间态、
工作区入库只放文档与文件、不保留脚本副本、>60 KB 单文件须逐个判。
2026-09-24 07:58:57 +08:00
admin a5b3a76cd3 chore(工作区): 撤除 scripts/ —— 两脚本皆失效,改用绝对路径调文档库 07-scripts/
_lock.sh 为一次性临时脚本(会话名写死),docs-sync-check.sh 为文档库版的
陈旧重复(2024 B vs 4516 B)。两者移入 归档/工作区-scripts-撤除-20260924/
并附理由 README。约定:工作区不保留脚本副本,避免漂移。
2026-09-24 07:52:12 +08:00
admin ce8e6ceed9 chore(工作区): 纳入版本控制基线(回收 411 MB 过程产物)
回收 411 MB(470 M → 58.8 M),全部经回收站,可恢复:
- 待清理/(146.2 M,含 relay 分片 128 M 与 42 项过程目录)
- tmp/(32.4 M,按接续棒命名的过程临时区)
- .workbuddy/tmp/(39.5 M)
- 4 份 workbuddy.db 冗余副本(101 M,09-23 事故的坏副本 / 抢救产物)
- tmp/im16/gw/centrifugo 二进制(63.9 M,可重下)+ 缓存残留

入库范围:常驻规则(CODEBUDDY.md / README.md / state.py)、在途接续入口与
接续包、docs/、交付物/、交接单/、归档/、scripts/、.codebuddy/、
.workbuddy/memory/;共 398 件,其中 >60 KB 的 26 件全为文档。

排除(.gitignore):tmp/、待清理/、运行态日志与缓存、*.db 与 DB 备份整目录、
打包二进制(*.tar.gz / *.tgz)、记忆修复前备份。
2026-09-24 07:51:03 +08:00