Yichen Jiang
15d452d7ea
fix(tasks): correct the change-feed contract and its documentation
...
Review found the `onTasksChanged` teardown reasoning inverted. The comment
claimed every registration is an effect on the registry's own fiber, so
listeners would be gone before service disposal empties the store — but the
traceable proxy rebinds `this.ctx` to the CALLER, which this package's own
HMR-safety test already proves. The only shipped consumer registers from the
api-proxy mux stream, so it was still listening and simply kept the rows it
last received. Service disposal now announces the emptied set, and teardown
announces its stopping transition immediately instead of leaving an observer
on `running` for however long a slow producer takes to release.
Two documentation claims were false in the opposite direction: the Agent Note
and the ui-task README both said an unowned task is invisible in the header,
while `list(caller)` returns unowned tasks to every caller, the carrier fans
their changes out to every subscribed session, and this PR's own test asserts
exactly that. The note even contradicted itself two sections earlier. Both
sides now state the real asymmetries — another session's tasks, and the
process-local registry emptying on restart.
The "no Web path calls the consuming `ctx.tasks.read()`" invariant claimed a
test that did not exist; the carrier suite's producer had no `readOutput` at
all, so a stray read would have failed nothing. Its producer now counts cursor
consumption and the lifecycle and baseline paths both assert zero.
Also: a session created after the mux opened now receives the task baseline it
missed, the popover samples its clock when it opens rather than at mount, and
a failed task's unbounded producer detail elides instead of widening the row.
2026-08-10 13:37:18 +08:00
Yichen Jiang
0a0a75730f
Merge remote-tracking branch 'origin/master' into worktree/web-background-tasks-display-258f7e
2026-08-10 13:22:51 +08:00
Turtle
a7fc81d745
docs: replace front door terminology
2026-08-10 13:07:46 +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
803f1fe876
Merge branch 'stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
2026-08-10 11:42:16 +08:00
Yichen Jiang
0d9b97bf7b
docs(core): regenerate the cordis catalog for the recompose binding contract
...
The re-link now runs through the mount-time binding, and the method's
JSDoc says so; the generated core surface and the runtime API catalog
follow it.
2026-08-10 11:42:06 +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
0b2f32740d
Revert "test(repository-plugin): drop the skill contribution from the preset-composed e2e"
...
This reverts commit f12c131ee9fdbc01b9294c8dc2c73cd36ab717cf.
The layered host skill registry closes the gap the bypass recorded: a
repository plugin's skill root registers into the global layer and reaches
every preset-composed session's catalog, so the fixture declares its skill
root again and the e2e proves the full skill, MCP, and TypeScript
contribution set. The accidental .claude/launch.json from that commit goes
with it.
2026-08-09 22:10:50 +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
imccyu
d99ad2b1d0
fix conversation node review follow-ups
2026-08-09 20:36:57 +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
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
9704749b01
docs: replace vague provenance prose with recorded facts
2026-08-09 15:35:02 +08:00
Yichen Jiang
d73e81c482
Merge remote-tracking branch 'origin/master' into worktree/web-background-tasks-display-258f7e
...
# Conflicts:
# docs/cordis-catalog/services.md
# docs/subsystems/lsp.i18n.yaml
# docs/subsystems/tasks.md
# docs/subsystems/tasks.zh.md
# packages/client/README.i18n.yaml
# packages/client/runtime/README.i18n.yaml
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/tsconfig.json
# packages/tasks/tasks/README.i18n.yaml
# tsconfig.base.json
2026-08-09 13:49:34 +08:00
Yichen Jiang
a33b5f01af
Merge remote-tracking branch 'origin/stack/agent-profiles-5-web-ui' into stack/agent-profiles-8-authoring
2026-08-09 13:45:44 +08:00
Yichen Jiang
02bbea0e7d
Merge remote-tracking branch 'origin/stack/agent-profiles-3-wire' into stack/agent-profiles-5-web-ui
2026-08-09 13:45:29 +08:00
Yichen Jiang
3d21db0b83
test(repository-plugin): drop the skill contribution from the preset-composed e2e
...
The agent plane of this stack's compositions lives behind agent presets,
whose per-preset skills realm has no seam for a deployment-level provider
yet: the fixture's dsh.skills made the prepared wrapper wait forever on a
host skills registry the web/headless profiles no longer compose. Remove
the skill root and its assertions from the fixture and record the gap in
the package's Known Limitations; MCP and entry contributions stay covered
because the tools registry is host-plane and layered.
2026-08-09 13:45:14 +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
Turtle
76b3353452
docs: call waterfall interception short-circuiting
2026-08-09 13:13:37 +08:00
xjt
acf75a8af3
Merge origin/master into xjt/incremental-proofreading-275-apply
2026-08-09 12:17:59 +08:00
Tianyi Cui
8d76ddaa6c
fix(repository-plugin): enforce published prepare dependency
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
e91ff6d499
test(repository-plugin): cover MCP activation cleanup
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
a7832cbfbf
fix(repository-cache): isolate Git package dependencies
2026-08-09 11:41:40 +08:00
Tianyi Cui
033fa4b0b1
feat(repository-plugin): load trusted package code
2026-08-09 11:41:40 +08:00