Tianyi Cui
08cc034128
Merge commit 'refs/codex-unblock/2026-07-23/base-511' into HEAD
2026-07-23 10:14:06 +08:00
imccyu
59a2fc408b
Merge remote-tracking branch 'origin/worktree-webslot2' into worktree/fix-collapsed-sidebar-rail
...
# Conflicts:
# apps/web/tests/smoke-fixture.e2e.ts
# packages/client/ui-layout/src/client/AppFrame.tsx
# packages/client/ui-layout/src/client/columns.ts
# packages/client/ui-layout/src/client/index.ts
# packages/client/ui-layout/tests/app-frame.spec.tsx
# packages/client/ui-layout/tests/columns.spec.ts
# packages/client/ui-sidebar/README.md
# packages/client/ui-sidebar/src/client/SidebarRoot.tsx
# packages/client/ui-sidebar/src/client/contract/slots.ts
# packages/client/ui-sidebar/src/client/index.ts
# packages/client/ui-sidebar/tests/apply.spec.tsx
# packages/client/ui-sidebar/tests/sidebar-root.spec.tsx
2026-07-23 04:25:01 +08:00
imccyu
90b05c7a2b
docs(i18n): re-record the web-client architecture pair after stacking on #538
2026-07-23 04:01:06 +08:00
imccyu
de5c68eb1a
docs(notes): retire current-state references to the deleted build graph
...
Three notes stated tsconfig.build.json as present-tense fact; the
aggregates (tsconfig.host.json / tsconfig.client.json) now own the
explicit reference lists and the root solution owns the emit graph.
Historical narration in dated notes is left untouched.
2026-07-23 03:59:35 +08:00
imccyu
933fa96775
docs(i18n): re-record the two cookbook pairs after the zh link fix
...
The zh-side link retarget (e43438f39) changed the zh blobs without
re-recording; verify-translation-pairing --write refreshed both records.
2026-07-23 03:59:35 +08:00
imccyu
21287abd78
docs(ts): bilingual pair for the solution-root Agent Note
2026-07-23 03:59:35 +08:00
imccyu
28d753391f
docs(ts): point zh cookbook layout links at the canonical anchor
2026-07-23 03:59:35 +08:00
imccyu
62125c0dcb
docs(ts): document the solution-root TypeScript project layout
...
New authoritative section docs/development.md#typescript-project-layout
(five files, three roles, the program-vs-resolution principle and its two
disciplines), two repo conventions in AGENTS.md, package tsconfig shape in
packages/AGENTS.md, cookbook touch-lists updated for the two aggregates,
test source-plane rule in docs/testing.md. Decision record: new Agent Note
2026-07-22-tsconfig-solution-root-two-aggregates; ts-build-config note
updated in place (tsc-first pipeline unchanged); the two GUI RFCs now name
tsconfig.host.json. All bilingual pairs re-recorded. Doc budget ceilings
raised: AGENTS.md 1680, docs/testing.md 1020, packages/AGENTS.md 660 (two
new one-line conventions and one new section on already-near-ceiling docs).
Mission spec for the code-side migration: missions/tsconfig-single-graph-migration.md.
2026-07-23 03:59:35 +08:00
imccyu
e1cb3da755
refactor(vitest): resolve every lane through the tsconfig.base.json facade
...
tsconfig.vitest.json is deleted; its job (a paths map applying to all
test files) is inherent in tsconfig.base.json having no include —
vite-tsconfig-paths treats that as match-all. All four vitest configs
now pin the same facade: the unit config gains a shared pathsPlugin()
helper, the web lane drops its handwritten webserver alias (apps/web
tests are covered by match-all), and the snapshot lane leaves the root
solution (which no longer carries paths) and stops resolving client
imports through package exports. tsconfig.base.json documents the
facade role and bans include/files; the CI eslint cache key hashes the
four graph tsconfigs; the eslint tests-block comment states resolution
via the solution to tsconfig.host.json.
Per missions/tsconfig-single-graph-migration.md §3.
2026-07-23 03:59:06 +08:00
imccyu
19e6f7d907
refactor(tsconfig): single root solution graph over host/client aggregates
...
Root tsconfig.json becomes a pure solution (files:[] + two references);
the former root host aggregate moves verbatim to tsconfig.host.json.
New tsconfig.base.client.json carries the shared client compiler shape
(jsx/DOM lib/types:[]), and tsconfig.client.json plus the 12
packages/client tsconfigs extend it instead of restating the trio.
tsconfig.build.json is deleted: the solution covers the full emit graph,
absorbing the command-goal typecheck/build drift.
Consumers migrate to the single graph: typecheck/build scripts and the
lefthook pre-push hook run bare `tsc -b` (pre-push now covers the client
side); the run-gates build gate needs typecheck so two concurrent tsc -b
runs cannot race the same tsbuildinfo; ts-project.ts and the standalone
doc-typecheck mode seed tsconfig.host.json explicitly (never the root
solution — flattening host+client into one program collides the cordis
Context merges); verify-cordis-config BFS seeds the root solution alone.
Per missions/tsconfig-single-graph-migration.md §2–§3.
2026-07-23 03:59:05 +08:00
imccyu
9cf5a384e9
ci: fix jsdoc & coverage
2026-07-23 03:55:32 +08:00
imccyu
8b3d1ac943
refactor(gui): move the snapshot-store engine into the client runtime
...
The data layer no longer depends on the React glue package, and business
plugins no longer depend on web-react at all:
- The store engine (zustand vanilla + immer + persist + dev freeze),
defineStore, and shallowEqual move to @deepseek-ai/dsh-client-runtime,
exported from the ./client main entry — no ./store subpath survives on
either package (the web-react one is deleted, none is opened on runtime).
- Store products are bare snapshot sources: useSelector leaves
SnapshotStore/StoreInstance and Session; every hook is composed at the
binding site in web-react's renderer (per-source cached uSES binding).
The SlotRendererHost sessions face carries bare observables only.
- SessionProvider becomes a standard-kit seat: an entry whose children
declare a session-scope slot receives the framework component as a prop,
retiring the last value import of web-react from plugin packages.
UseSession and the session-area types now live in ui-slots.
- web-react shrinks to the shell-only React glue (renderer, providers,
uSES bridge); zustand/immer belong to runtime alone; the module-table
seed and tsdown externals drop the web-react/store seat.
- NODE_ENV replacement is defined once in the shared tsdown client preset
(browser bundles inline the engine and lost vite's define); the 3-line
process.env typecheck shim moves to runtime with the engine.
- Stray tsc artifacts (.js/.d.ts/.d.ts.map beside sources under src/)
swept repo-wide; they shadow real sources under vitest resolution.
Verified: both aggregate typecheck programs at zero; 604 client tests
green; repo-wide grep for web-react/store at zero; real-host playwright
run 7/7 including persist round-trip.
ci: fix test/docs
2026-07-23 03:30:06 +08:00
imccyu
004a988168
fix: slot
2026-07-23 03:25:11 +08:00
imccyu
1b0ea07bce
refactor(gui): slot system standard — single register, four props shares, framework store seat
...
The definitive slot model for the web client, replacing the first-generation
define/register two-step, ScopedSlots whitelist faces, and binding handles:
- 'root' is the only a-priori slot (SlotsService built-in); the shell renders
exactly ctx.slots.renderSlot('root', {}).
- register is the single API: children = slot declaration + render
authorization + runtime spec in one options object; misconfiguration fails
loud at load (duplicate declaration, undeclared contribution, one store
handle under two scopes).
- Component props arrive in four auto-derived shares: PropsRuntime<K>
(owner params + session/global standard kits via declare-merge),
PropsRenderSlots<S>, PropsStore<H>, and the inject business face.
sessionId is framework-supplied; hooks are framework-made only.
- Framework store seat: defineStore factories declare schema/actions/persist;
read = useStore, write = baked actions only; store scope derives from the
mounting entry; per-session persist keys and clearPersisted lifecycle.
- inject factories read the apply closure's own ctx (binding handles retired;
root-ctx back door closed); SessionProvider is self-wired render-prop.
- Rendering sits behind the SlotRenderer install seam; runtime stays
React-free; ownership ledger keyed to the single entry axis closes the
stale-authority window (StaleAuthorizationError probes).
Docs: the slot type-chain note is refreshed in place as the slot system
standard RFC (bilingual pair re-recorded); the web client architecture RFC
defers its slot sections there; packages/client/AGENTS.md gains the slot and
props discipline; gui-testing/web-styling notes drop missions/ references.
Tests: suites rewritten to the standard (props fed directly, real store
engines via createXXXStore().create(), no render machinery); load-time
negative samples for declaration/authorization/store conflicts; verified by
real-host playwright run (three columns, empty state, collapse, keyed session
remount, cross-slot selection sharing).
docs(ui-sidebar): point contract reference at the committed slot standard RFC
missions/ is workspace-local and never committed; the README must not cite it.
2026-07-23 03:25:11 +08:00
imccyu
efa4326ff4
refactor: client no export
...
docs: AGENTS.md
refactor: client no export 2
2026-07-23 03:25:10 +08:00
Tianyi Cui
8e3fcbe3b5
Merge branch 'worktree/pr344-retarget-stack' into worktree/pr345-retarget-stack
2026-07-23 01:12:05 +08:00
Tianyi Cui
d5f5517ec0
docs(i18n): address Agent Note review feedback
2026-07-23 01:11:59 +08:00
Tianyi Cui
d59af9befc
docs(i18n): address core-data review feedback
2026-07-23 01:05:50 +08:00
Tianyi Cui
b59f6ff3fa
docs: link the WeChat community QR destination
2026-07-23 00:48:50 +08:00
Tianyi Cui
d8f2531a55
Merge branch 'worktree/pr344-retarget-stack' into worktree/pr345-retarget-stack
2026-07-23 00:45:44 +08:00
Tianyi Cui
551aba97db
Merge branch 'worktree/pr343-retarget-latest-master' into worktree/pr344-retarget-stack
2026-07-23 00:43:35 +08:00
Tianyi Cui
441a17d62e
fix(ci): ignore translation records in Cordis config scan
...
The Loader verifier matched docs/cordis-primer.i18n.yaml solely because its basename contained cordis. Centralize file discovery, exclude i18n sidecars, and cover Loader YAML plus excluded trees with a regression test.
2026-07-23 00:39:55 +08:00
Tianyi Cui
2be046dcf2
docs: refine README product copy
2026-07-23 00:37:30 +08:00
Tianyi Cui
c715612928
docs(i18n): sync compaction checkpoint translation
2026-07-23 00:22:36 +08:00
Tianyi Cui
4bea3032a1
Merge branch 'worktree/pr344-retarget-stack' into worktree/pr345-retarget-stack
2026-07-23 00:20:27 +08:00
Tianyi Cui
a5a0cad46a
Merge branch 'worktree/pr343-retarget-latest-master' into worktree/pr344-retarget-stack
...
# Conflicts:
# scripts/type-equiv.manifest.json
2026-07-23 00:19:53 +08:00
Tianyi Cui
ef325b02fa
docs: make the top-level README product-first
2026-07-23 00:15:44 +08:00
Tianyi Cui
3090708f85
Merge remote-tracking branch 'origin/master' into worktree/pr343-retarget-latest-master
2026-07-23 00:11:23 +08:00
Tianyi Cui
744d65d63c
docs(i18n): refresh Agent Note translations after merge
2026-07-23 00:10:53 +08:00
Tianyi Cui
30a1ea7cec
Merge branch 'master' into readme
...
# Conflicts:
# README.i18n.yaml
# README.md
# README.zh.md
2026-07-23 00:01:24 +08:00
Tianyi Cui
690c53dc03
Merge pull request #468 from deepseek-harness/worktree/session-reference
...
feat(session): add cross-session references
2026-07-22 23:22:07 +08:00
Tianyi Cui
d5d6960184
Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master
...
# Conflicts:
# docs/architecture.i18n.yaml
# docs/module-graph.md
2026-07-22 23:17:02 +08:00
Tianyi Cui
cd17f8d23a
Merge refreshed docs/i18n-batch-cds-postmortem into docs/i18n-batch-rfc
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-06-11-content-block-vocabulary.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-content-block-vocabulary.zh.md
# .agents/notes/implemented/architecture/2026-06-11-custom-schema-dsl.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-custom-schema-dsl.zh.md
# .agents/notes/implemented/architecture/2026-06-11-dev-invariants-over-deep-readonly.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-dev-invariants-over-deep-readonly.zh.md
# .agents/notes/implemented/architecture/2026-06-11-event-sourced-sessions.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-event-sourced-sessions.zh.md
# .agents/notes/implemented/architecture/2026-06-11-microkernel-event-taxonomy.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-microkernel-event-taxonomy.zh.md
# .agents/notes/implemented/architecture/2026-06-11-runtime-arg-validation.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-runtime-arg-validation.zh.md
# .agents/notes/implemented/architecture/2026-06-11-structured-error-taxonomy.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-structured-error-taxonomy.zh.md
# .agents/notes/implemented/architecture/2026-06-11-tool-schemas-in-prompt-assembly.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-tool-schemas-in-prompt-assembly.zh.md
# .agents/notes/implemented/architecture/2026-06-13-capability-seams.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-13-capability-seams.zh.md
# .agents/notes/implemented/architecture/2026-06-13-twin-llm-adapters.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-13-twin-llm-adapters.zh.md
# .agents/notes/implemented/architecture/2026-06-14-session-persistence.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-14-session-persistence.zh.md
# .agents/notes/implemented/architecture/2026-06-15-turn-enclosure-invariant.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-15-turn-enclosure-invariant.zh.md
# .agents/notes/implemented/architecture/2026-06-17-filesystem-capability-seam.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-17-filesystem-capability-seam.zh.md
# .agents/notes/implemented/architecture/2026-06-18-agent-lifecycle-and-ownership-seams.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-18-agent-lifecycle-and-ownership-seams.zh.md
# .agents/notes/implemented/architecture/2026-06-18-session-surface.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-18-session-surface.zh.md
# .agents/notes/implemented/architecture/2026-06-18-shared-persistence-write-coordinator.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-18-shared-persistence-write-coordinator.zh.md
# .agents/notes/implemented/architecture/2026-06-20-branded-ids.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-20-branded-ids.zh.md
# .agents/notes/implemented/architecture/2026-06-20-extract-example-app-packages.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-20-extract-example-app-packages.zh.md
# .agents/notes/implemented/architecture/2026-06-20-package-hierarchy.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-20-package-hierarchy.md
# .agents/notes/implemented/architecture/2026-06-20-package-hierarchy.zh.md
# .agents/notes/implemented/architecture/2026-06-21-mandatory-app-attribution-headers.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-21-mandatory-app-attribution-headers.zh.md
# .agents/notes/implemented/architecture/2026-06-24-web-capability-seam.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-24-web-capability-seam.zh.md
# .agents/notes/implemented/architecture/2026-06-26-file-context-as-event-gate.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-26-file-context-as-event-gate.zh.md
# .agents/notes/implemented/architecture/2026-06-30-bash-stdin-env-trusted-plugin-surface.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-30-bash-stdin-env-trusted-plugin-surface.zh.md
# .agents/notes/implemented/architecture/2026-06-30-event-domain-semantics.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-30-event-domain-semantics.zh.md
# .agents/notes/implemented/architecture/2026-07-02-fs-per-session-cwd.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-02-fs-per-session-cwd.zh.md
# .agents/notes/implemented/architecture/2026-07-02-result-time-applied-hunk-diffs.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-02-result-time-applied-hunk-diffs.zh.md
# .agents/notes/implemented/architecture/2026-07-02-tool-render-intent-union.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-02-tool-render-intent-union.zh.md
# .agents/notes/implemented/architecture/2026-07-03-filesystem-directory-listing-seam.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-03-filesystem-directory-listing-seam.zh.md
# .agents/notes/implemented/architecture/2026-07-05-prompt-variables-and-tool-guidance-ownership.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-05-prompt-variables-and-tool-guidance-ownership.zh.md
# .agents/notes/implemented/architecture/2026-07-05-reconstructable-requests.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-05-reconstructable-requests.zh.md
# .agents/notes/implemented/architecture/2026-07-05-subagent-provider-lifecycle-events.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-05-subagent-provider-lifecycle-events.zh.md
# .agents/notes/implemented/architecture/2026-07-06-timeout-deadline-library.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-06-timeout-deadline-library.zh.md
# .agents/notes/implemented/architecture/2026-07-07-tool-call-timeout-policy.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-07-tool-call-timeout-policy.zh.md
# .agents/notes/implemented/architecture/2026-07-08-agent-scope-contexts.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-08-agent-scope-contexts.zh.md
# .agents/notes/implemented/architecture/2026-07-12-agent-scope-runtime-design.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-12-agent-scope-runtime-design.zh.md
# .agents/notes/implemented/feature/2026-06-14-acp-agent-client-protocol.i18n.yaml
# .agents/notes/implemented/feature/2026-06-14-acp-agent-client-protocol.zh.md
# .agents/notes/implemented/feature/2026-06-14-acp-multi-session.i18n.yaml
# .agents/notes/implemented/feature/2026-06-14-acp-multi-session.zh.md
# .agents/notes/implemented/feature/2026-06-15-code-mode.i18n.yaml
# .agents/notes/implemented/feature/2026-06-15-code-mode.zh.md
# .agents/notes/implemented/feature/2026-06-17-filesystem-tool-schemas.i18n.yaml
# .agents/notes/implemented/feature/2026-06-17-filesystem-tool-schemas.zh.md
# .agents/notes/implemented/feature/2026-06-18-acp-terminal-and-tool-rendering.i18n.yaml
# .agents/notes/implemented/feature/2026-06-18-acp-terminal-and-tool-rendering.zh.md
# .agents/notes/implemented/feature/2026-06-18-compaction-capability-seam.i18n.yaml
# .agents/notes/implemented/feature/2026-06-18-compaction-capability-seam.zh.md
# .agents/notes/implemented/feature/2026-06-21-subagent-capability-seam.i18n.yaml
# .agents/notes/implemented/feature/2026-06-21-subagent-capability-seam.md
# .agents/notes/implemented/feature/2026-06-21-subagent-capability-seam.zh.md
# .agents/notes/implemented/feature/2026-06-22-acp-subagent-backend.i18n.yaml
# .agents/notes/implemented/feature/2026-06-22-acp-subagent-backend.zh.md
# .agents/notes/implemented/feature/2026-06-25-ask-user-question.i18n.yaml
# .agents/notes/implemented/feature/2026-06-25-ask-user-question.zh.md
# .agents/notes/implemented/feature/2026-06-29-todo-write-tool.i18n.yaml
# .agents/notes/implemented/feature/2026-06-29-todo-write-tool.zh.md
# .agents/notes/implemented/feature/2026-06-30-hook-bridges.i18n.yaml
# .agents/notes/implemented/feature/2026-06-30-hook-bridges.zh.md
# .agents/notes/implemented/feature/2026-06-30-hook-protocol-lib.i18n.yaml
# .agents/notes/implemented/feature/2026-06-30-hook-protocol-lib.zh.md
# .agents/notes/implemented/feature/2026-06-30-interception-seams.i18n.yaml
# .agents/notes/implemented/feature/2026-06-30-interception-seams.zh.md
# .agents/notes/implemented/feature/2026-06-30-session-store-fork-api.i18n.yaml
# .agents/notes/implemented/feature/2026-06-30-session-store-fork-api.zh.md
# .agents/notes/implemented/feature/2026-06-30-subagent-observe-enrich.i18n.yaml
# .agents/notes/implemented/feature/2026-06-30-subagent-observe-enrich.zh.md
# .agents/notes/implemented/feature/2026-07-05-dynamic-workflows.i18n.yaml
# .agents/notes/implemented/feature/2026-07-05-dynamic-workflows.zh.md
# .agents/notes/implemented/feature/2026-07-05-skill-system.i18n.yaml
# .agents/notes/implemented/feature/2026-07-05-skill-system.zh.md
# .agents/notes/implemented/feature/2026-07-06-approval-seam.i18n.yaml
# .agents/notes/implemented/feature/2026-07-06-approval-seam.zh.md
# .agents/notes/implemented/feature/2026-07-06-explicit-tool-order.i18n.yaml
# .agents/notes/implemented/feature/2026-07-06-explicit-tool-order.zh.md
# .agents/notes/implemented/feature/2026-07-06-sandbox.i18n.yaml
# .agents/notes/implemented/feature/2026-07-06-sandbox.zh.md
# .agents/notes/implemented/feature/2026-07-07-mcp-client-plugin.i18n.yaml
# .agents/notes/implemented/feature/2026-07-07-mcp-client-plugin.zh.md
# .agents/notes/implemented/feature/2026-07-07-session-prefix.i18n.yaml
# .agents/notes/implemented/feature/2026-07-07-session-prefix.zh.md
# .agents/notes/implemented/feature/2026-07-08-repeat-tool-guard.i18n.yaml
# .agents/notes/implemented/feature/2026-07-08-repeat-tool-guard.zh.md
# .agents/notes/implemented/feature/2026-07-08-self-referential-cordis-toolset.i18n.yaml
# .agents/notes/implemented/feature/2026-07-08-self-referential-cordis-toolset.zh.md
# .agents/notes/implemented/feature/2026-07-10-session-query-service.i18n.yaml
# .agents/notes/implemented/feature/2026-07-10-session-query-service.zh.md
# .agents/notes/implemented/feature/2026-07-12-subagent-persona-tool-filter-and-depth.i18n.yaml
# .agents/notes/implemented/feature/2026-07-12-subagent-persona-tool-filter-and-depth.zh.md
# .agents/notes/implemented/process/2026-06-11-doc-sync-enforcement.i18n.yaml
# .agents/notes/implemented/process/2026-06-11-doc-sync-enforcement.zh.md
# .agents/notes/implemented/process/2026-06-11-quality-gates.i18n.yaml
# .agents/notes/implemented/process/2026-06-11-quality-gates.md
# .agents/notes/implemented/process/2026-06-11-quality-gates.zh.md
# .agents/notes/implemented/process/2026-06-11-tsdown-over-dumble.i18n.yaml
# .agents/notes/implemented/process/2026-06-11-tsdown-over-dumble.zh.md
# .agents/notes/implemented/process/2026-06-11-vendor-cordis-as-source.i18n.yaml
# .agents/notes/implemented/process/2026-06-11-vendor-cordis-as-source.zh.md
# .agents/notes/implemented/process/2026-06-16-pnpm-over-yarn.i18n.yaml
# .agents/notes/implemented/process/2026-06-16-pnpm-over-yarn.zh.md
# .agents/notes/implemented/process/2026-06-17-ts-build-config.i18n.yaml
# .agents/notes/implemented/process/2026-06-17-ts-build-config.zh.md
# .agents/notes/implemented/process/2026-06-18-markdown-cross-link-lint.i18n.yaml
# .agents/notes/implemented/process/2026-06-18-markdown-cross-link-lint.zh.md
# .agents/notes/implemented/process/2026-06-20-core-data-structures-catalog.i18n.yaml
# .agents/notes/implemented/process/2026-06-20-core-data-structures-catalog.zh.md
# .agents/notes/implemented/process/2026-06-20-generated-cordis-catalog.i18n.yaml
# .agents/notes/implemented/process/2026-06-20-generated-cordis-catalog.zh.md
# .agents/notes/implemented/process/2026-06-20-rfc-classification.i18n.yaml
# .agents/notes/implemented/process/2026-06-20-rfc-classification.zh.md
# .agents/notes/implemented/process/2026-07-02-tool-schema-catalog.i18n.yaml
# .agents/notes/implemented/process/2026-07-02-tool-schema-catalog.zh.md
# .agents/notes/implemented/process/2026-07-03-documentation-graph-atlas.i18n.yaml
# .agents/notes/implemented/process/2026-07-03-documentation-graph-atlas.zh.md
# .agents/notes/implemented/process/2026-07-04-cordis-jsdoc-completeness-gate.i18n.yaml
# .agents/notes/implemented/process/2026-07-04-cordis-jsdoc-completeness-gate.zh.md
# .agents/notes/implemented/process/2026-07-04-doc-tiers-and-budgets.i18n.yaml
# .agents/notes/implemented/process/2026-07-04-doc-tiers-and-budgets.zh.md
# .agents/notes/implemented/process/2026-07-04-generate-rfc-index-tables.i18n.yaml
# .agents/notes/implemented/process/2026-07-04-generate-rfc-index-tables.zh.md
# .agents/notes/implemented/process/2026-07-04-persistence-log-catalog.i18n.yaml
# .agents/notes/implemented/process/2026-07-04-persistence-log-catalog.zh.md
# .agents/notes/implemented/process/2026-07-05-uniform-rfc-format.i18n.yaml
# .agents/notes/implemented/process/2026-07-05-uniform-rfc-format.zh.md
# .agents/notes/implemented/process/2026-07-06-export-surface-jsdoc-gate.i18n.yaml
# .agents/notes/implemented/process/2026-07-06-export-surface-jsdoc-gate.zh.md
# .agents/notes/implemented/process/2026-07-06-generated-config-catalog.i18n.yaml
# .agents/notes/implemented/process/2026-07-06-generated-config-catalog.zh.md
# .agents/notes/implemented/process/2026-07-06-node-engine-floor.i18n.yaml
# .agents/notes/implemented/process/2026-07-06-node-engine-floor.zh.md
# .agents/notes/implemented/process/2026-07-06-parallel-github-ci-gates.i18n.yaml
# .agents/notes/implemented/process/2026-07-06-parallel-github-ci-gates.zh.md
# .agents/notes/implemented/process/2026-07-06-parallel-pre-push-gates.i18n.yaml
# .agents/notes/implemented/process/2026-07-06-parallel-pre-push-gates.zh.md
# .agents/notes/implemented/process/2026-07-10-readme-known-limitations-gate.i18n.yaml
# .agents/notes/implemented/process/2026-07-10-readme-known-limitations-gate.zh.md
# .agents/notes/implemented/process/2026-07-12-package-model-experience-contract.i18n.yaml
# .agents/notes/implemented/process/2026-07-12-package-model-experience-contract.zh.md
# .agents/notes/implemented/simplification/2026-06-19-drop-mutable-session-summary.i18n.yaml
# .agents/notes/implemented/simplification/2026-06-19-drop-mutable-session-summary.zh.md
# .agents/notes/implemented/simplification/2026-06-20-collapse-trace-only-session-events.i18n.yaml
# .agents/notes/implemented/simplification/2026-06-20-collapse-trace-only-session-events.zh.md
# .agents/notes/implemented/simplification/2026-06-20-drop-unconsumed-llm-adapter-change-event.i18n.yaml
# .agents/notes/implemented/simplification/2026-06-20-drop-unconsumed-llm-adapter-change-event.zh.md
# .agents/notes/implemented/simplification/2026-06-20-drop-unconsumed-llm-assembled-surfaces.i18n.yaml
# .agents/notes/implemented/simplification/2026-06-20-drop-unconsumed-llm-assembled-surfaces.zh.md
# .agents/notes/implemented/simplification/2026-06-20-prune-dead-seam-methods.i18n.yaml
# .agents/notes/implemented/simplification/2026-06-20-prune-dead-seam-methods.md
# .agents/notes/implemented/simplification/2026-06-20-prune-dead-seam-methods.zh.md
# .agents/notes/implemented/simplification/2026-06-20-public-agent-stop-surface.i18n.yaml
# .agents/notes/implemented/simplification/2026-06-20-public-agent-stop-surface.zh.md
# .agents/notes/implemented/simplification/2026-06-20-remove-agent-boundary-mirror-events.i18n.yaml
# .agents/notes/implemented/simplification/2026-06-20-remove-agent-boundary-mirror-events.zh.md
# .agents/notes/implemented/simplification/2026-06-26-fsspec-style-fs-seam.i18n.yaml
# .agents/notes/implemented/simplification/2026-06-26-fsspec-style-fs-seam.zh.md
# .agents/notes/implemented/simplification/2026-07-02-remove-stream-chunk-mirror.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-02-remove-stream-chunk-mirror.zh.md
# .agents/notes/implemented/simplification/2026-07-04-drop-image-content-block.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-04-drop-image-content-block.zh.md
# .agents/notes/implemented/simplification/2026-07-04-drop-inert-request-knobs.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-04-drop-inert-request-knobs.zh.md
# .agents/notes/implemented/simplification/2026-07-04-drop-unconsumed-web-observation-surface.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-04-drop-unconsumed-web-observation-surface.zh.md
# .agents/notes/implemented/simplification/2026-07-04-fold-stdio-ui-helper.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-04-fold-stdio-ui-helper.md
# .agents/notes/implemented/simplification/2026-07-04-fold-stdio-ui-helper.zh.md
# .agents/notes/implemented/simplification/2026-07-04-prune-producerless-vocabulary-variants.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-04-prune-producerless-vocabulary-variants.zh.md
# .agents/notes/implemented/simplification/2026-07-04-prune-write-only-fs-surface.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-04-prune-write-only-fs-surface.zh.md
# .agents/notes/implemented/simplification/2026-07-04-remove-agent-steering-mirror.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-04-remove-agent-steering-mirror.zh.md
# .agents/notes/implemented/simplification/2026-07-04-share-app-bin-boot-glue.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-04-share-app-bin-boot-glue.zh.md
# .agents/notes/implemented/simplification/2026-07-04-tighten-hook-protocol-contract.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-04-tighten-hook-protocol-contract.zh.md
# .agents/notes/implemented/simplification/2026-07-04-trim-acp-bridge-unreachable-surface.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-04-trim-acp-bridge-unreachable-surface.zh.md
# .agents/notes/implemented/simplification/2026-07-12-drop-unconsumed-skill-provider-events.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-12-drop-unconsumed-skill-provider-events.zh.md
# .agents/notes/implemented/simplification/2026-07-12-prune-unused-web-seam-fields.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-12-prune-unused-web-seam-fields.zh.md
# .agents/notes/implemented/testing/2026-06-11-property-based-testing.i18n.yaml
# .agents/notes/implemented/testing/2026-06-11-property-based-testing.zh.md
# .agents/notes/implemented/testing/2026-06-19-acp-snapshot-tests.i18n.yaml
# .agents/notes/implemented/testing/2026-06-19-acp-snapshot-tests.zh.md
# .agents/notes/implemented/testing/2026-06-19-real-api-e2e-ci.i18n.yaml
# .agents/notes/implemented/testing/2026-06-19-real-api-e2e-ci.zh.md
# .agents/notes/implemented/testing/2026-06-20-remove-redundant-snapshot-log-goldens.i18n.yaml
# .agents/notes/implemented/testing/2026-06-20-remove-redundant-snapshot-log-goldens.zh.md
# .agents/notes/implemented/testing/2026-06-22-fork-child-replay-seed-boundary.i18n.yaml
# .agents/notes/implemented/testing/2026-06-22-fork-child-replay-seed-boundary.zh.md
# .agents/notes/implemented/testing/2026-06-22-fork-snapshot-scenarios.i18n.yaml
# .agents/notes/implemented/testing/2026-06-22-fork-snapshot-scenarios.zh.md
# .agents/notes/implemented/testing/2026-06-22-subagent-snapshot-replay.i18n.yaml
# .agents/notes/implemented/testing/2026-06-22-subagent-snapshot-replay.zh.md
# .agents/notes/implemented/testing/2026-07-04-hook-snapshot-matrix.i18n.yaml
# .agents/notes/implemented/testing/2026-07-04-hook-snapshot-matrix.zh.md
# .agents/notes/implemented/testing/2026-07-04-single-source-acp-replay-config.i18n.yaml
# .agents/notes/implemented/testing/2026-07-04-single-source-acp-replay-config.zh.md
# .agents/notes/implemented/testing/2026-07-06-pin-request-header-content-in-one-scenario.i18n.yaml
# .agents/notes/implemented/testing/2026-07-06-pin-request-header-content-in-one-scenario.zh.md
# .agents/notes/implemented/testing/2026-07-08-shared-acp-snapshot-package.i18n.yaml
# .agents/notes/implemented/testing/2026-07-08-shared-acp-snapshot-package.zh.md
# .agents/notes/proposed/architecture/2026-06-16-typed-event-schemas.i18n.yaml
# .agents/notes/proposed/architecture/2026-06-16-typed-event-schemas.zh.md
# .agents/notes/proposed/architecture/2026-06-20-generic-long-running-tool-runtime.i18n.yaml
# .agents/notes/proposed/architecture/2026-06-20-generic-long-running-tool-runtime.zh.md
# .agents/notes/proposed/feature/2026-06-30-pre-tool-input-rewrite.i18n.yaml
# .agents/notes/proposed/feature/2026-06-30-pre-tool-input-rewrite.zh.md
# .agents/notes/proposed/feature/2026-07-07-claude-code-and-codex-subagent-backends.i18n.yaml
# .agents/notes/proposed/feature/2026-07-07-claude-code-and-codex-subagent-backends.zh.md
# .agents/notes/proposed/feature/2026-07-08-interactive-side-sessions.i18n.yaml
# .agents/notes/proposed/feature/2026-07-08-interactive-side-sessions.zh.md
# .agents/notes/proposed/feature/2026-07-10-sqlite-session-query-provider.i18n.yaml
# .agents/notes/proposed/feature/2026-07-10-sqlite-session-query-provider.zh.md
# .agents/notes/proposed/feature/2026-07-13-stream-workflow-progress-through-tool-calls.i18n.yaml
# .agents/notes/proposed/feature/2026-07-13-stream-workflow-progress-through-tool-calls.zh.md
# .agents/notes/proposed/process/2026-06-11-api-extractor-reports.i18n.yaml
# .agents/notes/proposed/process/2026-06-11-api-extractor-reports.md
# .agents/notes/proposed/process/2026-06-11-api-extractor-reports.zh.md
# .agents/notes/proposed/process/2026-06-11-architectural-conformance.i18n.yaml
# .agents/notes/proposed/process/2026-06-11-architectural-conformance.zh.md
# .agents/notes/proposed/process/2026-06-11-supply-chain-and-vendor-drift.i18n.yaml
# .agents/notes/proposed/process/2026-06-11-supply-chain-and-vendor-drift.zh.md
# .agents/notes/proposed/process/2026-06-20-discover-package-inventory.i18n.yaml
# .agents/notes/proposed/process/2026-06-20-discover-package-inventory.zh.md
# .agents/notes/proposed/simplification/2026-06-20-unify-agent-and-session-id.i18n.yaml
# .agents/notes/proposed/simplification/2026-06-20-unify-agent-and-session-id.zh.md
# .agents/notes/proposed/simplification/2026-07-04-prune-dead-core-spine-surface.i18n.yaml
# .agents/notes/proposed/simplification/2026-07-04-prune-dead-core-spine-surface.zh.md
# .agents/notes/proposed/simplification/2026-07-12-simplify-session-log-representation.i18n.yaml
# .agents/notes/proposed/simplification/2026-07-12-simplify-session-log-representation.zh.md
# .agents/notes/proposed/testing/2026-06-11-deterministic-and-stress-testing.i18n.yaml
# .agents/notes/proposed/testing/2026-06-11-deterministic-and-stress-testing.zh.md
# .agents/notes/proposed/testing/2026-06-11-mutation-testing.i18n.yaml
# .agents/notes/proposed/testing/2026-06-11-mutation-testing.zh.md
# .agents/notes/rejected/architecture/2026-06-11-immutable-public-surfaces.i18n.yaml
# .agents/notes/rejected/architecture/2026-06-11-immutable-public-surfaces.zh.md
# .agents/notes/rejected/architecture/2026-06-20-providerless-example-base.i18n.yaml
# .agents/notes/rejected/architecture/2026-06-20-providerless-example-base.zh.md
# .agents/notes/rejected/simplification/2026-06-20-assembled-assistant-messages-only.i18n.yaml
# .agents/notes/rejected/simplification/2026-06-20-assembled-assistant-messages-only.zh.md
# .agents/notes/rejected/simplification/2026-06-20-drop-acp-session-load.i18n.yaml
# .agents/notes/rejected/simplification/2026-06-20-drop-acp-session-load.zh.md
# .agents/notes/rejected/simplification/2026-06-20-drop-acp-terminal-meta.i18n.yaml
# .agents/notes/rejected/simplification/2026-06-20-drop-acp-terminal-meta.zh.md
# .agents/notes/rejected/simplification/2026-06-20-drop-bash-output-spill-files.i18n.yaml
# .agents/notes/rejected/simplification/2026-06-20-drop-bash-output-spill-files.zh.md
# .agents/notes/rejected/simplification/2026-06-20-drop-durable-step-boundaries.i18n.yaml
# .agents/notes/rejected/simplification/2026-06-20-drop-durable-step-boundaries.zh.md
# .agents/notes/rejected/simplification/2026-06-20-drop-unused-session-lineage.i18n.yaml
# .agents/notes/rejected/simplification/2026-06-20-drop-unused-session-lineage.zh.md
# .agents/notes/rejected/simplification/2026-06-20-fold-session-persistence-interface.i18n.yaml
# .agents/notes/rejected/simplification/2026-06-20-fold-session-persistence-interface.zh.md
# .agents/notes/rejected/simplification/2026-06-20-generic-tool-rendering.i18n.yaml
# .agents/notes/rejected/simplification/2026-06-20-generic-tool-rendering.zh.md
# .agents/notes/rejected/simplification/2026-06-20-retire-mid-turn-steering.i18n.yaml
# .agents/notes/rejected/simplification/2026-06-20-retire-mid-turn-steering.zh.md
# .agents/notes/rejected/simplification/2026-06-20-single-session-acp-bridge.i18n.yaml
# .agents/notes/rejected/simplification/2026-06-20-single-session-acp-bridge.zh.md
# .agents/notes/rejected/simplification/2026-06-20-truncate-interrupted-turns.i18n.yaml
# .agents/notes/rejected/simplification/2026-06-20-truncate-interrupted-turns.zh.md
# .agents/notes/rejected/simplification/2026-07-04-prune-unimplemented-subagent-vocabulary.i18n.yaml
# .agents/notes/rejected/simplification/2026-07-04-prune-unimplemented-subagent-vocabulary.zh.md
# .agents/notes/rejected/simplification/2026-07-12-collapse-workflow-to-foreground-core.i18n.yaml
# .agents/notes/rejected/simplification/2026-07-12-collapse-workflow-to-foreground-core.zh.md
# .agents/notes/rejected/simplification/2026-07-12-prune-unused-skill-registry-surface.i18n.yaml
# .agents/notes/rejected/simplification/2026-07-12-prune-unused-skill-registry-surface.zh.md
# docs/rfc/implemented/architecture/2026-06-18-agent-lifecycle-and-ownership-seams.md
# docs/rfc/implemented/architecture/2026-06-18-session-surface.md
# docs/rfc/implemented/architecture/2026-06-20-branded-ids.md
# docs/rfc/implemented/architecture/2026-07-02-fs-per-session-cwd.md
# docs/rfc/implemented/feature/2026-06-18-compaction-capability-seam.md
# docs/rfc/implemented/feature/2026-07-07-session-prefix.md
# docs/rfc/implemented/process/2026-06-20-rfc-classification.md
# docs/rfc/implemented/process/2026-07-04-generate-rfc-index-tables.md
# docs/rfc/implemented/process/2026-07-05-uniform-rfc-format.md
# docs/rfc/implemented/process/2026-07-06-parallel-github-ci-gates.md
# docs/rfc/implemented/process/2026-07-06-parallel-pre-push-gates.md
# docs/rfc/implemented/process/2026-07-12-package-model-experience-contract.md
# docs/rfc/implemented/simplification/2026-06-20-remove-agent-boundary-mirror-events.md
# docs/rfc/implemented/simplification/2026-07-04-prune-producerless-vocabulary-variants.md
# docs/rfc/implemented/testing/2026-06-20-remove-redundant-snapshot-log-goldens.md
# docs/rfc/implemented/testing/2026-07-08-shared-acp-snapshot-package.md
# docs/rfc/proposed/architecture/2026-06-20-generic-long-running-tool-runtime.md
# docs/rfc/proposed/simplification/2026-06-20-unify-agent-and-session-id.md
# docs/rfc/proposed/simplification/2026-07-12-simplify-session-log-representation.md
# docs/rfc/rejected/simplification/2026-07-04-prune-unimplemented-subagent-vocabulary.md
# scripts/translation-pairing.manifest.json
2026-07-22 23:07:14 +08:00
Tianyi Cui
e3981109b3
Merge pull request #467 from deepseek-harness/feature/persistent-pty-sessions
...
feat: add persistent PTY sessions
2026-07-22 23:02:42 +08:00
Tianyi Cui
c701fad75d
docs(i18n): sync session durability translation
2026-07-22 23:02:10 +08:00
Tianyi Cui
995362c7e1
Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master
2026-07-22 23:01:30 +08:00
Tianyi Cui
b65afd320a
Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master
...
# Conflicts:
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
2026-07-22 23:00:05 +08:00
Tianyi Cui
f24664e1d4
Merge latest docs/i18n-batch-core into docs/i18n-batch-cds-postmortem
2026-07-22 22:59:43 +08:00
Tianyi Cui
1085dc7794
Merge latest master into docs/i18n-batch-core
2026-07-22 22:58:34 +08:00
Tianyi Cui
c9566d18bf
Merge remote-tracking branch 'origin/master' into worktree/pr467-retarget-latest-master
2026-07-22 22:58:33 +08:00
Tianyi Cui
01622abde7
docs(i18n): refresh core data translations after merge
2026-07-22 22:58:05 +08:00
Tianyi Cui
72e1640959
Merge pull request #433 from deepseek-harness/rfc/pty
...
docs(agent-note): propose persistent PTY sessions
2026-07-22 22:57:42 +08:00
Tianyi Cui
cf5dfe46e7
Merge remote-tracking branch 'origin/rfc/pty' into worktree/pr467-retarget-latest-master
2026-07-22 22:50:55 +08:00
Tianyi Cui
17988a88e0
Merge remote-tracking branch 'origin/master' into worktree/pr433-retarget-latest-master
2026-07-22 22:50:02 +08:00
Tianyi Cui
2edfe65987
test(tui): await catalog failure rendering
2026-07-22 22:45:46 +08:00
Tianyi Cui
d99094b1ac
Merge updated rfc/pty into feature/persistent-pty-sessions
...
# Conflicts:
# docs/architecture.i18n.yaml
# docs/core-data-structures/core.md
# pnpm-lock.yaml
# scripts/gen-cordis-catalog.ts
2026-07-22 22:43:20 +08:00
Wenlu Wang
210ccc4af8
Merge pull request #338 from deepseek-harness/jsonl-packed-chunk-rows
...
feat(session): opt-in packed chunk rows in the JSONL log
2026-07-22 22:41:08 +08:00
Tianyi Cui
58ba7cf15b
Merge latest master into rfc/pty
2026-07-22 22:38:40 +08:00
Tianyi Cui
e962642926
Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master
...
# Conflicts:
# docs/architecture.i18n.yaml
# docs/config-catalog.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# packages/examples/acp-demo/README.md
# packages/examples/acp-demo/src/index.ts
# packages/examples/acp-demo/tests/built-bin.e2e.ts
# packages/examples/tui-demo/package.json
# packages/examples/tui-demo/src/index.ts
# packages/examples/tui-demo/tests/tui-agent.spec.ts
2026-07-22 22:38:17 +08:00
Tianyi Cui
b0f5d9e313
Merge commit 'refs/codex-unblock/20260722-pr338-master' into HEAD
...
# Conflicts:
# docs/event-producer-consumer.md
# examples/acp-agent/tests/acp.snapshot.ts
# packages/core/session/src/index.ts
# packages/examples/acp-demo/src/index.ts
# packages/session-persistence/session-persistence-jsonl/src/format.ts
# vitest.config.ts
2026-07-22 22:37:16 +08:00