Commit Graph

2524 Commits

Author SHA1 Message Date
Tianyi Cui
2584f029bc Merge remote-tracking branch 'origin/master' into worktree/pr343-retarget-latest-master
# Conflicts:
#	docs/cookbook/extension-cookbook.i18n.yaml
#	docs/cookbook/extension-cookbook.zh.md
2026-07-24 21:20:17 +08:00
Tianyi Cui
6865b861d8 docs(site): preserve translated core fragment ids 2026-07-24 18:32:31 +08:00
Tianyi Cui
b7a8a97034 Merge refreshed #343 into docs/i18n-batch-cds-postmortem 2026-07-24 17:39:54 +08:00
Tianyi Cui
305930712b docs(i18n): bind authority terminology 2026-07-24 17:39:11 +08:00
Tianyi Cui
6b686aa832 docs(i18n): refresh session query snapshot contract 2026-07-24 17:07:23 +08:00
Turtle
d2b2539f3e Merge remote-tracking branch 'origin/feat/send-unify' into feat/send-unify
# Conflicts:
#	docs/architecture.i18n.yaml
#	docs/architecture.md
2026-07-24 16:58:32 +08:00
Tianyi Cui
c962db28da Merge refreshed #343 into docs/i18n-batch-cds-postmortem 2026-07-24 16:57:46 +08:00
Tianyi Cui
b040c6a1c9 Merge latest master into docs/i18n-batch-core 2026-07-24 16:55:08 +08:00
Turtle
80bbe959a7 Merge remote-tracking branch 'origin/master' into feat/send-unify 2026-07-24 16:52:46 +08:00
Turtle
bb124c2869 Merge branch 'master' into feat/send-unify 2026-07-24 16:31:00 +08:00
ZiyaZhang
33ee34b58e fix(tui): make resume picker full-screen 2026-07-24 01:29:35 -07:00
Turtle
c440217fde refactor(tui): defer cross-process resume locking 2026-07-24 01:29:35 -07:00
NI0317
54d986ed87 fix(tui): close resume handoff races 2026-07-24 01:29:35 -07:00
NI0317
2ae9f4fdf3 feat(tui): add safe session resume flow 2026-07-24 01:29:35 -07:00
Tianyi Cui
46a71ecf22 docs(i18n): address final core-data review 2026-07-24 16:21:48 +08:00
Tianyi Cui
c53f9324bc Merge #343 into #344 2026-07-24 15:51:35 +08:00
Tianyi Cui
445bb89f03 docs(i18n): complete core batch review contract 2026-07-24 15:51:06 +08:00
Tianyi Cui
3122548be8 Merge #343 into #344 2026-07-24 15:16:55 +08:00
Tianyi Cui
bc329a962b docs(i18n): codify review terminology 2026-07-24 15:16:18 +08:00
Turtle
b02b438667 refactor(agent): align delivery method names 2026-07-24 15:08:36 +08:00
Tianyi Cui
1b0988c92a docs(i18n): address core translation review 2026-07-24 14:56:48 +08:00
Tianyi Cui
8345a73d97 Merge commit 'c3d9023fa' into worktree/pr344-retarget-stack 2026-07-24 14:43:09 +08:00
Tianyi Cui
9b38ccad54 docs(i18n): clarify optional rounds and test layout 2026-07-24 14:42:36 +08:00
Tianyi Cui
eceacca432 Merge commit '84ac8a3f9' into worktree/pr344-retarget-stack 2026-07-24 14:22:38 +08:00
Tianyi Cui
86d3bd6b9b docs(i18n): clarify review terminology 2026-07-24 14:21:36 +08:00
Tianyi Cui
6e4aa13632 docs(i18n): clarify Cordis and test wording 2026-07-24 14:21:15 +08:00
Tianyi Cui
9848a9542b docs: restore architecture headroom 2026-07-24 14:02:53 +08:00
Tianyi Cui
b01fc33492 Merge remote-tracking branch 'origin/feat/send-unify' into worktree/agent-message-intents
# Conflicts:
#	.agents/notes/implemented/architecture/2026-07-22-unified-send-and-coalesced-user-messages.i18n.yaml
#	.agents/notes/implemented/architecture/2026-07-22-unified-send-and-coalesced-user-messages.md
#	.agents/notes/implemented/architecture/2026-07-22-unified-send-and-coalesced-user-messages.zh.md
#	docs/cordis-catalog/events.md
#	docs/event-producer-consumer.md
#	packages/core/agent-loop/src/agent.ts
2026-07-24 13:59:37 +08:00
Tianyi Cui
d6d50deb24 refactor(agent): expose resolved input acceptance 2026-07-24 13:52:25 +08:00
Turtle
d613fdb073 fix(agent-loop): third review pass — disposal discard ordering, flush guard, docs
Address a fresh-eye review of the disposal/injection fixes:
- disposal now snapshots, clears, and marks disposed BEFORE emitting
  agent/inbox/discard (mirroring cancel's snapshot→clear→emit), so a
  re-entrant send/cancel from a discard listener throws 'disposed' or
  finds an empty inbox instead of leaking or double-discarding an id.
  The discard is unconditional (even on unpublished setup-rollback) to
  match send's unconditional enqueue, keeping every id balanced.
- restore the turnRecorded guard on the idle-injection flush: a
  turn/start rejected pre-commit (append reentrancy / internal-dispatch
  veto) records nothing and owes no flush; the previous unconditional
  flush emitted a phantom-turn agent/error. The isTurnOpen/turnRecorded
  branches are reachable (reentrant inject from a session/event
  listener) and now covered by a regression test rather than v8-ignored.
- rewrite the agent/inbox/discard event JSDoc to enumerate all three
  emitters (cancel, terminal turn-stop, disposal) — every enqueued id
  gets exactly one terminal dequeue-or-discard.

Per-file coverage stays 100%.
2026-07-24 13:39:06 +08:00
Tianyi Cui
086e454931 refactor(agent): name delivery methods by intent 2026-07-24 12:27:20 +08:00
Tianyi Cui
a96582e47a Merge docs/i18n-batch-core into docs/i18n-batch-cds-postmortem 2026-07-24 12:12:45 +08:00
Tianyi Cui
250162a2fc docs: align core catalog translations 2026-07-24 12:11:58 +08:00
Tianyi Cui
46ab745198 docs: align Goal Round step cardinality 2026-07-24 12:10:40 +08:00
Tianyi Cui
5c893bcda1 Merge docs/i18n-batch-core into docs/i18n-batch-cds-postmortem 2026-07-24 11:56:13 +08:00
Tianyi Cui
d45d999bb2 Merge latest master into docs/i18n-batch-core 2026-07-24 11:48:27 +08:00
imccyu
a7699cdeb1 ci: coverage/knip 2026-07-24 02:09:43 +08:00
imccyu
02c7236c91 docs(gui): client plugin loading RFC — final-state rewrite, bilingual pair
The loading-chain RFC (2026-07-23-client-plugin-loading-model, en/zh)
states the shipped model in its final form: two package kinds (dshClient
means plugin), one module system + one plugin governor, the end-to-end
loading flow, and hot reload with its support boundary — written for a
first-time reader, no intermediate-design narration. The two 2026-07-19
GUI RFCs defer their loading-chain sections to it and drop stale
vocabulary. config-catalog regenerated for the package rename; pairing
manifest tracks the renamed pair.
2026-07-24 02:09:42 +08:00
imccyu
e903a864f7 fix(gui): reconcile the rebase — ui-question joins the client roster
ui-question landed on master as a full dshClient plugin package (composer
question flow); it enters the flat roster, apps/cli deps/refs, and the
smoke graph. Restore the workspace-context and user-interaction host deps
the conflict resolution had dropped.
2026-07-24 02:09:42 +08:00
Tianyi Cui
ed3a6ca295 Merge remote-tracking branch 'origin/docs/i18n-batch-core' into worktree/pr344-retarget-stack
# Conflicts:
#	docs/core-data-structures/session-query.md
#	scripts/type-equiv.manifest.json
2026-07-24 00:00:04 +08:00
Tianyi Cui
e6bd126ef3 Merge remote-tracking branch 'origin/master' into worktree/pr343-retarget-latest-master
# Conflicts:
#	docs/i18n/README.i18n.yaml
#	docs/i18n/README.zh.md
2026-07-23 23:43:08 +08:00
Tianyi Cui
f7c68394a5 Merge branch 'master' into docs/i18n-prompt-v4 2026-07-23 23:26:29 +08:00
Tianyi Cui
f27f8f6162 Merge commit 'refs/codex-unblock/20260723/pr570-master-initial' into worktree/pr570-merge-master-20260723
# Conflicts:
#	.agents/notes/implemented/architecture/2026-06-18-shared-persistence-write-coordinator.md
#	docs/core-data-structures/persistence.md
#	packages/session-persistence/session-persistence/README.md
2026-07-23 23:21:08 +08:00
Tianyi Cui
6e05708ef4 Merge remote-tracking branch 'origin/master' into worktree/pr348-retarget-latest-master 2026-07-23 23:13:43 +08:00
Tianyi Cui
d1b5f5c64f Merge remote-tracking branch 'origin/master' into worktree/pr348-retarget-latest-master
# Conflicts:
#	vitest.snapshot.config.ts
2026-07-23 22:46:19 +08:00
Turtle
d5f88f1221 Merge remote-tracking branch 'origin/master' into feat/send-unify
# Conflicts:
#	examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
#	examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/stdout.expected.jsonl
#	packages/cordis/tool-cordis/src/api-catalog.ts
#	packages/pty/pty-local/tests/index.spec.ts
#	packages/session-query/session-query/tests/tracing.spec.ts
2026-07-23 22:41:45 +08:00
Tianyi Cui
7a09ca8cd2 Merge remote-tracking branch 'origin/master' into worktree/pr540-merge-master-20260723 2026-07-23 22:34:49 +08:00
Turtle
1f9a3e1bee fix(agent-loop): second review pass — late-steering discard, dead-branch, catalog leaks
Address a second fresh-eye review of the review fixes:
- MAJOR: late steering that lands after runTurn returns terminally
  stopped (e.g. during the post-turn flush) was drained by runLoop and
  dropped without a discard, leaving a dangling outstanding id the
  negative-only invariant can't catch. Emit agent/inbox/discard for it,
  symmetric with the in-turn terminal-stop drop.
- remove the dead cancel() idle-settle branch: whenIdle's fast path
  already resolves for a lone quiet item, so no waiter is ever left for
  it to settle. Document why.
- gen-cordis-api classShape now drops private/protected/#private members
  and strips getter/setter bodies, so Session no longer leaks private
  fields and getter bodies into the model catalog.
- document that AgentMessage intentionally omits meta (durable-only).

Adds a regression test for the late-steering discard.
2026-07-23 22:33:12 +08:00
Tianyi Cui
9fdbae66e7 Merge remote-tracking branch 'origin/master' into worktree/pr576-merge-master-20260723 2026-07-23 22:18:30 +08:00
Tianyi Cui
c688aa486c Merge remote-tracking branch 'origin/master' into worktree/remove-expose-internals 2026-07-23 22:08:44 +08:00