Commit Graph
53 Commits
Author SHA1 Message Date
_KermanandTianyi Cui fb79a944f5 refactor(llm): separate durable producer sources from request inputs
Give durable user context its producer-owned source kind instead of a generic plugin wrapper. The V3-to-V4 conversion preserves the frozen rename and collision rules, all own JSON metadata, event coordinates, and historical request-only kinds. Native catalog and JSONL admission retain source validation so unknown attribution can survive without its producer while malformed owned sources are refused.

Use an explicit user-only RequestUserInput for auxiliary LLM prompts that do not own durable message identity. Auto Review and compaction remove their request-only source registrations while retaining prompt content and freezing; provider serializers and projections keep the same wire data, assistant replay isolation, image ordering, and tool correlation. Session writes, Agent delivery, and recorded title requests continue to require identified durable messages.

Bind the saved compatibility policy only to user sources and qualify tmux location attribution without weakening fixed system, model, or tool semantics. Rebuild the current inventory and unpublished V4 acknowledgement on the actual tool-role parent, preserving its rationale and all accepted historical records. The catalog format version records tooling metadata; Session remains V4. Developer-role policy and activation belong to their own feature.

The latest-master Messages adapter, serialization, request-input typing, EpochHeader reservation, and attribution checks pass 103 tests across five files. The retained V3 Messages input-history snapshot passes through the source profile; Host/Client typechecks and all 41 documentation gates pass. The generated comparison records four changed roots and 447 unchanged type fingerprints. Latest-master ARIA changes are retained, with producer source labels applied independently; new Messages fixtures retain their producer names as declared source kinds and use the fixed system-message helper; recorded Session generations are unchanged by this regrouping.

Co-authored-by: Tianyi Cui <[email protected]>
2026-09-18 19:07:12 +08:00
_KermanandTianyi Cui f4a32dbd0a refactor(llm): flatten tool results and validate native V4 sessions
Represent tool results as tool-role messages and migrate released wrappers
without losing outer own JSON fields, call identity, error state, or writer
field order. Refuse nested or wrapper-only information that has no lossless
current representation before successor publication.

Validate current event relationships directly instead of projecting V4 data
back into V3. Keep lifecycle, PTC, title/command, compaction, system-field and
retired-syntax checks on catalog restoration and ordinary JSONL opens. The
Worker JSON equality helper must inspect own keys so it cannot admit PTC
arguments that Node rejects.

Keep the source role change, required native admission and consumer fixture
updates in one complete review layer. Explain shared-type changes in the
persistence record and the native reader rationale in its existing note.
Use checked branded fixture identities and discriminant narrowing instead
of unknown double casts; fixture values and assertions remain intact.

This recomposes the original tool-role work by _Kerman with the independently
validated migration and admission repairs by Tianyi Cui. Frozen generations
and snapshot input version selection are retained.

Co-authored-by: Tianyi Cui <[email protected]>
2026-09-18 19:05:32 +08:00
Tianyi Cui 2fb2a5cc65 merge: sync desktop menus and startup diagnostics from master 2026-09-17 11:31:06 +08:00
Dudu-0223 e55093b47d feat(subagent): migrate direct catalog consumers to parent projections 2026-09-16 22:05:17 +08:00
turtle1999 5e942d39eb test(bench): set trajectory navigation budget to 650 ms 2026-09-16 21:21:55 +08:00
Yichen Jiang ad8a00c291 Merge remote-tracking branch 'origin/master' into worktree/sidebar-session-recovery
# Conflicts:
#	packages/subprocess/subprocess-local/src/index.ts
2026-09-15 12:15:20 +08:00
imccyu 232ab768a9 perf(runtime): defer optional native dependencies 2026-09-15 11:06:43 +08:00
Yichen Jiang b25c5ad82e feat(web): restore sidebar layouts and reclaim unattended terminals 2026-09-15 10:27:44 +08:00
Turtle b42913c8f1 Merge master and adapt terminal retention fixtures 2026-09-14 16:52:55 +08:00
Turtle 68f9708e02 fix(terminal-bash): bound retained storage and status reads 2026-09-11 19:12:10 +08:00
Turtle cea837e065 perf(terminal-bash): retain scrollback incrementally 2026-09-11 18:40:06 +08:00
Turtle 71d50b4a84 refactor: ban ambiguous origin label 2026-09-11 17:45:28 +08:00
07akioni 4c024cf252 fix: preserve early process cancellation and sample stream markers promptly 2026-09-10 14:28:18 +08:00
j-xiang b5578ae46a Merge master into README proofreading branch 2026-09-10 01:29:37 +08:00
j-xiang 8e8fb2fc62 docs(i18n): proofread bilingual README corpus 2026-09-10 00:21:32 +08:00
Tianyi Cui 1b56cf6013 test(ci): retain useful regression controls after master rebase 2026-09-09 13:18:09 +08:00
Tianyi Cui 94a2b0a248 test(ci): await details transitions and report benchmark runtime 2026-09-09 13:18:08 +08:00
Tianyi Cui 2c0596c1ba docs(bench): clarify reviewed request-history limit 2026-09-09 11:29:05 +08:00
Tianyi Cui ba4b8fddeb test(bench): calibrate hosted cold Agent resume limit 2026-09-09 11:26:48 +08:00
Tianyi Cui 2567d35cdf docs(bench): synchronize request-history limit 2026-09-09 11:26:48 +08:00
Tianyi Cui 48007d76f2 test(bench): allow measured request-history runner variation 2026-09-09 11:26:48 +08:00
fz 94ff82f57b Merge origin/master into feat/remove-str-replace-editor-from-minimal 2026-09-08 23:22:25 +08:00
Tianyi Cui 756b10fcfe test(session): cover composed canonical and PTC restoration 2026-09-08 16:56:52 +08:00
Tianyi Cui 5b039c1796 Merge master 822041865d into Session V3 release 2026-09-08 00:17:14 +08:00
fz 707d0e7e52 Merge origin/master into feat/remove-str-replace-editor-from-minimal 2026-09-07 23:25:03 +08:00
_Kerman 753effe602 fix(bench): rely on testkit session projection mounting
mountAgentLoopTestDependencies registers SessionProjectionRegistry, so benchmark workers must not mount it again before resuming agents.
2026-09-07 20:52:06 +08:00
fz 5c98a81a50 test(benchmarks): explicitly compose the SDK file editor 2026-09-07 19:43:49 +08:00
Tianyi Cui dbd28a8071 fix(benchmarks): keep composer focus during streamed input 2026-09-07 17:21:56 +08:00
Tianyi Cui f7b1658ff2 fix(benchmarks): reserve system heads in generated V3 histories 2026-09-07 15:03:32 +08:00
Tianyi Cui 19d167cec2 Merge latest master request-freeze and frontend performance work
Preserve the V3 system-prompt projection while adopting master’s per-agent frozen-message provenance and frontend performance gates. Keep benchmark workload admission and diagnostics fixes intact, and retain both migration and first-open/reopen lifecycle guarantees.
2026-09-07 14:53:00 +08:00
Tianyi Cui cbdf32447e fix(benchmarks): calibrate repeated hosted browser open median 2026-09-07 13:29:38 +08:00
Tianyi Cui 1a3af89a8d fix(benchmarks): calibrate hosted paging and trajectory endpoints 2026-09-07 13:29:38 +08:00
Tianyi Cui 620c2b0b27 fix(benchmarks): calibrate hosted frontend endpoints and preserve input overlap 2026-09-07 13:29:38 +08:00
Tianyi Cui c51c16cdac test(perf): respect browser failover provisioning policy 2026-09-07 13:29:38 +08:00
Tianyi Cui 9369585872 test(perf): bound browser observers to active response 2026-09-07 13:29:38 +08:00
Tianyi Cui 7ac5e08246 test(perf): measure real history streams and live input overlap 2026-09-07 13:29:38 +08:00
Tianyi Cui 6ad74db2e3 test(perf): gate long-session browser and active reconnect workflows 2026-09-07 13:29:38 +08:00
Tianyi Cui e2b81cf8bf docs(perf): distinguish hosted request and catalog budgets 2026-09-07 13:29:37 +08:00
Tianyi Cui 8e270960ed test(perf): calibrate request history on standard hosted CI 2026-09-07 13:29:37 +08:00
Tianyi Cui 84914c316d test(perf): calibrate baseline requests for hosted CI 2026-09-07 13:29:37 +08:00
Tianyi Cui 2f0088357d test(perf): calibrate tool continuation for hosted CI 2026-09-07 13:29:37 +08:00
Tianyi Cui daa7f60630 test(perf): calibrate catalog for standard hosted CI 2026-09-07 13:29:37 +08:00
Tianyi Cui 1507f82888 docs(perf): record backend CI evidence and align workload prose 2026-09-07 13:29:37 +08:00
Tianyi Cui c599ef87c4 test(perf): baseline tool-heavy backend workflows 2026-09-07 13:29:37 +08:00
Tianyi Cui fcbadb07db fix(benchmarks): keep Session opening fixture migratable to V3
Begin each synthetic step before its user surface message so the structural V2-to-V3 migration can reserve its protected system head without reordering historical events. Keep the workload size, frame partition, original chunk provenance, and every timing/heap budget unchanged.

Add a small real persistence migration/publication/reopen prerequisite that preserves all user and assistant content and original V0 bytes. Both this regression and bounded stderr-headline regression fail before the fix and pass afterward. Worker errors retain a bounded head and tail instead of hiding migration refusal behind a generic stack tail.

Validation: full Session-opening benchmark16/16 passed, including all six128MB completion cases; focused full type-aware lint passed. First Agent resume median178.7ms and reopen27.4ms are below unchanged450/100ms budgets.
2026-09-07 11:09:36 +08:00
Tianyi Cui b74411d9b8 test(bench): calibrate reopen budget for standard two-CPU CI 2026-09-06 18:24:42 +08:00
imccyu 9b78f99dec perf(session): transfer frozen persistence reads into restore 2026-09-06 02:10:23 +08:00
imccyu a3e5edbdbf perf(session-persistence): prepare historical reads before publication 2026-09-06 02:08:48 +08:00
imccyu a548150f86 test(perf): isolate benchmark dependencies 2026-09-06 01:01:04 +08:00
imccyu 422f5a19af test(perf): calibrate CI benchmark budgets 2026-09-06 01:01:04 +08:00