Skip to content

生产者本机足迹查看器 + 逐条排除/撤回/个人脱敏词表#5

Merged
FakeHank merged 3 commits into
mainfrom
feat-producer-footprint
Jun 25, 2026
Merged

生产者本机足迹查看器 + 逐条排除/撤回/个人脱敏词表#5
FakeHank merged 3 commits into
mainfrom
feat-producer-footprint

Conversation

@FakeHank

Copy link
Copy Markdown
Contributor

为什么

降低被动入库者的「被监视感」,让全队愿意全员开。把黑盒变成本机可见 + 可控。
设计与决策见 docs/PRODUCER_FOOTPRINT.md

做了什么

M1 · 地基 + 只读足迹(不改上传行为)

  • core/ledger.mjs 结果账本:记每条 session 最终结果(uploaded / skipped+原因 / opted_out)+ 服务端坐标;client/sync.mjs 在 4 条采集路径的终态写账本。
  • client/viewer.mjs 常驻内嵌的 127.0.0.1 只读查看器(Node 原生 http、本地 token、仅 loopback)。用与服务端同款 core 函数本地投影出「脱敏后」正文(与库里一字不差)+ 本机原文对比;启动时从 .brain-state.json 回填历史。
  • web/viewer.{html,js} 前端:默认英文、可切中文;活动日志隐藏空转 tick。
  • brain viewer 命令 + brain status 显示地址。

M2 · 控制

  • core/optout.mjs 逐条排除:上传前闸门拦截,与 viewer 同进程即时生效。
  • server/retract.mjs + POST /retract 撤回:只能撤自己 producer-id,git rm + commit(默认仅从 HEAD 移除,git 历史仍可考古)。
  • core/userredact.mjs 个人脱敏词表:上传前在内置脱敏之后再抹,带本机命中计数。
  • 配置可视化编辑 + dry-run 差量。

验证

备注

  • 纯加法:未改动既有上传逻辑;新状态文件已加进 .gitignore
  • 未做(留作后续):overlay 手改编辑器、服务端 config-report / 全队透明页、对账视角(本机计数是按现存文件重建的,可能少于服务端,viewer 内已注明「以共享库为准」)。

🤖 Generated with Claude Code

FakeHank and others added 3 commits June 25, 2026 17:59
降低被动入库者的「被监视感」,让全队愿意全员开。设计见 docs/PRODUCER_FOOTPRINT.md。

M1 地基 + 只读足迹:
- core/ledger.mjs 结果账本:记每条 session 最终结果(uploaded/skipped+原因/opted_out)
  + 服务端坐标;client/sync.mjs 在 4 条采集路径的终态写账本(不改上传行为)。
- client/viewer.mjs 常驻内嵌的 127.0.0.1 只读查看器(Node 原生 http、本地 token、仅
  loopback),用与服务端同款 core 函数本地投影出「脱敏后」正文(与库里一字不差)+ 本机
  原文对比;启动时从 .brain-state.json 回填历史。
- web/viewer.{html,js} 前端(默认英文、可切中文;活动日志隐藏空转 tick)。
- brain viewer 命令 + brain status 显示地址。

M2 控制:
- core/optout.mjs 逐条排除:上传前闸门拦截,与 viewer 同进程即时生效。
- server/retract.mjs + POST /retract 撤回:只能撤自己 producer-id,git rm + commit。
- core/userredact.mjs 个人脱敏词表:上传前在内置脱敏后再抹,带本机命中计数。
- 配置可视化编辑 + dry-run 差量。

全套 144 测试通过。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
之前装机包只打 core/client/mcp/cli,没带 web/ → 真实安装上 viewer 页面会 404。
现补带 web/viewer.html + web/viewer.js(~44K,CSS 已内联、无外链字体);
明确不带 web/fonts、web/app.*(线上服务端查看器,server-only),装机包不变肥。
客户端依赖仍是 3 个(mcp-sdk/yaml/zod),新代码零新增依赖。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@FakeHank
FakeHank merged commit 7dd6de5 into main Jun 25, 2026
3 checks passed
@FakeHank
FakeHank deleted the feat-producer-footprint branch June 25, 2026 10:15
FakeHank added a commit that referenced this pull request Jun 25, 2026
#5 合并时漏了升版本号;不升的话已在 0.1.18 的客户端不会触发自动更新、拿不到
本机查看器(brain viewer)。bump 到 0.1.19 让全队 sync 自动拉新客户端。

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant