Commit Graph

114 Commits

Author SHA1 Message Date
Tianyi Cui 3a87104a9a fix(i18n): harden prompt response handling 2026-07-23 23:12:56 +08:00
Tianyi Cui d1b5f5c64f Merge remote-tracking branch 'origin/master' into worktree/pr348-retarget-latest-master
# Conflicts:
#	vitest.snapshot.config.ts
2026-07-23 22:46:19 +08:00
Tianyi Cui caaf4f8d18 fix(i18n): complete prompt v4 pipeline path 2026-07-23 22:41:53 +08:00
Tianyi Cui 6046a13a29 fix(i18n): harden prompt v4 contract 2026-07-23 21:44:41 +08:00
Tianyi Cui ea75abd71e docs(gui): correct client coverage lane 2026-07-23 20:45:36 +08:00
Tianyi Cui d7c4822f95 Merge origin/master into worktree/web-session-titles
# Conflicts:
#	packages/client/connection/src/client/fixture.ts
2026-07-23 20:12:40 +08:00
Tianyi Cui 7e27f1b00f Merge remote-tracking branch 'origin/master' into worktree/web-session-titles 2026-07-23 18:40:13 +08:00
Tianyi Cui d2dc618e3f Merge remote-tracking branch 'origin/master' into worktree/web-session-titles
# Conflicts:
#	.agents/notes/implemented/process/2026-07-20-gui-testing-system.i18n.yaml
#	packages/client/ui-conversation/tests/apply-inject.spec.tsx
#	packages/client/ui-conversation/tests/chat-stats-bash-sample.spec.tsx
#	packages/client/ui-conversation/tests/gate-branch-tails.spec.tsx
#	packages/client/ui-conversation/tests/selection-survival.spec.ts
#	packages/client/ui-conversation/tests/skeleton-branches.spec.tsx
#	packages/client/ui-conversation/tests/skeleton.spec.tsx
#	packages/client/ui-layout/tests/service.spec.ts
#	packages/client/ui-sidebar/tests/apply.spec.tsx
#	packages/client/ui-sidebar/tests/store.spec.ts
#	packages/client/ui-trajectory/tests/views.spec.tsx
#	packages/client/web/src/app.tsx
#	packages/client/web/tests/boot.spec.tsx
#	packages/host/runtime/README.md
#	packages/host/runtime/tests/host-runtime.spec.ts
2026-07-23 18:39:48 +08:00
Tianyi Cui 0d87f7ee27 Merge remote-tracking branch 'origin/master' into worktree/ci-subminute-stability 2026-07-23 18:33:04 +08:00
Tianyi Cui c88fade5b3 Merge branch 'master' into worktree/ci-enterprise-subminute 2026-07-23 18:29:15 +08:00
Tianyi Cui 41dbd2d539 Merge branch 'worktree/ci-enterprise-subminute' into worktree/ci-subminute-stability 2026-07-23 18:13:12 +08:00
Tianyi Cui 05aeb243ba Merge remote-tracking branch 'origin/master' into worktree/ci-enterprise-subminute 2026-07-23 18:08:23 +08:00
Tianyi Cui 2dc3bf6005 ci: reuse the primary Linux build 2026-07-23 18:02:17 +08:00
Tianyi Cui fa5c3fa0b9 Merge origin/master into codex/code-mode-complete-result-card 2026-07-23 17:59:58 +08:00
Tianyi Cui 0c678766a4 ci: isolate enterprise Linux critical paths 2026-07-23 17:49:16 +08:00
Tianyi Cui f7103c833c feat(skill): record browser demo GIFs 2026-07-23 17:04:33 +08:00
Tianyi Cui f111359239 fix(ci): isolate lint from NodeNext temp consumers 2026-07-23 16:57:59 +08:00
Tianyi Cui 91dfaee36c docs(ci): update enterprise runner decisions 2026-07-23 16:49:49 +08:00
Tianyi Cui fc1b308266 ci: keep required PR checks on portable runners 2026-07-23 14:31:01 +08:00
Tianyi Cui c79b34bda5 Revert "chore: run primary CI before push" 2026-07-23 14:02:58 +08:00
Tianyi Cui 00d5b69882 chore: run primary CI before push 2026-07-23 13:09:52 +08:00
imccyu e4d3f6fd53 Merge branch 'master' into worktree-webts 2026-07-23 11:50:08 +08:00
Tianyi Cui c240f326c4 Merge branch 'master' into worktree-webslot2 2026-07-23 11:08:36 +08:00
Tianyi Cui 08cc034128 Merge commit 'refs/codex-unblock/2026-07-23/base-511' into HEAD 2026-07-23 10:14:06 +08:00
imccyu de5c68eb1a docs(notes): retire current-state references to the deleted build graph
Three notes stated tsconfig.build.json as present-tense fact; the
aggregates (tsconfig.host.json / tsconfig.client.json) now own the
explicit reference lists and the root solution owns the emit graph.
Historical narration in dated notes is left untouched.
2026-07-23 03:59:35 +08:00
imccyu 21287abd78 docs(ts): bilingual pair for the solution-root Agent Note 2026-07-23 03:59:35 +08:00
imccyu 62125c0dcb docs(ts): document the solution-root TypeScript project layout
New authoritative section docs/development.md#typescript-project-layout
(five files, three roles, the program-vs-resolution principle and its two
disciplines), two repo conventions in AGENTS.md, package tsconfig shape in
packages/AGENTS.md, cookbook touch-lists updated for the two aggregates,
test source-plane rule in docs/testing.md. Decision record: new Agent Note
2026-07-22-tsconfig-solution-root-two-aggregates; ts-build-config note
updated in place (tsc-first pipeline unchanged); the two GUI RFCs now name
tsconfig.host.json. All bilingual pairs re-recorded. Doc budget ceilings
raised: AGENTS.md 1680, docs/testing.md 1020, packages/AGENTS.md 660 (two
new one-line conventions and one new section on already-near-ceiling docs).
Mission spec for the code-side migration: missions/tsconfig-single-graph-migration.md.
2026-07-23 03:59:35 +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
Tianyi Cui 2e91db9271 docs(web): describe session title projection 2026-07-22 23:44:16 +08:00
Tianyi Cui 906dad12f7 Merge latest master into schema DSL 2026-07-22 21:35:03 +08:00
Tianyi Cui edba5e861a Merge latest master into tool JSON schema DSL
# Conflicts:
#	examples/tui-agent/tests/snapshots/cordis-dynamic-toolchain/terminal.expected.txt
2026-07-22 21:11:49 +08:00
Tianyi Cui 9c6099fbbd Merge branch 'master' into worktree/run-all-gates 2026-07-22 21:10:45 +08:00
Tianyi Cui 6456162827 Merge latest master into tool JSON schema DSL 2026-07-22 21:06:33 +08:00
Tianyi Cui c8389ccecf Merge latest master into tool JSON schema DSL
# Conflicts:
#	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/system-prompt.expected.md
2026-07-22 20:58:17 +08:00
Tianyi Cui a9a47452de Merge latest master into check-all recovery 2026-07-22 20:57:39 +08:00
Tianyi Cui a37cc9d92b Merge remote-tracking branch 'origin/master' into worktree/pr504-retarget-latest-master 2026-07-22 20:57:26 +08:00
Tianyi Cui 78c2741d3e Merge remote-tracking branch 'origin/master' into worktree/pr504-retarget-latest-master
# Conflicts:
#	docs/event-producer-consumer.md
#	examples/tui-agent/README.md
#	examples/tui-agent/composition.md
#	examples/tui-agent/cordis.yml
#	examples/tui-agent/tests/snapshots/multi-turn-conversation/terminal.expected.txt
#	examples/tui-agent/tests/tui-keyless-smoke.e2e.ts
#	packages/ui/tui/README.md
#	vitest.config.ts
2026-07-22 20:55:12 +08:00
Tianyi Cui 069313b156 Merge branch 'master' into worktree/docs-service-reference 2026-07-22 20:48:29 +08:00
Tianyi Cui b44f8539e6 Merge latest master into tui-staging-merge-1 2026-07-22 20:45:24 +08:00
Tianyi Cui f728a1b8a2 Merge branch 'master' into docs/cordis-tutorial 2026-07-22 20:42:26 +08:00
Tianyi Cui 3c397e594f ci: remove critical setup variance 2026-07-22 20:29:33 +08:00
Tianyi Cui dcf9eee3c5 ci: bound Linux gate contention 2026-07-22 20:19:56 +08:00
Tianyi Cui 9b8320cb94 ci: remove the final Linux lint tail 2026-07-22 20:06:50 +08:00
Tianyi Cui a952aaed72 ci: trim remaining hosted setup 2026-07-22 20:00:15 +08:00
Tianyi Cui 17983d72bb ci: use process-safe coverage pools 2026-07-22 19:37:45 +08:00
Tianyi Cui 02f6d919c8 ci: remove primary setup overhead 2026-07-22 19:13:07 +08:00
Tianyi Cui cbbef79fa3 ci: retune consolidated jobs for stacked workload 2026-07-22 19:00:55 +08:00
Tianyi Cui e9d3821578 Merge PR #500 into CI optimization 2026-07-22 18:31:28 +08:00
Tianyi Cui fe273bd9dd refactor: name the all-gates mode check-all 2026-07-22 18:27:31 +08:00
Yichen Jiang e844125d7d docs: enforce canonical website projection 2026-07-22 18:17:42 +08:00