Commit Graph
100 Commits
Author SHA1 Message Date
ZiyaZhang 3dd0ce33f4 Merge remote-tracking branch 'upstream/master' into fix/gui-todo-default-collapsed
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-07-29 08:10:13 -07:00
ZiyaZhang 64d5ce600b Merge remote-tracking branch 'upstream/master' into fix/gui-todo-default-collapsed
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
#	packages/client/ui-conversation/README.zh.md
2026-07-28 23:54:01 -07:00
ZiyaZhang 9e45736298 fix(gui): default todo panel to collapsed 2026-07-28 23:52:08 -07:00
ZiyaZhang c7076e15b8 fix(hooks): bound regex reuse across reloads 2026-07-28 20:33:08 -07:00
ZiyaZhang ec72d0b57e fix(hooks): share matcher validation instances 2026-07-28 20:10:21 -07:00
ZiyaZhang 774755ef2d Merge remote-tracking branch 'upstream/master' into fix/hook-matcher-validation 2026-07-28 19:57:23 -07:00
ZiyaZhang 7121d25c8a test(hooks): keep regex lifecycle ownership explicit 2026-07-28 19:56:03 -07:00
ZiyaZhang ea4103c14a Merge remote-tracking branch 'upstream/master' into fix/hook-matcher-validation 2026-07-28 19:49:35 -07:00
ZiyaZhang d3d370e4d2 fix(hooks): reuse compiled Codex matchers 2026-07-28 19:48:59 -07:00
ZiyaZhang 2630de8bd6 Merge remote-tracking branch 'upstream/master' into fix/subprocess-password-scrub
# Conflicts:
#	docs/module-graph.md
2026-07-28 19:14:40 -07:00
ZiyaZhang dfba46c6d4 Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata 2026-07-28 16:53:21 -07:00
ZiyaZhang f8082eef63 Merge remote-tracking branch 'upstream/master' into fix/translation-brief-uncommitted-pair 2026-07-28 16:53:21 -07:00
ZiyaZhang fad111c7e6 Merge remote-tracking branch 'upstream/master' into fix/hook-matcher-validation 2026-07-28 16:14:51 -07:00
ZiyaZhang 2fbcfa16ea docs(hooks): align Codex matcher authority 2026-07-28 11:09:02 -07:00
ZiyaZhang b75e7cf6a1 Merge remote-tracking branch 'upstream/master' into fix/translation-brief-uncommitted-pair 2026-07-28 10:41:53 -07:00
ZiyaZhang 9189857860 test(i18n): refresh gc-pinned prompt snapshot 2026-07-28 10:41:48 -07:00
ZiyaZhang d7d32f47f1 Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata 2026-07-28 10:38:11 -07:00
ZiyaZhang 97805f1ba2 Merge commit 'f84f07ce7a5f1de4d7367d0cea30db3c3344abdb' into fix/hook-matcher-validation 2026-07-28 10:38:11 -07:00
ZiyaZhang 0ef2327e34 fix(hooks): match Codex Rust regex syntax 2026-07-28 10:37:53 -07:00
ZiyaZhang ce37303735 Merge remote-tracking branch 'upstream/master' into fix/subprocess-password-scrub 2026-07-28 10:33:06 -07:00
ZiyaZhang 612b527cd2 fix(i18n): pin translation snapshots against gc 2026-07-28 10:28:49 -07:00
ZiyaZhang 6778d04e63 docs(subprocess): sync password scrub notes 2026-07-28 10:26:15 -07:00
ZiyaZhang e59e2f6192 test(i18n): isolate git object format fixtures 2026-07-28 10:10:18 -07:00
ZiyaZhang 140a1eaccc Merge commit 'f7e1c47968ecf8704af9605f3f6bc1db6db869bc' into fix/hook-matcher-validation 2026-07-28 10:08:11 -07:00
ZiyaZhang faa540e667 Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata 2026-07-28 10:03:58 -07:00
ZiyaZhang 1b810b3f20 Merge remote-tracking branch 'upstream/master' into fix/subprocess-password-scrub 2026-07-28 10:03:58 -07:00
ZiyaZhang f50a1fe58d Merge remote-tracking branch 'upstream/master' into fix/translation-brief-uncommitted-pair 2026-07-28 10:03:58 -07:00
ZiyaZhang cefa377897 Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata 2026-07-28 10:01:15 -07:00
ZiyaZhang 10e3a4b2b2 Merge remote-tracking branch 'upstream/master' into fix/subprocess-password-scrub 2026-07-28 10:01:15 -07:00
ZiyaZhang ba9c914238 Merge remote-tracking branch 'upstream/master' into fix/translation-brief-uncommitted-pair 2026-07-28 10:01:15 -07:00
ZiyaZhang 03a8805da7 Merge remote-tracking branch 'upstream/master' into fix/subprocess-password-scrub 2026-07-28 09:56:23 -07:00
ZiyaZhang 2edc186047 Merge remote-tracking branch 'upstream/master' into fix/translation-brief-uncommitted-pair 2026-07-28 09:56:23 -07:00
ZiyaZhang 2f4f30ef6e Merge remote-tracking branch 'origin/master' into fix/hook-matcher-validation 2026-07-28 09:55:49 -07:00
ZiyaZhang 55321fe7a4 fix(hooks): ignore matcherless event fields 2026-07-28 09:55:18 -07:00
ZiyaZhang ad93803431 docs(acp-snapshot): preserve merged workspace contracts 2026-07-28 09:54:25 -07:00
ZiyaZhang 688d298e7e Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata 2026-07-28 09:53:30 -07:00
ZiyaZhang cddf340df8 Merge remote-tracking branch 'origin/master' into fix/hook-matcher-validation 2026-07-28 09:49:40 -07:00
ZiyaZhang 67e8362b55 docs(security): include password names in scrub rule 2026-07-28 09:40:33 -07:00
ZiyaZhang 15edb38a34 Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata
# Conflicts:
#	packages/support/acp-snapshot/README.i18n.yaml
#	packages/support/acp-snapshot/README.md
#	packages/support/acp-snapshot/README.zh.md
2026-07-28 08:59:32 -07:00
ZiyaZhang 61a388b54e test(hooks): align matcher fixtures with message identity 2026-07-28 08:59:28 -07:00
ZiyaZhang a7992cea6c Merge remote-tracking branch 'upstream/master' into fix/translation-brief-uncommitted-pair 2026-07-28 08:18:32 -07:00
ZiyaZhang 0626b6656c Merge remote-tracking branch 'origin/master' into fix/hook-matcher-validation 2026-07-28 08:15:28 -07:00
ZiyaZhang 8d77e5149c Merge remote-tracking branch 'upstream/master' into fix/subprocess-password-scrub 2026-07-28 08:15:08 -07:00
ZiyaZhang f688cd32af fix(workspace-context): escape instruction metadata 2026-07-28 05:22:47 -07:00
ZiyaZhang c008763469 test(i18n): refresh translation prompt snapshot 2026-07-28 04:42:37 -07:00
ZiyaZhang 7febd4b557 fix(i18n): persist uncommitted translation snapshots 2026-07-28 04:34:05 -07:00
ZiyaZhang 7dc6b058a9 fix(hooks): ignore unsupported Claude events 2026-07-28 03:18:03 -07:00
ZiyaZhang 5e4c2ffae7 test(hooks): snapshot invalid matcher loading 2026-07-28 02:58:08 -07:00
ZiyaZhang 3f71f91d5b fix(hooks): reject invalid matcher regexes 2026-07-28 02:43:51 -07:00
ZiyaZhang f92389606e docs(subprocess): record shared scrub consumers 2026-07-28 02:33:14 -07:00
ZiyaZhang d0cbf825a5 fix(subprocess): share password scrub with direct spawners 2026-07-28 02:19:18 -07:00
ZiyaZhang 6b7b2f8010 fix(subprocess): scrub ambient password variables 2026-07-28 02:02:35 -07:00
ZiyaZhang a5239b0f64 test(gui): cover native workspace picker branches 2026-07-27 04:37:24 -07:00
ZiyaZhang fef928a7e1 feat(gui): add native workspace folder picker 2026-07-27 03:50:22 -07:00
ZiyaZhang 12dbc00166 fix(tui): harden resume picker input 2026-07-24 01:29:35 -07:00
ZiyaZhang 33ee34b58e fix(tui): make resume picker full-screen 2026-07-24 01:29:35 -07:00
ZiyaZhang b64c3eb13f fix(tui): contain overlay reentrancy 2026-07-22 22:00:36 -07:00
ZiyaZhang 2a1b3139f9 feat(tui): add interactive extension service 2026-07-22 21:30:17 -07:00
ZiyaZhang 0b1857904a docs(i18n): add agent-scope and sandbox pairs — the batch is complete
最后两篇超长 RFC 经流式通道产出(代理会掐非流式长请求),v4 流水
线同一契约;至此 185 篇批次全部配对,pairing 194 对全绿。
2026-07-22 04:20:18 -07:00
ZiyaZhang 515d13db7f docs(i18n): add code-mode and web-capability-seam pairs (long-doc lane) 2026-07-22 03:42:25 -07:00
ZiyaZhang 5b2243146c Merge branch 'docs/i18n-batch-cds-postmortem' into docs/i18n-batch-rfc 2026-07-22 03:41:12 -07:00
ZiyaZhang 6599acdee8 docs(i18n): add the core.md pair (long-doc lane, v4 pipeline) 2026-07-22 03:40:46 -07:00
ZiyaZhang 1167e91409 fix(tui): polish /status diagnostics card 2026-07-22 03:29:59 -07:00
ZiyaZhang 280207c824 feat(tui): add /status session diagnostics 2026-07-22 03:10:14 -07:00
ZiyaZhang 8ea5cdd894 docs(i18n): re-translate RFC batch with the prompt-v4 pipeline
146 篇 RFC 译文按 v4 基线(#348)重出:v4 模板+术语表、金标
few-shot、三段协议、切换行后处理;全量机械核对零异常(一处
task id 术语违规已修)。三篇超长 RFC(code-mode 已入,web-seam/
agent-scope/sandbox/cds-core 仍在长文档通道产出)随后补。
2026-07-22 03:07:36 -07:00
ZiyaZhang 839b88a53a Merge branch 'docs/i18n-batch-cds-postmortem' into docs/i18n-batch-rfc 2026-07-22 03:06:14 -07:00
ZiyaZhang e38955b2fa docs(i18n): re-translate cds/postmortem batch with the prompt-v4 pipeline
22 篇(core-data-structures 18、postmortem 3、rfc/README)译文按
v4 基线重出;机械核对零异常;rfc/README.zh 页内锚点按门禁规则改回
英文侧锚名。
2026-07-22 03:06:01 -07:00
ZiyaZhang 03e25be831 Merge branch 'docs/i18n-batch-core' into docs/i18n-batch-cds-postmortem 2026-07-22 03:04:57 -07:00
ZiyaZhang 6bf93b8e6a chore: drop stray embedded worktree from index 2026-07-22 03:04:54 -07:00
ZiyaZhang 1295493878 docs(i18n): re-translate core batch with the prompt-v4 pipeline
五篇核心文档译文按 v4 基线(#348)重出:v4 模板+术语表渲染、金标
few-shot 裸文本注入、三段协议取 <final>、切换行流水线后处理;全量
机械核对(结构/切换行/术语禁项/重复括注)零异常,architecture 一处
被模型合并的列表项已按源结构拆回。
2026-07-22 03:04:38 -07:00
ZiyaZhang 64d70670e8 docs(i18n): address ds-review-bot on the v4 restoration
解析器:三段闭合标签改为行首锚定(正文提及 </translation> 不再截
断)、重复段全文扫描并校验段序(补两条回归测试)。切换行:v4 模板
保持字面占位不变,资产文档写明全新配对由流水线在解析后按目标文件
名机械插入、配对门禁兜底。加粗后空格限定于字母/数字/汉字、标点前
一律不加;RFC 2119 关键词改为保留源侧强调标记(斜体归斜体、加粗
归加粗)。i18n README 双侧同步 v4 契约描述(不再承诺 CDATA 协议与
规则注入)并重录配对。
2026-07-20 19:46:46 -07:00
ZiyaZhang 31e29cac21 fix(desktop): msg-queue drain settle-race — retry reservation error + requeue at head 2026-07-20 05:37:20 -07:00
ZiyaZhang 60dfa8d504 feat(desktop): workflow.event live consumption + inspector Feedback tab + upstream ledger L-5 2026-07-20 02:57:59 -07:00
ZiyaZhang fa640ec9fe feat(desktop): five-way chat view strip (List|Graph|时序|Trace|Log) + Tracing page demotes to nav 2026-07-20 02:57:57 -07:00
ZiyaZhang d5e2115aba feat(desktop): in-stream inline md/html artifact preview (md-mini renderer + sandboxed iframe) 2026-07-20 02:57:56 -07:00
ZiyaZhang 64397f5b39 feat(desktop): cordis dedicated card (mount/unmount/inspect) + nested code-dispatch tree 2026-07-20 02:57:55 -07:00
ZiyaZhang 067691a847 feat(desktop): unified right-side Inspector (Pretty/Raw/JSON) + at-bottom auto-follow fix 2026-07-20 01:59:24 -07:00
ZiyaZhang 830579ab50 feat(desktop): per-session mid-turn message queue (enqueue-on-inflight, drain-once-per-turn, strip UI) 2026-07-20 01:59:23 -07:00
ZiyaZhang 0207b5edd2 feat(desktop): fold Rubrics/Growth/Runtimes into one Evals nav entry (3 tabs + shared rubric selector) 2026-07-19 23:31:47 -07:00
ZiyaZhang 211ffb4b7c feat(desktop): fuse step card with tool row at narrative position + glyph fallback 2026-07-19 23:31:45 -07:00
ZiyaZhang 3b49a948e0 fix(desktop): session Graph node order — sort by seq + repair turn/user reversal, node label previews
Also picks up two files the previous sync batch missed
(test/artifact-compact-row.test.js, docs/qa-artifact-compact/).
2026-07-19 23:31:19 -07:00
ZiyaZhang c8f5ca3d5b feat(desktop): artifact evolution chain + Board/Timeline views
Adds a version-evolution capability to the Artifacts pane:
  - Evolution chain: LCS-based diff across successive versions of the
    same logical artifact; when a blob is missing, the chain honestly
    surfaces a placeholder rather than fabricating diff content.
  - Board / Timeline tab switcher on the Artifacts page.
  - Auto-grouping into 5 kinds so the Board reads at a glance.

Files:
  src/renderer/artifacts-board.js       — new Board / Timeline / Evolution views
  src/renderer/artifacts.js             — wire Board tab + evolution rail
  src/renderer/index.html               — script tag + tab markup
  src/renderer/style.css                — tail append (~200 lines)
  test/artifact-evolution-board.test.js — 23 new tests
  docs/artifact-board-fixture.json      — fixture seed
  docs/qa-artifact-evolution/           — 3 QA screenshots + fixture.html
  scripts/qa-cdp-shoot-artifact-v2.mjs  — QA capture harness

Merged as source-repo test-real @ 7279870 (with lane-side conflict
resolution against test-real @ c1d93aa: style.css tail-append union;
independent of Lanes C/A/D CSS sections).

Test suite: 1727/1727 pass (+23 over Lane C+A+D baseline of 1704).

Follow-up L-3 (in upstream ledger): runtime ArtifactServer to grow
a snapshot store so the "missing blob" fallback becomes rare.
2026-07-19 01:10:53 -07:00
ZiyaZhang 4c47ce55e2 feat(desktop): rubric+growth+runtime three-page fusion
Architectural refactor unifying three previously-independent pages
around a single shared event-log model:

  rubric-fusion-model.js — the shared model. One log of scored
    events keyed by (rubric, runtime, timestamp), plus a small set
    of derivations (recent-scores window, per-rubric aggregates,
    per-runtime rubric grid) that all three views subscribe to.
  rubric-fusion-seed.js  — fixture seed used by tests and the
    isolation-machine screenshots below.

The three page views:

  Rubrics — now leads with a hint card (recent pass/fail streaks,
    stalest rubric) and a stats strip (7-run rolling pass rate,
    latest score, delta vs. previous). Rubric list is unchanged.
  Growth  — rewritten. The old compact-window event feed is gone;
    the page is now a pure SVG time-series curve over the event
    log (score-y × time-x), with per-rubric coloring and a
    hover-time tooltip. -420 lines of the old feed → +630 of the
    curve renderer.
  Runtime — adds a "Rubric grid" tab next to the existing Status
    tab. Grid is one row per rubric × one column per runtime;
    cells are pass/fail/unrun, click-through to the raw event.

Wiring is careful about the five hot zones the parallel lanes are
each touching (nav / chat / context / trace / artifact) — Lane D
stays entirely inside rubric/growth/runtime and their shared model,
so this composes with the C/A lanes without stepping on their
finishTurnContainer or chat-triple regions. style.css conflict
against the C+A combined append was tail-append vs tail-append and
resolved by concatenation (brace balance verified).

  rubric-fusion-model.js       419 +
  rubric-fusion-seed.js        624 +
  rubric-fusion-model.test.js  181 +
  rubric-fusion-views.test.js  189 +
  growth-v2.js                 +631/-420   (SVG time-series rewrite)
  rubrics-page.js              +89 -0      (hint + stats strip)
  runtimes-page.js             +198 -0     (rubric-grid tab)
  index.html                   +7          (three mount points)
  style.css                    +252        (new page sections)
  rubric-fusion-fixture.json   +94         (test/screenshot seed)

Test suite: 1704/1704 pass (+22 over Lane C+A baseline). Isolation-
machine fixture screenshots (rubrics/growth/runtimes,
docs/rubric-fusion-shots/0{1,2,3}-*.png) reproduce from the merged
HEAD.
2026-07-19 01:05:01 -07:00
ZiyaZhang 5e46a54de7 feat(desktop): chat triple view — turn edge colors + side drawer + Session Graph
Adds a three-layer view to the Chat pane:
  - List view    — turn cards get colored left-edge by role/state
                   (user/assistant/tool/error), replacing the flat
                   monochrome stack; readable at a glance for long
                   sessions.
  - Side drawer  — a right-side collapsible panel opened via the
                   Details button on any turn; shows the raw payload,
                   annotations, and jump-links to the trace tri-view
                   without leaving the chat.
  - Session Graph— a top-level SVG view of the whole session's turn
                   graph (user → assistant → tool chain → subagent
                   branch); zooms out from the linear list to the
                   session's structure.

Renderer wiring is additive: the three new modules mount into two
new hook points in index.html; turn/start now emits data-turn-id
so the drawer can round-trip. finishTurnContainer keeps its Lane C
signal-chip pass and picks up drawer wiring at the tail — the two
tails are independent and compose cleanly.

  chat-session-graph.js         198 +
  chat-side-drawer.js           263 +
  qa-cdp-shoot-chat-triple.mjs  204 +
  chat-triple-view.test.js      222 +
  index.html                     43 +
  renderer.js                   111 +   (wiring + data-turn-id)
  style.css                    +273 -1  (three view sections)

Test suite: 1682/1682 pass (+14 over Lane C baseline). Isolation-
machine fixture screenshots (list/drawer/graph, docs/qa-chat-triple/
0{1,2,3}-*.png) reproduce from the merged HEAD.

Known non-blocking niceties, tracked as follow-ups (out of scope
for this commit):
  - Details button and existing Context Rail both target the
    right-side slot; a small drawer-mutex pass unifies them.
  - Session Graph fixture includes an extra subagent turn beyond
    what the list view shows.
2026-07-19 01:02:15 -07:00
ZiyaZhang 47949244c8 feat(desktop): trace signal detection + tri-view badges
Adds a small signal-detection layer over trace payloads and surfaces
three kinds of semantic signals inline in the trace tri-view (Timeline
/ Graph / turn footer chips) so a researcher can spot repetitive
tool-call loops, redundant identical calls, and plan-completion beats
without hand-scanning the raw log:

- loop-detected  — three or more repeats of the same tool.method
                   signature inside a window, badge in Timeline gutter
                   + colored ring on the Graph node
- redundant-call — identical (tool, arg-hash) call twice without any
                   state change in between, badge + subdued styling
                   so it stays advisory not alarmist
- plan-* chips   — plan/subplan step-complete beats surfaced above the
                   assistant body in the turn footer, wired through
                   the finishTurnContainer tail

Pure rendering; no wire-format changes needed on the runtime side —
signal detection is fixture-driven off the same payload the tri-view
already consumes. Companion RFC L-2 in docs/upstream-ledger.md asks
the runtime to emit these signals natively rather than deriving them
in the shell, so once L-2 lands the shell will consume upstream signals
and this detector becomes a fallback.

Files:
  src/renderer/trace-signal-detect.js       new  (loop/redundant/plan)
  src/renderer/trace-tri-view.js            +24  (wire detector output)
  src/renderer/trace-timeline.js            +39  (badge in gutter)
  src/renderer/trace-graph.js               +30  (colored ring)
  src/renderer/renderer.js                  +81  (finishTurnContainer chips)
  src/renderer/index.html                    +1  (one script tag)
  src/renderer/style.css                    +58  (badge/ring/chip rules)
  docs/upstream-ledger.md                  +121  (append L-2 RFC)
  scripts/qa-trace-signals-fixture.mjs     new  (headless SVG proof)
  scripts/qa-trace-signals-shoot.mjs       new  (CDP live shoot)
  docs/trace-signals-shoot/*.html          new  (3 fixture-driven shots)
  test/trace-signal-detect.test.js         new  (detector unit tests)
  test/trace-signal-overlay.test.js        new  (renderer overlay tests)

Test suite: 1668/1668 pass (17 new). Fixture-driven signals-01-timeline-
loop.html regenerated byte-identical from the merged HEAD.
2026-07-19 00:57:19 -07:00
ZiyaZhang 60fcb494a7 docs(i18n): restore prompt-v4 as the pipeline baseline
按 jingtingxiang 拍板将 prompt 回到 v4 基线:模板正文恢复内嵌的
格式/语气/句式/词汇/标点全量约束与 11 组正误例(量词规则按术语表
现行裁定 package→包 写作「由三个包构成的 seam」),不再注入
translation-rules.md——该文件约束人和 agent,不进模板;占位符收敛
为 source_lang/target_lang/terminology 三个,切换行由模型按文档
自身拼写。渲染器、解析器、conformance 门禁与单测同步回 v4 契约:
三段裸 XML(translation/review/final 顺序唯一),容忍整体 ```xml
围栏回显;saxes 依赖随 CDATA 协议一并移除。
2026-07-16 00:19:25 -07:00
Ziya 2565133af3 docs(i18n): RFC tree batch — 146 bilingual pairs via the committed pipeline
implemented(除 4 篇超长文档随后补)、proposed、rejected 全树配对;
同一流水线 + 二遍校验(paraphrase-back + 仓库上下文一致性)产出。
docs/rfc/implemented/AGENTS.md 与其 CLAUDE.md 符号链接列入排除
(agent 指令文件,与根 AGENTS.md 同策略)。
2026-07-15 23:25:06 -07:00
Ziya 5270dcd61d docs(i18n): core-data-structures and postmortem batch — 22 bilingual pairs
core-data-structures 18 篇(core.md 因超长仍在产出、随后补)、
postmortem 3 篇与 RFC 前门 README 配对;流水线 + 二遍校验产出。
生成文件 docs/rfc/INDEX.md(gen-rfc-index 产物)列入排除。中文侧
页内锚点统一指向英文侧锚名,满足配对门禁的链接目标一致规则。
2026-07-15 23:11:25 -07:00
Ziya ec47f2e40f docs(i18n): core-docs batch — five bilingual pairs via the committed pipeline
architecture / cordis-primer / defensive-patterns / glossary / testing
五篇核心文档配对,译文由进仓流水线产出(committed renderer + 金标
few-shot + 严格 XML 协议),并经二遍校验(逐句对照原文复述核查 +
注入 architecture/glossary 仓库上下文的一致性修复)。五篇生成文档
(agent-lifecycle、capability-seams、event-producer-consumer、
graph-atlas、tool-execution-pipeline 均为 gen-doc-graphs 产物)列入
排除清单——手写译文会在再生成时失效,与既有生成目录排除策略一致。
2026-07-15 23:03:13 -07: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
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
Ziya 7756ed0869 docs(i18n): re-record README pair after master merge 2026-07-13 19:34:30 -07: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
Ziya 8a53f3d6f9 docs(i18n): address PR #172 review — terminology rulings and register fixes
按 #172 评审意见整改(修复落在本 stack 上层,随 stack 合入):
enforcement frontier 裁定为「执行红线」(与金标样例⑦一致),
「强制边界」入不要译作列,消除 translation-rules 与术语表的矛盾;
orphan 裁定为「遗留」(崔),孤立/孤儿均入禁项,orphan branch 仍
沿用 git 官方「孤立分支」;README.zh 推进段与 translation-rules.zh
的门禁句按金标语体重写(崔);style-samples ⑥ 的「文件内容完全一
致」改为准确描述 blob hash 与伴随记录的比对机制(bot)。
2026-07-12 23:10:43 -07:00
Ziya 8befd9b88c docs(i18n): harden the pipeline prompt — switcher flip, code-comment hard rule, em-dash preference, three new few-shots 2026-07-12 22:45:26 -07:00
Ziya 1583cb47a0 docs(i18n): reconcile gold pairs with master's EN-side drift
金标译文写于 0710 的 master,英文侧此后有漂移,按最小更新补齐:
development.zh 的 Node 引擎下限句、CI 门禁节改写为八任务车道描述、
代码块与英文侧逐字节同步;README.zh 恢复 graph-atlas 链接;
style-samples 的目录链接随 events-and-services.md 拆分改指 events.md。
requiredSince 推至 2026-07-14:0705–0713 间已合入的两篇无配对 RFC
成为存量(原分界在其合入时未生效,回溯会红在与本 PR 无关的文件上)。
2026-07-12 21:14:47 -07:00
Ziya 04b61f2362 Merge remote-tracking branch 'upstream/master' into docs/i18n-translation-prompt
# Conflicts:
#	README.i18n.yaml
#	README.zh.md
#	docs/development.i18n.yaml
#	docs/development.zh.md
#	docs/rfc/implemented/process/2026-07-02-bilingual-docs-and-pairing-gate.i18n.yaml
#	docs/rfc/implemented/process/2026-07-02-bilingual-docs-and-pairing-gate.zh.md
#	scripts/translation-pairing.manifest.json
2026-07-12 21:08:45 -07:00
Ziya ba4e39f10d docs(i18n): adopt jingtingxiang's calibrated terminology table and five gold pairs
术语表整体采用 jingtingxiang 的重构版(PR #244):按缩写类/英文类/
双语类分节、通用规则前置、首次出现与不要译作独立列;保留本 stack
的 mock/package/counterpart 与 agent 组合词裁定行。五组金标译文按
其定稿采用(development、i18n README、translation-rules、双语 RFC、
根 README),README.zh 吸收 PR #249 的两处措辞(「智能体辔架」括注
与其自身新表冲突,未采用)。translation-prompt.md 增补 Few-shot 金
标一节:声明这 5 组配对即流水线的整文档级 few-shot,注入方式为多轮
示例对话。style-samples 的 blob hash 译法按新表回改为保留英文。

Supersedes the .zh.md content of #244/#249/#264.
2026-07-12 21:07:45 -07:00