docs(code-runtime-python): align the note consequences, register the deadlock and default-arg mechanisms

Addresses the bot's keep-current findings:
- The settlement note distinguishes the BaseException (lost done frame) and
  RuntimeError (pump killed -> replies stranded to the wall clock) consequences;
  registers the _done_with_value def-time default-arg capture and the new
  RuntimeError-rebind closed-loop test; zh:95 half-width space fixed.
- The python package README Known Limitations records the cross-thread binding +
  sync t.join() deadlock (en + zh).
- The code-runtime Service Definition README no longer claims only the
  worker-thread backend ships: the Python (process) backend is acknowledged,
  with 'container' as future work (en + zh).
- All pairings re-recorded; corpus-wide verify-translation-pairing passes 1002.
This commit is contained in:
Chinesezjc
2026-08-31 14:36:31 +08:00
committed by Tianyi Cui
parent 923fb56128
commit f79e53e74c
9 changed files with 20 additions and 20 deletions
@@ -2,5 +2,5 @@
# side as of the last confirmed-consistent state. Both languages carry equal authority;
# after editing either side, bring the other along and re-record with:
# pnpm run verify-translation-pairing --write packages/code-runtime/code-runtime/README.md
README.md: b16a8c81e80e07665b7ac868e4cb643529938055
README.zh.md: ad5ec96fc8df00c0f3c1b1771bc5efbf148de054
README.md: 56decf8fc86c37f08e0ee266006efabaf6436712
README.zh.md: 46fd55891c84d971ed453791f44af831919b8bca
+3 -3
View File
@@ -121,9 +121,9 @@ No direct invalidation; the named consumer owns any request-prefix changes.
These limits define what the seam cannot do; they are current package constraints, not a task backlog.
- **`run()` is one-shot** — `logs` arrive only on the resolved `CodeRunResult`; the seam exposes no streaming-log or progress API for a live program's output.
- **No state survives between runs** — every request runs against a fresh world; a persistent REPL-style kernel is deferred until a backend brings its own logging story.
- **Only the worker-thread backend ships** — `'process'` and `'container'` are declared well-known `isolation` values with no implementation; a hard security boundary awaits a container backend.
- **Intermediate binding values have no byte cap** — implementations remain subject to structured-clone cost and process memory, while a provider may already impose its own acquisition bound.
- **A persistent REPL-style kernel is recorded future work** — the no-state-between-runs contract stands until a persistent-kernel backend brings its own logging story ([Code Mode Agent Note](../../../.agents/notes/implemented/feature/2026-06-15-code-mode.md)).
- **The worker-thread and Python (process) backends ship; `'container'` is future work** — `'process'` is implemented by the `dsh-code-runtime-python` backend, while `'container'` remains a declared well-known `isolation` value with no implementation; a hard security boundary awaits a container backend.
- **Intermediate binding values have no byte cap** — implementations remain subject to structured-clone cost and process memory, while a provider or executor may already have imposed its own acquisition bound.
<a id="dev-note"></a>
### Dev Note
@@ -121,9 +121,9 @@ binding-global 与 error-class 名称是语言可移植的:必须匹配标识
这些限制说明 seam 不能做什么;它们是当前包约束,不是任务积压。
- **`run()` 是一次性的**——`logs` 只有在 `CodeRunResult` resolve 后才能获得;seam 不提供正在运行的程序所产生输出的流式日志或进度接口。
- **运行之间不保留状态**——每次请求都在全新环境中运行;持久 REPL 风格内核在某个后端带来自己的日志方案之前保持延期
- **目前只发布 worker 线程后端**——`'process'` `'container'` 是已声明但没有实现的已知 `isolation` 值;强安全边界需要等待容器后端。
- **中间绑定值没有字节上限**——实现仍受 structured-clone 成本与进程内存约束,而提供方可能已经应用自己的获取上限。
- **持久 REPL 风格内核已记录为未来工作**——在持久内核后端带来自己的日志方案前,运行之间不保留状态的约定继续有效(参见 [Code Mode Agent Note](../../../.agents/notes/implemented/feature/2026-06-15-code-mode.zh.md)
- **目前提供 worker 线程与 Pythonprocess)后端;`'container'` 是未来工作**——`'process'``dsh-code-runtime-python` 后端实现,而 `'container'` 是已声明但没有实现的已知 `isolation` 值;强安全边界需要等待容器后端。
- **中间绑定值没有字节上限**——实现仍受 structured-clone 成本与进程内存约束,而提供方或执行器可能已经应用自己的获取上限。
<a id="dev-note"></a>
### 开发备注