imccyu
fe668a6dfe
feat(telemetry): greenfield dsh-sdk telemetry modules
...
Add @deepseek-ai/dsh-telemetry, a launcher-side (non-plugin) library for the
ConsentResolver (parses cordis.yml consent + DO_NOT_TRACK/CI), buildTelemetryPayload
(redacted cordis.yml + package.json full content, never .env), getOrCreateAnonymousId
(random UUID in a per-machine global config file), and TelemetryReporter
(fire-and-forget, never blocks or crashes the command).
Endpoint is a fixed .invalid placeholder pending the real endpoint. Launcher
dispatch wiring and the helper feature-catalog entry are intentionally out of
scope. Registers the package in tsconfig references, the module graph, and the
README model-experience audit map. Per-file 100% coverage.
2026-07-18 16:11:25 +08:00
imccyu
825a63ab01
feat(sdk): add dsh-plugin-fetch source + fetcher seam
...
Greenfield #2 "建插件" modules for the forthcoming `dsh-sdk create <source>`
command, in a new foundation-independent package so it touches none of the
dsh-scripts / dsh-helper / create-sdk hotspots the foundation refactor edits.
- `resolvePluginSource(spec)` parses `owner/repo[/subdir]#ref` (github) or
`pkg@version` (npm) into a `PluginSource` discriminated union, failing loud on
an ambiguous or malformed spec.
- `PluginFetcher<S>` seam + `fetchPlugin` tag dispatch returning a common
`FetchedPlugin` (temp dir + immutable provenance).
- `GigetFetcher` (github) over @bluwy/giget-core: resolve `#ref` to a commit SHA
first, download that SHA; provenance pins the SHA. Chosen over unjs/giget for
its single runtime dep and absent install/action surface.
- `PacoteFetcher` (npm) over pacote: resolve the manifest, then extract the
tarball verified against its registry integrity. Registry-only is enforced by
the source resolver; extract runs no lifecycle scripts.
- Branded `CommitSha`/`Integrity`; network + temp-dir boundaries are injected so
the logic is unit-tested at 100% per-file coverage without network.
Wiring (package.json pin, cordis.yml via ProjectEditSession with a confirmed
diff, install --ignore-scripts) and the launcher command registration land
later with the foundation.
2026-07-18 16:08:12 +08:00
imccyu
dcd886798f
feat(sdk): headless PromptPort + create/config headless plan
...
Add HeadlessPromptPort (fail-loud non-interactive PromptPort), thread
prefilled feature values through FeatureConfigurator, and let CreateWizard
and ConfigWorkflow accept a headless feature plan that skips the interactive
tree/suggests prompts. Per-file 100% coverage on all changed files.
2026-07-18 16:05:14 +08:00
imccyu
7d28b611b2
test(windows): align platform coverage ignores
2026-07-18 15:55:37 +08:00
Tianyi Cui
2b4641799e
docs: expand session persistence event catalog
2026-07-18 15:11:51 +08:00
Tianyi Cui
50f0291b93
Merge latest origin/master into parallel-tool-call
...
# Conflicts:
# docs/architecture.md
# examples/acp-agent/tests/snapshots/bash-spill/session.jsonl
# examples/acp-agent/tests/snapshots/escalation-approved/session.jsonl
# examples/acp-agent/tests/snapshots/escalation-rejected/session.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/session.jsonl
# packages/core/agent-loop/src/loop.ts
2026-07-18 15:09:39 +08:00
Tianyi Cui
21ec178841
docs: tighten parallel tool-call prose
2026-07-18 14:59:26 +08:00
Tianyi Cui
7d9f0431fc
Merge remote-tracking branch 'origin/master' into codex/simp-drop-unused-schema-default
2026-07-18 14:52:54 +08:00
Tianyi Cui
45600e74e4
Merge branch 'codex/simp-prune-llm-contract' into codex/simp-hide-llm-adapter-helpers
2026-07-18 14:52:54 +08:00
Tianyi Cui
90cbe2573b
Merge remote-tracking branch 'origin/master' into codex/simp-prune-llm-contract
2026-07-18 14:52:54 +08:00
Tianyi Cui
4863746432
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-name-front-door-defaults
2026-07-18 14:52:48 +08:00
Tianyi Cui
f7bdc17ee3
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-18 14:52:43 +08:00
Tianyi Cui
2db38ecf05
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-hide-concrete-agent-loop
...
# Conflicts:
# docs/event-producer-consumer.md
# packages/core/agent-loop/README.md
# packages/core/agent-loop/tests/contract-regressions.spec.ts
2026-07-18 14:52:34 +08:00
Tianyi Cui
7d34e33b9e
Merge branch 'codex/simp-unify-agent-session-id' into codex/simp-ui-identity-residue
...
# Conflicts:
# docs/event-producer-consumer.md
2026-07-18 14:51:21 +08:00
Tianyi Cui
d2426fed5d
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
...
# Conflicts:
# docs/cordis-catalog/events.md
# docs/event-producer-consumer.md
# packages/core/agent-loop/src/agent.ts
# packages/core/agent-loop/tests/contract-regressions.spec.ts
# packages/core/agent-loop/tests/loop.spec.ts
# website/zh-CN/api/harness/events.md
2026-07-18 14:50:55 +08:00
Tianyi Cui
68544463df
Merge branch 'codex/simp-compaction-surface' into codex/simp-agent-entry-state
2026-07-18 14:48:27 +08:00
Tianyi Cui
30a3a6db58
Merge branch 'codex/simp-trim-hook-snapshot-noise' into codex/simp-compaction-surface
2026-07-18 14:48:20 +08:00
Tianyi Cui
a9734b9868
Merge branch 'codex/simp-snapshot-fixture-inventory' into codex/simp-shared-acp-test-launcher
2026-07-18 14:48:20 +08:00
Tianyi Cui
cde31a18a7
Merge remote-tracking branch 'origin/master' into codex/simp-snapshot-fixture-inventory
2026-07-18 14:48:14 +08:00
Tianyi Cui
f4eb811139
Merge remote-tracking branch 'origin/master' into codex/simp-drop-unused-schema-default
2026-07-18 14:29:41 +08:00
Tianyi Cui
665f54e404
Merge branch 'codex/simp-prune-llm-contract' into codex/simp-hide-llm-adapter-helpers
2026-07-18 14:29:34 +08:00
Tianyi Cui
4694582170
Merge remote-tracking branch 'origin/master' into codex/simp-prune-llm-contract
2026-07-18 14:28:54 +08:00
Tianyi Cui
5aba647d48
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-name-front-door-defaults
2026-07-18 14:28:22 +08:00
Tianyi Cui
c52e6f13af
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-18 14:27:59 +08:00
Tianyi Cui
a42c77f883
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-hide-concrete-agent-loop
2026-07-18 14:27:53 +08:00
Tianyi Cui
1febeb8428
test(jsonrpc): configure built scope probe
2026-07-18 14:26:48 +08:00
Tianyi Cui
0f85ae0a9d
fix(subagent): identify lifecycle runs explicitly
2026-07-18 14:26:14 +08:00
Tianyi Cui
5af8b38b36
Merge branch 'codex/simp-unify-agent-session-id' into codex/simp-ui-identity-residue
...
# Conflicts:
# docs/testing.md
2026-07-18 14:05:54 +08:00
Tianyi Cui
a8150815ba
Merge branch 'codex/simp-agent-entry-state' into codex/simp-unify-agent-session-id
...
# Conflicts:
# packages/subagent/subagent-acp/package.json
# packages/subagent/subagent-acp/tests/mock-acp-server.ts
# pnpm-lock.yaml
# website/zh-CN/api/harness/agents.md
2026-07-18 14:01:03 +08:00
Tianyi Cui
1c54b2904e
Merge branch 'codex/simp-compaction-surface' into codex/simp-agent-entry-state
2026-07-18 13:54:35 +08:00
Tianyi Cui
b5b456cad4
Merge branch 'codex/simp-trim-hook-snapshot-noise' into codex/simp-compaction-surface
2026-07-18 13:53:50 +08:00
Tianyi Cui
e846a115f2
test(acp-snapshot): cover pre-spawn launch failure
2026-07-18 13:51:44 +08:00
Tianyi Cui
9e1975b080
Merge branch 'codex/simp-snapshot-fixture-inventory' into codex/simp-shared-acp-test-launcher
...
# Conflicts:
# examples/acp-agent/tests/acp.e2e.ts
# examples/acp-agent/tests/escalation.e2e.ts
# examples/acp-agent/tests/hooks.e2e.ts
# packages/support/acp-snapshot/src/harness.ts
2026-07-18 13:47:53 +08:00
Tianyi Cui
93a4bebbb5
Merge remote-tracking branch 'origin/master' into codex/simp-snapshot-fixture-inventory
2026-07-18 13:43:12 +08:00
Tianyi Cui
aacedf2700
Merge current master into debug-pangwenjie
...
# Conflicts:
# docs/cordis-catalog/events.md
# docs/core-data-structures/core.md
# docs/core-data-structures/tools.md
# docs/event-producer-consumer.md
# docs/rfc/implemented/feature/2026-06-30-interception-seams.md
# docs/tool-execution-pipeline.md
# packages/core/agent-loop/src/agent.ts
# packages/core/agent-loop/src/loop.ts
# packages/core/agent-loop/tests/loop.spec.ts
# packages/core/agent/README.md
# packages/core/tools/src/index.ts
# scripts/gen-doc-graphs.ts
2026-07-18 13:39:12 +08:00
imccyu
f62cc439e9
docs(windows): clarify portability rules
2026-07-18 13:03:44 +08:00
Tianyi Cui
d4b4a1537d
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-name-front-door-defaults
2026-07-18 12:55:24 +08:00
Tianyi Cui
d968826acb
Merge branch 'codex/simp-hide-concrete-agent-loop' into codex/simp-hide-subagent-internals
2026-07-18 12:55:16 +08:00
Tianyi Cui
b0e9355b7e
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-hide-concrete-agent-loop
2026-07-18 12:55:07 +08:00
Tianyi Cui
e321c845dc
Merge branch 'codex/simp-unify-agent-session-id' into codex/simp-ui-identity-residue
2026-07-18 12:54:57 +08:00
Tianyi Cui
9a25e44fbb
test(agent-spine-demo): wait for exact agent identity
2026-07-18 12:54:45 +08:00
Tianyi Cui
42863d7c24
Merge branch 'codex/simp-prune-llm-contract' into codex/simp-hide-llm-adapter-helpers
...
# Conflicts:
# docs/config-catalog.md
# packages/llm/llm-deepseek/src/index.ts
# packages/llm/llm-deepseek/tests/adapter.spec.ts
# packages/llm/llm-pi-ai/README.md
# packages/llm/llm-pi-ai/src/index.ts
# packages/llm/llm-pi-ai/tests/adapter.spec.ts
# packages/llm/llm-pi-ai/tests/convert.spec.ts
2026-07-18 12:47:53 +08:00
Tianyi Cui
03e39f7f1c
Merge branch 'codex/simp-ui-identity-residue' into codex/simp-name-front-door-defaults
...
# Conflicts:
# docs/config-catalog.md
# packages/examples/acp-demo/src/index.ts
# packages/examples/stdio-demo/src/index.ts
2026-07-18 12:42:33 +08:00
imccyu
588f4d948d
test(windows): mark platform-only coverage branches
2026-07-18 12:40:13 +08:00
imccyu
1d6acc3315
test(loader-smoke): use native home paths
2026-07-18 12:40:13 +08:00
imccyu
7e620db8ba
test(windows): use host path semantics
2026-07-18 12:40:13 +08:00
imccyu
228f6e3867
test(windows): skip POSIX-only assertions
2026-07-18 12:40:13 +08:00
imccyu
b5fa2cb2b8
test(windows): skip unsupported SDK test surfaces
2026-07-18 12:40:13 +08:00
imccyu
beb13c3808
test(acp): pin Windows-native snapshot paths
2026-07-18 12:40:12 +08:00
imccyu
86c09f6ca9
test(jsonl): mark native Windows ENOTDIR coverage
2026-07-18 12:40:12 +08:00