Dudu-0223
8e8f90e235
fix(lsp): address codex review round 1
...
Lifecycle and safety fixes from the external review:
- Observe abort while awaiting the initialize handshake, so a server that never
replies can't defeat the tool-timeout signal.
- On an aborted request the server won't cancel, tear the instance down after a
bounded grace instead of releasing the serialized queue with work still live
(prevents overlapping document lifecycles).
- Re-check provider disposal after the canonicalize/read awaits so a query can't
spawn an unowned server after disposeAll().
- Read the source through one open handle (stat + read on the same fd) to close
the realpath-vs-read TOCTOU; decode with a fatal UTF-8 decoder so a legitimate
U+FFFD is not misclassified as invalid.
- Validate and read the source BEFORE spawning a server (pre-start rejection).
- Require an explicit openClose for option-form textDocumentSync.
- Reject nonpositive teardown budgets and non-executable absolute commands at
load; surface unsupported operations as structured LSP_UNSUPPORTED_OPERATION.
- Retain the stderr tail (fatal diagnostics land at exit), not the prefix.
- Catalog the seam vocabulary in docs/core-data-structures/lsp.md.
2026-07-16 13:11:07 +08:00
Dudu-0223
d0029d8d60
feat(lsp): LSP capability seam, generic stdio provider, and lsp tool
...
Implements the LSP capability seam RFC as three packages: dsh-lsp (the
ctx.lsp interface — provider registry by branded id + exclusive extension
mapping, per-query order-independent selection, closed request/result
vocabulary, LspError taxonomy), dsh-lsp-local (a generic stdio language-server
provider — Content-Length JSON-RPC framing, per-(provider, workspace) process
single-flight, transient didOpen/query/didClose, an abortable per-instance
queue, UTF-16 negotiation, host-namespace source reads outside ctx.fs, and
bounded shutdown/kill teardown), and dsh-tool-lsp (the model-facing lsp tool —
four operations, one-based UTF-16 cursor conversion, workspace-grouped location
rendering, hover capping, a required session workspace, and a timeout budget).
Why: an agent had text search and file reads but no way to identify a program
symbol — follow an alias, connect an interface to implementations, or read an
inferred type — before changing code. Splitting model contract, seam, and local
subprocess behavior keeps the four semantic queries stable across future remote
or sandbox-native providers without leaking a JSON-RPC escape hatch.
2026-07-16 12:05:35 +08:00
Tianyi Cui
e7bae3aa3b
Merge branch 'master' into feat/mcp-client
2026-07-15 15:50:59 +08:00
TianleLin
905b8ead9f
Merge branch 'master' into feat/mcp-client
2026-07-15 15:22:32 +08:00
Tianyi Cui
627738c4ed
Merge remote-tracking branch 'origin/master' into codex/simp-prune-code-runtime-surface
2026-07-15 13:58:44 +08:00
Tianyi Cui
96851da571
Merge remote-tracking branch 'origin/master' into codex/simp-prune-web-seam-fields
...
# Conflicts:
# docs/rfc/INDEX.md
2026-07-15 13:28:40 +08:00
Tianyi Cui
38ea10eee0
Merge remote-tracking branch 'origin/master' into codex/simp-prune-code-runtime-surface
2026-07-15 13:20:08 +08:00
Tianyi Cui
ac820b68a6
Merge branch 'master' into feat/mcp-client
2026-07-15 11:35:45 +08:00
Tianyi Cui
3ff4d2a051
Merge remote-tracking branch 'origin/master' into codex/simp-share-loader-smoke-harness
2026-07-15 01:49:01 +08:00
Tianyi Cui
9b8b17b6fa
Merge remote-tracking branch 'origin/master' into codex/simp-prune-web-seam-fields
2026-07-15 01:49:00 +08:00
Tianyi Cui
5d3c995b4c
Merge branch 'codex/simp-prune-tools-prompt-surface' into codex/simp-prune-code-runtime-surface
2026-07-15 01:48:59 +08:00
imccyu
8a390025ef
fix: scan one-shot event listeners
2026-07-15 00:49:56 +08:00
Tianyi Cui
aba1b18eac
Merge branch 'codex/simp-prune-tools-prompt-surface' into codex/simp-prune-code-runtime-surface
2026-07-14 23:45:39 +08:00
imccyu
b734567cc0
fix: lint
2026-07-14 23:44:48 +08:00
Tianyi Cui
0bbb2a5426
Merge remote-tracking branch 'origin/master' into codex/simp-share-loader-smoke-harness
2026-07-14 23:44:40 +08:00
Tianyi Cui
177144917d
Merge remote-tracking branch 'origin/master' into codex/simp-prune-web-seam-fields
2026-07-14 23:44:38 +08:00
Tianyi Cui
a673ee4888
Merge remote-tracking branch 'origin/master' into codex/pr202-merge-review
2026-07-14 23:42:36 +08:00
imccyu
c67c3d9413
refactor: derive event graphs and scope invariants from TypeScript
2026-07-14 23:37:56 +08:00
Tianyi Cui
7cbed547c7
Merge remote-tracking branch 'origin/master' into codex/pr202-merge-review
2026-07-14 23:21:47 +08:00
Tianyi Cui
98c12676af
Merge remote-tracking branch 'origin/master' into feat/mcp-client
2026-07-14 23:16:43 +08:00
Tianyi Cui
466bc01ed3
Merge remote-tracking branch 'origin/master' into codex/fix-acp-snapshot-fs-registration
2026-07-14 23:11:28 +08:00
Ziya
3d0ad3db3e
docs(i18n): cookbook batch — six bilingual pairs via the committed pipeline
...
六篇 cookbook 全部配对(adding-a-package / adding-a-tool /
adding-a-vendored-package / adding-an-llm-adapter /
extension-cookbook / responding-to-pr-review-on-a-stack):译文由
进仓流水线产出(translation-prompt.md 全占位符渲染 + 5 组金标
few-shot),双侧语言切换行齐备,六篇加入 manifest required(15)。
另补 prompt 的 When translating into English 一节(此前为占位):
标点/术语双向绑定/主语显化/惯用语概念还原/语域,与
translation-rules 的中文先行条款一致。
2026-07-14 07:23:53 -07:00
Dudu-0223
4afc701e98
fix(snapshot): register filesystem tools through explicit overlay
2026-07-14 21:25:58 +08:00
Tianyi Cui
59c5010283
Merge branch 'codex/simp-prune-tools-prompt-surface' into codex/simp-prune-code-runtime-surface
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# docs/rfc/implemented/feature/2026-06-15-code-mode.md
2026-07-14 19:05:23 +08:00
Tianyi Cui
dbf4bebe83
Merge remote-tracking branch 'origin/master' into codex/simp-share-loader-smoke-harness
...
# Conflicts:
# examples/AGENTS.md
# examples/coding-agent/tests/code-mode-keyless-smoke.e2e.ts
# examples/coding-agent/tests/keyless-smoke.e2e.ts
# examples/cordis-agent/tests/keyless-smoke.e2e.ts
# examples/echo-agent/tests/echo.e2e.ts
2026-07-14 18:30:10 +08:00
Tianyi Cui
92c52eec20
Merge remote-tracking branch 'origin/master' into codex/simp-prune-web-seam-fields
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/web.md
# docs/rfc/implemented/simplification/2026-07-04-drop-unconsumed-web-observation-surface.md
# packages/web/tool-web/tests/integration.spec.ts
# packages/web/web-fetch-local/README.md
# packages/web/web-fetch-local/src/provider.ts
# packages/web/web/src/types.ts
2026-07-14 17:57:50 +08:00
Tianyi Cui
4cea4979c6
docs: classify loader smoke support surface
2026-07-14 16:24:21 +08:00
Tianyi Cui
f0fc20ca42
docs: align prose with runtime contracts
2026-07-14 16:21:41 +08:00
Tianyi Cui
b79520ab87
Merge remote-tracking branch 'origin/master' into codex/simp-prune-web-seam-fields
...
# Conflicts:
# packages/web/tool-web/README.md
# packages/web/web/README.md
2026-07-14 15:56:42 +08:00
Tianyi Cui
3707aaa72e
Merge branch 'codex/simp-prune-tools-prompt-surface' into codex/simp-prune-code-runtime-surface
...
# Conflicts:
# packages/code-runtime/code-runtime-worker/README.md
# packages/code-runtime/code-runtime/README.md
2026-07-14 15:42:39 +08:00
Tianyi Cui
8590ba00a4
Merge remote-tracking branch 'origin/master' into codex/trim-ai-prose
...
# Conflicts:
# docs/AGENTS.md
# docs/config-catalog.md
# packages/bash/bash-sandbox/src/index.ts
# packages/bash/bash/src/session-mode.ts
# packages/bash/tool-bash/README.md
# packages/code-runtime/code-runtime-worker/README.md
# packages/compact/compact/src/index.ts
# packages/core/agent-core/README.md
# packages/hooks/hooks-claude/src/config.ts
# packages/hooks/hooks-claude/src/index.ts
# packages/hooks/hooks-codex/src/config.ts
# packages/hooks/hooks-codex/src/index.ts
# packages/llm/llm/README.md
# packages/session-persistence/session-persistence-jsonl/README.md
# packages/session-persistence/session-persistence/README.md
# packages/skill/skill-local/README.md
# packages/support/acp-snapshot/README.md
# packages/support/invariants/src/index.ts
# packages/ui/acp/README.md
# packages/ui/jsonrpc-agent/README.md
# packages/ui/jsonrpc/README.md
# packages/ui/permission/README.md
# packages/ui/user-approval/README.md
# packages/ui/user-interaction/README.md
# packages/web/web-search-deepseek/README.md
2026-07-14 14:37:16 +08:00
Tianyi Cui
fe851904eb
docs: harden package README gates
2026-07-14 14:01:35 +08:00
Tianyi Cui
89d8d56785
docs: omit model experience for generic packages
2026-07-14 13:31:31 +08:00
Tianyi Cui
deee72bdfb
Merge remote-tracking branch 'origin/master' into codex/model-experience-readmes-20260712
2026-07-14 13:24:54 +08:00
Tianyi Cui
1ab64dba62
Merge remote-tracking branch 'origin/master' into codex/trim-ai-prose
...
# Conflicts:
# docs/config-catalog.md
# docs/development.i18n.yaml
# docs/development.zh.md
# docs/rfc/implemented/feature/2026-06-14-acp-agent-client-protocol.md
# docs/rfc/implemented/feature/2026-07-06-sandbox.md
# examples/AGENTS.md
# examples/README.md
# examples/acp-agent/README.md
# examples/acp-agent/cordis.yml
# examples/acp-agent/tests/acp.e2e.ts
# examples/acp-agent/tests/escalation.e2e.ts
# examples/sandbox-acp-agent/README.md
# examples/sandbox-acp-agent/cordis.snapshot.yml
# examples/sandbox-acp-agent/cordis.yml
# examples/sandbox-acp-agent/tests/acp.snapshot.ts
# packages/ui/acp-agent/src/bin.ts
# packages/ui/acp/README.md
# packages/ui/jsonrpc-agent/README.md
# packages/ui/jsonrpc-agent/src/bin.ts
# scripts/verify-translation-pairing.ts
2026-07-14 12:34:14 +08:00
Tianyi Cui
3ba92e70ad
Merge branch 'codex/simp-prune-tools-prompt-surface' into codex/simp-prune-code-runtime-surface
2026-07-14 12:12:48 +08:00
Tianyi Cui
75caa2490f
Merge remote-tracking branch 'origin/master' into codex/simp-prune-web-seam-fields
2026-07-14 12:12:28 +08:00
Tianyi Cui
414f696a74
Merge remote-tracking branch 'origin/master' into codex/simp-prune-web-seam-fields
2026-07-14 11:58:31 +08:00
Tianyi Cui
7e58e9a35b
Merge branch 'codex/simp-prune-tools-prompt-surface' into codex/simp-prune-code-runtime-surface
2026-07-14 11:57:51 +08:00
Ziya
53556f9712
Merge remote-tracking branch 'upstream/master' into docs/i18n-capability
2026-07-13 20:51:12 -07:00
Ziya
1d288f1bca
docs(i18n): address ds-review-bot round-2 — switcher placeholders, regex anchor, contract completeness
...
新增 {{source_filename}}/{{source_filename_zh}} 占位符:切换行指令
可执行化,新配对(源文件尚无切换行)也必须生成(critical)。加粗
后空格规则限定于拉丁字母/数字,不再与全角标点规则冲突。日期匹配
锚定 basename 开头,release-notes-2026-* 类文件不再误判。金标
development.zh 补回 RFC 指引句与 agent 首现括注、pre-push 描述改
为 check:pre-push 调度器实况。术语表补回单文件可执行 RFC 配对在用
的 5 行(VFS/deploy root/peer dependency/serving surface/wheel)。
双语 README 的门禁清单补第 4 条(日期分界强制配对)。
2026-07-13 20:37:21 -07:00
Tianyi Cui
a50e8bc1f3
Merge remote-tracking branch 'origin/master' into codex/model-experience-readmes-20260712
...
# Conflicts:
# packages/bash/bash-sandbox/README.md
# packages/sandbox/sandbox-local/README.md
2026-07-14 11:28:08 +08:00
Tianyi Cui
c74f17a143
docs: audit hook compatibility limits
2026-07-14 11:22:53 +08:00
Tianyi Cui
8780a73750
Merge branch 'master' into session-query
2026-07-14 10:53:25 +08:00
Ziya
472fbb992b
Merge remote-tracking branch 'upstream/master' into docs/i18n-capability
...
# Conflicts:
# docs/i18n/README.i18n.yaml
# docs/i18n/terminology.md
# scripts/translation-pairing.manifest.json
2026-07-13 19:31:51 -07:00
Ziya
bbb3955565
docs(i18n): classifier rule in the prompt; absorb PR #275 terminology rows
...
prompt 增补量词规则(数词修饰名词必须带量词:three-package seam→
由三个 package 构成的 seam),来自 jingtingxiang 对 v4-pro/GPT-5.4/
Opus-4.6 对照测试的质量评审。按 #275 收录三行术语:Cookbook→实操
手册(文档标题用语)、task id 保留英文(禁「任务 id」)、companion
tool→配套工具。#275 内容自此全部涵盖。
2026-07-13 19:14:10 -07:00
Hypatia May
e9f0c37745
Merge remote-tracking branch 'origin/master' into session-query
...
# Conflicts:
# docs/rfc/INDEX.md
# packages/README.md
2026-07-14 08:36:06 +08:00
Tianyi Cui
3ab35de64f
refactor: prune unused web seam fields
2026-07-14 04:17:38 +08:00
Tianyi Cui
4f40197e16
fix: complete code runtime surface pruning
2026-07-14 03:18:16 +08:00
Tianyi Cui
01da49a3ab
refactor: prune code runtime surface
2026-07-14 03:07:41 +08:00