Commit graph

13274 commits

Author SHA1 Message Date
Tianyi Cui
47a46e4cca feat(profiles): add the ACP application bundle
Introduce @deepseek-ai/dsh-acp-app as the thin application layer for the built-in acp profile. It contributes only the ACP protocol bridge and profile metadata; dsh-base remains the single owner of shared agent composition, providers, persistence, permissions, and tools.

Wire the bundle into CLI resolution, catalogs, workspace configuration, and built-bin coverage. The focused bundle and startup tests prove that base plus acp-app exposes automation sessions while keeping stdout reserved for ACP JSON-RPC.
2026-08-23 10:59:00 +08:00
Tianyi Cui
a16822944b feat(profiles): add the SDK application bundle
Introduce @deepseek-ai/dsh-sdk-app as the thin application layer for the built-in sdk profile. The bundle contributes the JSON-RPC server and startup-only profile metadata, while dsh-base continues to own the shared agent, provider, persistence, and tool composition.

Publish ctx.appReady from the launcher only after the Loader tree and launcher-owned setup succeed. The stdio lifetime binding leaves stdin unread until the protocol transport claims it and defers EOF exit 0 until readiness commits, so early protocol frames remain buffered and a racing startup failure remains the nonzero process outcome. Fiber disposal cancels both pending lifecycle listeners.

Register the bundle in the CLI resolver closure, generated configuration catalog, workspace graph, and built-bin smoke. Startup tests prove that base plus sdk-app exposes the SDK server without taking ownership of shared runtime plugins; focused and built-bin regressions cover early input, EOF readiness, and startup-error precedence.
2026-08-23 10:59:00 +08:00
Tianyi Cui
2c9da6eb5b feat(cli): make profile patch reload policy explicit
Add a patchReload field to built-in profile metadata and carry it through CLI profile resolution into app boot. Live profiles install the existing patch watcher; startup profiles freeze every layer after boot and apply later edits only on the next launch. Missing or invalid metadata fails before the plugin tree starts.

The implementation keeps reload policy with the profile that owns it instead of inferring behavior from an entrypoint. Unit tests cover metadata validation and both lifecycle modes, while the CLI and app-boot references document which built-ins are live versus startup.
2026-08-23 10:59:00 +08:00
Tianyi Cui
3fa19b3b30 docs: define dsh as the sole Node application launcher
Record the final architecture before any runtime or file-layout changes. The decision makes named dsh profiles the only supported Node application launch path, gives TypeScript SDK callers ordered profile patches for per-launch customization, and retains the packaged Python runtime as an explicitly temporary exception with a later migration obligation.

Keeping this decision in a documentation-only commit gives every following commit one stable naming, lifecycle, and compatibility reference. The English and Chinese notes and their pairing record enter together.
2026-08-23 10:58:59 +08:00
Tianyi Cui
ca53c90a74 Merge pull request #2875 from deepseek-harness/ci/python-release-gray
ci(python): drop PR labeled trigger for python-release dry-run
2026-08-23 10:34:15 +08:00
Tianyi Cui
e73c78fc20 Merge pull request #2946 from deepseek-harness/worktree/webhook-real-e2e
test(webhook): exercise real CLI and model flow
2026-08-23 09:34:53 +08:00
Tianyi Cui
c5311d665d test(webhook): preserve real e2e environment 2026-08-23 01:56:42 +08:00
Tianyi Cui
65509a225b test(webhook): resolve the real CLI rule from examples 2026-08-23 01:48:55 +08:00
Tianyi Cui
3bf5edb5d5 test(webhook): exercise the real CLI and model flow 2026-08-23 01:48:55 +08:00
Tianyi Cui
76a450529d docs(app-boot): clarify patch path anchoring 2026-08-23 01:48:36 +08:00
Tianyi Cui
2b2a8e8240 test(webhook-github): verify chunked overflow response 2026-08-23 01:48:36 +08:00
Tianyi Cui
2f56345439 fix(webhook-github): export provider event types 2026-08-23 01:48:36 +08:00
Tianyi Cui
bf23f59979 fix(webhook): quiet expected disposal cancellation 2026-08-23 01:48:35 +08:00
Tianyi Cui
ea3d0ffcee fix(webhook): preserve the initial model selection 2026-08-23 01:48:35 +08:00
Tianyi Cui
d06f544d8c fix(ci): give Wine Host compiler sufficient heap 2026-08-23 01:48:35 +08:00
Tianyi Cui
9cd383059f fix(build): raise host compiler heap ceiling 2026-08-23 01:48:35 +08:00
Tianyi Cui
01258a6bca fix(webhook): retain checked invariant installer 2026-08-23 01:48:35 +08:00
Tianyi Cui
a1455edeb8 fix(webhook): align patch-relative fixtures and invariants 2026-08-23 01:48:35 +08:00
Tianyi Cui
5f60e50d71 feat(webhook): create workspace sessions from GitHub events 2026-08-23 01:48:35 +08:00
Tianyi Cui
c6c9426efb Merge pull request #2917 from deepseek-harness/worktree/deepseek-session-log-upload
feat(deepseek): upload incremental session logs
2026-08-23 01:23:59 +08:00
Tianyi Cui
9c7e142f79 refactor(session): send canonical events directly 2026-08-23 00:22:41 +08:00
Tianyi Cui
3c0da7bef7 refactor(session): name delivery acceptance event 2026-08-22 23:18:13 +08:00
Tianyi Cui
e0a8050aea docs(deepseek): merge todo event graph updates 2026-08-22 22:55:02 +08:00
Tianyi Cui
8ac8245d39 docs(deepseek): specify session log wire format 2026-08-22 22:55:02 +08:00
Tianyi Cui
1c7af99c80 feat(deepseek): apply session upload review feedback 2026-08-22 22:55:02 +08:00
Tianyi Cui
fe72ab42d1 feat(deepseek): upload incremental session logs 2026-08-22 22:55:02 +08:00
Tianyi Cui
df6e581f58 Merge pull request #2934 from deepseek-harness/worktree/todo-event-ownership-v2-20260822
refactor(todo): move todo event vocabulary to its producer
2026-08-22 22:37:23 +08:00
Tianyi Cui
851eab756e docs(todo): add the owning subsystem reference 2026-08-22 22:22:43 +08:00
Tianyi Cui
b7dca9eb7e fix(todo): validate announced session histories 2026-08-22 22:22:27 +08:00
Tianyi Cui
c41c5f3959 Merge origin/master into todo-event-ownership-v2 2026-08-22 21:12:36 +08:00
Tianyi Cui
59e49458e5 docs(todo): record event ownership 2026-08-22 21:10:02 +08:00
Tianyi Cui
a2b415096d refactor(todo): own todo event vocabulary 2026-08-22 21:10:02 +08:00
Tianyi Cui
d16ab1ac9a Merge pull request #2914 from deepseek-harness/worktree/trim-cot-leakage-20260821
docs: trim CoT leakage from post-purge prose
2026-08-22 20:54:12 +08:00
Tianyi Cui
f964f4078c docs: remove rebase residue and hedge parser-swap regression
- drop the commit-message suffix left at the end of the ui-workspace zh README
- state parser-swap regressions as possible, not guaranteed
2026-08-22 20:35:11 +08:00
Tianyi Cui
750c7f7535 docs: address CoT review findings
- stop attributing the 45-case helper/Node divergence to the path port spec,
  which pins only the Node-facing port to Node
- keep the divergence measurement as provenance, without a dead owner
- fix the path corpus comment so it does not claim divergence from the spec
  that asserts equality
- drop the v2 generation stamp from the cordis mount fallback test
- restate the watcher refusal rationale in current-state terms
- re-record the ui-workspace bilingual pair after rebase
2026-08-22 20:35:11 +08:00
Tianyi Cui
17f85bdbcd docs: trim CoT leakage from post-purge prose
Remove dead design-session citations, change narration, indexical
stamps, and review-adjacent justification found by the
dsh-trim-cot-leakage recall batteries in prose that landed after the
last purge. Bilingual README pairs are re-recorded.
2026-08-22 20:35:11 +08:00
Tianyi Cui
efdafb8610 Merge pull request #2926 from deepseek-harness/worktree/optimize-windows-ci-20260822
perf(ci): shorten native Windows coverage critical path
2026-08-22 20:21:00 +08:00
Tianyi Cui
f39af7bae9 feat(acp): complete standard v1 automation controls (#2928)
* feat(acp): complete standard v1 automation controls

* docs: refresh ACP module graph

* docs: synchronize module graph pair

* docs(acp): explain empty-session durability

* test(acp): align assembled automation coverage

* fix(acp): address lifecycle review findings
2026-08-22 20:19:21 +08:00
Tianyi Cui
35f26699be fix(test): publish lint probes atomically 2026-08-22 20:10:55 +08:00
Tianyi Cui
811788e57a fix(ci): harden optimized Windows gate fixtures 2026-08-22 20:10:55 +08:00
Tianyi Cui
c92c86492d ci: require native Windows aggregate verdict 2026-08-22 20:10:55 +08:00
Tianyi Cui
c8cecd6079 perf(ci): raise isolated Windows coverage fan-out 2026-08-22 20:10:55 +08:00
Tianyi Cui
d39b6c638b perf(test): widen transform corpus sharding 2026-08-22 20:10:55 +08:00
Tianyi Cui
d27a5f2967 perf(test): shard the transform corpus checker 2026-08-22 20:10:55 +08:00
Tianyi Cui
12ad38b234 perf(ci): phase native Windows coverage work 2026-08-22 20:10:55 +08:00
Tianyi Cui
4edf6400ff perf(ci): isolate the transform corpus from coverage 2026-08-22 20:10:54 +08:00
Tianyi Cui
cd6197b428 Merge origin/master into worktree/acp-v1-control 2026-08-22 20:05:11 +08:00
Tianyi Cui
ea6f61f144 feat(deepseek): upload plugin package metadata (#2916)
* feat(deepseek): upload plugin package metadata

* feat(deepseek): apply metadata review feedback

* docs(deepseek): specify request wire extensions

* docs(notes): record inventory cache benchmark

* docs(site): keep DeepSeek wire spec repository-only
2026-08-22 20:03:23 +08:00
Tianyi Cui
52bd3e1805 fix(acp): address lifecycle review findings 2026-08-22 19:44:00 +08:00
Tianyi Cui
e37985f5d5 test(acp): align assembled automation coverage 2026-08-22 19:32:27 +08:00