dsh-report-ledger 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -31,8 +31,8 @@ dsh plugin --profile web remove dsh-report-ledger
31
31
 
32
32
  ```sh
33
33
  # 1) 下载发行版附件(预构建产物,不需要构建工具链)
34
- # https://gitee.com/stone_zhan/dsh-report-ledger/releases/download/v0.2.1/dsh-report-ledger-0.2.1.tgz
35
- dsh plugin --profile web add ./dsh-report-ledger-0.2.1.tgz
34
+ # https://gitee.com/stone_zhan/dsh-report-ledger/releases/download/v0.2.2/dsh-report-ledger-0.2.2.tgz
35
+ dsh plugin --profile web add ./dsh-report-ledger-0.2.2.tgz
36
36
 
37
37
  # 2) 或直接从 Gitee 安装(安装时自动构建,约 15 秒)
38
38
  dsh plugin --profile web add git+https://gitee.com/stone_zhan/dsh-report-ledger.git
@@ -298,7 +298,7 @@ worktree:
298
298
  | 协议 | `plugin:report-ledger` / 200 | 静态字符串 | 对所有 agent **逐字节相同**,因此是各 scope 里稳定的提示词前缀(KV cache 友好) |
299
299
  | 伙伴契约 | `plugin:report-ledger:partnership` / 201 | 按 assembly 求值的函数 | 契约要对两种读者说不同的话 |
300
300
 
301
- **协议段**说明账本是什么、各工具做什么(十四个;工作区功能关闭时不暴露 `report_lease`),以及会改变行为的约定:收件方不在线不是错误(投递会被持有);路径由账本自动记录,但每一步都必须经工具完成;工作区若启用,独立的是哪些、共享的是哪些。协议段为了保持前缀逐字节相同而**不按部署改写**,工作区的"有/没有"这一部署差异写在下面的伙伴契约段里。
301
+ **协议段**说明账本是什么、各工具做什么(十四个;工作区功能关闭时不暴露 `report_lease`),以及会改变行为的约定:收件方不在线不是错误(投递会被持有);路径由账本自动记录,但每一步都必须经工具完成;工作区若启用,独立的是哪些、共享的是哪些;**会话或网络中断后先对账再继续**——用 `report_list` / `peer_list` 找到最后落下的跳、谁已交付、谁还在线,以汇报正文/任务标签/传递路径为检查点,不从头重做,重试前先确认动作是否已经落地。协议段为了保持前缀逐字节相同而**不按部署改写**,工作区的"有/没有"这一部署差异写在下面的伙伴契约段里。
302
302
 
303
303
  **伙伴契约段**分两种读者:
304
304
 
@@ -680,7 +680,7 @@ DSH 的委派层拒绝非相邻通信,源码原话是"其他代理、祖先、
680
680
 
681
681
  ```sh
682
682
  pnpm build # 产出 lib/index.js(host 半)与 lib/client.js(client 半)
683
- pnpm test # 十套确定性检查共 883 项断言:账本内核与生命周期 135 + 提示词角色分流 58
683
+ pnpm test # 十套确定性检查共 887 项断言:账本内核与生命周期 135 + 提示词角色分流 62
684
684
  # + 时间线装配与路由守卫 77
685
685
  # + 时间线模型(筛选/线程/空状态/身份/正文/围栏)102
686
686
  # + 卡片画布模型(分档尺寸/帧装箱/收件口/沟槽/剔除/视口/拾取/填满宽度)109
@@ -823,16 +823,19 @@ Gitee 自带的「仓库镜像管理」在本账号不可用(`GET /api/v5/repo
823
823
 
824
824
  - 工作流 `.github/workflows/mirror-to-gitee.yml`,在 `main` 与 `v*` tag 的 push 后镜像**所有分支 + tags**;
825
825
  Gitee 上已存在的 tag 不会被更新(只补缺失的),所以同一个 tag 在两边的对象类型不同也不会让 job 变红;
826
+ - **tag 推送(或手动 `workflow_dispatch`)还会创建/复用 Gitee release,并把从该 tag 归档构建的 tarball
827
+ 附上去**(`scripts/gitee-release.sh`,幂等;main 推送只镜像 git 对象,不碰 release API);
826
828
  - 凭据是 GitHub 仓库 Secret `GITEE_TOKEN`(Gitee 私人令牌,只需 `projects` 权限)。
827
829
  **令牌有有效期,过期后要重新生成并 `gh secret set GITEE_TOKEN`**,否则工作流会认证失败;
828
830
  - 令牌只经 `credential.helper` 按需交给 git,不写进 remote URL,所以不会落进 `.git/config` 或命令输出。
829
831
 
830
- 发行版附件**不在自动同步范围内**,需要单独上传;注意附件接口要求令牌放在 **query** 上,
832
+ release 创建/上传失败时,先 `gh workflow run mirror-to-gitee.yml --ref main` 重跑(脚本会复用已有 release、
833
+ 已存在的附件不重复上传);也可以按下面的手工命令单独补传。注意附件接口要求令牌放在 **query** 上,
831
834
  放 form 里会得到 `401 登录失效`(实测):
832
835
 
833
836
  ```sh
834
837
  curl -X POST "https://gitee.com/api/v5/repos/stone_zhan/dsh-report-ledger/releases/<release_id>/attach_files?access_token=<token>" \
835
- -F "file=@dsh-report-ledger-0.2.1.tgz"
838
+ -F "file=@dsh-report-ledger-0.2.2.tgz"
836
839
  ```
837
840
 
838
841
  ## 已知限制
package/lib/index.js CHANGED
@@ -176,12 +176,13 @@ const PROTOCOL = [
176
176
  "独立的只有**工作目录与索引**;config、hooks、对象库、以及机器上一切检出之外的东西都是**共享**的——装一个 hook 或改一项配置,会影响所有检出里每一次提交。",
177
177
  "一个分支同一时刻只能被一个检出占用,所以它同时也是一把锁:认领已有检出用 report_lease,交还用 report_release,结案会自动交还。被占用时会明确告诉你占用者是谁。",
178
178
  "",
179
- "五条行为约定:",
179
+ "六条行为约定:",
180
180
  "1. 收件方不在线不是错误。投递由账本持有,等该会话重新驻留时自动送达;不要因为对方此刻不在就放弃交接、或改为自己扛下。",
181
181
  "2. 传递路径(含每一份抄送与副本)由账本自动记录,不需要你手工维护——但每一步都必须经工具完成,绕过工具的口信不会进入路径。",
182
182
  "3. **一份汇报不断累积 contribution 就是你们之间的对话线程。** 多轮交流不必另开通道:把每一轮追加进同一份汇报,共写者与传递路径都会自动记录,日后可完整回放。",
183
183
  "4. 回执(report_ack)与结案(report_close)是两件事:回执表示\"我收到了\",结案表示\"这件事结束了\"。别用回执代替结案,也别把还在推进的汇报关掉——真关了也安全,后续活动会自动重开。",
184
- "5. **写错了就用 report_amend 修正,不要重开一份新汇报**——重开会丢掉原有的传递路径与收件人。改错别怕留痕:修正会被记成一跳,附上改前改后的值,这正是账本该有的样子。"
184
+ "5. **写错了就用 report_amend 修正,不要重开一份新汇报**——重开会丢掉原有的传递路径与收件人。改错别怕留痕:修正会被记成一跳,附上改前改后的值,这正是账本该有的样子。",
185
+ "6. **会话或网络中断后,先对账再继续,不要从头重做。** 用 report_list / peer_list 找到最后落下的跳、谁已交付、谁还在线;把汇报正文、任务标签与传递路径当作检查点。断点若在写操作中间,先读回半完成状态再决定重试或回滚;重试投递或创建前,先确认它是否已经落地。"
185
186
  ].join("\n");
186
187
  /**
187
188
  * Describe one assembly's reader.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-report-ledger",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "Report-and-ledger plugin for DSH: front-matter 汇报 as the first-class agent-to-agent interaction primitive, with upward/downward delivery, co-authorship, CC, and a complete transfer-path audit trail; plus a conversation timeline tab.",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",