Tianyi Cui
39ff4866ac
Merge retargeted parent into policy inheritance simplification
2026-07-28 21:35:23 +08:00
Tianyi Cui
5d147735ac
Merge latest master into subagent policy inheritance
2026-07-28 21:33:40 +08:00
Tianyi Cui
a70f1a2b7a
test(acp): remove vacuous policy inheritance scenario
...
The ACP fixture configured read-only as the deployment default for both parent and child. Its delegated write therefore remained denied even with inheritance disabled, so the scenario could not fail on the regression it claimed to protect.
Delete the overlay, scenario registration, sessions, prompt, and 473-line tool-schema sidecar. The Loader-booted headless snapshot remains the real composition guard: only its parent carries read-only while the deployment default is workspace-write, so removing inheritance makes the child write reach disk and fails the test.
Keeping one discriminating snapshot avoids 662 lines of duplicated fixture data and makes the review evidence correspond to the actual security boundary.
2026-07-28 21:32:10 +08:00
Tianyi Cui
cfceb8452b
subagent: seed inherited policy events at creation
...
The parent implementation introduced sandboxMode and approvalPolicy as generic SessionHeader fields, then propagated those fields through both persistence backends, session-query indexes, collision checks, policy-specific seed-boundary folds, catalogs, and a broad test matrix. That storage plane is unnecessary: Session already accepts a validated constructor seed, and persistence captures that seed when the session is announced before committing its first batch.
Capture each parent override synchronously at delegation, append source-tagged sandbox/mode and approval/policy records after the optional fork prefix, and create the child with that combined seed. Keeping header.seedLength at the original fork-prefix length preserves lineage while ordinary last-event-wins folds make the inherited records outrank stale parent history and remain subordinate to later child switches. Unswitched parents still stamp nothing, so children continue to follow deployment defaults.
Remove the generic header fields and every persistence/query/schema branch built around them. Collapse the inheritance suite from ten leaking scenarios to four owned-context cases covering real filesystem confinement, stale fork precedence, delegation-time capture, and the no-override path. The assembled headless snapshot now asserts the persisted inheritance event directly.
This keeps the security behavior while restoring policy ownership to the existing event log and deleting the speculative durability machinery that the original tests did not exercise.
2026-07-28 21:31:17 +08:00
Tianyi Cui
afa38c4b2f
Merge latest master into subagent policy inheritance
...
Retarget the feature branch to the current master tip without rewriting its existing review history. Keeping this as a dedicated merge checkpoint makes the later simplification diff attributable to the stacked child rather than mixing base movement with design changes.
Resolve the identified-message API drift in the feature tests by constructing complete user messages, reading the nested tool-result message shape, and adapting the prompt-submit listener signature. Preserve both sides of the user-approval conflict: master’s createUserMessage wrapper and the feature’s inherited-policy attribution.
Regenerate the Cordis and persistence catalogs, re-record the session README pair, and refresh the affected ACP/headless fixtures so derived artifacts describe the merged source rather than either parent in isolation.
Validated with the focused policy/session/persistence/query suites (430 tests), focused ACP/headless snapshots (3 tests), build, doc-sync (25 gates), lint, hygiene, and git diff checks.
2026-07-28 21:11:20 +08:00
Tianyi Cui
0304ba1457
Merge branch 'master' into worktree/dedupe-snapshot-contracts
2026-07-28 21:08:38 +08:00
_Kerman
bc988ca4a9
Merge remote-tracking branch 'origin/master' into xtr/identified-immutable-messages
...
# Conflicts:
# docs/cordis-catalog/events.md
# docs/core-data-structures/core.i18n.yaml
# docs/event-producer-consumer.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# packages/core/agent-loop/README.i18n.yaml
# packages/core/agent/README.i18n.yaml
2026-07-28 18:49:23 +08:00
kingwl
2f93614efb
Merge remote-tracking branch 'origin/master' into feature/subagent-policy-inheritance
...
# Conflicts:
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# packages/subagent/subagent-inprocess/README.i18n.yaml
2026-07-28 18:37:46 +08:00
kingwl
d69e1ada97
Merge remote-tracking branch 'origin/master' into feature/subagent-policy-inheritance
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-06-sandbox.i18n.yaml
# docs/cordis-catalog/services.md
# docs/core-data-structures/persistence.i18n.yaml
# docs/persistence-catalog.md
# packages/core/session/README.i18n.yaml
# packages/sandbox/sandbox-policy/README.i18n.yaml
# packages/subagent/subagent-inprocess/README.i18n.yaml
2026-07-28 18:19:30 +08:00
Yichen Jiang
fd01fef6b7
test(sdk): satisfy max tokens gates
2026-07-28 18:06:58 +08:00
Tianyi Cui
9c78a7df33
test(snapshot): share identical header sidecars
2026-07-28 17:26:03 +08:00
_Kerman
750aa2022f
fix(snapshot): refresh session title messages
2026-07-28 15:55:15 +08:00
_Kerman
019b0abb68
Merge remote-tracking branch 'origin/master' into xtr/identified-immutable-messages
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-24-separate-context-injection-from-turn-execution.i18n.yaml
# docs/cordis-catalog/services.md
# docs/core-data-structures/core.i18n.yaml
# docs/core-data-structures/session.i18n.yaml
# docs/event-producer-consumer.md
# docs/persistence-catalog.md
# packages/core/session/README.i18n.yaml
# packages/session-title/session-title/tests/persistence.spec.ts
2026-07-28 15:45:53 +08:00
_Kerman
a39ffb095a
fix(session): preserve plugin turn invariants
2026-07-28 15:18:48 +08:00
_Kerman
350c296cff
fix: complete immutable message migration
2026-07-28 14:15:23 +08:00
_Kerman
fbf87e660c
refactor: identify and freeze messages at creation
2026-07-28 13:55:59 +08:00
kingwl
bc3e776225
Merge remote-tracking branch 'origin/master' into feature/subagent-policy-inheritance
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-06-sandbox.i18n.yaml
# docs/cordis-catalog/services.md
# docs/persistence-catalog.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# packages/core/session/README.i18n.yaml
# packages/subagent/subagent-inprocess/README.i18n.yaml
# packages/ui/user-approval/src/index.ts
2026-07-28 11:19:46 +08:00
Tianyi Cui
9ebd0075e9
Merge master into fix/pty-handoff-grace
2026-07-28 01:19:58 +08:00
Tianyi Cui
cc8f6a30c0
Merge remote-tracking branch 'origin/master' into worktree/pr703-ci-fix-20260727
...
# Conflicts:
# docs/architecture.i18n.yaml
# packages/core/agent-loop/src/agent.ts
2026-07-28 00:23:27 +08:00
Chinesezjc
3dc3e59b38
Merge remote-tracking branch 'origin/master' into fix/pty-handoff-grace
2026-07-28 00:17:25 +08:00
Tianyi Cui
c8814d7347
test(acp): await goal cancellation persistence
2026-07-28 00:13:09 +08:00
Tianyi Cui
064cea4ebe
Merge remote-tracking branch 'origin/master' into worktree/pr743-merge-20260727
...
# Conflicts:
# examples/acp-agent/tests/snapshots/escalation-approved/session.jsonl
# examples/acp-agent/tests/snapshots/escalation-rejected/session.jsonl
# examples/acp-agent/tests/snapshots/fs-escalation-approved/session.jsonl
# examples/acp-agent/tests/snapshots/hook-cc-pretool-ask/session.jsonl
# examples/acp-agent/tests/snapshots/session-query-spill/session.jsonl
# examples/cordis-agent/tests/cordis-tools.e2e.ts
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.1.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.2.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.jsonl
2026-07-27 23:59:33 +08:00
Tianyi Cui
29619eda77
Merge remote-tracking branch 'origin/master' into worktree/pr628-merge-20260727
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-06-21-bounded-llm-request-recovery.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-21-bounded-llm-request-recovery.md
# .agents/notes/implemented/architecture/2026-06-21-bounded-llm-request-recovery.zh.md
# docs/architecture.i18n.yaml
# docs/architecture.md
# docs/architecture.zh.md
# docs/cordis-catalog/events.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
# examples/acp-agent/tests/snapshots/empty-response-retry/session.jsonl
# packages/compact/compact-basic/src/index.ts
# packages/compact/compact-basic/tests/compact-basic.spec.ts
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/core/agent-loop/README.i18n.yaml
# packages/core/agent-loop/README.md
# packages/core/agent-loop/README.zh.md
# packages/core/agent-loop/src/loop.ts
# packages/core/agent-loop/tests/request-recovery.spec.ts
# packages/core/agent/src/types.ts
# packages/core/scope/tests/invariant.spec.ts
# packages/llm/llm-retry/README.i18n.yaml
# packages/llm/llm-retry/README.md
# packages/llm/llm-retry/README.zh.md
# packages/llm/llm-retry/src/index.ts
# packages/llm/llm-retry/src/invariant.ts
# packages/llm/llm-retry/tests/invariant.spec.ts
# packages/llm/llm-retry/tests/retry.spec.ts
# packages/plan/plan-mode/src/index.ts
# packages/plan/plan-mode/tests/integration.spec.ts
# packages/plan/plan-mode/tests/plan-mode.spec.ts
2026-07-27 23:29:26 +08:00
Chinesezjc
18882af947
Merge remote-tracking branch 'origin/master' into fix/pty-handoff-grace
2026-07-27 23:17:23 +08:00
Tianyi Cui
8a952ab433
Merge remote-tracking branch 'origin/master' into worktree/pr628-merge-20260727
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-06-21-bounded-llm-request-recovery.md
# docs/architecture.i18n.yaml
# docs/config-catalog.md
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.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
# examples/headless-agent/tests/headless.snapshot.ts
# packages/compact/compact-basic/tests/compact-loop-repro.spec.ts
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/core/agent-loop/README.md
# packages/core/agent-loop/src/loop.ts
# packages/examples/agent-spine-demo/README.md
# packages/llm/README.md
# packages/llm/llm-deepseek/src/adapter.ts
# packages/llm/llm-pi-ai/src/adapter.ts
# packages/llm/llm-retry/README.md
# packages/llm/llm/README.md
# packages/llm/llm/src/index.ts
# packages/llm/llm/tests/service.spec.ts
# packages/support/llm-replay/src/index.ts
# packages/support/llm-replay/tests/llm-replay.spec.ts
2026-07-27 22:44:43 +08:00
Tianyi Cui
7a60a523f9
Merge branch 'master' into feature/cordis-temporary-tools
2026-07-27 22:26:49 +08:00
Chinesezjc
ff4c9d9f9d
Merge remote-tracking branch 'origin/master' into fix/pty-handoff-grace
2026-07-27 22:17:23 +08:00
_Kerman
fb1dc6d117
Merge remote-tracking branch 'origin/master' into xtr/agent-loop-message-machine
...
# Conflicts:
# docs/cordis-catalog/services.md
# docs/core-data-structures/session.i18n.yaml
# docs/event-producer-consumer.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
2026-07-27 21:51:37 +08:00
NI0317
1ef285d038
Restore Cordis mount and unmount names
...
Keep temporary lifecycle descriptions and UI labels explicit.
2026-07-27 21:20:06 +08:00
_Kerman
ed67ad53d2
refactor(agent): return request retry action
2026-07-27 21:17:49 +08:00
kingwl
4182dbdc86
test(snapshot): refresh cordis-inspect-jsdoc for Session.firstLiveSeq
...
The self-referential inspect tool surfaces Session's public API in its
transcript; the construction-boundary field added in bc8512d17 now
appears there. Keyless refresh; only the affected scenario re-recorded.
2026-07-27 20:38:22 +08:00
Chinesezjc
ccab63cc79
Merge remote-tracking branch 'origin/master' into fix/pty-handoff-grace
2026-07-27 20:20:28 +08:00
_Kerman
c6073f07c2
Merge remote-tracking branch 'origin/master' into xtr/agent-loop-message-machine
...
# Conflicts:
# docs/architecture.i18n.yaml
# docs/architecture.md
# docs/architecture.zh.md
# docs/core-data-structures/core.i18n.yaml
2026-07-27 19:55:55 +08:00
kingwl
63183b2f5d
Merge remote-tracking branch 'origin/master' into feature/subagent-policy-inheritance
...
# Conflicts:
# docs/module-graph.md
2026-07-27 19:46:19 +08:00
kingwl
33a235cd6b
Merge remote-tracking branch 'origin/master' into feature/subagent-policy-inheritance
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-06-sandbox.i18n.yaml
2026-07-27 18:39:26 +08:00
_Kerman
7c2cf5f0b3
test(workspace-context): align typed baseline fixtures
2026-07-27 18:39:22 +08:00
_Kerman
98238ceace
fix(agent-loop): settle rejected admission context
2026-07-27 18:32:07 +08:00
fz
826c6fd243
feat(web): present Cordis lifecycle tools
2026-07-27 17:57:59 +08:00
NI0317
8cec221dab
Merge remote-tracking branch 'origin/master' into feature/cordis-temporary-tools
2026-07-27 17:45:01 +08:00
Tianyi Cui
1ee8029bc6
Merge remote-tracking branch 'origin/master' into worktree-process-service-seam
2026-07-27 17:24:20 +08:00
_Kerman
db16732101
Merge remote-tracking branch 'origin/master' into xtr/agent-loop-message-machine
2026-07-27 17:18:12 +08:00
_Kerman
749927ecd8
fix: reconcile agent loop merge integration
2026-07-27 17:04:22 +08:00
NI0317
b4a1304489
Rename Cordis tools for temporary plugins
...
Clarify process-local lifecycle semantics and refresh generated documentation, demos, and snapshots.
2026-07-27 16:57:26 +08:00
Chinesezjc
3d93b709b7
Merge remote-tracking branch 'origin/master' into fix/pty-handoff-grace
2026-07-27 16:57:25 +08:00
_Kerman
bd40eec770
Merge remote-tracking branch 'origin/master' into xtr/agent-loop-message-machine
...
# Conflicts:
# docs/architecture.i18n.yaml
# docs/architecture.md
# docs/architecture.zh.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/core.i18n.yaml
# 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/session.i18n.yaml
# docs/event-producer-consumer.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.1.jsonl
# examples/headless-agent/tests/snapshots/advanced-toolchain/session.2.jsonl
# packages/core/agent-loop/README.i18n.yaml
# packages/core/agent-loop/README.md
# packages/core/agent-loop/README.zh.md
# packages/core/agent-loop/src/loop.ts
# packages/core/agent/README.i18n.yaml
# packages/core/agent/tests/llm-target.spec.ts
# packages/core/session/tests/request-header.spec.ts
2026-07-27 16:48:38 +08:00
Tianyi Cui
0b525ffff3
test(acp-agent): refresh web-fetch tool schema snapshot
2026-07-27 16:43:16 +08:00
Tianyi Cui
21fe97d19d
Merge remote-tracking branch 'origin/master' into worktree-process-service-seam
...
# Conflicts:
# docs/architecture.i18n.yaml
# docs/core-data-structures/core.i18n.yaml
2026-07-27 16:40:07 +08:00
Tianyi Cui
9801a0d102
fix(tool-web): bound HTML conversion work
2026-07-27 16:40:02 +08:00
Chinesezjc
37e2b5d85a
Merge remote-tracking branch 'origin/master' into fix/pty-handoff-grace
2026-07-27 16:39:42 +08:00
kingwl
fa8fffda6d
Merge remote-tracking branch 'origin/master' into feature/subagent-policy-inheritance
...
# Conflicts:
# docs/cordis-catalog/services.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
2026-07-27 16:09:30 +08:00