Commit Graph
1849 Commits
Author SHA1 Message Date
aiguozhi123456 20488a585d fix(cron): review follow-ups for system job retirement
- advance the disabled-dream cursor before touching the cron store so
  the #4242 fix still applies when jobs.json is corrupt
- pin the gateway wiring: the disabled-path test now asserts both
  dream and heartbeat are retired, not just unregistered
- cover remove_system_job on a fresh install with no store file
2026-08-22 02:38:47 +08:00
aiguozhi123456 e5718d4de6 fix(cron): retire persisted heartbeat/dream jobs when disabled
Disabling gateway.heartbeat (or agents.defaults.dream) only skipped
job registration on startup; the previously persisted system job in
<workspace>/cron/jobs.json kept firing, and remove_job refuses to
touch protected system jobs. Add CronService.remove_system_job for
startup reconciliation and call it from the gateway disabled branches
so the config toggle takes effect after restart.
2026-08-22 02:38:47 +08:00
chengyongru 1fe36d5dec fix(dream): gate cursor on run completion 2026-08-22 02:05:40 +08:00
flobo3 d853ac239f fix(dream): advance cursor when tool errors were recovered, and report why a run did not complete 2026-08-22 02:05:40 +08:00
chengyongru 9ae3ae17da feat(providers): support DeepSeek V4 vision 2026-08-21 23:18:09 +08:00
chengyongru 953d2ed217 refactor(webui): infer fallback from active model 2026-08-21 16:49:30 +08:00
chengyongru 7f97373490 fix(webui): only highlight actual model fallbacks 2026-08-21 16:49:30 +08:00
chengyongru 761e95b659 refactor(providers): simplify retry fallback routing 2026-08-21 16:46:38 +08:00
chengyongru 9a6dc371b3 refactor: pass retry exhaustion callbacks explicitly 2026-08-21 16:46:38 +08:00
chengyongru f93d4c3ae4 fix(providers): retry before falling back 2026-08-21 16:46:38 +08:00
chengyongru 26764f2423 feat(tui): add /detach command (#5461)
* feat(tui): add detach command

* fix(tui): print exact detached gateway stop command
2026-08-21 15:50:07 +08:00
chengyongru 5b44ebdfd7 fix(providers): report Responses cached tokens 2026-08-21 14:01:00 +08:00
chengyongru 8ca4bd9121 fix(agent): keep default prompt paths relative 2026-08-21 11:45:05 +08:00
akinolur c7710238a8 fix(provider): retry Codex server_error
Mid-stream response.failed events from OpenAI carry
'server_error' (underscore), but the transient-error marker
list only had 'server error' (space). is_transient_response
missed it, so the retry loop gave up on the first attempt
instead of using its normal 1s/2s/4s backoff.
2026-08-21 10:52:34 +08:00
chengyongru c5ae958bc3 fix(tui): avoid blocking local gateway startup 2026-08-20 14:48:31 +08:00
chengyongru c615aee2ca feat(tui): start fresh chats in launch workspace 2026-08-20 11:16:09 +08:00
chengyongru ac13ad65cd fix(memory): preserve replay prefix on session reset 2026-08-19 18:40:20 +08:00
chengyongru 9ef1e292ea fix(session): preserve complete transcripts 2026-08-19 18:40:20 +08:00
chengyongru 3c41d5e7f3 refactor(skills): own explicit runtime context loading 2026-08-19 18:40:20 +08:00
chengyongru cc07ac1e12 fix(memory): avoid re-archiving recent history 2026-08-19 18:40:20 +08:00
chengyongru f13abe0806 refactor(memory): require archive count in prompt 2026-08-19 18:40:20 +08:00
chengyongru f63001828f refactor(memory): guard empty summaries only on write 2026-08-19 18:40:20 +08:00
chengyongru 6bb3b33aac fix(memory): ignore empty consolidation summaries 2026-08-19 18:40:20 +08:00
chengyongru 8a2aa0821b fix(agent): keep explicit skills out of system prompt 2026-08-19 18:40:20 +08:00
chengyongru ff674144d6 fix(memory): reject truncated consolidation output 2026-08-19 18:40:20 +08:00
chengyongru 16be6b0f36 refactor(memory): unify structured consolidation flow 2026-08-19 18:40:20 +08:00
chengyongru d4de0e4e3d test(memory): sharpen compaction coverage 2026-08-19 18:40:20 +08:00
chengyongru 87fb090d22 style(memory): minimize summary diff churn 2026-08-19 18:40:20 +08:00
chengyongru b162019271 refactor(memory): keep session summaries structured 2026-08-19 18:40:20 +08:00
chengyongru fa0605abd0 refactor(memory): simplify idle consolidation flow 2026-08-19 18:40:20 +08:00
chengyongru 960425b3aa fix(memory): remove idle archive request fallback 2026-08-19 18:40:20 +08:00
chengyongru 82e50e2c91 fix(memory): avoid duplicate summary injection 2026-08-19 18:40:20 +08:00
chengyongru 93f71b61a0 fix(memory): reject tool-call-only consolidation 2026-08-19 18:40:20 +08:00
chengyongru 12a4a8c04c fix(memory): preserve idle consolidation boundaries 2026-08-19 18:40:20 +08:00
chengyongru 7335f71c5a perf(memory): reuse session context for idle compaction 2026-08-19 18:40:20 +08:00
chengyongru 2e9c9781e6 fix(webui): detach without waiting for gateway shutdown 2026-08-19 16:34:07 +08:00
chengyongru d7b3abe589 test(exec): wait deterministically for truncation output 2026-08-19 01:34:48 +08:00
chengyongru 9e046815bc fix(webui): assign readable session handles 2026-08-19 01:15:56 +08:00
chengyongru 251a1ccd40 refactor: simplify cross-session messaging 2026-08-19 01:15:56 +08:00
chengyongru 0e184965e8 feat(webui): add lightweight session messaging via mentions 2026-08-19 01:15:56 +08:00
chengyongru df14259717 perf(tui): reduce cold-start latency 2026-08-18 16:28:46 +08:00
chengyongru 369a3443eb fix(gateway): allow Windows launcher PID handoff 2026-08-18 11:51:14 +08:00
Xubin Ren 99d5fa2908 fix(gateway): preserve runtime identity compatibility 2026-08-18 03:21:00 +08:00
Xubin Ren 19ad1adfe7 fix(gateway): stabilize process identities 2026-08-18 03:21:00 +08:00
Xubin Ren b17f227eb9 fix(release): package TUI compliance materials 2026-08-17 20:56:10 +08:00
Xubin Ren 7838e244ba test(gateway): track the claimed process identity 2026-08-17 20:56:10 +08:00
Xubin Ren 6955d709d6 test(gateway): trust claimed readiness marker 2026-08-17 20:56:10 +08:00
Xubin Ren b52660760c test(gateway): harden cross-process probes 2026-08-17 20:56:10 +08:00
Xubin Ren dc3e3c1a2a fix(gateway): prevent lifecycle races 2026-08-17 20:56:10 +08:00
Xubin Ren c671acd6a8 fix(gateway): preserve shared runtime identity 2026-08-17 20:56:10 +08:00