Turtle
e970408acd
chore: automate static review ownership
2026-09-08 11:37:58 +08:00
pku-xht
e9f1b6c53e
Merge remote-tracking branch 'origin/master' into codex/subprocess-native-containment
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-16-explicit-turn-cancellation.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-16-explicit-turn-cancellation.md
# .agents/notes/implemented/architecture/2026-07-16-explicit-turn-cancellation.zh.md
# .agents/notes/implemented/architecture/2026-09-05-canonical-feedback-log.i18n.yaml
# .agents/notes/implemented/architecture/2026-09-05-nonofficial-feedback-otel.i18n.yaml
# .agents/notes/implemented/architecture/2026-09-06-embedded-stream-record-readers.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-09-03-normalized-unread-fs-tool-diagnostic.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-09-06-windows-python-console-spawn-wait.i18n.yaml
# .agents/notes/implemented/feature/2026-08-26-generic-file-upload.i18n.yaml
# .agents/notes/implemented/feature/2026-09-07-model-switch-notice.i18n.yaml
# .agents/notes/implemented/process/2026-09-03-semantic-issue-templates-and-policy.i18n.yaml
# packages/shell/bash-local/tests/executor.spec.ts
# packages/subprocess/subprocess-local/README.i18n.yaml
# packages/subprocess/subprocess-local/README.md
# packages/subprocess/subprocess-local/README.zh.md
# packages/subprocess/subprocess-local/src/spawn.ts
# packages/subprocess/subprocess-local/tests/spawn.spec.ts
# packages/subprocess/win32-process/package.json
2026-09-07 17:43:45 +08:00
Tianyi Cui
2395f112d8
test(perf): gate opening large Sessions with synthetic CI benchmarks
...
Add a benchmark lane (`vitest.bench.config.ts`, `pnpm run test:bench`,
gate mode `ci-bench`) and a required `node 24 / benchmarks` CI job that
runs it alone. Benchmarks synthesize their input in-process from fixed
parameters and fail on documented budgets:
- `open-generation.bench.ts`: a 200-turn released-v0 log with 500 text
and 125 reasoning deltas per reply (127,400 events, ~2.8 MB) encoded
through the frozen v0 codec; the migrating first `open()` must finish
within 2,000 ms in a child process capped at 128 MB of old space, and a
fresh process must open the published current generation within 500 ms.
- `conversation-fold.bench.client.ts`: 200 replies whose compact streams
hold 2,000 text + 500 reasoning deltas each, folded through every Chat
Definition by the real assembler; the fold must finish within 150 ms
and stay within 3x the fold of the same window with 100 deltas per
reply.
On this commit both gates fail: the migration exhausts the 128 MB heap
(4.8 s and 696 MB peak RSS without the cap; the pre-stack decode of the
same bytes took 34 ms and 168 MB) and the fold scales 11x with the delta
count. The stacked fixes bring both paths to O(records).
2026-09-06 01:01:03 +08:00
pku-xht
d79f5c04e8
Merge master into codex/subprocess-native-containment
2026-09-03 21:46:02 +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
pku-xht
fb00331cfa
Merge master into subprocess native containment
2026-08-31 15:24:49 +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
Chinesezjc
161c6591be
ci: fail fast at the first blocking gate failure
2026-08-31 01:54:14 +08:00
pku-xht
976456db8e
Merge master to adopt Flash E2E coverage
2026-08-29 17:39:31 +08:00
imccyu
de256e8bc1
feat: enforce published dependency policy
2026-08-29 14:26:42 +08:00
Yichen Jiang
aa0ed35ebc
test(snapshot): isolate a replayed dsh from the machine's proxy environment
...
A replay must not depend on the runner's network policy, the same reason it
pins its home and sessions root. The harness now honors the proxy environment,
so a runner exporting one sent the web-fetch scenario's fixture request to a
proxy that could not resolve the fixture host and recorded that proxy's error
page. Clear the proxy names in both test-support spawners, from the one list
dsh-http-proxy owns.
2026-08-29 13:17:12 +08:00
Yichen Jiang
90505636cd
test(ci): carry the hook budget and raise the Lefthook suite to the lane value
...
The Windows coverage lane grants DSH_COVERAGE_TEST_TIMEOUT_MS=90000, but two
paths declined it.
scripts/install-lefthook.spec.ts took a describe-level 30_000, restated as a
per-case constant on five cases. Every case drives spawned Git and Node
subprocesses; the slowest costs 7.5 s on an idle host, so the ceiling carried
roughly fourfold headroom and fired on branches that did not touch the file.
The suite takes 90_000 and the redundant constant is removed.
coverageTestTimeoutArgs raised --testTimeout and --expect.poll.timeout but left
--hookTimeout at Vitest's separate 10 s default, which removeFixtureSafely's
documented 10-second Windows retry window meets exactly. Raising only the test
budget would move a contended suite's failure into its teardown.
2026-08-29 11:15:32 +08:00
pku-xht
b65575442d
Merge origin/master into codex/subprocess-native-containment
2026-08-28 18:34:22 +08:00
pku-xht
a95f0b368f
fix(subprocess): contain escaped descendants with native owners
2026-08-28 18:15:49 +08:00
Turtle
7e92ed8213
Merge origin/master into codex/remove-knip
2026-08-28 12:07:36 +08:00
pku-xht
aa4d80c0a9
Merge origin/master into codex/subprocess-native-containment
2026-08-26 20:05:15 +08:00
pku-xht
20f04373c8
Merge commit 'bd88d2ee9f08b3c3aba8c06df527a91d8b76b51d' into codex/subprocess-native-containment
...
# Conflicts:
# packages/e2b/subprocess-e2b/README.i18n.yaml
# packages/e2b/subprocess-e2b/README.md
# packages/e2b/subprocess-e2b/README.zh.md
# packages/subprocess/README.i18n.yaml
# packages/subprocess/README.md
# packages/subprocess/README.zh.md
# packages/subprocess/subprocess-local/README.i18n.yaml
# packages/subprocess/subprocess-local/README.md
# packages/subprocess/subprocess-local/README.zh.md
# packages/subprocess/subprocess/README.i18n.yaml
# packages/subprocess/subprocess/README.md
# packages/subprocess/subprocess/README.zh.md
# packages/subprocess/win32-process/README.i18n.yaml
# packages/subprocess/win32-process/README.md
# packages/subprocess/win32-process/README.zh.md
2026-08-26 15:25:12 +08:00
Yichen Jiang
4e1c87b1a2
fix(ci): bound Windows process contention
2026-08-26 14:24:24 +08:00
fengsy
eadd5df82b
fix(team): preserve current Client architecture after rebase
2026-08-26 10:56:57 +08:00
Dudu-0223
61dea35bd2
refactor: let Team own browser remotes
2026-08-26 10:56:57 +08:00
Dudu-0223
806642b064
feat(team): add experimental Agent Teams Web profile
2026-08-26 10:56:57 +08:00
Magolor
0b5eba0c8d
docs: rebuild the documentation skill and standards ( #2983 )
2026-08-25 23:47:20 +08:00
pku-xht
678cfdfdb4
Merge commit '0c177e17a23692d018a79bae59ac9a2db6eba59c' into codex/subprocess-native-containment
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-10-single-file-executable-sdk-runtime-distribution.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-10-single-file-executable-sdk-runtime-distribution.md
# .agents/notes/implemented/architecture/2026-07-10-single-file-executable-sdk-runtime-distribution.zh.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/input.json
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# packages/bundle/acp-app/package.json
# packages/examples/jsonrpc-demo/src/packaged-bin.ts
# packages/subagent/subagent-acp/src/run.ts
# packages/subagent/subagent-acp/tests/subagent-acp.spec.ts
# packages/subprocess/subprocess-local/README.i18n.yaml
# packages/subprocess/subprocess-local/README.md
# packages/subprocess/subprocess-local/README.zh.md
# pnpm-lock.yaml
# scripts/smoke-python-runtime.py
2026-08-25 23:22:25 +08:00
_Kerman
cef391487a
Merge remote-tracking branch 'origin/master' into xtr/projection-per-session-cache
2026-08-25 21:23:28 +08:00
pku-xht
08aed20139
test(ci): stabilize cross-platform consumer gates
2026-08-25 19:27:34 +08:00
_Kerman
3c8b5a26a4
Merge remote-tracking branch 'origin/master' into dshw/pr-deepseek-harness-deepseek-harness-2781
...
# Conflicts:
# 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/subsystems/session-projection.i18n.yaml
# docs/subsystems/session-projection.md
# docs/subsystems/session-projection.zh.md
# packages/api/session-controller/src/history.ts
# packages/api/session-controller/tests/session-cold.host.spec.ts
# packages/extensions/tool-cordis/src/api-catalog.ts
# packages/session/session-projection-cache/src/index.ts
# packages/session/session-projection-cache/tests/cache.spec.ts
# packages/session/session-projection/src/index.ts
# scripts/run-gates.ts
2026-08-25 10:52:45 +08:00
Tianyi Cui
97f9e2e402
fix(ci): serialize native Windows coverage after build
2026-08-24 22:36:02 +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
_Kerman
5fe36b513e
fix(ci): restore acp snapshot transcripts and windows coverage gate ordering
...
- The base-mounted projection cache's write-behind forces session-log
flushes at cache-chosen times, splitting packed chunk rows and collapsing
the persistence window the keyless acp transcripts pin. ACP exposes no
session-listing surface, so the automation profile disables the base row,
restoring the pre-base behavior the fixtures were recorded against.
- The windows coverage lane runs suites that read built lib/ output (the
webworker-packer image tests) and raced the build gate's tsdown writes
against a partial tree; every coverage gate now waits for the build gate.
2026-08-24 16:17:19 +08:00
Chinesezjc
cd6941d5d7
Revert "perf(ci): shorten native Windows coverage critical path"
2026-08-24 14:39:56 +08:00
imccyu
cad09dbcb7
test(ci): include inspect catalog in gate order
2026-08-23 23:37:49 +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
12ad38b234
perf(ci): phase native Windows coverage work
2026-08-22 20:10:55 +08:00
pku-xht
a17c5822b5
Merge master into native containment
...
# Conflicts:
# packages/subprocess/win32-process/package.json
# scripts/check-workspace-constraints.ts
2026-08-21 22:10:22 +08:00
_Kerman
36a10618df
Merge remote-tracking branch 'origin/master' into dshw/pr-deepseek-harness-deepseek-harness-2739
...
# Conflicts:
# scripts/run-gates.spec.ts
2026-08-21 12:01:02 +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
89674edc93
fix(build): support standalone pnpm entrypoints
2026-08-21 11:09:25 +08:00
pku-xht
7185a62d58
fix(subprocess): harden native runner lifecycle
2026-08-20 18:41:30 +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
_Kerman
f4af19d724
perf(infra): shorten doc-sync critical path
2026-08-19 13:45:34 +08:00
imccyu
45a73e3ed5
fix(ci): preserve Windows gate ordering
2026-08-18 22:03:20 +08:00
imccyu
5ba9e50bb0
fix(ci): stabilize native Windows coverage
2026-08-18 21:15:21 +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
Tianyi Cui
b2f23f88ad
Merge commit '70396085b141370ce32de1be4e225b4384eaf46d' into HEAD
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-07-mcp-client-plugin.i18n.yaml
# .agents/notes/implemented/feature/2026-07-20-code-mode-typed-tool-returns.i18n.yaml
# .agents/notes/implemented/feature/2026-07-22-web-multimodal-image-input-and-durable-attachments.i18n.yaml
# .agents/notes/implemented/feature/2026-07-22-web-multimodal-image-input-and-durable-attachments.md
# .agents/notes/implemented/feature/2026-07-22-web-multimodal-image-input-and-durable-attachments.zh.md
# .agents/notes/implemented/simplification/2026-07-23-acp-automation-only-protocol.i18n.yaml
# docs/config-catalog.i18n.yaml
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# docs/tool-catalog.i18n.yaml
# docs/tool-catalog.md
# docs/tool-catalog.zh.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/both-mode-turn/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/code-mode-turn/tool-schemas.expected.json
# packages/core/tools/README.i18n.yaml
# packages/core/tools/README.zh.md
# packages/core/tools/src/code-mode.ts
# packages/host/apiproxy/tests/api-proxy-models.spec.ts
# packages/host/plugin-inventory/tests/inventory.spec.ts
# packages/mcp/mcp-client/tests/mcp-client.e2e.ts
# packages/mcp/mcp-client/tests/mcp-client.spec.ts
# packages/self-modification/tool-cordis/src/api-catalog.ts
# packages/test-support/acp-snapshot/README.i18n.yaml
# pnpm-lock.yaml
2026-08-17 11:31:59 +08:00