imccyu
1b0ea07bce
refactor(gui): slot system standard — single register, four props shares, framework store seat
...
The definitive slot model for the web client, replacing the first-generation
define/register two-step, ScopedSlots whitelist faces, and binding handles:
- 'root' is the only a-priori slot (SlotsService built-in); the shell renders
exactly ctx.slots.renderSlot('root', {}).
- register is the single API: children = slot declaration + render
authorization + runtime spec in one options object; misconfiguration fails
loud at load (duplicate declaration, undeclared contribution, one store
handle under two scopes).
- Component props arrive in four auto-derived shares: PropsRuntime<K>
(owner params + session/global standard kits via declare-merge),
PropsRenderSlots<S>, PropsStore<H>, and the inject business face.
sessionId is framework-supplied; hooks are framework-made only.
- Framework store seat: defineStore factories declare schema/actions/persist;
read = useStore, write = baked actions only; store scope derives from the
mounting entry; per-session persist keys and clearPersisted lifecycle.
- inject factories read the apply closure's own ctx (binding handles retired;
root-ctx back door closed); SessionProvider is self-wired render-prop.
- Rendering sits behind the SlotRenderer install seam; runtime stays
React-free; ownership ledger keyed to the single entry axis closes the
stale-authority window (StaleAuthorizationError probes).
Docs: the slot type-chain note is refreshed in place as the slot system
standard RFC (bilingual pair re-recorded); the web client architecture RFC
defers its slot sections there; packages/client/AGENTS.md gains the slot and
props discipline; gui-testing/web-styling notes drop missions/ references.
Tests: suites rewritten to the standard (props fed directly, real store
engines via createXXXStore().create(), no render machinery); load-time
negative samples for declaration/authorization/store conflicts; verified by
real-host playwright run (three columns, empty state, collapse, keyed session
remount, cross-slot selection sharing).
docs(ui-sidebar): point contract reference at the committed slot standard RFC
missions/ is workspace-local and never committed; the README must not cite it.
2026-07-23 03:25:11 +08:00
Tianyi Cui
94adb60e1a
fix(tools): preserve bounded fallback guidance
2026-07-23 03:15:15 +08:00
Tianyi Cui
2821826e2c
fix(pty): close final review gaps
2026-07-23 02:53:43 +08:00
Tianyi Cui
7887391afe
fix(tasks): capture result limits before policy
2026-07-23 02:14:06 +08:00
Tianyi Cui
9900550bdc
fix(tasks): bound task control failures
2026-07-23 01:56:10 +08:00
Tianyi Cui
fb74156cf8
fix(code-mode): generalize failures and bound diagnostics
2026-07-23 01:32:17 +08:00
Tianyi Cui
6ad8e4501f
fix(pty): retain cleanup evidence through policy
2026-07-23 01:21:14 +08:00
Tianyi Cui
8c1a9b7752
Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results
2026-07-23 01:15:13 +08:00
Tianyi Cui
dd9124468f
Merge codex/tool-json-schema-dsl into codex/canonical-tool-output
...
# Conflicts:
# docs/core-data-structures/tools.md
# packages/core/tools/src/schema.ts
2026-07-23 01:08:18 +08:00
Tianyi Cui
e20dea1629
fix(schema): align projected and enforced declarations
2026-07-23 01:05:41 +08:00
Tianyi Cui
7f0f70ce3c
fix(pty): retain backend cleanup failures
2026-07-23 00:59:16 +08:00
Tianyi Cui
be20804684
fix(pty): keep bounded results actionable
2026-07-23 00:48:00 +08:00
Tianyi Cui
5ba4f77f2b
fix(pty): surface pending rollback failures
2026-07-23 00:27:32 +08:00
Tianyi Cui
590115448e
docs: refresh PTY service catalog
2026-07-23 00:15:21 +08:00
Tianyi Cui
8dbea80294
Merge branch 'codex/canonical-tool-output' into codex/code-mode-typed-results
2026-07-22 23:55:07 +08:00
Tianyi Cui
8d42d3c979
Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output
...
# Conflicts:
# docs/config-catalog.md
# docs/persistence-catalog.md
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
# examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/stdout.expected.jsonl
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/core/agent-loop/tests/contract-regressions.spec.ts
# packages/ui/acp/src/index.ts
# packages/ui/tui/src/index.ts
2026-07-22 23:50:41 +08:00
Yichen Jiang
f0a9bb1ccd
Merge remote-tracking branch 'origin/master' into worktree/web-ask-user-question
...
# Conflicts:
# apps/web/tests/smoke-fixture.e2e.ts
2026-07-22 23:48:53 +08:00
Yichen Jiang
03889cee1a
feat(gui): add ask-user question composer
2026-07-22 23:39:50 +08:00
Tianyi Cui
065d20c249
Merge remote-tracking branch 'origin/master' into codex/tool-json-schema-dsl
...
# Conflicts:
# scripts/type-equiv.manifest.json
2026-07-22 23:34:17 +08:00
Tianyi Cui
5689d1a9b4
Merge remote-tracking branch 'origin/master' into worktree/pty-review-fixes
...
# Conflicts:
# docs/module-graph.md
2026-07-22 23:27:17 +08:00
Tianyi Cui
90ac883512
fix(pty): close retained lifecycle review gaps
2026-07-22 23:17:53 +08:00
Tianyi Cui
d5d6960184
Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master
...
# Conflicts:
# docs/architecture.i18n.yaml
# docs/module-graph.md
2026-07-22 23:17:02 +08:00
Tianyi Cui
fed32c767d
Merge branch 'codex/tool-json-schema-dsl' into codex/canonical-tool-output
2026-07-22 23:12:20 +08:00
Tianyi Cui
1429c5d22f
Merge remote-tracking branch 'origin/master' into codex/tool-json-schema-dsl
2026-07-22 23:03:02 +08:00
Tianyi Cui
b65afd320a
Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master
...
# Conflicts:
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/event-producer-consumer.md
2026-07-22 23:00:05 +08:00
Tianyi Cui
73353d7a0f
Merge remote-tracking branch 'origin/feature/persistent-pty-sessions' into worktree/pty-review-fixes
2026-07-22 22:53:05 +08:00
Tianyi Cui
cf5dfe46e7
Merge remote-tracking branch 'origin/rfc/pty' into worktree/pr467-retarget-latest-master
2026-07-22 22:50:55 +08:00
Tianyi Cui
d92bb12963
Merge refreshed canonical outputs into typed Code Mode results
2026-07-22 22:50:28 +08:00
Tianyi Cui
3d9240e423
Merge refreshed schema DSL into canonical tool outputs
2026-07-22 22:46:10 +08:00
Tianyi Cui
1da62658a9
Merge updated feature/persistent-pty-sessions into review fixes
2026-07-22 22:44:01 +08:00
Tianyi Cui
d99094b1ac
Merge updated rfc/pty into feature/persistent-pty-sessions
...
# Conflicts:
# docs/architecture.i18n.yaml
# docs/core-data-structures/core.md
# pnpm-lock.yaml
# scripts/gen-cordis-catalog.ts
2026-07-22 22:43:20 +08:00
Tianyi Cui
c51c02cafa
Merge latest master into schema DSL
2026-07-22 22:42:43 +08:00
Tianyi Cui
e962642926
Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master
...
# Conflicts:
# docs/architecture.i18n.yaml
# docs/config-catalog.md
# docs/event-producer-consumer.md
# docs/module-graph.md
# packages/examples/acp-demo/README.md
# packages/examples/acp-demo/src/index.ts
# packages/examples/acp-demo/tests/built-bin.e2e.ts
# packages/examples/tui-demo/package.json
# packages/examples/tui-demo/src/index.ts
# packages/examples/tui-demo/tests/tui-agent.spec.ts
2026-07-22 22:38:17 +08:00
Tianyi Cui
57a47b1fb3
fix(pty): close review lifecycle gaps
2026-07-22 22:37:20 +08:00
Tianyi Cui
b0f5d9e313
Merge commit 'refs/codex-unblock/20260722-pr338-master' into HEAD
...
# Conflicts:
# docs/event-producer-consumer.md
# examples/acp-agent/tests/acp.snapshot.ts
# packages/core/session/src/index.ts
# packages/examples/acp-demo/src/index.ts
# packages/session-persistence/session-persistence-jsonl/src/format.ts
# vitest.config.ts
2026-07-22 22:37:16 +08:00
Tianyi Cui
101fcdd319
Merge refreshed canonical outputs into typed Code Mode results
...
# Conflicts:
# docs/event-producer-consumer.md
2026-07-22 22:34:52 +08:00
Tianyi Cui
8930a63b18
Merge refreshed schema DSL into canonical tool outputs
...
# Conflicts:
# docs/event-producer-consumer.md
2026-07-22 22:28:50 +08:00
Tianyi Cui
93263ed519
Merge latest master into schema DSL
...
# Conflicts:
# docs/event-producer-consumer.md
2026-07-22 22:21:50 +08:00
Tianyi Cui
8370365c01
Merge refreshed canonical outputs into typed Code Mode results
2026-07-22 22:10:44 +08:00
Tianyi Cui
a838af896e
Merge refreshed schema DSL into canonical tool outputs
...
# Conflicts:
# packages/bash/tool-bash/tests/tools.spec.ts
2026-07-22 22:03:54 +08:00
Tianyi Cui
277b65aa8c
Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master
...
# Conflicts:
# pnpm-lock.yaml
2026-07-22 22:00:00 +08:00
Tianyi Cui
ec51c1acb0
Merge latest master into schema DSL
2026-07-22 21:54:32 +08:00
Tianyi Cui
ce970bd31c
Merge refreshed canonical outputs into typed Code Mode results
...
# Conflicts:
# docs/module-graph.md
# examples/acp-agent/tests/snapshots/advanced-toolchain/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/both-mode-turn/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/code-mode-turn/system-prompt.expected.md
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/session.jsonl
# examples/acp-agent/tests/snapshots/code-mode-workspace-context/system-prompt.expected.md
# packages/core/tools/src/ts-types.ts
2026-07-22 21:49:35 +08:00
Tianyi Cui
3679b4d829
Merge master into worktree/semantic-session-checkpoints
2026-07-22 21:49:24 +08:00
Tianyi Cui
db21dcfeae
Merge remote-tracking branch 'origin/master' into codex/session-scoped-sandbox-roots
2026-07-22 21:41:53 +08:00
Tianyi Cui
4444768521
Merge refreshed schema DSL into canonical tool output
2026-07-22 21:38:41 +08:00
Tianyi Cui
10a55d7a27
Merge remote-tracking branch 'origin/master' into codex/session-scoped-sandbox-roots
...
# 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
# examples/acp-agent/README.md
# packages/examples/agent-spine-demo/package.json
# packages/fs/fs-sandbox/src/index.ts
# packages/fs/tool-fs-search/tests/tools.spec.ts
# packages/support/acp-snapshot/README.md
# packages/support/acp-snapshot/src/suite.ts
# pnpm-lock.yaml
# scripts/type-equiv.manifest.json
2026-07-22 21:37:30 +08:00
Tianyi Cui
906dad12f7
Merge latest master into schema DSL
2026-07-22 21:35:03 +08:00
Tianyi Cui
7b803be4ae
Merge branch 'master' into worktree/session-reference
2026-07-22 21:33:21 +08:00
Tianyi Cui
54bc084e5d
Merge refreshed schema DSL into canonical tool output
...
# Conflicts:
# docs/config-catalog.md
# 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
# packages/context/workspace-context/tests/workspace-context.spec.ts
# packages/core/tools/tests/tools.spec.ts
# packages/ui/tui/src/index.ts
# packages/ui/tui/tests/tui.snapshot.ts
2026-07-22 21:31:16 +08:00