_Kerman
80b7f929ea
feat(session-persistence): expose readRaw for per-session artifacts
...
The persistence contract gains a concrete readRaw default (undefined for
backends without a per-session artifact) and the JSONL backend overrides it
with the decode of its physical zstd frames, so a consumer can read the
stored artifact text verbatim — the session-log export depends on it.
2026-08-10 17:57:40 +08:00
Turtle
a27efdef36
docs: make technical prose concrete
2026-08-10 16:34:20 +08:00
Turtle
8dc91d2c00
fix(feedback): report shared anonymous user id
2026-08-10 16:23:05 +08:00
creatixchu
73527c47bd
Merge remote-tracking branch 'origin/master' into worktree/drop-create-by-name
2026-08-10 15:49:49 +08:00
creatixchu
a832fc2fa5
Merge remote-tracking branch 'origin/master' into worktree/drop-create-by-name
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-25-session-list-browsing-and-manual-order.i18n.yaml
# .agents/notes/implemented/feature/2026-07-25-workspace-ui-product-flow.i18n.yaml
# .agents/notes/implemented/feature/2026-07-25-workspace-ui-product-flow.zh.md
# .agents/notes/implemented/simplification/2026-07-31-one-route-to-add-a-workspace.i18n.yaml
# .agents/notes/implemented/simplification/2026-07-31-one-route-to-add-a-workspace.md
# .agents/notes/implemented/simplification/2026-07-31-one-route-to-add-a-workspace.zh.md
# apps/cli/reference/README.i18n.yaml
# docs/config-catalog.md
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/README.md
# packages/host/apiproxy/README.zh.md
# packages/host/apiproxy/src/api-proxy.ts
# packages/host/apiproxy/src/index.ts
# packages/host/apiproxy/tests/api-proxy-approval.spec.ts
# packages/host/apiproxy/tests/api-proxy-blank.spec.ts
# packages/host/apiproxy/tests/api-proxy-cold.spec.ts
# packages/host/apiproxy/tests/api-proxy-commands.spec.ts
# packages/host/apiproxy/tests/api-proxy-config.spec.ts
# packages/host/apiproxy/tests/api-proxy-models.spec.ts
# packages/host/apiproxy/tests/api-proxy-projections.spec.ts
# packages/host/apiproxy/tests/api-proxy-question.spec.ts
# packages/host/apiproxy/tests/api-proxy-rename.spec.ts
# packages/host/apiproxy/tests/api-proxy-search.spec.ts
# packages/host/apiproxy/tests/api-proxy-subagents.spec.ts
# packages/host/apiproxy/tests/api-proxy-view.spec.ts
# packages/host/apiproxy/tests/api-proxy-workspace.spec.ts
# packages/todo/tool-todo/tests/projection.spec.ts
# scripts/hero-composer-dom-continuity.mjs
2026-08-10 15:49:34 +08:00
creatixchu
2fea703d67
Merge remote-tracking branch 'origin/master' into codex/pr-555-ci-fix
...
# Conflicts:
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# packages/client/ui-conversation/src/client/input/hub.ts
# packages/client/ui-conversation/tests/input-bar.spec.tsx
# packages/client/ui-conversation/tests/service-orchestration.spec.ts
2026-08-10 15:19:32 +08:00
Huanqi Cao
c9285753de
Merge branch 'merge/1829-master' into merge/1990-1829
...
# Conflicts:
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
2026-08-10 12:35:32 +08:00
creatixchu
3764ce62a5
Merge remote-tracking branch 'origin/master' into codex/pr-555-ci-fix
...
# Conflicts:
# docs/config-catalog.i18n.yaml
# docs/config-catalog.md
# docs/config-catalog.zh.md
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# packages/client/connection/src/client/fixture.ts
# packages/host/apiproxy/src/api-proxy.ts
2026-08-10 12:33:36 +08:00
Yichen Jiang
c06f9041fc
Merge remote-tracking branch 'origin/master' into worktree/web-multimodal-image-input
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-05-reconstructable-requests.i18n.yaml
# docs/config-catalog.md
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/core.md
# docs/core-data-structures/core.zh.md
# docs/core-data-structures/llm-streaming.i18n.yaml
# docs/core-data-structures/llm-streaming.md
# docs/core-data-structures/llm-streaming.zh.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# docs/subsystems/attachment.i18n.yaml
# docs/subsystems/attachment.md
# docs/subsystems/attachment.zh.md
# docs/subsystems/core.i18n.yaml
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# packages/README.i18n.yaml
# packages/README.md
# packages/README.zh.md
# packages/client/runtime/package.json
# packages/client/ui-conversation/package.json
# packages/client/ui-conversation/src/client/chat/AssistantMarkdown.tsx
# packages/client/ui-conversation/src/client/chat/ChatView.tsx
# packages/client/ui-conversation/src/client/chat/MessageItem.tsx
# packages/client/ui-conversation/src/client/index.ts
# packages/client/ui-conversation/tests/input-bar.spec.tsx
# packages/compact/compact-basic/README.i18n.yaml
# packages/compact/compact-basic/README.md
# packages/compact/compact-basic/README.zh.md
# packages/host/apiproxy/src/api-proxy.ts
# packages/host/apiproxy/src/api/index.ts
# packages/host/apiproxy/src/api/sessions.ts
# packages/host/apiproxy/src/index.ts
# packages/host/apiproxy/tests/api-proxy-models.spec.ts
# packages/self-modification/tool-cordis/src/api-catalog.ts
# pnpm-lock.yaml
# scripts/type-equiv.manifest.json
2026-08-09 23:33:35 +08:00
Huanqi Cao
a29966b71f
Merge branch 'feat/windows-pwsh-default' into feat/windows-acl-sandbox
...
# Conflicts:
# .agents/notes/implemented/feature/2026-08-02-pwsh-tool-bash-parity.i18n.yaml
# .agents/notes/implemented/feature/2026-08-02-pwsh-tool-bash-parity.md
# .agents/notes/implemented/feature/2026-08-02-pwsh-tool-bash-parity.zh.md
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# packages/bash/tool-pwsh/README.i18n.yaml
# packages/bash/tool-pwsh/README.md
# packages/bash/tool-pwsh/README.zh.md
2026-08-09 23:19:14 +08:00
Yichen Jiang
7dcefeda50
Merge branch 'stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
...
# Conflicts:
# apps/cli/tests/web-agent-presets.e2e.ts
# packages/client/connection/README.i18n.yaml
# packages/client/connection/README.md
# packages/client/connection/README.zh.md
# packages/client/ui-conversation/src/client/contract/slots.ts
# packages/client/ui-primitives/tests/icons.spec.tsx
# packages/client/ui-settings/src/client/contract/slots.ts
# packages/host/apiproxy/tests/api-proxy-agent-preset.spec.ts
2026-08-09 23:02:37 +08:00
Yichen Jiang
877364f7a4
Merge branch 'stack/agent-profiles-3-wire' into stack/agent-profiles-5-web-ui
...
# Conflicts:
# packages/client/ui-conversation/tests/input-bar.spec.tsx
2026-08-09 22:57:23 +08:00
Yichen Jiang
4926b296c4
Merge branch 'stack/agent-profiles-1-seam' into stack/agent-profiles-3-wire
...
# Conflicts:
# docs/persistence-catalog.i18n.yaml
# docs/persistence-catalog.md
# docs/persistence-catalog.zh.md
2026-08-09 22:56:44 +08:00
Yichen Jiang
51ca900d4e
Merge remote-tracking branch 'origin/master' into stack/agent-profiles-1-seam
2026-08-09 22:54:57 +08:00
Yichen Jiang
0d7106d902
Merge branch 'stack/agent-profiles-3-wire' into stack/agent-profiles-5-web-ui
...
# Conflicts:
# apps/cli/tests/web-agent-presets.e2e.ts
# packages/host/apiproxy/tests/api-proxy-agent-preset.spec.ts
2026-08-09 22:48:47 +08:00
Yichen Jiang
4b628a8703
docs(skill): document the layered registry and record the Agent Note
...
The skills subsystem page and dsh-skill README describe the host+per-scope
layers, SkillViewOptions joins the type-equiv corpus and the cordis-catalog
type pages, generated catalogs pick up the shifted source refs, and the
architecture Agent Note records the decision, the nearest-layer-wins
precedence choice, and the rejected alternatives.
2026-08-09 22:29:53 +08:00
Yichen Jiang
7ea8bad7ee
Merge branch 'stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
...
# Conflicts:
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# docs/subsystems/tools.i18n.yaml
# docs/subsystems/tools.md
# docs/subsystems/tools.zh.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
2026-08-09 21:38:26 +08:00
Yichen Jiang
19b6a41564
Merge branch 'stack/agent-profiles-3-wire' into stack/agent-profiles-5-web-ui
...
# Conflicts:
# docs/module-graph.i18n.yaml
# docs/module-graph.md
# docs/module-graph.zh.md
# scripts/doc-budgets.manifest.json
2026-08-09 21:36:55 +08:00
Yichen Jiang
5aa10901ad
Merge branch 'stack/agent-profiles-1-seam' into stack/agent-profiles-3-wire
...
# Conflicts:
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
2026-08-09 21:35:37 +08:00
Yichen Jiang
0eff417b2a
Merge remote-tracking branch 'origin/master' into stack/agent-profiles-1-seam
2026-08-09 21:33:45 +08:00
Tianyi Cui
25dcd7293c
docs: purge chain-of-thought leakage from prose
...
Delete design-session citations (decision/audit/plan ordinals, stack
positions), change narration, review choreography, and reviewer-addressed
justification from comments, JSDoc, docs, READMEs, Agent Notes, tests, and
generator templates; restate every affected fact as current-state contract
prose. Fix generated docs at their sources and regenerate the catalogs and
cordis-surface regions; re-paste type-equiv blocks; update every bilingual
counterpart and re-record the pairs. Record the citation rule in the
committed-artifact-citations Agent Note.
2026-08-09 21:10:59 +08:00
Yichen Jiang
8612f39759
Merge remote-tracking branch 'origin/stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
...
# Conflicts:
# packages/client/connection/README.i18n.yaml
# packages/client/connection/README.md
# packages/client/connection/README.zh.md
2026-08-09 20:41:55 +08:00
Yichen Jiang
801d39d131
Merge remote-tracking branch 'origin/stack/agent-profiles-3-wire' into stack/agent-profiles-5-web-ui
...
# Conflicts:
# docs/architecture.i18n.yaml
# docs/architecture.zh.md
# docs/module-graph.md
# packages/host/apiproxy/src/api-proxy.ts
# scripts/verify-package-readme-model-experience.ts
2026-08-09 20:38:21 +08:00
Yichen Jiang
f80d2a742e
Merge remote-tracking branch 'origin/stack/agent-profiles-1-seam' into stack/agent-profiles-3-wire
...
# Conflicts:
# docs/module-graph.md
# packages/host/apiproxy/src/api-proxy.ts
# packages/host/apiproxy/tsconfig.json
2026-08-09 20:33:55 +08:00
Yichen Jiang
a2d5e3d8a8
Merge remote-tracking branch 'origin/master' into stack/agent-profiles-1-seam
...
# Conflicts:
# packages/README.i18n.yaml
# packages/README.zh.md
# packages/boot/app-boot/README.i18n.yaml
# packages/boot/app-boot/README.zh.md
# scripts/gen-cordis-catalog.ts
# scripts/verify-package-readme-model-experience.ts
2026-08-09 20:28:03 +08:00
imccyu
27682b9384
fix: docs
2026-08-09 19:00:22 +08:00
imccyu
522acc7432
test: update conversation assembly coverage and docs
2026-08-09 18:16:44 +08:00
Huanqi Cao
f5caadc808
Merge branch 'feat/windows-pwsh-default' into feat/windows-acl-sandbox
...
# Conflicts:
# packages/bash/pwsh-local/src/index.ts
# packages/sandbox/sandbox-local/src/index.ts
2026-08-09 17:50:55 +08:00
Tianyi Cui
ceba53edd7
fix(fs): observe absence before guarded recreation
2026-08-09 17:43:53 +08:00
Turtle
dda02250f5
docs: reserve seam for complete capabilities
2026-08-09 17:26:57 +08:00
Huanqi Cao
165ad7e969
Merge branch 'feat/windows-pwsh-default' into feat/windows-acl-sandbox
...
# Conflicts:
# .agents/notes/implemented/feature/2026-08-01-pwsh-tool-and-executor.i18n.yaml
# .agents/notes/implemented/feature/2026-08-01-pwsh-tool-and-executor.zh.md
# packages/bash/tool-pwsh/README.i18n.yaml
# packages/bash/tool-pwsh/README.zh.md
2026-08-09 16:59:52 +08:00
Turtle
93e858faf9
docs: address prose review findings
2026-08-09 16:31:15 +08:00
Turtle
9704749b01
docs: replace vague provenance prose with recorded facts
2026-08-09 15:35:02 +08:00
Tianyi Cui
9d5eb37638
fix(headless): dsh run is a direct core front door
2026-08-09 13:44:44 +08:00
Yichen Jiang
da23756dea
Merge remote-tracking branch 'origin/stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
...
# Conflicts:
# packages/client/connection/README.i18n.yaml
# packages/client/connection/README.zh.md
# packages/core/tools/README.i18n.yaml
# packages/core/tools/README.zh.md
2026-08-09 13:22:10 +08:00
Yichen Jiang
d500c9e627
Merge remote-tracking branch 'origin/stack/agent-profiles-3-wire' into stack/agent-profiles-5-web-ui
...
# Conflicts:
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/README.zh.md
2026-08-09 13:18:22 +08:00
Yichen Jiang
2ebe078ad9
Merge remote-tracking branch 'origin/stack/agent-profiles-1-seam' into stack/agent-profiles-3-wire
2026-08-09 13:16:14 +08:00
Yichen Jiang
1471f7c081
Merge remote-tracking branch 'origin/master' into stack/agent-profiles-1-seam
...
# Conflicts:
# packages/core/scope/README.i18n.yaml
# packages/core/scope/README.zh.md
2026-08-09 13:14:51 +08:00
Tianyi Cui
a208bc1a92
docs(config-catalog): refresh repository source
2026-08-09 11:41:40 +08:00
Tianyi Cui
cc7bd4948d
fix(repository-plugin): reject incomplete MCP publication
2026-08-09 11:41:40 +08:00
Tianyi Cui
29b3e3fa84
fix(repository-plugin): require published prepare dependency
2026-08-09 11:41:40 +08:00
Tianyi Cui
913ecf5f1d
fix(mcp-client): await Cordis startup discovery
2026-08-09 11:41:40 +08:00
Tianyi Cui
778b9585d4
docs: refresh repository Plugin config source
2026-08-09 11:41:40 +08:00
Huanqi Cao
5fea4b7c4b
feat(sandbox): derive the windows-acl write SID per workspace, not per session
...
The per-session random write SID forced a full tree propagation per
session per server lifetime (minutes on large workspaces). The write
SID is now the per-workspace identity derived from the canonical
workspace path (workspaceWriteSid: sha256 -> S-1-4-x-y), stored
nowhere: the workspace-root ACE materializes once per workspace per
machine and every later provision hits the exact-ACE skip.
- workspace ACEs are STANDING (never revoked - the reuse cache); temp
ACEs stay revocable (disposed with the provider), so an inheritable
ACE never outlives its session's temp dir on the ambient temp root
- AclSandbox requires the write SID under workspace-write; read-only
parses/grants nothing; the runner derives the SID itself (the
--write-sid flag's presence still marks the seam-managed contract)
- the acl-session record drops writeSid (sessionId/workspace/tempDir
remain): the SID-tamper surface and its validation are gone
- sandbox-local holds two grant maps: standing workspace grants and
revocable per-session temp grants
Docs (README pair, design note pair, catalogs, type-equiv) and the
acl-session/grant/acl/probe/runner suites updated; workspace-sid.spec
pins the derivation contract.
2026-08-09 10:44:35 +08:00
Yichen Jiang
ed2e24f7eb
Merge branch 'stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
...
# Conflicts:
# docs/cordis-catalog/services.md
# docs/module-graph.md
# packages/client/README.i18n.yaml
# packages/core/tools/README.i18n.yaml
2026-08-09 03:20:52 +08:00
Yichen Jiang
46f74c652f
Merge branch 'stack/agent-profiles-3-wire' into stack/agent-profiles-5-web-ui
...
# Conflicts:
# AGENTS.md
# docs/architecture.i18n.yaml
# docs/cordis-catalog/services.md
# docs/module-graph.md
2026-08-09 03:16:18 +08:00
Yichen Jiang
4952afe5c0
Merge branch 'stack/agent-profiles-1-seam' into stack/agent-profiles-3-wire
...
# Conflicts:
# docs/cordis-catalog/services.md
# docs/module-graph.md
# docs/subsystems/persistence.i18n.yaml
# packages/client/ui-question/tsconfig.json
# pnpm-lock.yaml
2026-08-09 03:05:10 +08:00
Yichen Jiang
101b074241
Merge remote-tracking branch 'origin/master' into stack/agent-profiles-1-seam
...
# Conflicts:
# docs/capability-seams.md
# docs/cordis-catalog/services.md
# docs/module-graph.md
# packages/README.i18n.yaml
# packages/README.md
# packages/README.zh.md
# packages/boot/app-boot/README.i18n.yaml
# pnpm-lock.yaml
# scripts/gen-cordis-catalog.ts
2026-08-09 02:55:11 +08:00
Huanqi Cao
5e080849aa
Merge remote-tracking branch 'origin/feat/windows-pwsh-default' into feat/windows-acl-sandbox
...
# Conflicts:
# apps/cli/reference/README.i18n.yaml
# docs/cordis-catalog/services.md
# docs/module-graph.md
# docs/subsystems/sandbox.i18n.yaml
# packages/sandbox/sandbox/README.i18n.yaml
# pnpm-lock.yaml
# scripts/verify-package-readme-model-experience.ts
2026-08-09 02:53:48 +08:00
Yichen Jiang
c56f23ae1f
fix(agent-presets,web): broken presets are roster rows, not gaps
...
A hand-damaged preset was silent until the worst moment. An unparsable
composition listed as an ordinary selectable row and failed only at the
next session start — set as default, every new session failed. A
directory whose composition file was deleted vanished from the roster
while still occupying its id: copy answered "delete the existing preset
first" while remove answered "not found", a dead end.
Discovery now owns health: every id-shaped directory is a roster slot,
broken when its composition is missing or unloadable, checked with the
loader's own entryListSchema dialect (!!js included) so health never
rejects what the loader accepts. `broken` rides AgentPreset, the
agentPreset.list entry, and the UI row; mount/recompose/standingKeyFor
refuse broken up front with the discovery-reported reason, while
resolve/read/remove still answer. The section renders marked red cards —
unselectable, uncopyable, deletable, location kept on custom rows — and
both pickers drop broken rows entirely.
The cordis preset's persona now forbids editing the shipped install
(corrupting cordis would disable the mode itself) and points authoring
at $DSH_HOME/.agent-presets; its skill teaches preset.yml metadata, the
copy-first workflow, the one-escalation sandbox reality, and honest
verification. Exercised live: asked to edit the shipped composition the
composed agent refuses citing both rules; asked for real presets (simple
and complex) it lands them under the user root with one approved
escalation each and self-checks with the loader dialect.
2026-08-09 02:17:56 +08:00