dsh-plugin-guide 0.3.10 → 0.3.16

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.
Files changed (431) hide show
  1. package/README-es.md +13 -3
  2. package/README-hi.md +13 -3
  3. package/README-pt.md +13 -3
  4. package/README-zh.md +13 -3
  5. package/README.md +12 -3
  6. package/SKILL.md +1 -1
  7. package/guide/links.md +1 -0
  8. package/guide/unfixed-issues.md +111 -0
  9. package/package.json +1 -1
  10. package/references/official-docs/AGENTS.md +74 -49
  11. package/references/official-docs/README.i18n.yaml +2 -2
  12. package/references/official-docs/README.zh.md +12 -0
  13. package/references/official-docs/SNAPSHOT.md +4 -4
  14. package/references/official-docs/THIRD_PARTY_NOTICES.md +86 -30
  15. package/references/official-docs/docs/AGENTS.md +7 -6
  16. package/references/official-docs/docs/agent-lifecycle.i18n.yaml +2 -2
  17. package/references/official-docs/docs/agent-lifecycle.md +12 -5
  18. package/references/official-docs/docs/agent-lifecycle.zh.md +12 -5
  19. package/references/official-docs/docs/api-gateway.i18n.yaml +2 -2
  20. package/references/official-docs/docs/api-gateway.md +2 -2
  21. package/references/official-docs/docs/api-gateway.zh.md +2 -2
  22. package/references/official-docs/docs/architecture.i18n.yaml +2 -2
  23. package/references/official-docs/docs/architecture.md +26 -12
  24. package/references/official-docs/docs/architecture.zh.md +28 -14
  25. package/references/official-docs/docs/capability-seams.i18n.yaml +2 -2
  26. package/references/official-docs/docs/capability-seams.md +111 -31
  27. package/references/official-docs/docs/capability-seams.zh.md +111 -31
  28. package/references/official-docs/docs/config-catalog.i18n.yaml +2 -2
  29. package/references/official-docs/docs/config-catalog.md +674 -202
  30. package/references/official-docs/docs/config-catalog.zh.md +691 -219
  31. package/references/official-docs/docs/cookbook/adding-a-session-format-version.i18n.yaml +6 -0
  32. package/references/official-docs/docs/cookbook/adding-a-session-format-version.md +111 -0
  33. package/references/official-docs/docs/cookbook/adding-a-session-format-version.zh.md +111 -0
  34. package/references/official-docs/docs/cookbook/adding-a-settings-card.zh.md +1 -1
  35. package/references/official-docs/docs/cookbook/adding-a-tool.i18n.yaml +2 -2
  36. package/references/official-docs/docs/cookbook/adding-a-tool.md +2 -2
  37. package/references/official-docs/docs/cookbook/adding-a-tool.zh.md +4 -4
  38. package/references/official-docs/docs/cookbook/adding-a-vendored-package.i18n.yaml +2 -2
  39. package/references/official-docs/docs/cookbook/adding-a-vendored-package.md +1 -1
  40. package/references/official-docs/docs/cookbook/adding-a-vendored-package.zh.md +1 -1
  41. package/references/official-docs/docs/cookbook/adding-an-llm-adapter.zh.md +1 -1
  42. package/references/official-docs/docs/cookbook/extension-cookbook.i18n.yaml +2 -2
  43. package/references/official-docs/docs/cookbook/extension-cookbook.md +3 -3
  44. package/references/official-docs/docs/cookbook/extension-cookbook.zh.md +5 -5
  45. package/references/official-docs/docs/cookbook/responding-to-pr-review-on-a-stack.i18n.yaml +2 -2
  46. package/references/official-docs/docs/cookbook/responding-to-pr-review-on-a-stack.md +1 -1
  47. package/references/official-docs/docs/cookbook/responding-to-pr-review-on-a-stack.zh.md +1 -1
  48. package/references/official-docs/docs/cookbook/reviewing-persistence-type-changes.i18n.yaml +6 -0
  49. package/references/official-docs/docs/cookbook/reviewing-persistence-type-changes.md +108 -0
  50. package/references/official-docs/docs/cookbook/reviewing-persistence-type-changes.zh.md +108 -0
  51. package/references/official-docs/docs/cordis-api/fiber.i18n.yaml +2 -2
  52. package/references/official-docs/docs/cordis-api/fiber.md +3 -3
  53. package/references/official-docs/docs/cordis-api/fiber.zh.md +3 -3
  54. package/references/official-docs/docs/cordis-api/inherited.md +0 -3
  55. package/references/official-docs/docs/cordis-tutorial/06-composition-and-hmr.i18n.yaml +2 -2
  56. package/references/official-docs/docs/cordis-tutorial/06-composition-and-hmr.md +2 -2
  57. package/references/official-docs/docs/cordis-tutorial/06-composition-and-hmr.zh.md +2 -2
  58. package/references/official-docs/docs/deepseek-llm-api-wire-extensions.i18n.yaml +2 -2
  59. package/references/official-docs/docs/deepseek-llm-api-wire-extensions.md +14 -15
  60. package/references/official-docs/docs/deepseek-llm-api-wire-extensions.zh.md +15 -16
  61. package/references/official-docs/docs/dependency-catalog.json +7312 -0
  62. package/references/official-docs/docs/development.i18n.yaml +2 -2
  63. package/references/official-docs/docs/development.md +13 -3
  64. package/references/official-docs/docs/development.zh.md +16 -6
  65. package/references/official-docs/docs/event-producer-consumer.i18n.yaml +2 -2
  66. package/references/official-docs/docs/event-producer-consumer.md +50 -39
  67. package/references/official-docs/docs/event-producer-consumer.zh.md +55 -44
  68. package/references/official-docs/docs/glossary.i18n.yaml +2 -2
  69. package/references/official-docs/docs/glossary.md +1 -1
  70. package/references/official-docs/docs/glossary.zh.md +1 -1
  71. package/references/official-docs/docs/i18n/README.i18n.yaml +2 -2
  72. package/references/official-docs/docs/i18n/README.md +8 -3
  73. package/references/official-docs/docs/i18n/README.zh.md +8 -3
  74. package/references/official-docs/docs/i18n/style-samples.md +1 -1
  75. package/references/official-docs/docs/i18n/translation-prompt.md +5 -5
  76. package/references/official-docs/docs/i18n/translation-rules.zh.md +2 -2
  77. package/references/official-docs/docs/module-graph.i18n.yaml +2 -2
  78. package/references/official-docs/docs/module-graph.md +303 -120
  79. package/references/official-docs/docs/module-graph.zh.md +303 -120
  80. package/references/official-docs/docs/persistence-catalog.i18n.yaml +2 -2
  81. package/references/official-docs/docs/persistence-catalog.md +5699 -64
  82. package/references/official-docs/docs/persistence-catalog.zh.md +5708 -73
  83. package/references/official-docs/docs/persistence-changes/2026-09-11-initial.i18n.yaml +6 -0
  84. package/references/official-docs/docs/persistence-changes/2026-09-11-initial.md +280 -0
  85. package/references/official-docs/docs/persistence-changes/2026-09-11-initial.schema.json +13557 -0
  86. package/references/official-docs/docs/persistence-changes/2026-09-11-initial.zh.md +280 -0
  87. package/references/official-docs/docs/persistence-changes/2026-09-12-auto-review-error-metadata.i18n.yaml +6 -0
  88. package/references/official-docs/docs/persistence-changes/2026-09-12-auto-review-error-metadata.md +52 -0
  89. package/references/official-docs/docs/persistence-changes/2026-09-12-auto-review-error-metadata.schema.json +910 -0
  90. package/references/official-docs/docs/persistence-changes/2026-09-12-auto-review-error-metadata.zh.md +52 -0
  91. package/references/official-docs/docs/persistence-changes/2026-09-14-image-offload.i18n.yaml +6 -0
  92. package/references/official-docs/docs/persistence-changes/2026-09-14-image-offload.md +96 -0
  93. package/references/official-docs/docs/persistence-changes/2026-09-14-image-offload.schema.json +8478 -0
  94. package/references/official-docs/docs/persistence-changes/2026-09-14-image-offload.zh.md +96 -0
  95. package/references/official-docs/docs/persistence-changes/2026-09-14-workspace-changes-event.i18n.yaml +6 -0
  96. package/references/official-docs/docs/persistence-changes/2026-09-14-workspace-changes-event.md +48 -0
  97. package/references/official-docs/docs/persistence-changes/2026-09-14-workspace-changes-event.schema.json +72 -0
  98. package/references/official-docs/docs/persistence-changes/2026-09-14-workspace-changes-event.zh.md +48 -0
  99. package/references/official-docs/docs/persistence-changes/README.i18n.yaml +6 -0
  100. package/references/official-docs/docs/persistence-changes/README.md +74 -0
  101. package/references/official-docs/docs/persistence-changes/README.zh.md +74 -0
  102. package/references/official-docs/docs/persistence-changes/historical-formats/README.i18n.yaml +6 -0
  103. package/references/official-docs/docs/persistence-changes/historical-formats/README.md +74 -0
  104. package/references/official-docs/docs/persistence-changes/historical-formats/README.zh.md +74 -0
  105. package/references/official-docs/docs/persistence-changes/historical-formats/v0.i18n.yaml +6 -0
  106. package/references/official-docs/docs/persistence-changes/historical-formats/v0.md +5105 -0
  107. package/references/official-docs/docs/persistence-changes/historical-formats/v0.schema.json +49308 -0
  108. package/references/official-docs/docs/persistence-changes/historical-formats/v0.zh.md +5105 -0
  109. package/references/official-docs/docs/persistence-changes/historical-formats/v1.i18n.yaml +6 -0
  110. package/references/official-docs/docs/persistence-changes/historical-formats/v1.md +5107 -0
  111. package/references/official-docs/docs/persistence-changes/historical-formats/v1.schema.json +49411 -0
  112. package/references/official-docs/docs/persistence-changes/historical-formats/v1.zh.md +5107 -0
  113. package/references/official-docs/docs/persistence-changes/historical-formats/v2.i18n.yaml +6 -0
  114. package/references/official-docs/docs/persistence-changes/historical-formats/v2.md +5362 -0
  115. package/references/official-docs/docs/persistence-changes/historical-formats/v2.schema.json +56466 -0
  116. package/references/official-docs/docs/persistence-changes/historical-formats/v2.zh.md +5362 -0
  117. package/references/official-docs/docs/persistence-changes/releases/README.i18n.yaml +6 -0
  118. package/references/official-docs/docs/persistence-changes/releases/README.md +103 -0
  119. package/references/official-docs/docs/persistence-changes/releases/README.zh.md +103 -0
  120. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.1.i18n.yaml +6 -0
  121. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.1.md +201 -0
  122. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.1.schema.json +39868 -0
  123. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.1.zh.md +201 -0
  124. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.2.i18n.yaml +6 -0
  125. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.2.md +261 -0
  126. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.2.schema.json +43342 -0
  127. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.2.zh.md +261 -0
  128. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.3.i18n.yaml +6 -0
  129. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.3.md +126 -0
  130. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.3.schema.json +19452 -0
  131. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.3.zh.md +126 -0
  132. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.4.i18n.yaml +6 -0
  133. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.4.md +75 -0
  134. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.4.schema.json +5 -0
  135. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.4.zh.md +75 -0
  136. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.5.i18n.yaml +6 -0
  137. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.5.md +75 -0
  138. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.5.schema.json +5 -0
  139. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.5.zh.md +75 -0
  140. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.1.i18n.yaml +6 -0
  141. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.1.md +75 -0
  142. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.1.schema.json +5 -0
  143. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.1.zh.md +75 -0
  144. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.2.i18n.yaml +6 -0
  145. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.2.md +75 -0
  146. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.2.schema.json +5 -0
  147. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.2.zh.md +75 -0
  148. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.3.i18n.yaml +6 -0
  149. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.3.md +75 -0
  150. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.3.schema.json +5 -0
  151. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.3.zh.md +75 -0
  152. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.5.i18n.yaml +6 -0
  153. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.5.md +75 -0
  154. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.5.schema.json +5 -0
  155. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.5.zh.md +75 -0
  156. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.6.i18n.yaml +6 -0
  157. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.6.md +75 -0
  158. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.6.schema.json +5 -0
  159. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.6.zh.md +75 -0
  160. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.7.i18n.yaml +6 -0
  161. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.7.md +82 -0
  162. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.7.schema.json +5320 -0
  163. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.7.zh.md +82 -0
  164. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.8.i18n.yaml +6 -0
  165. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.8.md +110 -0
  166. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.8.schema.json +21258 -0
  167. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.8.zh.md +110 -0
  168. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.1.i18n.yaml +6 -0
  169. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.1.md +82 -0
  170. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.1.schema.json +417 -0
  171. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.1.zh.md +82 -0
  172. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.2.i18n.yaml +6 -0
  173. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.2.md +119 -0
  174. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.2.schema.json +29672 -0
  175. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.2.zh.md +119 -0
  176. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.1.i18n.yaml +6 -0
  177. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.1.md +295 -0
  178. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.1.schema.json +48429 -0
  179. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.1.zh.md +295 -0
  180. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.2.i18n.yaml +6 -0
  181. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.2.md +286 -0
  182. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.2.schema.json +49347 -0
  183. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.2.zh.md +286 -0
  184. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.3.i18n.yaml +6 -0
  185. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.3.md +75 -0
  186. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.3.schema.json +5 -0
  187. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.3.zh.md +75 -0
  188. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.4.i18n.yaml +6 -0
  189. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.4.md +95 -0
  190. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.4.schema.json +17642 -0
  191. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.4.zh.md +95 -0
  192. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.5.i18n.yaml +6 -0
  193. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.5.md +75 -0
  194. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.5.schema.json +5 -0
  195. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.5.zh.md +75 -0
  196. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-rc.1.i18n.yaml +6 -0
  197. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-rc.1.md +75 -0
  198. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-rc.1.schema.json +5 -0
  199. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-rc.1.zh.md +75 -0
  200. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.1.i18n.yaml +6 -0
  201. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.1.md +154 -0
  202. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.1.schema.json +38678 -0
  203. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.1.zh.md +154 -0
  204. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.2.i18n.yaml +6 -0
  205. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.2.md +86 -0
  206. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.2.schema.json +783 -0
  207. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.2.zh.md +86 -0
  208. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.1.i18n.yaml +6 -0
  209. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.1.md +139 -0
  210. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.1.schema.json +24597 -0
  211. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.1.zh.md +139 -0
  212. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.2.i18n.yaml +6 -0
  213. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.2.md +95 -0
  214. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.2.schema.json +2132 -0
  215. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.2.zh.md +95 -0
  216. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.1.i18n.yaml +6 -0
  217. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.1.md +75 -0
  218. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.1.schema.json +5 -0
  219. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.1.zh.md +75 -0
  220. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.2.i18n.yaml +6 -0
  221. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.2.md +75 -0
  222. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.2.schema.json +5 -0
  223. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.2.zh.md +75 -0
  224. package/references/official-docs/docs/persistence-changes/releases/manifest.json +162 -0
  225. package/references/official-docs/docs/persistence-schema.json +61480 -0
  226. package/references/official-docs/docs/postmortem/README.i18n.yaml +1 -1
  227. package/references/official-docs/docs/postmortem/README.md +1 -1
  228. package/references/official-docs/docs/postmortem/README.zh.md +1 -1
  229. package/references/official-docs/docs/rescope.i18n.yaml +2 -2
  230. package/references/official-docs/docs/rescope.md +2 -2
  231. package/references/official-docs/docs/rescope.zh.md +2 -2
  232. package/references/official-docs/docs/session-format-status.i18n.yaml +6 -0
  233. package/references/official-docs/docs/session-format-status.md +49 -0
  234. package/references/official-docs/docs/session-format-status.zh.md +49 -0
  235. package/references/official-docs/docs/subsystems/README.i18n.yaml +2 -2
  236. package/references/official-docs/docs/subsystems/README.md +12 -3
  237. package/references/official-docs/docs/subsystems/README.zh.md +23 -14
  238. package/references/official-docs/docs/subsystems/agent-team.i18n.yaml +2 -2
  239. package/references/official-docs/docs/subsystems/agent-team.md +1 -1
  240. package/references/official-docs/docs/subsystems/agent-team.zh.md +2 -2
  241. package/references/official-docs/docs/subsystems/approval.i18n.yaml +2 -2
  242. package/references/official-docs/docs/subsystems/approval.md +1 -1
  243. package/references/official-docs/docs/subsystems/approval.zh.md +1 -1
  244. package/references/official-docs/docs/subsystems/attachment.i18n.yaml +2 -2
  245. package/references/official-docs/docs/subsystems/attachment.md +17 -7
  246. package/references/official-docs/docs/subsystems/attachment.zh.md +17 -7
  247. package/references/official-docs/docs/subsystems/{code-runtime.i18n.yaml → boot.i18n.yaml} +3 -3
  248. package/references/official-docs/docs/subsystems/boot.md +223 -0
  249. package/references/official-docs/docs/subsystems/boot.zh.md +223 -0
  250. package/references/official-docs/docs/subsystems/browser-use.i18n.yaml +6 -0
  251. package/references/official-docs/docs/subsystems/browser-use.md +67 -0
  252. package/references/official-docs/docs/subsystems/browser-use.zh.md +67 -0
  253. package/references/official-docs/docs/subsystems/client-modules.i18n.yaml +2 -2
  254. package/references/official-docs/docs/subsystems/client-modules.md +20 -10
  255. package/references/official-docs/docs/subsystems/client-modules.zh.md +21 -11
  256. package/references/official-docs/docs/subsystems/client-resources.i18n.yaml +6 -0
  257. package/references/official-docs/docs/subsystems/client-resources.md +92 -0
  258. package/references/official-docs/docs/subsystems/client-resources.zh.md +92 -0
  259. package/references/official-docs/docs/subsystems/commands.i18n.yaml +2 -2
  260. package/references/official-docs/docs/subsystems/commands.md +4 -0
  261. package/references/official-docs/docs/subsystems/commands.zh.md +5 -1
  262. package/references/official-docs/docs/subsystems/compaction.i18n.yaml +2 -2
  263. package/references/official-docs/docs/subsystems/compaction.md +48 -2
  264. package/references/official-docs/docs/subsystems/compaction.zh.md +50 -4
  265. package/references/official-docs/docs/subsystems/computer-use.i18n.yaml +6 -0
  266. package/references/official-docs/docs/subsystems/computer-use.md +56 -0
  267. package/references/official-docs/docs/subsystems/computer-use.zh.md +56 -0
  268. package/references/official-docs/docs/subsystems/conversation.zh.md +1 -1
  269. package/references/official-docs/docs/subsystems/core.i18n.yaml +2 -2
  270. package/references/official-docs/docs/subsystems/core.md +106 -60
  271. package/references/official-docs/docs/subsystems/core.zh.md +109 -63
  272. package/references/official-docs/docs/subsystems/deliverables.i18n.yaml +6 -0
  273. package/references/official-docs/docs/subsystems/deliverables.md +178 -0
  274. package/references/official-docs/docs/subsystems/deliverables.zh.md +178 -0
  275. package/references/official-docs/docs/subsystems/extensions.zh.md +1 -1
  276. package/references/official-docs/docs/subsystems/feedback.i18n.yaml +2 -2
  277. package/references/official-docs/docs/subsystems/feedback.md +165 -31
  278. package/references/official-docs/docs/subsystems/feedback.zh.md +165 -31
  279. package/references/official-docs/docs/subsystems/filesystem.i18n.yaml +2 -2
  280. package/references/official-docs/docs/subsystems/filesystem.md +15 -0
  281. package/references/official-docs/docs/subsystems/filesystem.zh.md +16 -1
  282. package/references/official-docs/docs/subsystems/goal.i18n.yaml +2 -2
  283. package/references/official-docs/docs/subsystems/goal.md +37 -1
  284. package/references/official-docs/docs/subsystems/goal.zh.md +38 -2
  285. package/references/official-docs/docs/subsystems/invariants.i18n.yaml +2 -2
  286. package/references/official-docs/docs/subsystems/invariants.md +1 -1
  287. package/references/official-docs/docs/subsystems/invariants.zh.md +3 -3
  288. package/references/official-docs/docs/subsystems/jobs.i18n.yaml +1 -1
  289. package/references/official-docs/docs/subsystems/jobs.md +1 -1
  290. package/references/official-docs/docs/subsystems/jobs.zh.md +1 -1
  291. package/references/official-docs/docs/subsystems/llm-streaming.i18n.yaml +2 -2
  292. package/references/official-docs/docs/subsystems/llm-streaming.md +35 -15
  293. package/references/official-docs/docs/subsystems/llm-streaming.zh.md +37 -17
  294. package/references/official-docs/docs/subsystems/lsp.i18n.yaml +2 -2
  295. package/references/official-docs/docs/subsystems/lsp.md +1 -1
  296. package/references/official-docs/docs/subsystems/lsp.zh.md +1 -1
  297. package/references/official-docs/docs/subsystems/mcp.i18n.yaml +6 -0
  298. package/references/official-docs/docs/subsystems/mcp.md +139 -0
  299. package/references/official-docs/docs/subsystems/mcp.zh.md +139 -0
  300. package/references/official-docs/docs/subsystems/office-to-pdf.i18n.yaml +6 -0
  301. package/references/official-docs/docs/subsystems/office-to-pdf.md +87 -0
  302. package/references/official-docs/docs/subsystems/office-to-pdf.zh.md +87 -0
  303. package/references/official-docs/docs/subsystems/permission-presets.i18n.yaml +2 -2
  304. package/references/official-docs/docs/subsystems/permission-presets.md +62 -27
  305. package/references/official-docs/docs/subsystems/permission-presets.zh.md +62 -27
  306. package/references/official-docs/docs/subsystems/persistence.i18n.yaml +2 -2
  307. package/references/official-docs/docs/subsystems/persistence.md +36 -15
  308. package/references/official-docs/docs/subsystems/persistence.zh.md +36 -15
  309. package/references/official-docs/docs/subsystems/plan.zh.md +2 -2
  310. package/references/official-docs/docs/subsystems/ptc-runtime.i18n.yaml +6 -0
  311. package/references/official-docs/docs/subsystems/ptc-runtime.md +232 -0
  312. package/references/official-docs/docs/subsystems/ptc-runtime.zh.md +232 -0
  313. package/references/official-docs/docs/subsystems/sandbox.i18n.yaml +2 -2
  314. package/references/official-docs/docs/subsystems/sandbox.md +5 -4
  315. package/references/official-docs/docs/subsystems/sandbox.zh.md +7 -6
  316. package/references/official-docs/docs/subsystems/schedule.i18n.yaml +2 -2
  317. package/references/official-docs/docs/subsystems/schedule.md +2 -2
  318. package/references/official-docs/docs/subsystems/schedule.zh.md +3 -3
  319. package/references/official-docs/docs/subsystems/scope.i18n.yaml +2 -2
  320. package/references/official-docs/docs/subsystems/scope.md +1 -1
  321. package/references/official-docs/docs/subsystems/scope.zh.md +1 -1
  322. package/references/official-docs/docs/subsystems/session-projection.i18n.yaml +2 -2
  323. package/references/official-docs/docs/subsystems/session-projection.md +1 -1
  324. package/references/official-docs/docs/subsystems/session-projection.zh.md +2 -2
  325. package/references/official-docs/docs/subsystems/session-reference.i18n.yaml +2 -2
  326. package/references/official-docs/docs/subsystems/session-reference.md +11 -6
  327. package/references/official-docs/docs/subsystems/session-reference.zh.md +11 -6
  328. package/references/official-docs/docs/subsystems/session-telemetry.i18n.yaml +2 -2
  329. package/references/official-docs/docs/subsystems/session-telemetry.md +22 -6
  330. package/references/official-docs/docs/subsystems/session-telemetry.zh.md +23 -7
  331. package/references/official-docs/docs/subsystems/session-title.i18n.yaml +2 -2
  332. package/references/official-docs/docs/subsystems/session-title.md +5 -5
  333. package/references/official-docs/docs/subsystems/session-title.zh.md +5 -5
  334. package/references/official-docs/docs/subsystems/session.i18n.yaml +2 -2
  335. package/references/official-docs/docs/subsystems/session.md +149 -61
  336. package/references/official-docs/docs/subsystems/session.zh.md +150 -62
  337. package/references/official-docs/docs/subsystems/shell.i18n.yaml +2 -2
  338. package/references/official-docs/docs/subsystems/shell.md +19 -15
  339. package/references/official-docs/docs/subsystems/shell.zh.md +20 -16
  340. package/references/official-docs/docs/subsystems/sidebar-right.i18n.yaml +6 -0
  341. package/references/official-docs/docs/subsystems/sidebar-right.md +153 -0
  342. package/references/official-docs/docs/subsystems/sidebar-right.zh.md +153 -0
  343. package/references/official-docs/docs/subsystems/skills.i18n.yaml +2 -2
  344. package/references/official-docs/docs/subsystems/skills.md +4 -6
  345. package/references/official-docs/docs/subsystems/skills.zh.md +4 -6
  346. package/references/official-docs/docs/subsystems/slots.i18n.yaml +2 -2
  347. package/references/official-docs/docs/subsystems/slots.md +52 -38
  348. package/references/official-docs/docs/subsystems/slots.zh.md +53 -39
  349. package/references/official-docs/docs/subsystems/spill.i18n.yaml +2 -2
  350. package/references/official-docs/docs/subsystems/spill.md +13 -6
  351. package/references/official-docs/docs/subsystems/spill.zh.md +13 -6
  352. package/references/official-docs/docs/subsystems/ssh.i18n.yaml +6 -0
  353. package/references/official-docs/docs/subsystems/ssh.md +135 -0
  354. package/references/official-docs/docs/subsystems/ssh.zh.md +135 -0
  355. package/references/official-docs/docs/subsystems/storage.zh.md +2 -2
  356. package/references/official-docs/docs/subsystems/subagent.i18n.yaml +2 -2
  357. package/references/official-docs/docs/subsystems/subagent.md +33 -16
  358. package/references/official-docs/docs/subsystems/subagent.zh.md +32 -15
  359. package/references/official-docs/docs/subsystems/subprocess.i18n.yaml +2 -2
  360. package/references/official-docs/docs/subsystems/subprocess.md +41 -44
  361. package/references/official-docs/docs/subsystems/subprocess.zh.md +41 -44
  362. package/references/official-docs/docs/subsystems/system-prompt.i18n.yaml +2 -2
  363. package/references/official-docs/docs/subsystems/system-prompt.md +6 -2
  364. package/references/official-docs/docs/subsystems/system-prompt.zh.md +7 -3
  365. package/references/official-docs/docs/subsystems/todo.zh.md +1 -1
  366. package/references/official-docs/docs/subsystems/token-meter.i18n.yaml +2 -2
  367. package/references/official-docs/docs/subsystems/token-meter.md +2 -1
  368. package/references/official-docs/docs/subsystems/token-meter.zh.md +2 -1
  369. package/references/official-docs/docs/subsystems/tools.i18n.yaml +2 -2
  370. package/references/official-docs/docs/subsystems/tools.md +28 -12
  371. package/references/official-docs/docs/subsystems/tools.zh.md +28 -12
  372. package/references/official-docs/docs/subsystems/typert.i18n.yaml +2 -2
  373. package/references/official-docs/docs/subsystems/typert.md +6 -5
  374. package/references/official-docs/docs/subsystems/typert.zh.md +6 -5
  375. package/references/official-docs/docs/subsystems/user-questions.i18n.yaml +2 -2
  376. package/references/official-docs/docs/subsystems/user-questions.md +2 -0
  377. package/references/official-docs/docs/subsystems/user-questions.zh.md +2 -0
  378. package/references/official-docs/docs/subsystems/web-client.i18n.yaml +2 -2
  379. package/references/official-docs/docs/subsystems/web-client.md +5 -5
  380. package/references/official-docs/docs/subsystems/web-client.zh.md +6 -6
  381. package/references/official-docs/docs/subsystems/web-server.i18n.yaml +2 -2
  382. package/references/official-docs/docs/subsystems/web-server.md +64 -0
  383. package/references/official-docs/docs/subsystems/web-server.zh.md +65 -1
  384. package/references/official-docs/docs/subsystems/webhook.i18n.yaml +1 -1
  385. package/references/official-docs/docs/subsystems/webhook.md +2 -2
  386. package/references/official-docs/docs/subsystems/workflow.i18n.yaml +2 -2
  387. package/references/official-docs/docs/subsystems/workflow.md +8 -8
  388. package/references/official-docs/docs/subsystems/workflow.zh.md +10 -10
  389. package/references/official-docs/docs/subsystems/workspace.i18n.yaml +2 -2
  390. package/references/official-docs/docs/subsystems/workspace.md +199 -1
  391. package/references/official-docs/docs/subsystems/workspace.zh.md +199 -1
  392. package/references/official-docs/docs/testing.i18n.yaml +2 -2
  393. package/references/official-docs/docs/testing.md +5 -4
  394. package/references/official-docs/docs/testing.zh.md +5 -4
  395. package/references/official-docs/docs/tool-catalog.i18n.yaml +2 -2
  396. package/references/official-docs/docs/tool-catalog.md +452 -187
  397. package/references/official-docs/docs/tool-catalog.zh.md +454 -189
  398. package/references/official-docs/docs/tool-execution-pipeline.i18n.yaml +2 -2
  399. package/references/official-docs/docs/tool-execution-pipeline.md +2 -2
  400. package/references/official-docs/docs/tool-execution-pipeline.zh.md +2 -2
  401. package/references/official-docs/docs/user/develop/basic/index.zh.md +1 -1
  402. package/references/official-docs/docs/user/develop/basic/publish.i18n.yaml +2 -2
  403. package/references/official-docs/docs/user/develop/basic/publish.md +2 -2
  404. package/references/official-docs/docs/user/develop/basic/publish.zh.md +5 -5
  405. package/references/official-docs/docs/user/develop/framework/index.i18n.yaml +2 -2
  406. package/references/official-docs/docs/user/develop/framework/index.md +1 -1
  407. package/references/official-docs/docs/user/develop/framework/index.zh.md +1 -1
  408. package/references/official-docs/docs/user/develop/practice/dynamic-cordis.i18n.yaml +2 -2
  409. package/references/official-docs/docs/user/develop/practice/dynamic-cordis.md +8 -8
  410. package/references/official-docs/docs/user/develop/practice/dynamic-cordis.zh.md +8 -8
  411. package/references/official-docs/docs/user/guide/index.zh.md +2 -2
  412. package/references/official-docs/docs/user/guide/mcp-memory.zh.md +1 -1
  413. package/references/official-docs/docs/user/guide/network-proxy.i18n.yaml +2 -2
  414. package/references/official-docs/docs/user/guide/network-proxy.md +1 -1
  415. package/references/official-docs/docs/user/guide/network-proxy.zh.md +1 -1
  416. package/references/official-docs/docs/user/guide/providers.i18n.yaml +2 -2
  417. package/references/official-docs/docs/user/guide/providers.md +12 -8
  418. package/references/official-docs/docs/user/guide/providers.zh.md +14 -10
  419. package/references/official-docs/docs/user/guide/python-sdk.i18n.yaml +2 -2
  420. package/references/official-docs/docs/user/guide/python-sdk.md +59 -23
  421. package/references/official-docs/docs/user/guide/python-sdk.zh.md +60 -24
  422. package/references/official-docs/docs/web-styling.i18n.yaml +2 -2
  423. package/references/official-docs/docs/web-styling.md +2 -1
  424. package/references/official-docs/docs/web-styling.zh.md +3 -2
  425. package/references/official-docs/packages/AGENTS.md +1 -1
  426. package/references/official-docs/packages/README.md +12 -7
  427. package/references/official-docs/vendor/README.md +15 -11
  428. package/references/official-docs/website-docs.ts +4 -2
  429. package/scripts/sync-official-docs.ps1 +5 -5
  430. package/references/official-docs/docs/subsystems/code-runtime.md +0 -195
  431. package/references/official-docs/docs/subsystems/code-runtime.zh.md +0 -195
@@ -3,4 +3,4 @@
3
3
  # after editing either side, bring the other along and re-record with:
4
4
  # pnpm run verify-translation-pairing --write docs/postmortem/README.md
5
5
  README.md: ffde0057304856b7c7718e3dd1f4743c48ee193f
6
- README-zh.md: 4b3f8588cc1f6e162c72a5b6a78b996638baf7ae
6
+ README.zh.md: 4b3f8588cc1f6e162c72a5b6a78b996638baf7ae
@@ -1,6 +1,6 @@
1
1
  # Post-mortems
2
2
 
3
- English | [中文](README-zh.md)
3
+ English | [中文](README.zh.md)
4
4
 
5
5
  Incident write-ups: a bug reached a place it shouldn't have (a real user, a merged PR, a release), and the interesting part is *why our process let it through*, not just the one-line fix.
6
6
 
@@ -4,7 +4,7 @@
4
4
 
5
5
  事故复盘记录的是:一个 bug 出现在了不该出现的地方(真实用户、已合并的 PR(Pull Request)、已发布的版本),值得关注的是*为什么我们的流程放过了它*,而不仅仅是那一行修复。
6
6
 
7
- 事故复盘不是 [Agent Note](../../.agents/notes/README-zh.md)(Agent Note 记录一个经过深思熟虑的设计决策及其被否决的替代方案,或提出未来工作)。它是一份回顾性的失败记录:什么坏了、机制是什么、为什么每道安全网都没拦住、以及为此新增了哪些具体防护措施,以确保同类 bug 下次出现时会明确报错。
7
+ 事故复盘不是 [Agent Note](../../.agents/notes/README.zh.md)(Agent Note 记录一个经过深思熟虑的设计决策及其被否决的替代方案,或提出未来工作)。它是一份回顾性的失败记录:什么坏了、机制是什么、为什么每道安全网都没拦住、以及为此新增了哪些具体防护措施,以确保同类 bug 下次出现时会明确报错。
8
8
 
9
9
  当一个 bug 满足以下条件时,请撰写事故复盘:**隐蔽**(机制不显而易见,即使是细心的工程师也得费力重新推导)、**系统性**(逃逸的原因是测试、工具、约定的缺口,而非一次性的笔误)、**重新发现的代价高**(它消耗了真实的调试时间,且下次还会如此)。请链接该事故复盘所推动建立的防护措施(测试、AGENTS.md 规则、ADR)。
10
10
 
@@ -2,5 +2,5 @@
2
2
  # side as of the last confirmed-consistent state. Both languages carry equal authority;
3
3
  # after editing either side, bring the other along and re-record with:
4
4
  # pnpm run verify-translation-pairing --write docs/rescope.md
5
- rescope.md: bfcc150bcbab3abf695e6ca2a75ea149b9dcbeea
6
- rescope.zh.md: bc4f72250249a14209156765962ceb94d9d643b4
5
+ rescope.md: 80a0b1dc67c8b3585f2c18cad3afff9dde5859f9
6
+ rescope.zh.md: aaf65024520308c5d0013d85a128a42839a84573
@@ -2,7 +2,7 @@
2
2
 
3
3
  English | [中文](rescope.zh.md)
4
4
 
5
- The Cordis framework and its foundation libraries are vendored under [`vendor/`](../vendor/README.md) and published under the `@deepseek-ai` scope, because every harness package declares the framework as a peer dependency: publishing the harness publishes this layer with it, and under the upstream names that publication would squat them on the registry. This page is the name mapping; the decision and its consequences live in the [rescope Agent Note](../.agents/notes/implemented/process/2026-08-10-vendor-package-rescope.md), and the upstream commits in [`vendor/README.md`](../vendor/README.md).
5
+ The Cordis framework and its foundation libraries are vendored under [`vendor/`](../vendor/README.md) and published under the `@deepseek-ai` scope, because every harness package declares the framework as a peer dependency: publishing the harness publishes this layer with it, and under the upstream names that publication would squat them on the registry. This page is the name mapping; the decision and its consequences live in the [rescope Agent Note](../.agents/notes/archived/process/2026-08-10-vendor-package-rescope.md), and the upstream commits in [`vendor/README.md`](../vendor/README.md).
6
6
 
7
7
  ## Name mapping
8
8
 
@@ -23,7 +23,7 @@ Subpath exports keep their path: `@cordisjs/plugin-loader/repository` becomes `@
23
23
  ## What the rename does not touch
24
24
 
25
25
  - **Directory names and upstream source versions.** `vendor/hmr/` stays `vendor/hmr/`, and the table records the upstream version of the pinned source snapshot, so the manifest reads as an upstream snapshot; the vendored `package.json`'s own `version` field is the harness's released manifest version, which `pnpm run release:vendor` bumps and a re-sync restores to the upstream version.
26
- - **Dependency ranges.** A dependency entry changes its key, never its range: `"cordis": "^4.0.0-rc.7"` becomes `"@deepseek-ai/cordis": "^4.0.0-rc.7"`. `linkWorkspacePackages` resolves those preserved ranges to the pinned workspaces.
26
+ - **Dependency ranges.** Renaming changes dependency keys without changing ranges. Workspace manifests use `workspace:^` for repository-owned runtime dependencies, so pnpm resolves the pinned local packages and substitutes release ranges when publishing.
27
27
  - **The Loader's `cordis:` builtin prefix.** `cordis:include` and `cordis:group` are a protocol prefix, not a package name.
28
28
  - **The `cordis.yml` configuration family**, including `*.cordis.yml`, `*.cordis.snapshot.yml`, and `cordis.patch.yml`.
29
29
  - **Harness packages whose own names contain the word**, such as `@deepseek-ai/dsh-tool-cordis`.
@@ -2,7 +2,7 @@
2
2
 
3
3
  [English](rescope.md) | 中文
4
4
 
5
- Cordis 框架及其基础库以源码形式 vendored 在 [`vendor/`](../vendor/README.md) 下,并以 `@deepseek-ai` scope 发布:每个 harness 包都把框架声明为 peer dependency,发布 harness 就会连带发布这一层,用上游名发布等于在 registry 上占用别人的名字。本页是名字映射表;决策与影响见 [改名 Agent Note](../.agents/notes/implemented/process/2026-08-10-vendor-package-rescope.zh.md),上游 commit 见 [`vendor/README.md`](../vendor/README.md)。
5
+ Cordis 框架及其基础库以源码形式 vendored 在 [`vendor/`](../vendor/README.md) 下,并以 `@deepseek-ai` scope 发布:每个 harness 包都把框架声明为 peer dependency,发布 harness 就会连带发布这一层,用上游名发布等于在 registry 上占用别人的名字。本页是名字映射表;决策与影响见 [改名 Agent Note](../.agents/notes/archived/process/2026-08-10-vendor-package-rescope.md),上游 commit 见 [`vendor/README.md`](../vendor/README.md)。
6
6
 
7
7
  ## 名字映射
8
8
 
@@ -23,7 +23,7 @@ Cordis 框架及其基础库以源码形式 vendored 在 [`vendor/`](../vendor/R
23
23
  ## 改名不碰什么
24
24
 
25
25
  - **目录名与上游源码版本。** `vendor/hmr/` 仍是 `vendor/hmr/`,清单表记录的是所钉住源码快照的上游版本,因此清单读作一份上游快照;而每个 vendored 包 `package.json` 自身的 `version` 字段是 harness 发布的清单版本,`pnpm run release:vendor` 会提升它,重新 sync 时会恢复成上游版本。
26
- - **依赖 range。** 依赖条目只换键、不换范围:`"cordis": "^4.0.0-rc.7"` 变成 `"@deepseek-ai/cordis": "^4.0.0-rc.7"`;`linkWorkspacePackages` 靠这些保留下来的范围把它们解析到固定的 workspace。
26
+ - **依赖 range。** 改名只修改依赖键,不改变范围。Workspace 清单对仓库内的运行时依赖使用 `workspace:^`,因此 pnpm 会解析到固定的本地包,并在发布时替换为版本范围。
27
27
  - **Loader 的 `cordis:` 内建前缀。** `cordis:include`、`cordis:group` 是协议前缀,不是包名。
28
28
  - **`cordis.yml` 配置文件家族**,包括 `*.cordis.yml`、`*.cordis.snapshot.yml`、`cordis.patch.yml`。
29
29
  - **名字里带这个词的 harness 包**,例如 `@deepseek-ai/dsh-tool-cordis`。
@@ -0,0 +1,6 @@
1
+ # Bilingual-pair consistency record (docs/i18n/README.md): the git blob hash of each
2
+ # side as of the last confirmed-consistent state. Both languages carry equal authority;
3
+ # after editing either side, bring the other along and re-record with:
4
+ # pnpm run verify-translation-pairing --write docs/session-format-status.md
5
+ session-format-status.md: eb48234963b866d1bc95bb7c3c72753d54dd93aa
6
+ session-format-status.zh.md: a54e98b32b37a723ef44c90d2f4983ea3615fc03
@@ -0,0 +1,49 @@
1
+ # Session format version and release status
2
+
3
+ English | [中文](session-format-status.zh.md)
4
+
5
+ ## Summary
6
+
7
+ Use this reference to distinguish the checkout’s Session writer version from the latest published Session format. The code constant owns the writer version; the release record below owns the latest released format and its publication evidence. Other documentation links here instead of restating which version is current, next, or unreleased.
8
+
9
+ ## Table of Contents
10
+
11
+ - [Sources of truth](#sources-of-truth)
12
+ - [Release record](#release-record)
13
+ - [Updating the record](#updating-the-record)
14
+ - [Dev Note](#dev-note)
15
+
16
+ <a id="sources-of-truth"></a>
17
+ ## Sources of truth
18
+
19
+ - **Checkout writer:** `SESSION_FORMAT_VERSION` in [core Session types](../packages/core/session/src/types.ts) is the only hand-maintained current-writer number in code. The [catalog generator](../scripts/gen-session-format-catalog.ts) derives codec ordering and checks that adjacent migrations reach it. A package version, codec export name, fixture filename, or projection-cache version is not the writer authority.
20
+ - **Latest released format:** `latestReleasedVersion` in the following record identifies the published Session format. `evidenceTag` names a published product release whose tagged writer has that value; it need not be the first release carrying the format. The bilingual copy is checked against the same record, not maintained as a separate decision.
21
+ - **Release status:** compare the writer constant with the verified release record. Equality means the writer format has shipped. A greater writer version is a development target beyond the recorded release. When comparing an older checkout against a newer branch’s verified record, a lower writer version identifies an older writer format; the local consistency gate rejects that ordering within one checkout. No separate released boolean is maintained. Before declaring a greater version unreleased, verify that no published release has advanced the record.
22
+
23
+ An alpha, beta, or release-candidate product publication establishes released Session-format obligations. GitHub’s prerelease flag does not make persisted user data disposable. A missing release record is not evidence of non-publication. The [versioning and authority decision](../.agents/notes/implemented/architecture/2026-08-10-session-log-version-mechanism.md) owns compatibility decisions; [released-format migration](../.agents/notes/implemented/architecture/2026-08-31-released-session-format-migrations.md) owns immutable generations and adjacent conversion.
24
+
25
+ The [format references](persistence-changes/historical-formats/README.md) document every integer from zero through the checkout writer, with historical schemas and the existing current catalog.
26
+
27
+ <a id="release-record"></a>
28
+ ## Release record
29
+
30
+ ```yaml session-format-release
31
+ latestReleasedVersion: 3
32
+ evidenceTag: dsh-v0.1.5-alpha.1
33
+ ```
34
+
35
+ Evidence: published product tag `dsh-v0.1.5-alpha.1`; tagged writer: `packages/core/session/src/types.ts`.
36
+
37
+ <a id="updating-the-record"></a>
38
+ ## Updating the record
39
+
40
+ When a structural writer change is implemented, update the code constant and adjacent catalog together; do not advance this release record before publication. When a product release first publishes a higher Session format, confirm publication and its tagged writer, then advance this record and the evidence tag and tagged writer path in the same bilingual update. Later product releases carrying the same format do not require changing the record. Never lower it on the development trunk.
41
+
42
+ The [documentation-standard test](../scripts/doc-standard.spec.ts) checks record structure, bilingual equality, evidence-tag and writer-path consistency, and that the documented release does not exceed the checkout writer. This keyless check does not query GitHub or prove that the record is up to date; publication verification remains part of the release update.
43
+
44
+ Use “current format” and “next adjacent version” for general behavior. Keep explicit numbers for fixed migration inputs and outputs, wire schemas, historical evidence, and tests of those particular versions. The [format-version cookbook](cookbook/adding-a-session-format-version.md) uses N for the verified latest released format and N+1 for its successor.
45
+
46
+ <a id="dev-note"></a>
47
+ ## Dev Note
48
+
49
+ None.
@@ -0,0 +1,49 @@
1
+ # Session 格式版本与发布状态
2
+
3
+ [English](session-format-status.md) | 中文
4
+
5
+ ## 概述
6
+
7
+ 本参考区分工作区的 Session 写入器版本与最新已发布的 Session 格式。代码常量拥有写入器版本;下方发布记录拥有最新已发布格式及其发布证据。其他文档链接到这里,而不重复声明哪个版本是当前、下一个或尚未发布的版本。
8
+
9
+ ## 目录
10
+
11
+ - [单一真源](#sources-of-truth)
12
+ - [发布记录](#release-record)
13
+ - [更新记录](#updating-the-record)
14
+ - [开发备注](#dev-note)
15
+
16
+ <a id="sources-of-truth"></a>
17
+ ## 单一真源
18
+
19
+ - **工作区写入器:**[核心 Session 类型](../packages/core/session/src/types.ts)中的 `SESSION_FORMAT_VERSION` 是代码中唯一手工维护的当前写入器版本号。[目录生成器](../scripts/gen-session-format-catalog.ts)推导 codec 顺序,并检查相邻迁移是否到达该版本。包版本、codec 导出名称、fixture(测试前置数据)文件名或投影缓存版本都不是写入器版本的权威来源。
20
+ - **最新已发布格式:**下方记录中的 `latestReleasedVersion` 标识已发布的 Session 格式。`evidenceTag` 指定一个已发布的产品版本,其标签对应的写入器具有该值;它不必是首次携带该格式的发布。双语副本按同一记录校验,不作为独立决策维护。
21
+ - **发布状态:**比较写入器常量与已核实的发布记录。相等表示写入器格式已经发布。写入器版本更高表示它是超出记录中发布版本的开发目标。用较新分支中已核实的记录对比旧工作区时,较低的写入器版本表示较旧的写入器格式;本地一致性门禁会拒绝同一工作区内的这种大小关系。不另行维护 released 布尔值。在声明更高版本尚未发布前,必须核实是否已有产品发布推进了记录。
22
+
23
+ 产品的 alpha、beta 或 release-candidate 发布都会确立已发布 Session 格式的义务。GitHub 的 prerelease 标记不会让持久化用户数据成为可丢弃数据。缺少发布记录不代表尚未发布。[版本与真源决策](../.agents/notes/implemented/architecture/2026-08-10-session-log-version-mechanism.zh.md)拥有兼容性决策;[已发布格式迁移](../.agents/notes/implemented/architecture/2026-08-31-released-session-format-migrations.zh.md)拥有不可变代际与相邻转换规则。
24
+
25
+ [格式参考](persistence-changes/historical-formats/README.zh.md)记录从零到工作区写入器的每个整数版本,提供历史 schema 并引用现有的当前目录。
26
+
27
+ <a id="release-record"></a>
28
+ ## 发布记录
29
+
30
+ ```yaml session-format-release
31
+ latestReleasedVersion: 3
32
+ evidenceTag: dsh-v0.1.5-alpha.1
33
+ ```
34
+
35
+ 证据:已发布产品标签 `dsh-v0.1.5-alpha.1`;该标签的写入器路径:`packages/core/session/src/types.ts`。
36
+
37
+ <a id="updating-the-record"></a>
38
+ ## 更新记录
39
+
40
+ 实现结构性写入器变更时,一起更新代码常量与相邻迁移目录;不要在产品发布前推进此发布记录。当产品首次发布更高的 Session 格式时,确认发布事实及对应标签的写入器,然后在同一次双语更新中推进本记录与证据标签及该标签的写入器路径。后续携带相同格式的产品发布无需改变此记录。开发主干上的记录绝不降低。
41
+
42
+ [文档标准测试](../scripts/doc-standard.spec.ts)检查记录结构、双语一致性、证据标签及写入器路径一致性,以及文档中的已发布版本不高于工作区写入器。这个无密钥检查不会查询 GitHub,也不能证明记录是最新的;核实发布事实仍属于发布更新的一部分。
43
+
44
+ 一般行为使用“当前格式”和“下一条相邻版本”等表述。固定迁移的输入与输出、协议 schema、历史证据及针对特定版本的测试保留明确版本号。[格式版本实操手册](cookbook/adding-a-session-format-version.zh.md)用 N 表示已核实的最新发布格式,用 N+1 表示其后继版本。
45
+
46
+ <a id="dev-note"></a>
47
+ ## 开发备注
48
+
49
+ 无。
@@ -2,5 +2,5 @@
2
2
  # side as of the last confirmed-consistent state. Both languages carry equal authority;
3
3
  # after editing either side, bring the other along and re-record with:
4
4
  # pnpm run verify-translation-pairing --write docs/subsystems/README.md
5
- README.md: 7ead36412136b00eb284897bb1114ead7d4d96d4
6
- README-zh.md: bc7500c00d5bb68cb7d4bf607e3d3a58bd2c55cc
5
+ README.md: d54bd4f45c23100cd1d53080f1ca807a9c177d3d
6
+ README.zh.md: 81ef25b69547672e016a2b72e2293daa8bb42eb1
@@ -1,11 +1,12 @@
1
1
  # Subsystems
2
2
 
3
- English | [中文](README-zh.md)
3
+ English | [中文](README.zh.md)
4
4
 
5
5
  One page per subsystem of the DeepSeek Harness: what it is, the data structures it moves, and — where a `ctx` service or event scope backs it — a generated **Cordis API** section carrying its service and event reference. The folder complements [architecture.md](../architecture.md), which describes *behavior* across subsystems (the service map, the session/turn/step lifecycle, the event taxonomy); each page here is the reference for one subsystem's vocabulary and wiring.
6
6
 
7
7
  | Page | Owns |
8
8
  |---|---|
9
+ | [boot.md](boot.md) | Current-profile plugin management and launcher reload coordination |
9
10
  | [core.md](core.md) | how `packages/core` controls the agent loop: the package-by-package loop description, agent creation and ownership (`AgentHandle`), the `Agent` handle's delivery/cancellation/interception contracts, and the repo-wide type patterns (`…Map → derived-union`, branded ids) |
10
11
  | [llm-streaming.md](llm-streaming.md) | the `packages/llm` conversation types — `Message`/`ContentBlock`, the assembled model request, the `StreamChunk` wire protocol and adapter contract, `BlockAssembler`, and the `LlmAdapter` provider contract |
11
12
  | [token-meter.md](token-meter.md) | immutable scalar and positional replay measurements with consumed-log revisions |
@@ -14,6 +15,7 @@ One page per subsystem of the DeepSeek Harness: what it is, the data structures
14
15
  | [goal.md](goal.md) | persisted goal identity, lifecycle snapshots, activation, change records, and round attribution |
15
16
  | [schedule.md](schedule.md) | Session-local reminder records, durable transitions, active views, and ordinary-conversation delivery |
16
17
  | [todo.md](todo.md) | the todo package's whole-list item type, durable event ownership, projection, and open-turn invariant |
18
+ | [deliverables.md](deliverables.md) | what a turn hands to the user: `PresentedFile` deliveries from `present` and the Host-served `WorkspaceChangesSummary` of changed files from git snapshots |
17
19
  | [commands.md](commands.md) | the human-command registry service: definitions, adapter discovery, direct invocation, results, and parsing views |
18
20
  | [session.md](session.md) | the full `SessionEventMap` variant catalog, `TurnEndReason`, `deriveMessages()`, execution enclosure, and standalone events |
19
21
  | [persistence.md](persistence.md) | the durability seam: `SessionPersistence`, the JSONL provider, `session/flush`, crash recovery, `SessionHeader` |
@@ -25,14 +27,19 @@ One page per subsystem of the DeepSeek Harness: what it is, the data structures
25
27
  | [session-reference.md](session-reference.md) | structured cross-session references: `SessionReferenceInput`/`Candidate`, prepared message contexts, the stable error taxonomy |
26
28
  | [system-prompt.md](system-prompt.md) | per-assembly context, tool-provider results, prompt sections, and cooperative assembly |
27
29
  | [tools.md](tools.md) | `ToolDefinition` full fields, the schema DSL, `ToolExecution`/`ToolResult`, tool-presentation UI types, and the guarded execution pipeline |
30
+ | [mcp.md](mcp.md) | external MCP connections, scoped tools and resources, server instructions, protocol results, and configuration ownership |
28
31
  | [user-questions.md](user-questions.md) | the UI-backed human question/answer seam: `AskUserQuestionRequest`, answer/options vocabulary, provider API, error taxonomy |
29
32
  | [approval.md](approval.md) | the one-shot user-approval seam: `ApprovalRequest`, `ApprovalOutcome`, per-session policy, audit events, and answerer contracts |
33
+ | [office-to-pdf.md](office-to-pdf.md) | authorized Office-to-PDF conversion, native/WASM engines, and bounded shared reuse |
30
34
  | [attachment.md](attachment.md) | durable image identity and metadata, validation inputs, verified reads, and the `AttachmentStore` seam |
31
- | [shell.md](shell.md) | the bash executor seam: `ShellExecRequest`/`Spec`, `ShellRunResult`, background `ShellProcess` handles |
35
+ | [shell.md](shell.md) | the shell executor seam: `ShellExecRequest`/`Spec`, `ShellRunResult`, background `ShellProcess` handles |
32
36
  | [subprocess.md](subprocess.md) | the subprocess seam: fully-explicit `SubprocessSpawnSpec`, offset-based output readers, unclassified `SubprocessOutcome`, and the managed `DSH_*` environment vocabulary |
37
+ | [ssh.md](ssh.md) | the POSIX SSH connection and remote filesystem, subprocess and sandbox providers |
33
38
  | [terminal.md](terminal.md) | persistent terminal ids, backend/session contracts, send readiness, bounded reads, and owner-visible snapshots |
34
39
  | [sandbox.md](sandbox.md) | per-session policy resolution and the process-confinement seam: file-effect modes, execution/provider policies, `ConfinedArgv`, enforcement and fail-closed errors |
35
- | [code-runtime.md](code-runtime.md) | the code-execution seam: `CodeRunRequest`/`Result`, binding namespaces, captured logs, the `CodeRunFailure` taxonomy |
40
+ | [ptc-runtime.md](ptc-runtime.md) | the PTC execution seam: `PtcRunRequest`/`Result`, binding namespaces, captured logs, the `PtcRunFailure` taxonomy |
41
+ | [computer-use.md](computer-use.md) | exclusive named computer-use provider registration and Cua Driver integration choices |
42
+ | [browser-use.md](browser-use.md) | exclusive named browser-use registration, provider choices, and per-Session browser ownership |
36
43
  | [extensions.md](extensions.md) | versioned dynamic Cordis Plugins and Packages, Host/Client activation, approval, runtime inspection, and lifecycle teardown |
37
44
  | [filesystem.md](filesystem.md) | the filesystem seam: `FsTarget`, read/write/edit outcomes, observed-file state, `FsErrorCode` |
38
45
  | [lsp.md](lsp.md) | the LSP navigation seam: `LspQueryRequest`/`Result`, `LspProvider`/`Service`, four operations, `LspError` |
@@ -54,6 +61,8 @@ One page per subsystem of the DeepSeek Harness: what it is, the data structures
54
61
  | [web-client.md](web-client.md) | the browser architecture: boot, Remote communication, paired Client models, UI adapters, Conversation assembly, Slots, and reconnect semantics |
55
62
  | [client-modules.md](client-modules.md) | the web plugin table: `dsh.client` declarations, `WebBootGraph` wire composition, the bundle route and index tap |
56
63
  | [slots.md](slots.md) | typed Web UI composition: declaration ownership, cardinality and scope, framework and feature injection, props derivation, and the shipped hierarchy |
64
+ | [client-resources.md](client-resources.md) | the client resource model: `dsh-resource://<type>/…` addresses, protocol providers and `ResourceProtocolMap`, the `useResource` global hook and its states, pins and release |
65
+ | [sidebar-right.md](sidebar-right.md) | the right Sidebar: resource and navigation addresses, tab-type registration and routing, the `ctx.sidebarRight` navigation service, the pane-tab slots and owner props, the resource model, and the Workspace Files service |
57
66
  | [conversation.md](conversation.md) | target-neutral Session-event assembly: Context identity, Location data, replay paths, view builders, and target-owned render nodes |
58
67
  | [session-projection.md](session-projection.md) | the projection seam: `SessionProjectionMap`, the pure `ProjectionDefinition` unit, `ProjectionSnapshot`'s consistent cut, the change feed |
59
68
  | [session-telemetry.md](session-telemetry.md) | the outbound session-reporting capability seam: `SessionTelemetryRecord`/`SessionTelemetrySeverity`, the `SessionTelemetrySink` contract, and the `session-telemetry/record` redact waterfall |
@@ -6,34 +6,41 @@
6
6
 
7
7
  | 页面 | 负责内容 |
8
8
  |---|---|
9
- | [core.md](core.zh.md) | `packages/core` 如何控制 agent loop(智能体循环):逐包的循环说明、agent 创建与所有权(`AgentHandle`)、`Agent` 句柄的投递/取消/拦截约定,以及全仓通用类型模式(`…Map → 派生联合`、品牌化 id) |
9
+ | [boot.md](boot.zh.md) | 当前 profile 插件管理与 launcher 重载协调 |
10
+ | [core.md](core.zh.md) | `packages/core` 如何控制 agent loop(智能体循环):逐包的循环说明、agent 创建与所有权(`AgentHandle`)、`Agent` 句柄的投递/取消/拦截约定,以及全仓通用类型模式(`…Map → derived-union`、品牌化 id) |
10
11
  | [llm-streaming.md](llm-streaming.zh.md) | `packages/llm` 的对话类型——`Message`/`ContentBlock`、组装完成的模型请求、`StreamChunk` wire protocol 和适配器约定(adapter contract)、`BlockAssembler`,以及 `LlmAdapter` 提供方约定 |
11
12
  | [token-meter.md](token-meter.zh.md) | 不可变的标量与位置回放度量,附带已消费日志修订号 |
12
13
  | [scope.md](scope.zh.md) | 作用域注册标识、dispatch 载体,以及拥有的 `Scope` 上下文 |
13
14
  | [typert.md](typert.zh.md) | 远程调用描述符、lookup/Context 声明、Typert 注册表,以及 Host Gateway/Client API 边界 |
14
15
  | [goal.md](goal.zh.md) | 持久 goal 标识、生命周期快照、激活、变更记录与 Round 归属 |
15
- | [schedule.md](schedule.zh.md) | 仅限 Session 内的提醒记录、持久转换、活动视图与普通对话交付 |
16
- | [todo.md](todo.zh.md) | todo 包的整列表条目类型、持久事件所有权、投影和开放轮次不变量 |
16
+ | [schedule.md](schedule.zh.md) | 仅限会话内的提醒记录、持久转换、活动视图与普通对话交付 |
17
+ | [todo.md](todo.zh.md) | todo 包的整列表条目类型、持久事件所有权、投影和未结束轮次不变式 |
18
+ | [deliverables.md](deliverables.zh.md) | 一轮交给用户的东西:`present` 声明的 `PresentedFile` 交付,以及由 git 快照得出、由 Host 提供的 `WorkspaceChangesSummary` 改动摘要 |
17
19
  | [commands.md](commands.zh.md) | 人类命令注册表服务:定义、适配器发现、直接调用、结果与解析视图 |
18
20
  | [session.md](session.zh.md) | 完整的 `SessionEventMap` 变体目录、`TurnEndReason`、`deriveMessages()`、执行封闭与独立事件 |
19
- | [persistence.md](persistence.zh.md) | 持久性 seam:`SessionPersistence`、JSONL provider、`session/flush`、崩溃恢复、`SessionHeader` |
21
+ | [persistence.md](persistence.zh.md) | 持久性 seam:`SessionPersistence`、JSONL 提供方、`session/flush`、崩溃恢复、`SessionHeader` |
20
22
  | [settings.md](settings.zh.md) | 用户设置 seam:`SettingsNamespace` 注册、分层解析(默认值 → 组合 `base` → 用户文档)、owner scope、热提交 |
21
23
  | [credentials.md](credentials.zh.md) | 凭据 seam:配置中的 `CredentialRef` 引用(绝不含值)、按操作解析、对 UI 安全的 `CredentialInfo`、提供方来源层 |
22
24
  | [session-query.md](session-query.zh.md) | 逻辑记录、有界精确事件读取、关系追踪、语义筛选器/文档与全文检索结果页 |
23
- | [feedback.md](feedback.zh.md) | 绑定生命周期的逐消息反馈记录、乐观版本、伴随记录持久化与 Host Remote 契约 |
25
+ | [feedback.md](feedback.zh.md) | 绑定生命周期的逐消息反馈记录、乐观版本、伴随记录持久化与 Host Remote 约定 |
24
26
  | [session-title.md](session-title.zh.md) | 持久标题快照、被引用的来源消息 seq 与异步提供方约定 |
25
27
  | [session-reference.md](session-reference.zh.md) | 结构化跨会话引用:`SessionReferenceInput`/`Candidate`、prepared 消息上下文、稳定错误分类 |
26
28
  | [system-prompt.md](system-prompt.zh.md) | 逐次组装的上下文、工具提供方结果、提示词段落与协作式组装 |
27
29
  | [tools.md](tools.zh.md) | `ToolDefinition` 完整字段、schema DSL、`ToolExecution`/`ToolResult`、工具展示 UI 类型,以及受保护的执行流水线 |
30
+ | [mcp.md](mcp.zh.md) | 外部 MCP 连接、作用域工具与资源、服务器指令、协议结果与配置归属 |
28
31
  | [user-questions.md](user-questions.zh.md) | UI 支持的人工问答 seam:`AskUserQuestionRequest`、answer/options 词汇、提供方 API、错误分类体系 |
29
32
  | [approval.md](approval.zh.md) | 一次性用户审批 seam:`ApprovalRequest`、`ApprovalOutcome`、逐会话策略、审计事件和 answerer 约定 |
33
+ | [office-to-pdf.md](office-to-pdf.zh.md) | 已授权的 Office 到 PDF 转换、原生/WASM 引擎与有界共享复用 |
30
34
  | [attachment.md](attachment.zh.md) | 持久图片标识与元数据、校验输入、经校验读取,以及 `AttachmentStore` seam |
31
- | [shell.md](shell.zh.md) | bash 执行器 seam:`ShellExecRequest`/`Spec`、`ShellRunResult`、后台 `ShellProcess` 句柄 |
35
+ | [shell.md](shell.zh.md) | shell 执行器 seam:`ShellExecRequest`/`Spec`、`ShellRunResult`、后台 `ShellProcess` 句柄 |
32
36
  | [subprocess.md](subprocess.zh.md) | 子进程 seam:完全显式的 `SubprocessSpawnSpec`、基于偏移的输出读取器、不含分类的 `SubprocessOutcome`,以及受管 `DSH_*` 环境词汇 |
37
+ | [ssh.md](ssh.zh.md) | POSIX SSH 连接与远程文件系统、子进程和沙箱提供方 |
33
38
  | [terminal.md](terminal.zh.md) | 持久化终端 ID、后端/会话约定、发送就绪状态、有界读取与 owner 可见快照 |
34
39
  | [sandbox.md](sandbox.zh.md) | 每会话策略解析与进程约束 seam:文件效果模式、执行/提供方策略、`ConfinedArgv`、强制执行与故障关闭错误 |
35
- | [code-runtime.md](code-runtime.zh.md) | 代码执行 seam:`CodeRunRequest`/`Result`、绑定命名空间、捕获日志、`CodeRunFailure` 分类体系 |
36
- | [extensions.md](extensions.zh.md) | 带版本的动态 Cordis Plugin Package、Host/Client 激活、审批、运行时检查和生命周期撤销 |
40
+ | [ptc-runtime.md](ptc-runtime.zh.md) | PTC 执行 seam:`PtcRunRequest`/`Result`、绑定命名空间、捕获日志、`PtcRunFailure` 分类体系 |
41
+ | [computer-use.md](computer-use.zh.md) | 按名称独占注册计算机操作提供方,以及 Cua Driver 集成选项 |
42
+ | [browser-use.md](browser-use.zh.md) | 按名称独占注册浏览器操作提供方、提供方选项与按 Session 管理的浏览器所有权 |
43
+ | [extensions.md](extensions.zh.md) | 带版本的动态 Cordis 插件与包、Host/Client 激活、审批、运行时检查和生命周期清理 |
37
44
  | [filesystem.md](filesystem.zh.md) | 文件系统 seam:`FsTarget`、读/写/编辑结果、观测到的文件状态、`FsErrorCode` |
38
45
  | [lsp.md](lsp.zh.md) | LSP 导航 seam:`LspQueryRequest`/`Result`、`LspProvider`/`Service`、四种操作、`LspError` |
39
46
  | [skills.md](skills.zh.md) | skill(技能)服务:发现优先级、`SkillSummary`/`SkillDefinition`、会话前缀目录、面向模型的 `skill` 加载 |
@@ -48,14 +55,16 @@
48
55
  | [plan.md](plan.zh.md) | 计划模式:仅记日志的 `plan/mode` 状态、待定选择的冲刷、`PlanModeConfig`、`exit_plan_mode` 审阅流程 |
49
56
  | [invariants.md](invariants.zh.md) | 运行时不变式注册表:选择配置 `Config`、`InvariantInstaller`/`InvariantFailure`、空配套插件约定 |
50
57
  | [web-server.md](web-server.zh.md) | HTTP 载体:`WebRouteKind`/`WebRoute`、匹配顺序、可认领的回退席位、index 渲染挂接点 |
51
- | [webhook.md](webhook.zh.md) | 通过身份验证的提供方交付、任意程序化规则,以及 fire-and-forget 的 Workspace Session 创建 |
58
+ | [webhook.md](webhook.zh.md) | 通过身份验证的提供方交付、任意程序化规则,以及发起 Workspace 会话创建后不等待结果 |
52
59
  | [storage.md](storage.zh.md) | 存储子系统:后端约定(`StorageBackend`)、`StorageForms`、`DomainSpec`/`Domain`、`domain/changed` |
53
60
  | [workspace.md](workspace.zh.md) | 工作区注册表:`Workspace`/`WorkspaceId`、注册与解析、与会话 `cwd` 的关系 |
54
- | [web-client.md](web-client.zh.md) | 浏览器架构:启动、Remote 通信、配对的 Client model、UI adapter、Conversation 组装、Slots 与重连语义 |
55
- | [client-modules.md](client-modules.zh.md) | Web 插件表:`dsh.client` 声明、`WebBootGraph` 线上组合、bundle 路由与 index 转换 |
56
- | [slots.md](slots.zh.md) | 类型化 Web UI 组合:声明所有权、cardinality 与 scope、框架与功能注入、props 推导及当前层级 |
57
- | [conversation.md](conversation.zh.md) | target-neutral Session event 组装:Context identity、Location data、replay 路径、view builder 与 target 自有 render node |
61
+ | [web-client.md](web-client.zh.md) | 浏览器架构:启动、Remote 通信、配对的 Client model、UI 适配器、Conversation 组装、slot 与重连语义 |
62
+ | [client-modules.md](client-modules.zh.md) | Web 插件表:`dsh.client` 声明、`WebBootGraph` 协议格式组合、bundle 路由与 index 挂接点 |
63
+ | [slots.md](slots.zh.md) | 类型化 Web UI 组合:声明所有权、cardinality 与 scope、框架与功能注入、props 推导及已交付的层级结构 |
64
+ | [client-resources.md](client-resources.zh.md) | 客户端资源模型:`dsh-resource://<type>/…` 地址、协议提供方与 `ResourceProtocolMap`、`useResource` 全局钩子及其状态、钉住与释放 |
65
+ | [sidebar-right.md](sidebar-right.zh.md) | 右侧 Sidebar:资源地址与导航地址、tab 类型注册与路由、`ctx.sidebarRight` 导航服务、pane-tab slot 与 owner props、资源模型及 Workspace Files 服务 |
66
+ | [conversation.md](conversation.zh.md) | 目标无关的会话事件组装:上下文标识、位置数据、回放路径、视图构建器与目标自有的渲染节点 |
58
67
  | [session-projection.md](session-projection.zh.md) | 投影 seam:`SessionProjectionMap`、纯函数 `ProjectionDefinition` 单元、`ProjectionSnapshot` 的一致切面、变更馈送 |
59
- | [session-telemetry.md](session-telemetry.zh.md) | 对外会话上报能力 seam:`SessionTelemetryRecord`/`SessionTelemetrySeverity`、`SessionTelemetrySink` 约定和 `session-telemetry/record` 脱敏 waterfall |
68
+ | [session-telemetry.md](session-telemetry.zh.md) | 对外会话上报能力 seam:`SessionTelemetryRecord`/`SessionTelemetrySeverity`、`SessionTelemetrySink` 约定和 `session-telemetry/record` 脱敏 waterfall(瀑布式事件) |
60
69
 
61
70
  > 这些页面上的类型声明及其 JSDoc 与源码等价,并由 `pnpm run verify-type-equiv` 检查漂移(见 [development.md](../development.zh.md#documenting-types-verbatim-ts-type-equiv))。普通块保留完整声明;`public-api` 块保留去除实现体的公开 class 声明。Cordis 服务与事件使用每页生成的 **Cordis API** 小节。
@@ -2,5 +2,5 @@
2
2
  # side as of the last confirmed-consistent state. Both languages carry equal authority;
3
3
  # after editing either side, bring the other along and re-record with:
4
4
  # pnpm run verify-translation-pairing --write docs/subsystems/agent-team.md
5
- agent-team.md: 201123ea94499ff20cae25d68b1f7a826439d143
6
- agent-team.zh.md: d6973ae6899c1d884dc51bd71afbd36a41895527
5
+ agent-team.md: 6f20ee11cbaf66028a5a3123d1682a0e9a87b014
6
+ agent-team.zh.md: 5f2cfae582f275f25380cbe996f5bad711c0f917
@@ -2,7 +2,7 @@
2
2
 
3
3
  English | [中文](agent-team.zh.md)
4
4
 
5
- Types shared by the experimental implicit-root Team domain, model tools, and host adapters. The [Agent Teams Agent Note](../../.agents/notes/implemented/feature/2026-08-05-agent-teams.md) owns identity, mailbox, task, and shared-checkout decisions; the [Team Steer messaging Agent Note](../../.agents/notes/implemented/simplification/2026-08-30-team-send-message-steer.md) owns message scheduling; this page records the literal durable forms from [`packages/experimental/agent-team/src/types.ts`](../../packages/experimental/agent-team/src/types.ts).
5
+ Types shared by the experimental implicit-root Team domain, model tools, and host adapters. The [Agent Teams Agent Note](../../.agents/notes/implemented/feature/2026-08-05-agent-teams.md) owns identity, mailbox, task, and shared-checkout decisions; this page records the literal durable forms from [`packages/experimental/agent-team/src/types.ts`](../../packages/experimental/agent-team/src/types.ts).
6
6
 
7
7
  ## Identity and roster
8
8
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  [English](agent-team.md) | 中文
4
4
 
5
- 实验性隐式 Root Team 领域、模型工具与宿主适配器共享的类型。[Agent Teams Agent Note](../../.agents/notes/implemented/feature/2026-08-05-agent-teams.zh.md)负责身份、mailbox、task 与共享 checkout 决策;[Team Steer 消息 Agent Note](../../.agents/notes/implemented/simplification/2026-08-30-team-send-message-steer.zh.md)负责消息调度;本页记录 [`packages/experimental/agent-team/src/types.ts`](../../packages/experimental/agent-team/src/types.ts) 中的字面持久形式。
5
+ 实验性隐式 Root Team 领域、模型工具与宿主适配器共享的类型。[Agent Teams Agent Note](../../.agents/notes/implemented/feature/2026-08-05-agent-teams.zh.md)负责身份、mailbox、task 与共享 checkout 决策;本页记录 [`packages/experimental/agent-team/src/types.ts`](../../packages/experimental/agent-team/src/types.ts) 中的字面持久形式。
6
6
 
7
7
  ## 身份与 roster
8
8
 
@@ -75,7 +75,7 @@ interface TeamTaskSnapshot {
75
75
 
76
76
  ## 回放
77
77
 
78
- `foldTeam()` 把一个 Root Session 回放成每个 Team 操作所读取的 roster、任务板与 queued-minus-delivered mailbox。它按 `TeamId` 选取记录,因此普通 fork 继承的 event 保留 ancestor id,绝不会进入新 Root 的状态。Session event 的 `seq` 与 `time` 继续负责顺序和时间记录,Team snapshot 不再重复保存它们。roster 与 task 读取以 view 形式到达调用方,而 pending 邮件仅供投递与恢复内部使用。包 [README](../../packages/experimental/agent-team/README-zh.md)负责 operation、authorization、recovery 和限制行为。
78
+ `foldTeam()` 把一个 Root Session 回放成每个 Team 操作所读取的 roster、任务板与 queued-minus-delivered mailbox。它按 `TeamId` 选取记录,因此普通 fork 继承的 event 保留 ancestor id,绝不会进入新 Root 的状态。Session event 的 `seq` 与 `time` 继续负责顺序和时间记录,Team snapshot 不再重复保存它们。roster 与 task 读取以 view 形式到达调用方,而 pending 邮件仅供投递与恢复内部使用。包 [README](../../packages/experimental/agent-team/README.zh.md)负责 operation、authorization、recovery 和限制行为。
79
79
 
80
80
  <!-- BEGIN GENERATED cordis-surface (gen-cordis-catalog.ts) — do not edit between markers -->
81
81
 
@@ -2,5 +2,5 @@
2
2
  # side as of the last confirmed-consistent state. Both languages carry equal authority;
3
3
  # after editing either side, bring the other along and re-record with:
4
4
  # pnpm run verify-translation-pairing --write docs/subsystems/approval.md
5
- approval.md: 89130232b45da2982d0da40c8fad217b364758b2
6
- approval.zh.md: e8047cd5a8bf8dfa23b9e80ad97db00d0e25a061
5
+ approval.md: 656325aa446321253817be3ffeaef658a7c975c4
6
+ approval.zh.md: a22aec2ef23fdf4809a73e1bc8509eab2679742f
@@ -46,7 +46,7 @@ type ApprovalOutcome = 'allowed-once' | 'rejected' | 'cancelled' | 'unavailable'
46
46
  type ApprovalPolicy = 'ask' | 'never'
47
47
  ```
48
48
 
49
- Both policies contribute their complete current meaning to the cache-safe runtime-context snapshot. The sourced `user/message` is the durable model-visible input; changing approval state appends a new full snapshot after retained history without rewriting the request header's system prompt.
49
+ Both policies contribute their complete current meaning to the cache-safe runtime-context snapshot. The sourced `user/message` is the durable model-visible input; changing approval state appends a new full snapshot after retained history without touching the `system/message` nodes that hold the rendered system prompt.
50
50
 
51
51
  ## Approval request
52
52
 
@@ -46,7 +46,7 @@ type ApprovalOutcome = 'allowed-once' | 'rejected' | 'cancelled' | 'unavailable'
46
46
  type ApprovalPolicy = 'ask' | 'never'
47
47
  ```
48
48
 
49
- 两种策略都会将各自完整的当前含义贡献给缓存安全的运行时上下文快照。带来源的 `user/message` 是持久化且模型可见的输入;审批状态变化时,会在保留的历史后追加一份新的完整快照,而不改写请求头中的系统提示词。
49
+ 两种策略都会将各自完整的当前含义贡献给缓存安全的运行时上下文快照。带来源的 `user/message` 是持久化且模型可见的输入;审批状态变化时,会在保留的历史后追加一份新的完整快照,而不触碰承载渲染后系统提示词的 `system/message` 节点。
50
50
 
51
51
  ## 审批请求
52
52
 
@@ -2,5 +2,5 @@
2
2
  # side as of the last confirmed-consistent state. Both languages carry equal authority;
3
3
  # after editing either side, bring the other along and re-record with:
4
4
  # pnpm run verify-translation-pairing --write docs/subsystems/attachment.md
5
- attachment.md: 53b3e51e5b1c87625256178287061386342bc055
6
- attachment.zh.md: 549c06cc5abe542e5d6feeba10b24ebf6ba8dfd1
5
+ attachment.md: db1c1cfa15f5d0815236f96b6472cbbd864decbd
6
+ attachment.zh.md: 82379de5049012c0912734dc94257d6b8f354ad1
@@ -126,15 +126,25 @@ interface StoredImageAttachment {
126
126
  ```
127
127
 
128
128
  ```ts type-equiv
129
- /** Deterministic request-image policy selected by one exact model route. */
130
- interface ImageRequestPolicy {
131
- /** Maximum width multiplied by height after aspect-preserving projection. */
132
- maxPixels: number
129
+ /** Deterministic request-image target selected by one exact model route for one attachment. */
130
+ interface ImageRequestTarget {
131
+ /** Target width in pixels; a target above the source keeps the source width. */
132
+ width: number
133
+ /** Target height in pixels; a target above the source keeps the source height. */
134
+ height: number
133
135
  /** Encoded-byte target before base64 expansion or Files API upload; the smallest quality-ladder output is kept when no quality fits. */
134
136
  maxBytes: number
135
137
  }
136
138
  ```
137
139
 
140
+ ```ts type-equiv
141
+ /** Integer width and height of one projected image. */
142
+ interface ProjectedDimensions {
143
+ width: number
144
+ height: number
145
+ }
146
+ ```
147
+
138
148
  ```ts type-equiv
139
149
  /** Cached request version derived from one provider-independent normalized attachment. */
140
150
  interface RequestImageAttachment {
@@ -157,7 +167,7 @@ interface RequestImageAttachment {
157
167
  }
158
168
  ```
159
169
 
160
- `saveImage()` prepares and atomically commits a provider-independent normalized attachment before returning its `ImageAttachmentRef`. `saveImages()` prepares every validated attachment once before publishing the batch, so validation rejection leaves no partial objects and publication does not repeat decoding or quality selection. `admitPromptContent()` accepts the complete ordered Host prompt after file receipt resolution, replaces base64 image uploads with durable references, and passes durable file references unchanged. `admitEncodedImages()` supports other wire entries and delegates count, aggregate-byte, and ordered batch admission to `saveImages()`. `admitEncodedFile()` gives encoded protocol adapters the same service-owned canonical-base64 admission, and `isAttachmentError()` lets those adapters recognize stable attachment failures without importing implementation helpers. `readImage()` verifies a normalized attachment from an authorized session path. `imageHostPath()` exposes only the provider-owned host object location; it does not decide whether the current tool execution world can read it. `readImageRequest()` derives and caches one deterministic request version under an exact route pixel and byte budget. That version contains encoded bytes and metadata but no execution-world path. New entries are fully decoded before publication, while cache hits use a bounded metadata probe. Callers use `Promise.all` over the singular method when they need an ordered batch. The local implementation lazily encodes preferred candidates, singleflights equal request identities, lets each waiter cancel independently, stops shared work when no waiter remains, and bounds all transforms with its instance-level limiter, which defaults to two simultaneous transformations. The service is retention-neutral: resumed and forked sessions may share objects, so reference-aware garbage collection is deferred rather than tied to one session's deletion.
170
+ `saveImage()` prepares and atomically commits a provider-independent normalized attachment before returning its `ImageAttachmentRef`. `saveImages()` prepares every validated attachment once before publishing the batch, so validation rejection leaves no partial objects and publication does not repeat decoding or quality selection. `admitPromptContent()` accepts the complete ordered Host prompt after file receipt resolution, replaces base64 image uploads with durable references, and passes durable file references unchanged. `admitEncodedImages()` supports other wire entries and delegates count, aggregate-byte, and ordered batch admission to `saveImages()`. `admitEncodedFile()` gives encoded protocol adapters the same service-owned canonical-base64 admission, and `isAttachmentError()` lets those adapters recognize stable attachment failures without importing implementation helpers. `readImage()` verifies a normalized attachment from an authorized session path. `imageHostPath()` exposes only the provider-owned host object location; it does not decide whether the current tool execution world can read it. `readImageRequest()` derives and caches one deterministic request version at an exact route-chosen target size and encoded-byte target. That version contains encoded bytes and metadata but no execution-world path. New entries are fully decoded before publication, while cache hits use a bounded metadata probe. Callers use `Promise.all` over the singular method when they need an ordered batch. The local implementation lazily encodes preferred candidates, singleflights equal request identities, lets each waiter cancel independently, stops shared work when no waiter remains, and bounds all transforms with its instance-level limiter, which defaults to two simultaneous transformations. The service is retention-neutral: resumed and forked sessions may share objects, so reference-aware garbage collection is deferred rather than tied to one session's deletion.
161
171
 
162
172
  <!-- BEGIN GENERATED cordis-surface (gen-cordis-catalog.ts) — do not edit between markers -->
163
173
 
@@ -280,11 +290,11 @@ fileHostPath(ref: FileAttachmentRef): string | undefined
280
290
  /**
281
291
  * Generate or read one deterministic model-request version from the stored normalized image.
282
292
  * @param ref - durable provider-independent normalized attachment reference.
283
- * @param policy - exact route pixel budget and encoded-byte target; a target no ladder quality meets yields the smallest ladder output.
293
+ * @param target - route-chosen dimensions and byte target; an unmet byte target yields the smallest ladder output.
284
294
  * @param signal - optional cancellation.
285
295
  * @returns request bytes and the cache/upload identity covering every transform input.
286
296
  */
287
- readImageRequest( ref: ImageAttachmentRef, policy: ImageRequestPolicy, signal?: AbortSignal, ): Promise<RequestImageAttachment>
297
+ readImageRequest( ref: ImageAttachmentRef, target: ImageRequestTarget, signal?: AbortSignal, ): Promise<RequestImageAttachment>
288
298
  ```
289
299
 
290
300
  Source: [`packages/attachment/attachment/src/index.ts`](../../packages/attachment/attachment/src/index.ts)
@@ -126,15 +126,25 @@ interface StoredImageAttachment {
126
126
  ```
127
127
 
128
128
  ```ts type-equiv
129
- /** Deterministic request-image policy selected by one exact model route. */
130
- interface ImageRequestPolicy {
131
- /** Maximum width multiplied by height after aspect-preserving projection. */
132
- maxPixels: number
129
+ /** Deterministic request-image target selected by one exact model route for one attachment. */
130
+ interface ImageRequestTarget {
131
+ /** Target width in pixels; a target above the source keeps the source width. */
132
+ width: number
133
+ /** Target height in pixels; a target above the source keeps the source height. */
134
+ height: number
133
135
  /** Encoded-byte target before base64 expansion or Files API upload; the smallest quality-ladder output is kept when no quality fits. */
134
136
  maxBytes: number
135
137
  }
136
138
  ```
137
139
 
140
+ ```ts type-equiv
141
+ /** Integer width and height of one projected image. */
142
+ interface ProjectedDimensions {
143
+ width: number
144
+ height: number
145
+ }
146
+ ```
147
+
138
148
  ```ts type-equiv
139
149
  /** Cached request version derived from one provider-independent normalized attachment. */
140
150
  interface RequestImageAttachment {
@@ -157,7 +167,7 @@ interface RequestImageAttachment {
157
167
  }
158
168
  ```
159
169
 
160
- `saveImage()` 准备并原子提交提供方无关的规范化附件,然后直接返回 `ImageAttachmentRef`。`saveImages()` 在发布批次前为每个成员各准备一次经过验证的附件,因此校验拒绝不会留下部分对象,发布也不会重复解码或选择质量。`admitPromptContent()` 在文件凭证解析后接收完整且有序的 Host prompt,把 base64 图片上传替换为持久引用,并让持久文件引用原样通过。`admitEncodedImages()` 支持其他 wire 入口,把张数、聚合字节和有序批量准入交给 `saveImages()`。`admitEncodedFile()` 让编码协议适配器使用服务拥有的规范 base64 准入,`isAttachmentError()` 让这些适配器无需导入实现辅助函数即可识别稳定的附件错误。`readImage()` 校验来自已授权会话路径的规范化附件。`imageHostPath()` 只公开提供方所持对象的宿主位置,不判断当前工具执行环境能否读取它。`readImageRequest()` 按确切路由的像素和字节预算派生并缓存确定性请求版本。该版本包含编码字节和元数据,不包含执行环境路径。新条目在发布前完整解码,缓存命中只做有界元数据探测。调用方需要有序批次时,对单数方法使用 `Promise.all`。本地实现按需编码首选候选、合并相同请求身份的并发任务、允许每个等待方单独取消、没有等待方时停止共享任务,并通过实例级限流器限制全部变换,默认同时执行两项。该服务不规定保留策略:恢复和 fork 后的会话可能共享对象,因此基于引用的垃圾回收会延期实现,不与单个会话的删除绑定。
170
+ `saveImage()` 准备并原子提交提供方无关的规范化附件,然后直接返回 `ImageAttachmentRef`。`saveImages()` 在发布批次前为每个成员各准备一次经过验证的附件,因此校验拒绝不会留下部分对象,发布也不会重复解码或选择质量。`admitPromptContent()` 在文件凭证解析后接收完整且有序的 Host prompt,把 base64 图片上传替换为持久引用,并让持久文件引用原样通过。`admitEncodedImages()` 支持其他 wire 入口,把张数、聚合字节和有序批量准入交给 `saveImages()`。`admitEncodedFile()` 让编码协议适配器使用服务拥有的规范 base64 准入,`isAttachmentError()` 让这些适配器无需导入实现辅助函数即可识别稳定的附件错误。`readImage()` 校验来自已授权会话路径的规范化附件。`imageHostPath()` 只公开提供方所持对象的宿主位置,不判断当前工具执行环境能否读取它。`readImageRequest()` 按确切的路由目标尺寸和编码字节目标派生并缓存确定性请求版本。该版本包含编码字节和元数据,不包含执行环境路径。新条目在发布前完整解码,缓存命中只做有界元数据探测。调用方需要有序批次时,对单数方法使用 `Promise.all`。本地实现按需编码首选候选、合并相同请求身份的并发任务、允许每个等待方单独取消、没有等待方时停止共享任务,并通过实例级限流器限制全部变换,默认同时执行两项。该服务不规定保留策略:恢复和 fork 后的会话可能共享对象,因此基于引用的垃圾回收会延期实现,不与单个会话的删除绑定。
161
171
 
162
172
  <!-- BEGIN GENERATED cordis-surface (gen-cordis-catalog.ts) — do not edit between markers -->
163
173
 
@@ -280,11 +290,11 @@ fileHostPath(ref: FileAttachmentRef): string | undefined
280
290
  /**
281
291
  * Generate or read one deterministic model-request version from the stored normalized image.
282
292
  * @param ref - durable provider-independent normalized attachment reference.
283
- * @param policy - exact route pixel budget and encoded-byte target; a target no ladder quality meets yields the smallest ladder output.
293
+ * @param target - route-chosen dimensions and byte target; an unmet byte target yields the smallest ladder output.
284
294
  * @param signal - optional cancellation.
285
295
  * @returns request bytes and the cache/upload identity covering every transform input.
286
296
  */
287
- readImageRequest( ref: ImageAttachmentRef, policy: ImageRequestPolicy, signal?: AbortSignal, ): Promise<RequestImageAttachment>
297
+ readImageRequest( ref: ImageAttachmentRef, target: ImageRequestTarget, signal?: AbortSignal, ): Promise<RequestImageAttachment>
288
298
  ```
289
299
 
290
300
  Source: [`packages/attachment/attachment/src/index.ts`](../../packages/attachment/attachment/src/index.ts)
@@ -1,6 +1,6 @@
1
1
  # Bilingual-pair consistency record (docs/i18n/README.md): the git blob hash of each
2
2
  # side as of the last confirmed-consistent state. Both languages carry equal authority;
3
3
  # after editing either side, bring the other along and re-record with:
4
- # pnpm run verify-translation-pairing --write docs/subsystems/code-runtime.md
5
- code-runtime.md: 4c7fce42c363c7735d03fcb723bb5c5f1af12bb9
6
- code-runtime.zh.md: f01e3bccef165a5aeb9130ac983b2e8ff63a81b0
4
+ # pnpm run verify-translation-pairing --write docs/subsystems/boot.md
5
+ boot.md: 6bceb5deb087d49dff6958d51549c7942d0e224a
6
+ boot.zh.md: c3addc59008e9f7e5812f5f2eefbc751cd731fba