Tianyi Cui
3aef64797d
Merge master into session format migration
...
# Conflicts:
# packages/test-support/session-snapshot/src/harness.ts
# scripts/smoke-python-runtime.py
2026-09-03 18:31:54 +08:00
Yichen Jiang
7169660d33
Merge pull request #3198 from deepseek-harness/worktree/deepseek-harness-proxy-config-2f5b4a
...
feat(net): route every outbound request through the configured proxy
2026-09-03 13:19:19 +08:00
imccyu
3225ec2d94
Merge remote-tracking branch 'origin/master' into release/dsh-0.1.2-rc.1-version-to-master
2026-09-03 10:40:28 +08:00
imccyu
a66e470204
release(dsh): 0.1.2-rc.1
2026-09-03 02:27:19 +08:00
imccyu
c732dedc69
fix(python): stop the packaged runtime from hijacking spawned node commands
...
@yao-pkg/pkg's SEA bootstrap rewrites child_process commands named node --
including the string after a -c flag, exactly the Bash tool's bash -c form --
to the executable itself and stamps PKG_EXECPATH into every child
environment, so a model-issued 'node --version' silently booted the dsh CLI
instead of the machine's Node. Pin the packager as an exact root
devDependency invoked through pnpm exec and patch out the single
patchChildProcess call from the SEA bootstrap bundle; packaged children now
resolve node through PATH like any other process. The third-party notices
drop the build-time tools section: the packager is now a declared, patched
devDependency, so the manifest and patch tiers disclose it.
2026-09-02 21:36:23 +08:00
Yichen Jiang
5eb499ed35
Merge remote-tracking branch 'origin/master' into worktree/deepseek-harness-proxy-config-2f5b4a
2026-09-02 21:14:16 +08:00
Tianyi Cui
2ca559dee3
Merge master into session format migration
2026-09-02 18:46:49 +08:00
imccyu
db6bdc3576
release(dsh): 0.1.2-alpha.5
2026-09-02 15:48:33 +08:00
Tianyi Cui
7145acfe07
Merge master into session format migration
...
# Conflicts:
# .agents/notes/archived/architecture/2026-06-18-shared-persistence-write-coordinator.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-14-session-persistence.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-14-session-persistence.md
# .agents/notes/implemented/architecture/2026-06-14-session-persistence.zh.md
# .agents/notes/implemented/architecture/2026-07-24-project-session-directories.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-24-project-session-directories.md
# .agents/notes/implemented/architecture/2026-07-24-project-session-directories.zh.md
# .agents/notes/implemented/architecture/2026-08-05-session-preparation.i18n.yaml
# .agents/notes/implemented/architecture/2026-08-05-session-preparation.md
# .agents/notes/implemented/architecture/2026-08-05-session-preparation.zh.md
# .agents/notes/implemented/architecture/2026-08-10-message-feedback-sidecar.i18n.yaml
# .agents/notes/implemented/architecture/2026-08-10-message-feedback-sidecar.md
# .agents/notes/implemented/architecture/2026-08-10-message-feedback-sidecar.zh.md
# .agents/notes/implemented/architecture/2026-08-27-handle-based-session-persistence.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-28-load-pre-identity-session-messages.md
# .agents/notes/implemented/bug-fix/2026-07-28-load-pre-identity-session-messages.zh.md
# .agents/notes/implemented/bug-fix/2026-08-04-load-pre-react-loop-sessions.md
# .agents/notes/implemented/bug-fix/2026-08-04-load-pre-react-loop-sessions.zh.md
# .agents/notes/implemented/bug-fix/2026-09-01-host-goal-pause-aborts-turn.i18n.yaml
# .agents/notes/implemented/feature/2026-08-10-web-session-log-export.i18n.yaml
# .agents/notes/implemented/feature/2026-08-10-web-session-log-export.md
# .agents/notes/implemented/feature/2026-08-10-web-session-log-export.zh.md
# apps/cli/tests/profiles/headless/tests/session-format-guard.expected.e2e.ts
# apps/web/tests/cold-blank-session.e2e.ts
# apps/web/tests/message-actions.e2e.ts
# apps/web/tests/scaffold.ts
# apps/web/tests/workspace-management.e2e.ts
# docs/config-catalog.i18n.yaml
# docs/config-catalog.md
# docs/config-catalog.zh.md
# docs/event-producer-consumer.i18n.yaml
# docs/event-producer-consumer.md
# docs/event-producer-consumer.zh.md
# docs/persistence-catalog.i18n.yaml
# docs/persistence-catalog.md
# docs/subsystems/feedback.i18n.yaml
# docs/subsystems/feedback.md
# docs/subsystems/feedback.zh.md
# docs/subsystems/persistence.i18n.yaml
# docs/subsystems/persistence.md
# docs/subsystems/persistence.zh.md
# packages/acp/acp/src/index.ts
# packages/acp/acp/tests/bridge.spec.ts
# packages/api/session-controller/src/list.ts
# packages/api/session-controller/tests/agent.host.spec.ts
# packages/api/session-controller/tests/session-cold.host.spec.ts
# packages/api/session-controller/tests/session-projections.host.spec.ts
# packages/api/session-controller/tests/session-search.host.spec.ts
# packages/api/session-controller/tests/test-remote.ts
# packages/api/session-controller/tests/transport.host.spec.ts
# packages/core/agent-loop/src/index.ts
# packages/core/agent-loop/tests/config-session-id.spec.ts
# packages/core/agent-loop/tests/resume.spec.ts
# packages/extensions/tool-cordis/src/api-catalog.ts
# packages/feedback/message-feedback/src/index.ts
# packages/feedback/message-feedback/tests/helpers.ts
# packages/feedback/message-feedback/tests/message-feedback.spec.ts
# packages/session-query/session-log-export/src/archive.ts
# packages/session-query/session-log-export/tests/archive.host.spec.ts
# packages/session-query/session-log-export/tests/route.host.spec.ts
# packages/session-query/session-query-sqlite/README.i18n.yaml
# packages/session-query/session-query-sqlite/README.md
# packages/session-query/session-query-sqlite/README.zh.md
# packages/session-query/session-query-sqlite/src/index.ts
# packages/session-query/session-query-sqlite/tests/sqlite.spec.ts
# packages/session-query/session-query/README.i18n.yaml
# packages/session-query/session-query/README.md
# packages/session-query/session-query/README.zh.md
# packages/session-query/session-query/src/corpus.ts
# packages/session-query/session-query/tests/observation.spec.ts
# packages/session-query/session-query/tests/session-query.spec.ts
# packages/session-query/session-query/tests/tracing.spec.ts
# packages/session/session-checkpoint-policy/tests/session-checkpoint-policy.spec.ts
# packages/session/session-persistence-jsonl/README.i18n.yaml
# packages/session/session-persistence-jsonl/README.md
# packages/session/session-persistence-jsonl/README.zh.md
# packages/session/session-persistence-jsonl/src/index.ts
# packages/session/session-persistence-jsonl/tests/jsonl.spec.ts
# packages/session/session-persistence-jsonl/tests/zstd.spec.ts
# packages/session/session-persistence/README.i18n.yaml
# packages/session/session-persistence/README.md
# packages/session/session-persistence/README.zh.md
# packages/session/session-persistence/src/coordinator.ts
# packages/session/session-persistence/src/index.ts
# packages/session/session-persistence/tests/contract.ts
# packages/session/session-persistence/tests/coordinator-contract.ts
# packages/session/session-persistence/tests/persistence.spec.ts
# packages/session/session-telemetry/package.json
# packages/shell/tool-bash/tests/tools.spec.ts
# packages/subagent/subagent/src/continuation.ts
# packages/subagent/subagent/tests/list-children.spec.ts
# packages/workspace/workspace/src/index.ts
# packages/workspace/workspace/tests/workspace.spec.ts
# scripts/gen-cordis-catalog.ts
2026-09-02 13:34:40 +08:00
Yichen Jiang
e7170b05a1
Merge remote-tracking branch 'origin/master' into worktree/deepseek-harness-proxy-config-2f5b4a
2026-09-02 10:28:17 +08:00
imccyu
a9e185f205
release(dsh): 0.1.2-alpha.4
2026-09-01 23:19:57 +08:00
Tianyi Cui
d1521ea783
feat(session)!: add released format migration
2026-09-01 22:12:21 +08:00
Yichen Jiang
b9153cbc19
Merge remote-tracking branch 'origin/master' into worktree/deepseek-harness-proxy-config-2f5b4a
...
# Conflicts:
# packages/session/session-telemetry-otel/package.json
2026-09-01 11:15:18 +08:00
imccyu
14bab4422b
release(dsh): 0.1.2-alpha.3
2026-08-31 23:39:37 +08:00
Yichen Jiang
44a9687bbe
Merge remote-tracking branch 'origin/master' into worktree/deepseek-harness-proxy-config-2f5b4a
...
# Conflicts:
# apps/cli/package.json
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# packages/e2b/e2b/package.json
# packages/llm/llm-deepseek/package.json
# packages/llm/llm-pi-ai/package.json
# packages/test-support/session-snapshot/package.json
# packages/workflow/workflow-worker-thread/package.json
# pnpm-lock.yaml
2026-08-31 12:58:59 +08:00
imccyu
3f1b46a5db
release(dsh): 0.1.2-alpha.2
2026-08-30 21:19:29 +08:00
imccyu
b46d36d3bf
test(release): verify dual-version npm layout
2026-08-29 14:26:42 +08:00
imccyu
de256e8bc1
feat: enforce published dependency policy
2026-08-29 14:26:42 +08:00
Yichen Jiang
545e2ad914
feat(net): route every outbound request through the configured proxy
...
Node's built-in fetch ignores HTTP_PROXY, so every harness request connected
directly regardless of what the user exported. Resolve one policy from the
launch environment and install it as undici's global dispatcher, then wire the
four surfaces a global dispatcher cannot reach: web_fetch's pinned transport,
the OTLP exporter's node:http agent, the E2B SDK's own proxy option, and the
environment a child process or worker thread is given.
Each outbound call site carries an egress test that drives its real code path
through a fake proxy; that measurement is what found the OTLP and E2B gaps.
2026-08-29 13:17:11 +08:00
Turtle
7e92ed8213
Merge origin/master into codex/remove-knip
2026-08-28 12:07:36 +08:00
imccyu
6c705be1ce
release(dsh): 0.1.2-alpha.1
2026-08-28 00:50:12 +08:00
Tianyi Cui
3ca9c7d489
rename code-mode to ptc (PTC mode), except session-persistent vocabulary
...
Rename the tool-presentation transport from code-mode to ptc everywhere
that is not written into session logs: the mode config value becomes 'ptc',
the preset directory/id becomes ptc, the demo becomes demo:ptc, the
dispatch waterfall becomes tools/ptc-dispatch-log (types PtcDispatch*), the
prompt rule becomes tools:ptc-only, source/test files become ptc.ts etc.,
and prose says PTC mode / PTC 模式. The session-persistent vocabulary
(durable events tool/code-dispatch*, logged plugin name tools-code-mode,
sub-call id segment :code:) intentionally stays and moves in the stacked
persistence PR, which is blocked until the SESSION_FORMAT_VERSION v0→v1
migration lands with it. run_code, its code parameter, CodeSdkLanguage,
CodeRunFailedError, the dsh-code-runtime family, third-party codex names,
and frozen archived notes keep their names.
2026-08-27 23:14:31 +08:00
imccyu
07cb5934af
Merge pull request #3227 from deepseek-harness/fix/inspector-client-bootstrap
...
fix(inspector): stabilize client bootstrap identity
2026-08-27 20:33:08 +08:00
Yichen Jiang
b2442d00f9
Merge pull request #3219 from deepseek-harness/perf/tsconfig-paths-flatten
...
perf(infra): map each workspace package to an explicit path alias
2026-08-27 20:16:56 +08:00
imccyu
ac13b16c0c
fix(inspector): stabilize client bootstrap identity
2026-08-27 19:35:34 +08:00
Yichen Jiang
12c161e1a7
perf(infra): map each workspace package to an explicit path alias
...
tsconfig.base.json resolved @deepseek-ai/dsh-* through 49 candidate
globs and @deepseek-ai/dsh-*/invariant through 45, one per package
group. Resolution tries candidates in order, so a package late in the
list paid for every earlier miss — and under the dsh source launch each
miss is an ERR_MODULE_NOT_FOUND that Node decorates with a full
CommonJS resolution walk. A boot profile attributed 934.6 ms, 35% of
startup, to that decoration path across 60,942 failed resolutions. The
cost landed hardest on packages/util/*, which sits at position 44 of 49
and holds the leaf utilities nearly every plugin imports.
gen-tsconfig-paths writes one explicit alias per package into a marked
region and both group wildcards are gone; verify-tsconfig-paths reports
drift and runs in the ci-static lane. Booting the headless profile from
source drops from ~2,157 ms to ~1,055 ms with --help output unchanged.
All 1,022 dsh specifiers in repository sources resolve to the same
target as before, except seven /invariant specifiers in the lsp,
terminal, and runtime-diagnostics groups that the deleted wildcard
never listed: those reached built lib/types instead of src, against the
rule that static gates resolve through paths to src on a clean tree.
2026-08-27 17:26:52 +08:00
imccyu
1c1c0adf6e
fix(inspector): classify the demo launcher and refresh the module graph
2026-08-27 16:23:21 +08:00
imccyu
15572ddb22
feat(inspector): add the development mount overlay and demo script
2026-08-27 16:16:28 +08:00
Yichen Jiang
3275365489
fix(docs): make site builds idempotent
2026-08-26 13:09:53 +08:00
Magolor
0b5eba0c8d
docs: rebuild the documentation skill and standards ( #2983 )
2026-08-25 23:47:20 +08:00
Dudu-0223
070a180a10
Merge remote-tracking branch 'origin/master' into fix/web-fetch-ssrf
...
# Conflicts:
# examples/acp-agent/tests/acp.snapshot.ts
# examples/acp-agent/tests/snapshots/web-fetch/input.json
# examples/acp-agent/tests/snapshots/web-fetch/stdout.expected.jsonl
# knip.json
# packages/test-support/session-snapshot/tests/fixtures/web-fetch-network.ts
# snapshots/sdk/subagent-mixed/session.1.jsonl
# snapshots/sdk/subagent-mixed/session.2.jsonl
# snapshots/session/advanced-toolchain-runtime/session.1.jsonl
# snapshots/session/advanced-toolchain-runtime/session.2.jsonl
# snapshots/session/subagent-depth-two-rejection/session.1.jsonl
# snapshots/session/subagent-depth-two-rejection/session.2.jsonl
# snapshots/session/subagent-multi/session.1.jsonl
# snapshots/session/subagent-multi/session.2.jsonl
# snapshots/session/subagent-parallel/session.1.jsonl
# snapshots/session/subagent-parallel/session.2.jsonl
# snapshots/session/web-fetch/session.jsonl
# snapshots/session/web-fetch/web-fetch-fixture-server.mjs
2026-08-25 09:14:36 +08:00
Tianyi Cui
4125514a08
refactor(repo): retire top-level examples
2026-08-24 22:02:44 +08:00
Tianyi Cui
caf386f59c
fix(test): use expected-output naming
2026-08-24 21:37:14 +08:00
Tianyi Cui
1cfe0f9942
refactor(test): reserve snapshots for session recordings
2026-08-24 21:37:14 +08:00
imccyu
a050b3d4f1
fix(client): gate the inspect catalog
2026-08-23 23:06:39 +08:00
Tianyi Cui
9ebda8755e
Merge remote-tracking branch 'origin/master' into worktree/localize-ui-strings-gate
...
# Conflicts:
# packages/client/ui-chat/src/client/chat/AssistantMarkdown.tsx
# packages/client/ui-chat/src/client/chat/CompactionItem.tsx
# packages/client/ui-conversation/src/client/locales.ts
# packages/client/ui-renderer/src/client/app.tsx
# packages/client/ui-renderer/src/client/index.ts
# packages/client/ui-renderer/tests/ui-renderer.client.spec.tsx
# packages/client/ui-tool/src/client/tool/models/tool-call-model.ts
# packages/client/ui-trajectory/src/client/trajectory-record.ts
# packages/client/ui-trajectory/src/client/trajectory-snapshot-builder.ts
# packages/client/ui-trajectory/tests/views.client.spec.tsx
# packages/client/ui-workspace/src/client/tree.ts
2026-08-23 18:34:42 +08:00
Tianyi Cui
3c10f5d2d3
fix(client): route UI copy through locale
2026-08-23 17:31:37 +08:00
Tianyi Cui
4bc6f4bdf7
Merge origin/master into worktree/gate-package-subsystem-pages
2026-08-23 15:47:32 +08:00
Tianyi Cui
3b33ca058f
chore(repo): enforce dsh as the only Node application launcher
...
Add verify-application-entrypoints to the top-level gate graph. It inventories executable sources and package bins across apps, packages, and examples; rejects unclassified launchers including root-level js/mjs/cjs/ts files; and permits only the dsh CLI plus the explicitly private Python runtime carrier exception.
Update repository, architecture, CLI, and naming records to state the same rule: Node consumers select a dsh profile instead of invoking application-package bins, and no compatibility aliases remain. Fixtures prove both allowed classifications and representative escape attempts, making the architectural rule mechanically enforceable.
2026-08-23 10:59:01 +08:00
Tianyi Cui
9cd383059f
fix(build): raise host compiler heap ceiling
2026-08-23 01:48:35 +08:00
Tianyi Cui
511181684c
feat(acp): complete standard v1 automation controls
2026-08-22 18:52:27 +08:00
imccyu
aa6c361a97
release(dsh): 0.1.1-rc.2
2026-08-21 19:48:58 +08:00
imccyu
3ec5e8f8c4
release(dsh): 0.1.1-rc.1
2026-08-21 14:11:09 +08:00
_Kerman
d0d5b00095
Merge remote-tracking branch 'origin/master' into dshw/pr-deepseek-harness-deepseek-harness-2739
...
# Conflicts:
# .agents/notes/implemented/process/2026-07-06-parallel-pre-push-gates.i18n.yaml
# .agents/notes/implemented/process/2026-07-13-documentation-site-projection.i18n.yaml
2026-08-21 11:35:58 +08:00
imccyu
f1f7dc36fa
release(dsh): 0.1.0-rc.8
2026-08-19 23:00:28 +08:00
imccyu
66a7081c15
feat(build): bind client artifacts to build profiles
2026-08-19 18:21:27 +08:00
_Kerman
e850c07691
perf(infra): parallelize hygiene checks
2026-08-19 14:12:16 +08:00
Turtle
907c6334c1
Remove Knip from repository tooling
2026-08-19 13:33:24 +08:00
imccyu
ef75b6ff2f
perf(ci): parallelize coverage and web snapshots in-job
2026-08-18 21:15:20 +08:00
imccyu
aa03eff500
build(client): enforce client package boundaries
2026-08-18 01:34:53 +08:00