@piagent/platform 1.7.1 → 1.9.0

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 (227) hide show
  1. package/AGENTS.md +7 -0
  2. package/CHANGELOG.md +113 -1
  3. package/README.md +45 -70
  4. package/README.vi.md +34 -61
  5. package/architecture/layers.json +16 -3
  6. package/catalog/capabilities.json +14 -7
  7. package/catalog/claude-model-additions.json +42 -0
  8. package/docs/auto-delegation-policy.md +2 -0
  9. package/docs/command-reference-vietnamese.md +69 -91
  10. package/docs/context-window-policy.md +5 -5
  11. package/docs/distribution-standard.md +16 -19
  12. package/docs/en/architecture.md +9 -1
  13. package/docs/herdr-workflow.md +2 -3
  14. package/docs/languages.json +4 -4
  15. package/docs/managed-local-acceptance.md +403 -0
  16. package/docs/mcp-and-tools.md +5 -7
  17. package/docs/memory-policy.md +3 -3
  18. package/docs/model-options.md +22 -17
  19. package/docs/oauth-providers.md +1 -1
  20. package/docs/operator-manual-vietnamese.md +85 -130
  21. package/docs/package-architecture-notes.md +4 -4
  22. package/docs/piagent-core-improvement-plan.md +3 -5
  23. package/docs/piagent-core-plan-checkpoint-2026-09-06.json +2 -13
  24. package/docs/piagent-runtime-benchmark-execution-plan.md +10 -8
  25. package/docs/project-adapters.md +3 -3
  26. package/docs/project-onboarding.md +15 -16
  27. package/docs/publishing-for-teams.md +3 -1
  28. package/docs/quality-benchmark.md +2 -0
  29. package/docs/quickstart-vietnamese.md +24 -25
  30. package/docs/release-install-policy.md +16 -11
  31. package/docs/research/harness-next-evidence-review.md +7 -7
  32. package/docs/runtime-harness-standard.md +2 -0
  33. package/docs/runtime-policy-design.md +2 -0
  34. package/docs/runtime-quality-baseline.md +2 -0
  35. package/docs/subagent-orchestration-capabilities.md +1 -1
  36. package/docs/subagents-and-multiagent.md +10 -8
  37. package/docs/task-implementation-contract.md +2 -0
  38. package/docs/task-lifecycle-vietnamese.md +2 -0
  39. package/docs/team-onboarding.md +33 -64
  40. package/docs/usage-observability.md +2 -2
  41. package/docs/vi/architecture.md +9 -1
  42. package/docs/workflow-recipes.md +6 -10
  43. package/docs-site/architecture.html +4 -3
  44. package/docs-site/assets/docs.css +80 -0
  45. package/docs-site/benchmark.html +7 -1
  46. package/docs-site/commands.html +37 -23
  47. package/docs-site/content/architecture.html +2 -2
  48. package/docs-site/content/benchmark.html +5 -0
  49. package/docs-site/content/commands.html +35 -22
  50. package/docs-site/content/ecosystem.html +144 -0
  51. package/docs-site/content/en/architecture.html +1 -1
  52. package/docs-site/content/en/benchmark.html +5 -0
  53. package/docs-site/content/en/commands.html +30 -13
  54. package/docs-site/content/en/ecosystem.html +144 -0
  55. package/docs-site/content/en/index.html +24 -9
  56. package/docs-site/content/en/quickstart.html +10 -12
  57. package/docs-site/content/en/runtime.html +1 -1
  58. package/docs-site/content/en/security.html +1 -1
  59. package/docs-site/content/en/team.html +2 -2
  60. package/docs-site/content/en/whats-new.html +89 -1
  61. package/docs-site/content/en/workflows.html +29 -31
  62. package/docs-site/content/index.html +24 -9
  63. package/docs-site/content/quickstart.html +10 -12
  64. package/docs-site/content/runtime.html +2 -2
  65. package/docs-site/content/security.html +2 -2
  66. package/docs-site/content/team.html +2 -2
  67. package/docs-site/content/whats-new.html +89 -1
  68. package/docs-site/content/workflows.html +36 -38
  69. package/docs-site/context-engine.html +2 -1
  70. package/docs-site/ecosystem.html +283 -0
  71. package/docs-site/en/architecture.html +3 -2
  72. package/docs-site/en/benchmark.html +7 -1
  73. package/docs-site/en/commands.html +32 -14
  74. package/docs-site/en/context-engine.html +2 -1
  75. package/docs-site/en/ecosystem.html +283 -0
  76. package/docs-site/en/index.html +30 -14
  77. package/docs-site/en/mcp-approval.html +2 -1
  78. package/docs-site/en/mcp-auth.html +2 -1
  79. package/docs-site/en/mcp-servers.html +2 -1
  80. package/docs-site/en/mcp.html +2 -1
  81. package/docs-site/en/permissions.html +2 -1
  82. package/docs-site/en/profiles.html +2 -1
  83. package/docs-site/en/quickstart.html +17 -18
  84. package/docs-site/en/runtime.html +3 -2
  85. package/docs-site/en/scope.html +2 -1
  86. package/docs-site/en/security.html +6 -5
  87. package/docs-site/en/team.html +4 -3
  88. package/docs-site/en/whats-new.html +97 -8
  89. package/docs-site/en/workflows.html +34 -35
  90. package/docs-site/index.html +30 -14
  91. package/docs-site/mcp-approval.html +2 -1
  92. package/docs-site/mcp-auth.html +2 -1
  93. package/docs-site/mcp-servers.html +2 -1
  94. package/docs-site/mcp.html +2 -1
  95. package/docs-site/permissions.html +2 -1
  96. package/docs-site/profiles.html +2 -1
  97. package/docs-site/quickstart.html +17 -18
  98. package/docs-site/runtime.html +4 -3
  99. package/docs-site/scope.html +2 -1
  100. package/docs-site/security.html +7 -6
  101. package/docs-site/team.html +4 -3
  102. package/docs-site/whats-new.html +97 -8
  103. package/docs-site/workflows.html +41 -42
  104. package/evals/fs5-causal-arm.v1.json +2 -2
  105. package/evals/private-holdout-v1/CURRENT_BOUNDARY.md +17 -0
  106. package/evals/private-holdout-v1/public-exposure.v2.json +2 -2
  107. package/package.json +10 -9
  108. package/packages/piagent-core/README.md +15 -23
  109. package/packages/piagent-core/docs/context-efficiency-improvement-plan.md +2 -0
  110. package/packages/piagent-core/extensions/experiment-loop-policy.ts +75 -0
  111. package/packages/piagent-core/extensions/local-state-path.js +15 -0
  112. package/packages/piagent-core/extensions/piagent-guard.ts +108 -960
  113. package/packages/piagent-core/extensions/policy-core.js +2 -2
  114. package/packages/piagent-core/extensions/source-checkout-paths.ts +54 -0
  115. package/packages/piagent-core/managed/broker-client.mjs +49 -0
  116. package/packages/piagent-core/managed/capabilities.mjs +28 -0
  117. package/packages/piagent-core/managed/compaction.mjs +63 -0
  118. package/packages/piagent-core/managed/doctor.mjs +107 -0
  119. package/packages/piagent-core/managed/native-catalog.mjs +42 -0
  120. package/packages/piagent-core/managed/patch-snapshot.mjs +48 -0
  121. package/packages/piagent-core/managed/repository-operation.mjs +84 -0
  122. package/packages/piagent-core/managed/request-stream.mjs +129 -0
  123. package/packages/piagent-core/managed/resource-loader.mjs +42 -0
  124. package/packages/piagent-core/managed/review-snapshot-worker.mjs +27 -0
  125. package/packages/piagent-core/managed/sandbox-diagnostic.mjs +12 -0
  126. package/packages/piagent-core/managed/search-fallback.mjs +93 -0
  127. package/packages/piagent-core/managed/session.mjs +472 -0
  128. package/packages/piagent-core/managed/store.d.mts +3 -0
  129. package/packages/piagent-core/managed/store.mjs +64 -0
  130. package/packages/piagent-core/managed/tool-boundary.mjs +243 -0
  131. package/packages/piagent-core/managed/tool-worker.mjs +36 -0
  132. package/packages/piagent-core/managed/toolchain.mjs +120 -0
  133. package/packages/piagent-core/managed/web-fetch.mjs +105 -0
  134. package/packages/piagent-core/managed/web-search.mjs +96 -0
  135. package/packages/piagent-core/managed/workflow.mjs +299 -0
  136. package/packages/piagent-core/package.json +3 -6
  137. package/packages/piagent-core/policies/base-policy.json +80 -26
  138. package/packages/piagent-core/runtime/hooks/agent-start-hook.ts +3 -3
  139. package/packages/piagent-core/runtime/hooks/input-hook.ts +35 -196
  140. package/packages/piagent-core/runtime/hooks/session-start-hook.ts +2 -0
  141. package/packages/piagent-core/runtime/inspection/approval-broker.ts +9 -1
  142. package/packages/piagent-core/runtime/inspection/same-process-bridge-proof.ts +1 -1
  143. package/packages/piagent-core/runtime/inspection/webui-snapshot.ts +1 -1
  144. package/packages/piagent-core/runtime/managed-failure.d.mts +10 -0
  145. package/packages/piagent-core/runtime/managed-failure.mjs +164 -0
  146. package/packages/piagent-core/runtime/model/model-route-policy.ts +33 -13
  147. package/packages/piagent-core/runtime/model/model-route-types.ts +10 -6
  148. package/packages/piagent-core/runtime/orchestration/minimal-delegation-policy.ts +8 -29
  149. package/packages/piagent-core/runtime/orchestration/owned-work-budget.ts +1 -1
  150. package/packages/piagent-core/runtime/policy/block-remedy.ts +5 -3
  151. package/packages/piagent-core/runtime/registration/context-commands.ts +1 -1
  152. package/packages/piagent-core/runtime/registration/knowledge-tools.ts +7 -7
  153. package/packages/piagent-core/runtime/registration/policy-tools.ts +2 -2
  154. package/packages/piagent-core/runtime/registration/session-commands.ts +11 -26
  155. package/packages/piagent-core/runtime/registration/task-evidence-tools.ts +1 -1
  156. package/packages/piagent-core/runtime/session/system-prompt.ts +6 -7
  157. package/packages/piagent-core/runtime/workflows/webui-runtime-command.ts +6 -6
  158. package/packages/piagent-core/runtime/workflows/webui-workflow.ts +6 -11
  159. package/packages/piagent-core/security/sensitive-text.js +9 -0
  160. package/packages/piagent-core/skills/piagent-ops/SKILL.md +8 -10
  161. package/packages/piagent-core/skills/test-audit/SKILL.md +101 -0
  162. package/packages/piagent-core/subagents/piagent-planner.md +1 -1
  163. package/packages/piagent-webui/dist/client/assets/{MarkdownMessage-DGk34zJT.js → MarkdownMessage-Dd9wPk-v.js} +1 -1
  164. package/packages/piagent-webui/dist/client/assets/index-7I-50Q2U.js +228 -0
  165. package/packages/piagent-webui/dist/client/assets/{index-DVahUVWy.css → index-DgSmcnP8.css} +1 -1
  166. package/packages/piagent-webui/dist/client/index.html +2 -2
  167. package/packages/piagent-webui/extension/piagent-webui.ts +11 -11
  168. package/packages/piagent-webui/extension/session-stream-adapter.ts +3 -1
  169. package/packages/piagent-webui/extension/terminal-session-adapter.ts +6 -1
  170. package/packages/piagent-webui/gateway/company-relay.ts +308 -0
  171. package/packages/piagent-webui/gateway/control-socket.ts +39 -12
  172. package/packages/piagent-webui/gateway/gateway-service.ts +109 -28
  173. package/packages/piagent-webui/gateway/gateway-session-stream.ts +58 -2
  174. package/packages/piagent-webui/gateway/managed-gateway.mjs +41 -0
  175. package/packages/piagent-webui/gateway/managed-launch.ts +145 -0
  176. package/packages/piagent-webui/gateway/managed-projection.ts +20 -0
  177. package/packages/piagent-webui/gateway/pi-host.ts +22 -4
  178. package/packages/piagent-webui/gateway/runtime-session-controls.ts +5 -2
  179. package/packages/piagent-webui/gateway/session-approval-authority.ts +28 -0
  180. package/packages/piagent-webui/gateway/session-catalog.ts +11 -3
  181. package/packages/piagent-webui/gateway/session-command-controller.ts +8 -2
  182. package/packages/piagent-webui/gateway/session-file-facts.ts +25 -0
  183. package/packages/piagent-webui/gateway/session-inspection-registry.ts +42 -12
  184. package/packages/piagent-webui/gateway/session-list-cache.ts +68 -0
  185. package/packages/piagent-webui/gateway/session-runtime-ownership.ts +8 -1
  186. package/packages/piagent-webui/gateway/session-runtime-supervisor.ts +20 -27
  187. package/packages/piagent-webui/ownership/managed-terminal-lease.ts +27 -0
  188. package/packages/piagent-webui/ownership/profile-state.ts +2 -0
  189. package/packages/piagent-webui/ownership/session-lease-store.ts +22 -1
  190. package/packages/piagent-webui/server/approval-projection.ts +9 -0
  191. package/packages/piagent-webui/server/core-inspection-provider.ts +4 -9
  192. package/packages/piagent-webui/server/loopback-server.ts +37 -1
  193. package/packages/piagent-webui/server/message-stop-reason.ts +11 -0
  194. package/packages/piagent-webui/server/tool-call-summary.ts +185 -0
  195. package/packages/piagent-webui/server/transcript-projection.ts +86 -3
  196. package/packs/engineering-base/pack.json +4 -0
  197. package/schemas/piagent-webui/runtime-command-v1.schema.json +1 -2
  198. package/schemas/piagent-webui/session-catalog-v1.schema.json +8 -0
  199. package/schemas/piagent-webui/transcript-v1.schema.json +94 -1
  200. package/scripts/build-docs-site.mjs +23 -12
  201. package/scripts/check-public-wording.mjs +5 -6
  202. package/scripts/check-runtime-advisories.mjs +23 -6
  203. package/scripts/claude-model-additions.mjs +33 -0
  204. package/scripts/configure-model-scope.sh +36 -8
  205. package/scripts/configure-subagents.sh +1 -1
  206. package/scripts/explain-command.mjs +5 -6
  207. package/scripts/install-global.sh +2 -2
  208. package/scripts/model-route-evaluation-core.ts +1 -0
  209. package/scripts/model-scope-prune.mjs +75 -0
  210. package/scripts/phase-tools-evaluation.mjs +9 -4
  211. package/scripts/pi-model-route.mjs +1 -1
  212. package/scripts/piagent-cli.mjs +51 -2
  213. package/scripts/piagent-dashboard.mjs +27 -4
  214. package/scripts/piagent-installations.mjs +26 -0
  215. package/scripts/piagent-studio.mjs +155 -0
  216. package/scripts/runtime-advisory-exceptions.json +29 -0
  217. package/scripts/setup.sh +2 -2
  218. package/scripts/team-doctor.sh +20 -1
  219. package/scripts/typescript-loader.mjs +6 -0
  220. package/scripts/verify-local.sh +5 -5
  221. package/scripts/verify-release-identity.mjs +1 -1
  222. package/templates/global/settings.json +8 -2
  223. package/templates/project/.pi/project-context.md +3 -3
  224. package/templates/project/AGENTS.md +4 -5
  225. package/docs/piagent-core-reasoning-research-2026-09-06.md +0 -225
  226. package/docs/piagent-core-research-sources-2026-09-06.json +0 -416
  227. package/packages/piagent-webui/dist/client/assets/index-DiKRmCEP.js +0 -176
@@ -9,8 +9,8 @@ Một thành viên mới không cần biết local path của maintainer. Luồn
9
9
 
10
10
  ```bash
11
11
  node --version # >= 22.19.0
12
- npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.86.1
13
- npm install -g --ignore-scripts @piagent/platform@1.7.1
12
+ npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.87.1
13
+ npm install -g --ignore-scripts @piagent/platform@1.9.0
14
14
  piagent-install --stable
15
15
  cd /path/to/project
16
16
  pi
@@ -18,15 +18,16 @@ pi
18
18
  <select provider/model>
19
19
  /mcp
20
20
  /subagents-doctor
21
- /onboard
22
- /onboard run
21
+ /profile setup
23
22
  /memory
24
23
  ```
25
24
 
25
+ Rồi nhờ agent: "Đọc project này (chỉ đọc) và ghi lại project context." (từ bản 1.9.0 không còn `/onboard`).
26
+
26
27
  ## Prerequisites
27
28
 
28
29
  - Node.js >=22.19.0.
29
- - Pi Coding Agent `0.86.1`.
30
+ - Pi Coding Agent `0.87.1`.
30
31
  - Runtime rollout:
31
32
  - verified: macOS Apple Silicon + Bash, Linux x64 + Bash;
32
33
  - supported target cần smoke trước khi rollout rộng: macOS Intel + Bash, Linux ARM64 + Bash;
@@ -43,8 +44,8 @@ Mặc định team dùng stable helper:
43
44
 
44
45
  ```bash
45
46
  node --version # >= 22.19.0
46
- npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.86.1
47
- npm install -g --ignore-scripts @piagent/platform@1.7.1
47
+ npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.87.1
48
+ npm install -g --ignore-scripts @piagent/platform@1.9.0
48
49
  piagent-install --stable --dry-run
49
50
  piagent-install --stable
50
51
  ```
@@ -80,7 +81,7 @@ Khi cần kiểm tra một project sau rollout, chạy riêng:
80
81
  piagent-update --version X.Y.Z --project /path/to/project
81
82
  ```
82
83
 
83
- `--project` là bước phụ: tự migrate layout cũ, Task Contract và managed block
84
+ `--project` là bước phụ: tự migrate layout cũ, bản ghi task cũ và managed block
84
85
  trong `AGENTS.md` nếu có rồi chạy doctor strict-share. Text riêng của project
85
86
  ngoài managed block được giữ nguyên. Nếu chỉ update global, runtime mới vẫn thay
86
87
  checklist template cũ trong system prompt ở memory nên task dùng logic mới ngay;
@@ -106,7 +107,7 @@ Version mới nhất được hỏi npm registry nhiều nhất một lần mỗ
106
107
  Sequence thủ công vẫn dùng được, và bắt buộc theo thứ tự này — `piagent-install` **fail** nếu Pi host lệch bản pin, nó không tự nâng host:
107
108
 
108
109
  ```bash
109
- npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.86.1
110
+ npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.87.1
110
111
  npm install -g --ignore-scripts @piagent/platform@X.Y.Z
111
112
  piagent-install --stable --dry-run
112
113
  piagent-install --stable
@@ -118,7 +119,7 @@ Full rollback dùng cùng sequence với `vPREVIOUS`, nhưng exact Pi host phả
118
119
  Nếu team publish npm private:
119
120
 
120
121
  ```bash
121
- npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.86.1
122
+ npm install -g --ignore-scripts @earendil-works/pi-coding-agent@0.87.1
122
123
  pi install npm:@your-scope/platform@x.y.z
123
124
  ```
124
125
 
@@ -171,10 +172,11 @@ Rồi chạy:
171
172
  ```text
172
173
  /mcp
173
174
  /subagents-doctor
174
- /onboard
175
- /onboard run
175
+ /profile setup
176
176
  ```
177
177
 
178
+ rồi nhờ agent trong chat: "Đọc project này (chỉ đọc) và ghi lại project context."
179
+
178
180
  Output chính:
179
181
 
180
182
  - `.pi/project-context.md`
@@ -201,7 +203,7 @@ Nếu project chưa có profile/tech stack, dùng select-style flow để tránh
201
203
 
202
204
  `fullstack` bắt chọn frontend, backend và database. Nếu native select chưa có trong Pi host, command trả card compact kèm lệnh deterministic `/profile tech apply ...`.
203
205
 
204
- Nếu `.pi/project-context.md` còn `Generated: not yet`, không nên chạy `/workflow task` implementation.
206
+ Nếu `.pi/project-context.md` còn `Generated: not yet`, nên nhờ agent onboard trước khi giao việc implement.
205
207
 
206
208
  Memory mặc định là project-scoped và explicit-only. Chạy `/memory` để xem files/rules. `/memory-policy` vẫn là alias. Agent chỉ ghi durable memory khi user yêu cầu rõ ràng.
207
209
 
@@ -263,13 +265,13 @@ Project init tạo:
263
265
 
264
266
  Hai file memory ở trên là local/private mặc định theo `.pi/.gitignore`; chỉ commit nếu team opt-in sau review.
265
267
 
266
- Với luồng FE/BE tách repo nhưng để chung một folder làm việc, mở Pi tại folder cha và chọn `be-readonly-fe` cho chính folder cha đó. Ví dụ `Working/v-nexus-frontend/` và `Working/v-nexus-backend/` là hai Git repo riêng; `Working/.pi/piagent-profile.json` là profile của phiên Pi. Khi start task, scope ghi nên nằm trong FE repo:
268
+ Với luồng FE/BE tách repo nhưng để chung một folder làm việc, mở Pi tại folder cha và chọn `be-readonly-fe` cho chính folder cha đó. Ví dụ `Working/v-nexus-frontend/` và `Working/v-nexus-backend/` là hai Git repo riêng; `Working/.pi/piagent-profile.json` là profile của phiên Pi. Nói rõ phạm vi ghi trong yêu cầu; profile `be-readonly-fe` chặn ghi vào BE:
267
269
 
268
270
  ```text
269
- /workflow be-to-fe Scout BE changes read-only and create the FE remediation plan. Scope: v-nexus-frontend/plans/**, v-nexus-frontend/**. Backend repo is read-only.
271
+ Scout BE changes read-only and create the FE remediation plan in v-nexus-frontend/plans/. Backend repo is read-only.
270
272
  ```
271
273
 
272
- Plan/report có thể ghi vào `v-nexus-frontend/plans/**` nếu muốn đi cùng FE repo, hoặc `Working/plans/**` nếu muốn lưu ở workspace cha. File ngoài repo con được theo dõi bằng bounded file-digest evidence, còn FE/BE repo con vẫn dùng Git evidence.
274
+ Plan/report có thể ghi vào `v-nexus-frontend/plans/**` nếu muốn đi cùng FE repo, hoặc `Working/plans/**` nếu muốn lưu ở workspace cha.
273
275
 
274
276
  ## Bước 4 — run trong Herdr
275
277
 
@@ -295,92 +297,59 @@ piagent-auto --read-only -p "Scout module mapping. Do not edit source."
295
297
 
296
298
  Lệnh này wrap `pi --approve`; nó không bypass piagent guard.
297
299
 
298
- ## Bước 5 — task workflow
300
+ ## Bước 5 — giao việc hằng ngày
301
+
302
+ Từ bản 1.9.0, mọi việc được yêu cầu bằng lời thường; `/workflow`, `/task`,
303
+ `/scout`, `/discuss`, `/fresh` đã bỏ và session không tạo task contract.
299
304
 
300
305
  Requirement chưa rõ:
301
306
 
302
307
  ```text
303
- /workflow discuss Tạo plan cho feature X. Chưa implement.
308
+ Tạo plan cho feature X. Chưa implement, hỏi lại phần còn thiếu.
304
309
  ```
305
310
 
306
311
  Task rõ:
307
312
 
308
313
  ```text
309
- /workflow task Implement feature X. Follow project profile, protected paths, required context, exec policy, context budget, tool policy, verify, trace, and task gate.
314
+ Implement feature X. Chạy test của project sau khi sửa.
310
315
  ```
311
316
 
312
317
  Scout/audit read-only:
313
318
 
314
319
  ```text
315
- /workflow scout Scout payment FE mapping vs BE contract. Backend read-only. Do not edit source.
316
- ```
317
-
318
- Session nặng hoặc context overflow:
319
-
320
- ```text
321
- /fresh scout <read-only scout>
322
- /fresh task <bounded task>
323
- /fresh be-to-fe <BE-readonly/FE request>
320
+ Scout payment FE mapping vs BE contract. Backend read-only. Không sửa source.
324
321
  ```
325
322
 
326
- Không paste full mandatory flow hằng ngày. Platform prompts/tools đã chứa checklist; input guard sẽ tự collapse boilerplate nếu paste nhầm.
323
+ Session nặng hoặc context overflow: mở session mới bằng `/new` rồi nói lại việc.
327
324
 
328
- Alias cũ `/discuss`, `/task`, `/scout`, `/fresh-*` vẫn chạy cho power user, nhưng tài liệu onboard team dùng `/workflow`, `/name`, `/fresh`, và `/usage` để dễ nhớ hơn.
325
+ Không paste checklist hằng ngày. Guard áp protected path, quyền, context budget
326
+ và xác nhận destructive/external cho từng tool call.
329
327
 
330
- Runtime gate tools:
328
+ Runtime diagnostic tools (agent chỉ dùng khi cần giải thích một lần chặn):
331
329
 
332
330
  ```text
333
331
  piagent_exec_policy_check
334
332
  piagent_context_budget
335
333
  piagent_tool_policy_check
336
- piagent_task_gate_check
337
334
  ```
338
335
 
339
336
  Task cải tiến platform:
340
337
 
341
338
  ```text
342
- /workflow platform-improve Improve onboarding, model scope, MCP setup, and verification docs for team usage.
339
+ Improve onboarding, model scope, MCP setup, and verification docs for team usage.
343
340
  ```
344
341
 
345
342
  Task BE spec lên FE:
346
343
 
347
344
  ```text
348
- /workflow be-to-fe Implement FE from BE contract <endpoint/spec>. Backend is read-only.
349
- ```
350
-
351
- Project memory:
352
-
353
- ```text
354
- /memory
355
- Remember: this repo uses pnpm, never npm.
356
- ```
357
-
358
- External source repo:
359
-
360
- ```text
361
- Use piagent_source_checkout for github.com/org/repo, inspect only relevant files, then summarize applicable patterns.
362
- ```
363
-
364
- ## Doctor
365
-
366
- Chạy trên platform:
367
-
368
- ```bash
369
- bash scripts/verify-local.sh
370
- ```
371
-
372
- Chạy trên project:
373
-
374
- ```bash
375
- bash /path/to/piagent/scripts/profile-doctor.sh /path/to/project
376
- bash /path/to/piagent/scripts/team-doctor.sh /path/to/project --strict-share
377
- piagent-benchmark --dry-run
345
+ /profile be-readonly-fe
346
+ Implement FE from BE contract <endpoint/spec>. Backend is read-only.
378
347
  ```
379
348
 
380
349
  Maintainer chạy `piagent-benchmark` khi cần đo release/model bằng automatic paired
381
350
  suite. Lệnh dùng model quota và sẽ hỏi xác nhận trước khi bắt đầu.
382
351
 
383
- Nếu doctor cảnh báo `project onboarding snapshot is still pending`, mở Pi trong project và chạy `/onboard run`.
352
+ Nếu doctor cảnh báo `project onboarding snapshot is still pending`, mở Pi trong project và nhờ agent onboard project.
384
353
 
385
354
  ## Không commit
386
355
 
@@ -278,10 +278,10 @@ Xem `contextUsage.percent`:
278
278
  - `< 50%`: bình thường.
279
279
  - `50–70%`: bắt đầu tránh đọc file lớn không cần thiết.
280
280
  - `70–82%`: chạy `/context compact` trước task dài tiếp theo.
281
- - `> 82%`: dùng `/fresh <workflow>` cho work mới; `/fresh help` liệt kê mọi workflow canonical.
281
+ - `> 82%`: mở session mới bằng `/new` cho work mới (`/fresh` đã bỏ từ bản 1.9.0).
282
282
  - Sau compaction, `contextUsage.tokens` có thể là `null` cho đến khi có assistant response mới.
283
283
 
284
- Nếu user paste full mandatory-flow boilerplate, platform input guard sẽ collapse về workflow command ngắn. Nếu prompt quá dài thật, platform có thể lưu intake vào `.pi/task-inbox/` local gitignored rồi replay bằng fresh workflow command.
284
+ Từ bản 1.9.0 input hook là freeform: nội dung user dán vào được gửi nguyên văn, không còn collapse boilerplate hay lưu intake vào `.pi/task-inbox/`. Prompt quá dài thì nên tách việc hoặc mở session mới bằng `/new`.
285
285
 
286
286
  Tool output dài cũng bị compact theo cùng triết lý: chat giữ preview, audit/report giữ capture local. Nếu verify fail và preview chưa đủ, chạy lại command targeted hơn thay vì đổ full log vào session.
287
287
 
@@ -37,6 +37,7 @@ Rule máy đọc nằm tại `architecture/layers.json`; chạy `npm run archite
37
37
  | Layer | Vị trí hiện tại | Ownership | Không được chứa |
38
38
  |---|---|---|---|
39
39
  | Composition | `packages/piagent-core/extensions/piagent-guard.ts` | Wiring, dependency construction, thứ tự registration | Feature algorithm, mutable state implementation, formatter lớn |
40
+ | Managed harness | `packages/piagent-core/managed/` | Phiên công ty do Agent Watch nhập: grant Studio, tool worker trong sandbox, helper research/review, web search/fetch | OAuth cá nhân, extension cá nhân, quyết định chính sách của Studio |
40
41
  | Runtime adapters | `packages/piagent-core/runtime/` | Pi lifecycle hook, shared session state, command/tool registration, input routing | Policy decision dùng lại |
41
42
  | Core services | `packages/piagent-core/extensions/` trừ entrypoint | Policy, context, task lifecycle, state service | Pi command menu và UI text |
42
43
  | MCP integration | `packages/piagent-core/mcp/` | MCP config layer, readiness, approval, command action | Task và context policy |
@@ -73,7 +74,14 @@ Folder `extensions/` vẫn chứa một số service module do lịch sử. Tên
73
74
 
74
75
  ## Adaptive durable runtime
75
76
 
76
- Runtime hiện tại có sáu lớp state operational/derived:
77
+ > Từ bản 1.9.0 (bỏ task contract ngày 2026-09-30), session không còn tạo task
78
+ > contract, journal, trajectory hay recovery handoff, và guard không coi bản ghi
79
+ > nào là đang hoạt động. Bốn lớp đầu trong bảng dưới mô tả bản ghi do các bản
80
+ > trước tạo; chúng vẫn đọc được để xem lịch sử và kiểm tra. Lượt freeform vẫn giữ
81
+ > các kiểm tra của guard về path, quyền, xác nhận, context budget và edit trên bản
82
+ > đọc cũ.
83
+
84
+ Runtime đã định nghĩa sáu lớp state operational/derived:
77
85
 
78
86
  | Layer | Source of truth | Derived state |
79
87
  |---|---|---|
@@ -3,7 +3,7 @@
3
3
 
4
4
  ## Mục tiêu
5
5
 
6
- Các recipe này biến những bài toán lặp lại thành workflow có tên rõ, dùng được cho project khác mà không phụ thuộc một project nội bộ cụ thể.
6
+ Các recipe này biến những bài toán lặp lại thành cách yêu cầu rõ ràng, dùng được cho project khác mà không phụ thuộc một project nội bộ cụ thể. Từ bản 1.9.0 không còn `/workflow` hay `/onboard`: mỗi recipe là một yêu cầu bằng lời thường.
7
7
 
8
8
  ## Recipe 1 — Platform improvement
9
9
 
@@ -12,11 +12,11 @@ Dùng khi muốn cải tiến setup, prompt, MCP, model scope, memory, runtime p
12
12
  Lệnh trong Pi:
13
13
 
14
14
  ```text
15
- /onboard
16
- /onboard run
17
- /workflow platform-improve Improve <target behavior> in <platform area>.
15
+ Improve <target behavior> in <platform area>.
18
16
  ```
19
17
 
18
+ Nếu project chưa onboard, nhờ agent "đọc project (chỉ đọc) và ghi lại project context" trước.
19
+
20
20
  Input tối thiểu:
21
21
 
22
22
  - source docs URL hoặc repo URL nếu task cần external context;
@@ -60,9 +60,7 @@ Setup project generic:
60
60
  Lệnh trong Pi:
61
61
 
62
62
  ```text
63
- /onboard
64
- /onboard run
65
- /workflow be-to-fe Implement FE from BE spec: <endpoint/spec/change>
63
+ Implement FE from BE spec: <endpoint/spec/change>. Backend is read-only.
66
64
  ```
67
65
 
68
66
  Input tối thiểu:
@@ -115,8 +113,6 @@ Rule:
115
113
  Dùng khi muốn giảm scout lại giữa các session mà không bật auto memory.
116
114
 
117
115
  ```text
118
- /onboard
119
- /onboard run
120
116
  /context index
121
117
  /context search auth
122
118
  ```
@@ -126,4 +122,4 @@ Rule:
126
122
  1. Context index là advisory map, không phải source of truth.
127
123
  2. Node/edge phải ngắn và có citation tới file/doc/task đã verify.
128
124
  3. Không lưu raw transcript, secret, token, session, hoặc source excerpt dài.
129
- 4. Nếu index stale so với profile/tech/onboarding snapshot, chạy lại `/onboard run` hoặc record lại bằng `piagent_context_index_record`.
125
+ 4. Nếu index stale so với profile/tech/onboarding snapshot, nhờ agent onboard lại hoặc record lại bằng `piagent_context_index_record`.
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.7.1 docs · VI</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · VI</span>
34
34
  <nav class="language-switch" aria-label="Ngôn ngữ">
35
35
  <a class="language-option current" href="/architecture" hreflang="vi" lang="vi" aria-current="true">VI</a>
36
36
  <a class="language-option" href="/en/architecture" hreflang="en" lang="en">EN</a>
@@ -59,6 +59,7 @@
59
59
  <div class="nav-group">
60
60
  <p class="nav-title">Get started</p>
61
61
  <a class="nav-link" href="/">Overview</a>
62
+ <a class="nav-link" href="/ecosystem">Hệ sinh thái</a>
62
63
  <a class="nav-link" href="/quickstart">Quickstart</a>
63
64
  <a class="nav-link" href="/whats-new">Có gì mới</a>
64
65
  <a class="nav-link" href="/scope">Phạm vi platform</a>
@@ -147,8 +148,8 @@
147
148
  <p><span class="inline-code">runtime/context/adaptive-planner.ts</span> chọn budget, retrieval lane, code inclusion và plan receipt theo phase, context pressure, model capability và thinking level.</p>
148
149
  </article>
149
150
  <article class="card">
150
- <h3>Task journal</h3>
151
- <p><span class="inline-code">extensions/task-journal.js</span> ghi checkpoint cho start, progress, mutation, verifier và completion. Resume tin task contract trước; retention compaction giữ hash anchor.</p>
151
+ <h3>Lịch sử task cũ</h3>
152
+ <p><span class="inline-code">extensions/task-journal.js</span> vẫn đọc checkpoint của các task tạo trước bản 1.9.0 để xem lại; session mới không ghi task nữa.</p>
152
153
  </article>
153
154
  <article class="card">
154
155
  <h3>Repository memory</h3>
@@ -1457,3 +1457,83 @@ h3[id] {
1457
1457
  display: none;
1458
1458
  }
1459
1459
  }
1460
+
1461
+ /* Screenshots and diagrams. Screenshots are taken from the dashboard in dark
1462
+ mode so they sit on the page without a bright frame. */
1463
+ .shot {
1464
+ margin: 28px 0 0;
1465
+ border: 1px solid var(--line);
1466
+ border-radius: 18px;
1467
+ overflow: hidden;
1468
+ background: var(--panel);
1469
+ box-shadow: var(--shadow);
1470
+ }
1471
+
1472
+ .shot img {
1473
+ display: block;
1474
+ width: 100%;
1475
+ height: auto;
1476
+ }
1477
+
1478
+ .shot figcaption {
1479
+ padding: 12px 18px 14px;
1480
+ border-top: 1px solid var(--line-soft);
1481
+ color: var(--muted);
1482
+ font-size: 0.92rem;
1483
+ }
1484
+
1485
+ .shot-grid {
1486
+ display: grid;
1487
+ grid-template-columns: repeat(2, minmax(0, 1fr));
1488
+ gap: 20px;
1489
+ margin-top: 24px;
1490
+ }
1491
+
1492
+ .shot-grid .shot {
1493
+ margin: 0;
1494
+ }
1495
+
1496
+ .diagram {
1497
+ margin: 24px 0 0;
1498
+ padding: 18px;
1499
+ border: 1px solid var(--line);
1500
+ border-radius: var(--radius);
1501
+ background: var(--bg-soft);
1502
+ overflow-x: auto;
1503
+ }
1504
+
1505
+ .diagram svg {
1506
+ display: block;
1507
+ width: 100%;
1508
+ min-width: 720px;
1509
+ height: auto;
1510
+ }
1511
+
1512
+ .diagram-hint {
1513
+ display: none;
1514
+ margin-top: 8px;
1515
+ color: var(--muted-2);
1516
+ font-size: 0.85rem;
1517
+ }
1518
+
1519
+ @media (max-width: 860px) {
1520
+ .shot-grid {
1521
+ grid-template-columns: 1fr;
1522
+ }
1523
+
1524
+ .diagram-hint {
1525
+ display: block;
1526
+ }
1527
+
1528
+ .diagram {
1529
+ padding: 10px;
1530
+ }
1531
+ }
1532
+
1533
+ /* Long unbroken tokens (commit hashes, run ids) in running text wrap instead
1534
+ of widening the page on a phone. */
1535
+ p code,
1536
+ li code,
1537
+ td code {
1538
+ overflow-wrap: anywhere;
1539
+ }
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.7.1 docs · VI</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · VI</span>
34
34
  <nav class="language-switch" aria-label="Ngôn ngữ">
35
35
  <a class="language-option current" href="/benchmark" hreflang="vi" lang="vi" aria-current="true">VI</a>
36
36
  <a class="language-option" href="/en/benchmark" hreflang="en" lang="en">EN</a>
@@ -59,6 +59,7 @@
59
59
  <div class="nav-group">
60
60
  <p class="nav-title">Get started</p>
61
61
  <a class="nav-link" href="/">Overview</a>
62
+ <a class="nav-link" href="/ecosystem">Hệ sinh thái</a>
62
63
  <a class="nav-link" href="/quickstart">Quickstart</a>
63
64
  <a class="nav-link" href="/whats-new">Có gì mới</a>
64
65
  <a class="nav-link" href="/scope">Phạm vi platform</a>
@@ -102,6 +103,11 @@
102
103
  <h1>Bằng chứng chất lượng và hiệu suất</h1>
103
104
  <p>Production benchmark so sánh Piagent với surface codex-cli trên cùng model, cùng thinking level, 18 nhóm bài và 108 session được chấm tự động.</p>
104
105
  </div>
106
+ <div class="callout">
107
+ <strong>Số liệu lịch sử</strong>
108
+ <p>Phép đo này chạy ở v1.6.0, khi session còn task contract và các lệnh workflow. Bản 1.9.0 làm việc theo lời thường và chưa đo lại; đừng dùng các con số dưới đây cho 1.9.0.</p>
109
+ </div>
110
+
105
111
  <section class="benchmark-summary" aria-labelledby="benchmark-verdict">
106
112
  <div class="benchmark-verdict">
107
113
  <div>
@@ -30,7 +30,7 @@
30
30
  <span>Pi Agent Platform</span>
31
31
  </a>
32
32
  <div class="top-actions">
33
- <span class="pill"><span class="pill-dot"></span>v1.7.1 docs · VI</span>
33
+ <span class="pill"><span class="pill-dot"></span>v1.9.0 docs · VI</span>
34
34
  <nav class="language-switch" aria-label="Ngôn ngữ">
35
35
  <a class="language-option current" href="/commands" hreflang="vi" lang="vi" aria-current="true">VI</a>
36
36
  <a class="language-option" href="/en/commands" hreflang="en" lang="en">EN</a>
@@ -59,6 +59,7 @@
59
59
  <div class="nav-group">
60
60
  <p class="nav-title">Get started</p>
61
61
  <a class="nav-link" href="/">Overview</a>
62
+ <a class="nav-link" href="/ecosystem">Hệ sinh thái</a>
62
63
  <a class="nav-link" href="/quickstart">Quickstart</a>
63
64
  <a class="nav-link" href="/whats-new">Có gì mới</a>
64
65
  <a class="nav-link" href="/scope">Phạm vi platform</a>
@@ -110,7 +111,6 @@
110
111
  <div class="tag-list">
111
112
  <span class="tag">/login</span>
112
113
  <span class="tag">/model</span>
113
- <span class="tag">/commands</span>
114
114
  <span class="tag">/piagent-status</span>
115
115
  <span class="tag">/piagent-inspector</span>
116
116
  <span class="tag">/piagent-orchestration</span>
@@ -119,10 +119,10 @@
119
119
  <span class="tag">/task-preflight</span>
120
120
  <span class="tag">/context preflight</span>
121
121
  <span class="tag">/name</span>
122
- <span class="tag">/fresh</span>
122
+ <span class="tag">/new</span>
123
123
  <span class="tag">/session</span>
124
124
  </div>
125
- <p>Dùng để setup session, chọn model, xem profile/usage/orchestration và quyết định có cần fresh session trước task lớn không.</p>
125
+ <p>Dùng để setup session, chọn model, xem profile/usage/orchestration và quyết định có cần mở session mới (<span class="inline-code">/new</span>) trước việc lớn không.</p>
126
126
  </article>
127
127
  <article class="card">
128
128
  <h3 id="project-profile">Project profile</h3>
@@ -139,35 +139,32 @@
139
139
  <p>Áp profile trực tiếp hoặc mở select option để chọn profile/tech stack. Output ngắn, không yêu cầu model giải thích dài.</p>
140
140
  </article>
141
141
  <article class="card">
142
- <h3 id="implementation-workflow">Implementation workflow</h3>
142
+ <h3 id="implementation-workflow">Giao việc</h3>
143
143
  <div class="tag-list">
144
- <span class="tag">/workflow</span>
145
- <span class="tag">/workflow task</span>
146
- <span class="tag">/workflow plan</span>
147
- <span class="tag">/workflow review</span>
148
- <span class="tag">/workflow scout</span>
149
- <span class="tag">/workflow discuss</span>
144
+ <span class="tag">lời thường</span>
145
+ <span class="tag">chỉ đọc, không sửa</span>
146
+ <span class="tag">lập plan trước</span>
147
+ <span class="tag">review diff</span>
150
148
  </div>
151
- <p>Gói sẵn read context, task contract, implementation, verify evidence và final handoff.</p>
149
+ <p>Từ bản 1.9.0 không còn <span class="inline-code">/workflow</span>, <span class="inline-code">/task</span> hay task contract: nói việc cần làm bằng lời thường; guard kiểm tra từng tool call.</p>
152
150
  </article>
153
151
  <article class="card">
154
152
  <h3 id="git-handoff">Git handoff</h3>
155
153
  <div class="tag-list">
156
- <span class="tag">/workflow commit</span>
157
- <span class="tag">/workflow pr</span>
154
+ <span class="tag">commit bằng lời thường</span>
155
+ <span class="tag">draft PR bằng lời thường</span>
158
156
  <span class="tag">git status</span>
159
157
  <span class="tag">git diff</span>
160
158
  </div>
161
- <p>Không cần namespace <span class="inline-code">/git</span>. Commit/PR đi qua workflow guard; push và stage rộng như <span class="inline-code">git add -A</span> cần xác nhận.</p>
159
+ <p>Không cần namespace <span class="inline-code">/git</span>. Commit/PR là yêu cầu thường; push, ghi lên GitHub và stage rộng như <span class="inline-code">git add -A</span> cần xác nhận.</p>
162
160
  </article>
163
161
  <article class="card">
164
- <h3 id="fresh-sessions">Fresh sessions</h3>
162
+ <h3 id="fresh-sessions">Session mới</h3>
165
163
  <div class="tag-list">
166
- <span class="tag">/fresh task</span>
167
- <span class="tag">/fresh scout</span>
168
- <span class="tag">/fresh be-to-fe</span>
164
+ <span class="tag">/new</span>
165
+ <span class="tag">/compact</span>
169
166
  </div>
170
- <p>Dùng khi context đã nặng hoặc cần một session sạch cho workflow mới.</p>
167
+ <p>Dùng khi context đã nặng hoặc cần một session sạch cho việc mới (<span class="inline-code">/fresh</span> đã bỏ từ bản 1.9.0).</p>
171
168
  </article>
172
169
  <article class="card">
173
170
  <h3 id="mcp">MCP</h3>
@@ -201,9 +198,9 @@
201
198
  <p>Xem intent, risk, scope, runtime, solver route, phase, tool/helper recommendation, backend, approval và blocker trước khi bắt đầu.</p>
202
199
  </article>
203
200
  <article class="command-card">
204
- <header><span>Live task status</span><button class="clip-btn" data-clip="/piagent-status">Lấy lệnh</button></header>
201
+ <header><span>Trạng thái session</span><button class="clip-btn" data-clip="/piagent-status">Lấy lệnh</button></header>
205
202
  <pre><code>/piagent-status</code></pre>
206
- <p>Đọc Task Contract, checkpoint, verifier, recovery, helper, resume state và terminal receipt. Receipt chỉ approved khi hard completion gate trên working tree hiện tại pass.</p>
203
+ <p>Profile, guard, runtime và model đang dùng của session. Không sửa file, không chạy lại check và không mở lượt model.</p>
207
204
  </article>
208
205
  <article class="command-card">
209
206
  <header><span>Activity, diff và context</span><button class="clip-btn" data-clip="/piagent-inspector">Lấy lệnh</button></header>
@@ -223,7 +220,24 @@
223
220
  </div>
224
221
  <div class="callout">
225
222
  <strong>Diff rõ nguồn, token không ước lượng.</strong>
226
- <p>Footer status dùng file task đã quan sát để cập nhật nhanh; view <span class="inline-code">files</span> tính exact snapshot delta và đánh dấu <span class="inline-code">mixed-working-tree</span> nếu task đụng file đã dirty từ trước. Pi chỉ cung cấp model usage theo turn/session, nên token theo từng built-in tool luôn hiện unavailable.</p>
223
+ <p>Footer status dùng các file đã quan sát trong session để cập nhật nhanh; view <span class="inline-code">files</span> tính exact snapshot delta và đánh dấu <span class="inline-code">mixed-working-tree</span> nếu lượt làm việc đụng file đã dirty từ trước. Pi chỉ cung cấp model usage theo turn/session, nên token theo từng built-in tool luôn hiện unavailable.</p>
224
+ </div>
225
+ </section>
226
+
227
+ <section class="section">
228
+ <p class="section-kicker">Skill và package tùy chọn</p>
229
+ <h2 id="skill-va-package">Kiểm tra chất lượng test, chạy vòng thử nghiệm</h2>
230
+ <div class="command-grid">
231
+ <article class="command-card">
232
+ <header><span>Rà soát test</span><button class="clip-btn" data-clip="/skill:test-audit rà soát test của module thanh toán">Lấy lệnh</button></header>
233
+ <pre><code>/skill:test-audit rà soát test của module thanh toán</code></pre>
234
+ <p>Skill <span class="inline-code">test-audit</span> đi kèm Piagent: chặn test mới không bảo vệ hành vi nào, tìm test trùng, test bám vào cách cài đặt và code chỉ tồn tại để phục vụ test. Agent tự dùng khi viết hay sửa test; gõ lệnh trên để rà cả một vùng.</p>
235
+ </article>
236
+ <article class="command-card">
237
+ <header><span>Vòng thử nghiệm</span><button class="clip-btn" data-clip="git switch -c experiment/toc-do-test">Lấy lệnh</button></header>
238
+ <pre><code>git switch -c experiment/toc-do-test</code></pre>
239
+ <p>Nếu cài thêm package có vòng thử nghiệm tự động (<span class="inline-code">run_experiment</span>, <span class="inline-code">log_experiment</span>): guard kiểm lệnh thử như mọi lệnh shell, và chỉ cho vòng lặp chạy trên nhánh <span class="inline-code">experiment/</span> hoặc worktree riêng, bắt đầu khi không còn thay đổi chưa commit, vì mỗi lần bỏ một ý tưởng nó xóa mọi thay đổi chưa commit.</p>
240
+ </article>
227
241
  </div>
228
242
  </section>
229
243
  <nav class="pager" aria-label="Trang kế tiếp">
@@ -43,8 +43,8 @@
43
43
  <p><span class="inline-code">runtime/context/adaptive-planner.ts</span> chọn budget, retrieval lane, code inclusion và plan receipt theo phase, context pressure, model capability và thinking level.</p>
44
44
  </article>
45
45
  <article class="card">
46
- <h3>Task journal</h3>
47
- <p><span class="inline-code">extensions/task-journal.js</span> ghi checkpoint cho start, progress, mutation, verifier và completion. Resume tin task contract trước; retention compaction giữ hash anchor.</p>
46
+ <h3>Lịch sử task cũ</h3>
47
+ <p><span class="inline-code">extensions/task-journal.js</span> vẫn đọc checkpoint của các task tạo trước bản 1.9.0 để xem lại; session mới không ghi task nữa.</p>
48
48
  </article>
49
49
  <article class="card">
50
50
  <h3>Repository memory</h3>
@@ -1,3 +1,8 @@
1
+ <div class="callout">
2
+ <strong>Số liệu lịch sử</strong>
3
+ <p>Phép đo này chạy ở v1.6.0, khi session còn task contract và các lệnh workflow. Bản 1.9.0 làm việc theo lời thường và chưa đo lại; đừng dùng các con số dưới đây cho 1.9.0.</p>
4
+ </div>
5
+
1
6
  <section class="benchmark-summary" aria-labelledby="benchmark-verdict">
2
7
  <div class="benchmark-verdict">
3
8
  <div>