imccyu
004a988168
fix: slot
2026-07-23 03:25:11 +08:00
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
imccyu
efa4326ff4
refactor: client no export
...
docs: AGENTS.md
refactor: client no export 2
2026-07-23 03:25:10 +08:00
Tianyi Cui
dcb6ecc095
Merge branch 'codex/code-mode-typed-results' into codex/code-mode-complete-result-card
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-20-code-mode-typed-tool-returns.i18n.yaml
2026-07-23 03:19:13 +08:00
Tianyi Cui
f3b42fd738
test(code-runtime): type mutated array predicate
2026-07-23 03:11:53 +08:00
Tianyi Cui
27fe26f8d2
docs(code-runtime): record captured intrinsic boundary
2026-07-23 03:09:33 +08:00
Tianyi Cui
182e6a28cc
test(code-runtime): cover malformed key markers
2026-07-23 03:09:13 +08:00
Tianyi Cui
4afcb5c3c9
fix(code-runtime): capture worker JSON intrinsics
2026-07-23 03:04:43 +08:00
Tianyi Cui
51a80845b8
Merge codex/code-mode-typed-results into codex/code-mode-complete-result-card
...
# Conflicts:
# .agents/notes/implemented/feature/2026-07-20-code-mode-typed-tool-returns.i18n.yaml
2026-07-23 02:39:48 +08:00
Tianyi Cui
a6b769c427
Merge codex/canonical-tool-output into codex/code-mode-typed-results
2026-07-23 02:32:53 +08:00
Tianyi Cui
4fc6d45259
Merge codex/tool-json-schema-dsl into codex/canonical-tool-output
2026-07-23 02:26:47 +08:00
Tianyi Cui
30bffb5642
test(cordis): cover balanced sparse schema lists
2026-07-23 02:20:12 +08:00
Tianyi Cui
9c5224c527
test(cordis): cover malformed schema arrays
2026-07-23 02:13:33 +08:00
Tianyi Cui
71a5c3fd4c
fix(cordis): reject lossy dynamic schemas
2026-07-23 02:12:47 +08:00
Tianyi Cui
a552a6ce63
test(code-runtime): cover revoked constructor spoof
2026-07-23 02:02:59 +08:00
Tianyi Cui
e9e450a902
fix(code-runtime): reject forged container prototypes
2026-07-23 02:01:04 +08:00
Tianyi Cui
77f0f3e632
Merge branch 'codex/code-mode-typed-results' into codex/code-mode-complete-result-card
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-20-canonical-tool-output-contract.i18n.yaml
# .agents/notes/implemented/feature/2026-07-20-code-mode-typed-tool-returns.i18n.yaml
2026-07-23 01:38:52 +08:00
Tianyi Cui
8379101e3b
fix(code-runtime): keep worker helper private
2026-07-23 01:35:33 +08:00
Tianyi Cui
fb74156cf8
fix(code-mode): generalize failures and bound diagnostics
2026-07-23 01:32:17 +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
b59f6ff3fa
docs: link the WeChat community QR destination
2026-07-23 00:48:50 +08:00
Tianyi Cui
d626b2582d
fix(tools): scope canonical provenance to dispatch
2026-07-23 00:39:55 +08:00
Tianyi Cui
2be046dcf2
docs: refine README product copy
2026-07-23 00:37:30 +08:00
Tianyi Cui
e35a419ba8
fix(code-mode): keep deep host boundaries iterative
2026-07-23 00:30:36 +08:00
Tianyi Cui
ef325b02fa
docs: make the top-level README product-first
2026-07-23 00:15:44 +08:00
Tianyi Cui
3f547a83d1
Merge branch 'codex/code-mode-typed-results' into codex/code-mode-complete-result-card
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-07-20-canonical-tool-output-contract.i18n.yaml
2026-07-23 00:03:56 +08:00
Tianyi Cui
30a1ea7cec
Merge branch 'master' into readme
...
# Conflicts:
# README.i18n.yaml
# README.md
# README.zh.md
2026-07-23 00:01:24 +08:00
Tianyi Cui
25d0ef5c6c
test(code-mode): cover terminal output types
2026-07-22 23:58:39 +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
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
b8aa1507cd
docs(pty): keep model experience field canonical
2026-07-22 23:28:14 +08:00
Tianyi Cui
17b9792532
refactor(tools): share terminal task schema
2026-07-22 23:24:43 +08:00
Tianyi Cui
e3112be762
feat(tools): canonicalize terminal outputs
2026-07-22 23:23:01 +08:00
Tianyi Cui
690c53dc03
Merge pull request #468 from deepseek-harness/worktree/session-reference
...
feat(session): add cross-session references
2026-07-22 23:22:07 +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
a03ed8d60b
test(schema): refresh PTY tool header fixture
2026-07-22 23:08:22 +08:00
Tianyi Cui
342e94d2d0
fix(schema): use inferred PTY presentation args
2026-07-22 23:04:46 +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
e3981109b3
Merge pull request #467 from deepseek-harness/feature/persistent-pty-sessions
...
feat: add persistent PTY sessions
2026-07-22 23:02:42 +08:00
Tianyi Cui
995362c7e1
Merge remote-tracking branch 'origin/master' into worktree/pr468-retarget-latest-master
2026-07-22 23:01:30 +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
03c87bcfd6
Merge remote-tracking branch 'origin/master' into codex/tool-json-schema-dsl
2026-07-22 22:59:25 +08:00
Tianyi Cui
c9566d18bf
Merge remote-tracking branch 'origin/master' into worktree/pr467-retarget-latest-master
2026-07-22 22:58:33 +08:00
Tianyi Cui
72e1640959
Merge pull request #433 from deepseek-harness/rfc/pty
...
docs(agent-note): propose persistent PTY sessions
2026-07-22 22:57:42 +08:00
Tianyi Cui
d1564f062b
Merge refreshed typed Code Mode results into result card fix
2026-07-22 22:54:55 +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