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
|
5d0745c470
|
项目管理界面:修列宽塌陷 + 工作区维度纠偏 + 卡片信息重排
一、修「卡片挤到一起去了」(用户 2026-10-06 报)
真因=**嵌套 grid**:renderAll 写 `<div class="cols">` 而容器 `#cols` 本身就带
`class="cols"` ⇒ 内层作为外层一个 grid item 先被压到 `min-width:auto`(399px),
再在 399px 里自己切 4 列 ⇒ 每列 89px、卡片 67px,整块挤在左边一条。
实测:col 89px / card 67px / 页高 3192px ⇒ 修后 card 377px / 页高 1415px。
处置:renderAll 只铺列,⛔ 不再包一层。
二、修「卡片上下之间的距离太远」
grid 默认 `align-items:stretch` ⇒ 12 张卡都在「已完成」、另三列空着却四列等高,
整页虚胖。改 `align-items:start` ⇒ 每列各自撑高。卡片 gap 9→6、padding 10→8、
`.col` 的 `min-height:160px`→0。
三、**工作区 / 目标 两个维度纠偏**(用户纠正:「下拉框是选工作区的 跟目标没关系」)
改前:下拉写「全部(N 个目标)」而 N 取的是 `projects.length`=工作区条数 ⇒ 混了维度。
改后:① 标签「项目」→「工作区」;② 选项文字=**目录名(+目标名)**;
③ 计数=「N 个工作区」;④ 概要条分开报「工作区 3 个 / 其中已登记目标 2 个」;
⑤ 装了机制的工作区**一律列出**(含未登记目标的,用户:「加载机制就可以显示」)。
四、修「显示的是目录名,应该是真正名称」
`name = short or title` ⇒ 登记过 short 的区一律显示短名(`vibe-product`)。
改 `title or short`;都没有 ⇒ 「未登记目标 · <dir>」(⛔ 不再印「(未命名 · …)」——
用户原话「未命名 看不懂个是什么」)。
⚠️ 核实过:这不是收工操作的副作用(goal.json 的 title/short 收工前后逐字一致)。
五、卡片信息重排(用户:「工作区名称放到卡片下面」)
末行单列工作区名(等宽字体)+ 本工作区角标;工作区名从 badge 堆里挪出来。
本工作区卡片换色突出:判定来自服务端 `self`(启动器注入
`DSH_PM_BOARD_SELF_WS`=启动器上两级),⛔ 前端不硬编码目录名。
六、修时间戳显示成 `1791957640.7257342`
台账 `t_start`/`t_end` 有两种形态(ISO 串 / **纯数字 Unix 秒**),原 fmtWhen 只认前者,
不匹配就**原样返回** ⇒ 印出一串乱数字。补:纯数字(1e9~4e9)走 Date 转本地时间。
另:A 方案(收工 vibe-product)已执行并取证 —— `--set-life 已完成` 自动调
supervise_stop,pid 432 真退出(tasklist 查无)、日志 35s 增量 0 字节(收工前每 32s +1357B)。
|
2026-10-06 09:38:28 +08:00 |
|
admin
|
d97fb0fe84
|
项目管理界面:统一视图 + 提示收进「!」 + 数据时效可见
用户口径(2026-10-06 逐字)
- 「没安装机制的工作区不显示 黄字描述都放到 !号的图标中,不显示在工作台」
- 「这里分类不要按照工作区分了,记住 项目管理是统一管理」
改动
1. 统一视图(默认「全部」)
- ⛔ 删掉「按工作区分块」,改为**一张四列看板**汇总本机所有目标的卡片
- 归属改由**卡片上的「目标」标签**体现(.badge.goal),⛔ 不靠分区
- 选择器默认「全部(N 个目标)」;选单个目标仍可切到单项目视图
- 顺带删掉随分区一起废掉的样式(projgroup/pghead/lane* 等,共 15 行死代码)
2. 提示一律收进右上角「!」图标
- 工作台上去掉所有黄字横幅(原来是 notice 容器)
- 「!」无内容时淡显且不可点;有内容时点开弹层、点外面/Esc 关闭
- 未装机制的工作区**彻底不显示**(含原来那行「扫到但没装机制 N 个目录」)
⚠️ 后端仍保留 `skipped` 字段(只给 CLI/取证用),UI 不再展示
3. 数据时效可见 + 自动刷新
- 服务出快照时带 `epoch`;页面读数「数据 N 秒前」**只用服务的 epoch 算**,
⛔ 不用本地 Date.now() 顶上(否则刷新一次就"变新",看不出数据其实没动)
- 超 15 秒 ⇒ 读数转黄(.is-stale),一眼看出"只是轮询、数据没动"
- 每秒重画时效读数(⛔ 不重新取数)
- 轮询自适应:数据有变化 ⇒ 3 秒一探;连续 3 次没变 ⇒ 放到 15 秒;一变立刻回收
- 「刷新」按钮改手动模式:扫描中/已刷新有即时反馈(toast)
4. 操作反馈改一次性 toast(新建/删除/失败),⛔ 不常驻工作台
实测(浏览器侧,强刷新避开缓存)
- 6 张卡片全部落在一张四列板上,标签正确(本机协作 ×1 / vibe-product ×11)
- 四个列标题只出现一次(不再是每区一套)
- 「!」有 1 条内容、默认收起、点击展开、再点关闭
- 时效读数「数据 2 秒前」正常跳动
|
2026-10-06 09:17:17 +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
|
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
|
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
|
6ece092782
|
chore(交付件): 第 36 棒收口补记(提交 6aa8811 / 推送 / 对账 0 0 / 域锁释放口径)
|
2026-09-26 00:06:35 +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
|
9a2896f179
|
引用纠偏: 工作区 16 件旧路径 AI技能->AIProject + 接续包 §6 执行记录
|
2026-09-24 08:25:34 +08:00 |
|
admin
|
75c661226b
|
docs(体检): 引用/技能/规则体检报告 + 引用与技能纠偏接续包
- 规则正常:文档库自检四件套 rc=0,双端对账 289/289
- 引用不正常:工作区 09-23 改名 AI技能→AIProject,153 文件仍写旧路径(工作区 107 / 文档库 46)
- 技能不正常:库↔本机 12 技能中 8 个不一致(16 文件),根因=09-24 06:0x 批量改名在 08-skills 内过度替换
- 已注册执行棒 automation 8117f930(08:15)
|
2026-09-24 08:08:21 +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 |
|