Tianyi Cui
4e7a687c0b
Merge origin/master into codex/invariant-service-seam
...
# Conflicts:
# docs/architecture.md
# docs/capability-seams.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/support/invariants/package.json
# packages/support/invariants/src/scoped-events.generated.ts
# packages/support/invariants/tests/invariants.spec.ts
# packages/support/invariants/tsconfig.json
# pnpm-lock.yaml
2026-07-21 00:44:39 +08:00
Tianyi Cui
e92b34bd7e
fix(invariants): enforce runtime relationships
2026-07-20 23:16:08 +08:00
Tianyi Cui
023cde5d82
Merge latest master into invariant service seam
2026-07-20 22:49:27 +08:00
Tianyi Cui
076e46ebc0
Merge branch 'rfc/loop' into codex/goal-domain
...
# Conflicts:
# docs/event-producer-consumer.md
# docs/module-graph.md
2026-07-20 22:46:26 +08:00
Tianyi Cui
40f7195266
Merge latest master into codex/llm-error-recovery-rfc
2026-07-20 21:59:47 +08:00
Tianyi Cui
1ac0917a17
Merge latest master into invariant service stack
2026-07-20 21:53:28 +08:00
Tianyi Cui
11afddf61d
Merge branch 'rfc/loop' into codex/goal-domain
...
# Conflicts:
# docs/event-producer-consumer.md
# knip.json
2026-07-20 21:37:04 +08:00
Tianyi Cui
c25e89cb4c
fix(invariants): reconcile TUI package rename
2026-07-20 21:23:57 +08:00
Tianyi Cui
85c658b028
fix: drop retry dependency from pruner
2026-07-20 21:11:38 +08:00
Tianyi Cui
7345a68845
Merge latest invariant service seam
...
# Conflicts:
# docs/module-graph.md
# package.json
# packages/examples/tui-demo/package.json
# packages/examples/tui-demo/src/invariant.ts
# packages/ui/stdio/package.json
# packages/ui/stdio/tests/stdio.spec.ts
# packages/ui/stdio/tsconfig.json
# pnpm-lock.yaml
2026-07-20 21:02:52 +08:00
Tianyi Cui
29729f83cf
Test the TUI through ConPTY on Windows
2026-07-20 20:59:22 +08:00
Tianyi Cui
8c12f8945e
Merge latest master into codex/llm-error-recovery-rfc
...
# Conflicts:
# docs/architecture.md
# docs/config-catalog.md
# docs/cordis-catalog/events.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# docs/persistence-catalog.md
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/core/agent-loop/src/loop.ts
# packages/core/agent/src/types.ts
# packages/examples/agent-spine-demo/README.md
# packages/examples/stdio-demo/README.md
# packages/examples/stdio-demo/src/index.ts
# packages/llm/llm-deepseek/README.md
# packages/llm/llm-deepseek/src/adapter.ts
# packages/llm/llm-deepseek/tests/adapter.spec.ts
# packages/llm/llm/README.md
# packages/llm/llm/src/error.ts
# packages/llm/llm/tests/service.spec.ts
# packages/sandbox/sandbox-policy/tsconfig.json
# packages/ui/stdio/README.md
# packages/ui/stdio/src/index.ts
# packages/ui/stdio/tests/stdio.spec.ts
# packages/ui/tui/src/index.ts
# pnpm-lock.yaml
# website/zh-CN/api/harness/events.md
# website/zh-CN/api/harness/llm.md
2026-07-20 20:59:11 +08:00
Tianyi Cui
6a9e52acbc
Merge latest master into invariant service seam
...
# Conflicts:
# .agents/notes/implemented/feature/2026-06-18-compaction-capability-seam.md
# docs/capability-seams.md
# docs/event-producer-consumer.md
# packages/examples/agent-spine-demo/README.md
# packages/examples/stdio-demo/tests/built-bin.e2e.ts
# scripts/gen-doc-graphs.ts
2026-07-20 20:58:46 +08:00
Tianyi Cui
6cf681df4b
Merge branch 'rfc/loop' into codex/goal-domain
...
# Conflicts:
# docs/architecture.md
# docs/capability-seams.md
# docs/config-catalog.md
# docs/event-producer-consumer.md
# docs/glossary.md
# docs/module-graph.md
# examples/package.json
# pnpm-lock.yaml
# website/.vitepress/config/api-sidebar.json
# website/zh-CN/api/harness/events.md
2026-07-20 20:06:23 +08:00
Tianyi Cui
9c4cc05da6
Merge branch 'codex/invariant-service-seam' into codex/invariant-package-registration-gate
2026-07-20 19:48:51 +08:00
Tianyi Cui
2f3ca3027b
Merge remote-tracking branch 'origin/master' into codex/invariant-service-seam
2026-07-20 19:42:41 +08:00
Tianyi Cui
4cadf096ce
Remove the stdio agent
2026-07-20 19:26:04 +08:00
Tianyi Cui
b668d67dc9
Merge remote-tracking branch 'origin/master' into codex/pr270-retarget-20260720
...
# Conflicts:
# website/.vitepress/config/api-sidebar.json
2026-07-20 17:38:27 +08:00
Tianyi Cui
6b44d01bc8
Merge master into compact-tool-result-prune
2026-07-20 16:41:59 +08:00
Yichen Jiang
dc4b7de817
Merge remote-tracking branch 'origin/master' into worktree/docs-website
...
# Conflicts:
# website/.vitepress/config/api-sidebar.json
# website/zh-CN/api/harness/bash-env.md
# website/zh-CN/api/harness/bash.md
# website/zh-CN/api/harness/events.md
# website/zh-CN/api/harness/fs.md
# website/zh-CN/api/harness/permission.md
# website/zh-CN/api/harness/sandbox.md
2026-07-20 16:41:21 +08:00
kingwl
2e7cdddb89
Merge remote-tracking branch 'origin/master' into cross-family-fs-sandbox
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-14-cross-family-fs-sandbox.i18n.yaml
# .agents/notes/implemented/feature/2026-07-14-cross-family-fs-sandbox.md
# .agents/notes/implemented/feature/2026-07-14-cross-family-fs-sandbox.zh.md
# docs/capability-seams.md
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# docs/persistence-catalog.md
# docs/rfc/INDEX.md
# examples/acp-agent/README.md
# examples/acp-agent/fs.cordis.snapshot.yml
# examples/acp-agent/fs.cordis.yml
# 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
# examples/acp-agent/tests/snapshots/permission-switching/session.jsonl
# examples/acp-agent/tests/snapshots/workspace-context/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/workspace-context/tool-schemas.expected.json
# examples/acp-agent/tests/snapshots/workspace-edit/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/workspace-edit/tool-schemas.expected.json
# packages/bash/bash/src/index.ts
# packages/bash/tool-bash/package.json
# packages/bash/tool-bash/src/index.ts
# packages/bash/tool-bash/tests/tools.spec.ts
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/fs/README.md
# packages/fs/tool-fs/src/edit.ts
# packages/fs/tool-fs/src/write.ts
# packages/sandbox/README.md
# pnpm-lock.yaml
2026-07-20 11:44:37 +08:00
Yichen Jiang
5833d70447
Merge remote-tracking branch 'origin/master' into worktree/docs-website
...
# Conflicts:
# .agents/notes/implemented/process/2026-07-13-documentation-site-projection.md
# docs/AGENTS.md
# docs/rfc/INDEX.md
# docs/user/develop/basic/index.zh.md
# docs/user/develop/basic/tool.zh.md
# docs/user/develop/framework/index.zh.md
# docs/user/develop/framework/service.zh.md
# docs/user/develop/practice/index.zh.md
# docs/user/guide/index.zh.md
# docs/user/guide/quickstart.zh.md
# knip.json
# package.json
# pnpm-lock.yaml
# scripts/doc-typecheck.ts
# scripts/gen-website-api.ts
# scripts/translation-pairing.manifest.json
# scripts/verify-type-equiv.ts
# website/zh-CN/api/cordis/context.md
# website/zh-CN/api/cordis/events.md
# website/zh-CN/api/cordis/fiber.md
# website/zh-CN/api/cordis/registry.md
# website/zh-CN/api/cordis/service.md
# website/zh-CN/api/harness/agent-loop.md
# website/zh-CN/api/harness/agents.md
# website/zh-CN/api/harness/approval.md
# website/zh-CN/api/harness/bash-env.md
# website/zh-CN/api/harness/bash.md
# website/zh-CN/api/harness/code-runtime.md
# website/zh-CN/api/harness/compact.md
# website/zh-CN/api/harness/events.md
# website/zh-CN/api/harness/fs.md
# website/zh-CN/api/harness/llm.md
# website/zh-CN/api/harness/permission.md
# website/zh-CN/api/harness/sandbox.md
# website/zh-CN/api/harness/session-persistence.md
# website/zh-CN/api/harness/session-query.md
# website/zh-CN/api/harness/sessions.md
# website/zh-CN/api/harness/skills.md
# website/zh-CN/api/harness/spill-store.md
# website/zh-CN/api/harness/subagents.md
# website/zh-CN/api/harness/system-prompt.md
# website/zh-CN/api/harness/tasks.md
# website/zh-CN/api/harness/token-meter.md
# website/zh-CN/api/harness/tools.md
# website/zh-CN/api/harness/user-interaction.md
# website/zh-CN/api/harness/web.md
# website/zh-CN/api/harness/workflows.md
# website/zh-CN/api/index.md
# website/zh-CN/design/effects-coeffects.md
# website/zh-CN/design/index.md
# website/zh-CN/guide/config.md
2026-07-20 10:21:36 +08:00
Tianyi Cui
3b0b0cefeb
feat: implement bounded LLM request recovery
2026-07-20 03:34:19 +08:00
Tianyi Cui
6520f71f94
Merge remote-tracking branch 'origin/codex/invariant-service-seam' into codex/invariant-package-registration-gate
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-19-package-owned-invariant-service.i18n.yaml
# docs/core-data-structures/session.md
# docs/module-graph.md
# package.json
# packages/sdk/scripts/tsconfig.json
2026-07-20 00:35:06 +08:00
Tianyi Cui
b46dfe08a2
Merge remote-tracking branch 'origin/master' into codex/invariant-service-seam
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-19-package-owned-invariant-service.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-19-package-owned-invariant-service.md
# .agents/notes/implemented/architecture/2026-07-19-package-owned-invariant-service.zh.md
# .agents/notes/implemented/feature/2026-06-18-compaction-capability-seam.md
# .agents/notes/implemented/feature/2026-07-07-session-prefix.md
# .agents/notes/implemented/process/2026-07-14-typescript-program-backed-semantic-gates.i18n.yaml
# docs/architecture.md
# docs/config-catalog.md
# docs/core-data-structures/session.md
# docs/rfc/INDEX.md
# packages/examples/agent-spine-demo/README.md
# packages/examples/agent-spine-demo/src/index.ts
# packages/examples/agent-spine-demo/tests/agent-core.spec.ts
# packages/support/invariants/README.md
# packages/support/invariants/src/index.ts
# packages/support/invariants/tests/invariants.spec.ts
2026-07-20 00:25:31 +08:00
Tianyi Cui
8bb4e4a42e
Merge remote-tracking branch 'origin/rfc/loop' into codex/goal-domain
2026-07-19 22:49:25 +08:00
Tianyi Cui
235f39a898
Merge remote-tracking branch 'origin/master' into worktree/dsbench-patch
2026-07-19 22:20:34 +08:00
Tianyi Cui
433670a754
feat(invariants): require package-owned companions
2026-07-19 22:13:50 +08:00
Tianyi Cui
2bc4791f84
Merge remote-tracking branch 'origin/master' into codex/pr370-review-20260719
2026-07-19 21:21:53 +08:00
Tianyi Cui
9d310ecc27
feat(invariants): add package-owned service seam
2026-07-19 19:19:57 +08:00
Tianyi Cui
a525776015
feat(goal): add persisted same-session goal domain
2026-07-19 18:47:34 +08:00
Tianyi Cui
6e790b95f2
fix(compact): complete master retarget integration
...
Declare the tool-result pruning plugin in the examples workspace so the repl Cordis configuration resolves through plain Node and the Loader metadata gate.
Express the validated single-node surface rewrite without a non-null assertion or an unreachable defensive branch, preserving both the runtime contract and per-file 100% coverage.
2026-07-19 18:11:48 +08:00
Tianyi Cui
9c5b86051b
Merge master into tool-result pruning
...
Retarget the pruning feature onto the merged compaction foundation.
Adapt content-only tool-result rewrite validation to the session-owned surface manager, migrate the demo wiring to repl-agent, and refresh generated type, catalog, and website contracts while preserving pressure and overflow pruning behavior.
2026-07-19 17:54:55 +08:00
Yichen Jiang
9c93fe5533
Merge branch 'master' into worktree/dsbench-patch
2026-07-19 15:24:07 +08:00
Yichen Jiang
3956118c18
fix(dsbench): adapt evaluation config to master runtime
2026-07-19 14:53:39 +08:00
Tianyi Cui
f4a30da10d
chore: align one-shot demo workspace metadata
2026-07-19 13:32:04 +08:00
Tianyi Cui
dbe9e307b0
Merge remote-tracking branch 'origin/master' into codex/cli-one-shot-demo
...
# Conflicts:
# AGENTS.md
# README.i18n.yaml
# README.md
# README.zh.md
# docs/architecture.md
# docs/cookbook/extension-cookbook.i18n.yaml
# docs/cookbook/extension-cookbook.md
# docs/cookbook/extension-cookbook.zh.md
# docs/event-producer-consumer.md
# docs/graph-atlas.md
# docs/module-graph.md
# docs/testing.md
# examples/README.md
# examples/coding-agent/README.md
# package.json
# packages/examples/README.md
# scripts/gen-doc-graphs.ts
2026-07-19 13:17:53 +08:00
Tianyi Cui
53c729e00b
Merge remote-tracking branch 'origin/master' into codex/cli-one-shot-demo
...
# Conflicts:
# AGENTS.md
# docs/architecture.md
# docs/capability-seams.md
# docs/cookbook/extension-cookbook.i18n.yaml
# docs/event-producer-consumer.md
# docs/module-graph.md
# knip.json
# packages/README.md
# packages/support/loader-smoke/README.md
# packages/support/loader-smoke/src/index.ts
# vitest.snapshot.config.ts
2026-07-19 13:11:50 +08:00
Tianyi Cui
1bdee08c21
Merge branch 'master' into feat/tui-package
2026-07-19 12:31:53 +08:00
Tianyi Cui
4dda5b953b
refactor(subagent): retire standalone mock package
2026-07-19 11:54:37 +08:00
Tianyi Cui
c06e6bea0b
Merge origin/master into feat/tui-package
...
Master unifies every live agent with its exact SessionId and moves declarative startup failures to agent-loop/config-start-failed. Keeping the branch’s AgentId label binding would let the TUI target the wrong lifecycle after reload and would miss asynchronous resume failures.
Resolve that contract migration by giving the selected terminal front door the same generated or resumed SessionId as agent-core, mounting the front door first, and entering fullscreen only after the matching root appears. Refresh the source-derived catalogs and keyless terminal goldens so Code Mode, workflow, Cordis-tool, and transient UI scenarios all exercise the merged identity model.
2026-07-19 11:37:14 +08:00
Tianyi Cui
8e366c3071
test(tui): snapshot semantic terminal state
2026-07-18 22:31:04 +08:00
Yichen Jiang
57f23bae6a
Merge remote-tracking branch 'origin/master' into worktree/docs-website
...
# Conflicts:
# docs/user/develop/basic/config.zh.md
# docs/user/develop/basic/index.zh.md
# docs/user/develop/basic/tool.zh.md
# docs/user/develop/framework/index.zh.md
# docs/user/develop/framework/service.zh.md
# docs/user/develop/practice/index.zh.md
# docs/user/guide/index.zh.md
# package.json
# pnpm-lock.yaml
# pnpm-workspace.yaml
# website/.vitepress/config/index.ts
# website/.vitepress/config/zh-CN.ts
# website/package.json
# website/zh-CN/api/cordis/context.md
# website/zh-CN/api/cordis/events.md
# website/zh-CN/api/cordis/fiber.md
# website/zh-CN/api/cordis/registry.md
# website/zh-CN/api/cordis/service.md
# website/zh-CN/api/harness/bash.md
# website/zh-CN/api/harness/fs.md
# website/zh-CN/api/harness/llm.md
# website/zh-CN/api/harness/tools.md
# website/zh-CN/api/index.md
# website/zh-CN/design/composability.md
# website/zh-CN/design/context-model.md
# website/zh-CN/design/reactive-coeffects.md
# website/zh-CN/design/revertible-effects.md
# website/zh-CN/develop/framework/events.md
# website/zh-CN/develop/practice/llm-adapter.md
# website/zh-CN/guide/config.md
2026-07-18 21:35:06 +08:00
Tianyi Cui
864b7bfd65
Merge remote-tracking branch 'origin/master' into feat/tui-package
...
# Conflicts:
# docs/architecture.md
# docs/config-catalog.md
# docs/cordis-catalog/events.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# examples/coding-agent/cordis.yml
# examples/echo-agent/cordis.yml
# knip.json
# packages/core/agent-loop/README.md
# packages/core/agent-loop/tests/config-session-id.spec.ts
# packages/examples/README.md
# packages/examples/stdio-demo/README.md
# packages/examples/stdio-demo/tests/stdio-agent.spec.ts
2026-07-18 21:20:47 +08:00
imccyu
560ce3b539
feat(dsh-sdk): launcher telemetry reporting around every command
...
Wrap runDshSdkCommand so each command times itself and, in a finally block,
resolves consent (option A) and sends one best-effort, fire-and-forget telemetry
event (redacted cordis.yml + package.json content; never reads .env). Never
affects the command's exit code. Adds dsh-scripts -> dsh-telemetry dependency.
Default-on via absent consent entry; opt-out by a disabled telemetry entry.
The config/create wizard opt-out toggle is deferred (see design doc).
2026-07-18 16:11:57 +08:00
imccyu
8052370155
chore(sdk): drop dsh-plugin-fetch (giget/pacote) — #2 will use native npm/pnpm deps
...
External-plugin creation will add a package-manager-native dependency
(github:owner/repo#ref or pkg@version) plus a cordis mount instead of fetching
tarballs into a temp dir, so the giget/pacote fetch package is no longer needed.
2026-07-18 16:11:56 +08:00
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
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