Rod Boev
|
05e14b6339
|
test(#5619): pin same-path model helper fixtures
|
2026-07-05 17:13:07 -04:00 |
|
Rod Boev
|
29e9a27299
|
fix(#5619): preserve same-path cfg overrides on reload
|
2026-07-05 17:08:20 -04:00 |
|
Rod Boev
|
17ee8b5edc
|
test(#5619): pin codex helper to the active config path
|
2026-07-05 17:01:39 -04:00 |
|
Rod Boev
|
1124fd882a
|
fix(#5619): reload model payloads on profile switch
|
2026-07-05 16:44:33 -04:00 |
|
Rod Boev
|
2f815f040c
|
fix(#5619): clear stale cfg overrides on profile switch
|
2026-07-05 16:33:01 -04:00 |
|
Rod Boev
|
4c3a4e011e
|
fix(#5619): reload config cache on profile switch
|
2026-07-05 16:22:35 -04:00 |
|
Rod Boev
|
cc7896cfab
|
test(#5572): prove imported transcript survives clear
|
2026-07-04 18:39:51 -04:00 |
|
Rod Boev
|
b19f447dd7
|
test(#5572): remove unused messaging coverage import
|
2026-07-04 18:34:10 -04:00 |
|
Rod Boev
|
1b65794d1a
|
test(#5572): cover messaging clear watermark semantics
|
2026-07-04 18:07:48 -04:00 |
|
Rod Boev
|
ea2dc31c09
|
fix(#5532): prevent clear from replaying state.db history
|
2026-07-04 15:08:26 -04:00 |
|
Rod Boev
|
6cf5706f78
|
test(#5523): align persisted anchor status invariant
|
2026-07-04 13:51:32 -04:00 |
|
Rod Boev
|
0ec29b14ec
|
test(#5269): keep approval docs reads in tests
|
2026-07-04 13:46:59 -04:00 |
|
Rod Boev
|
3d483d3701
|
test(#5523): harden transparent status regression slice
|
2026-07-04 13:46:59 -04:00 |
|
Rod Boev
|
06764e0924
|
docs(#5269): document gateway approval runs API opt-in
|
2026-07-04 13:37:39 -04:00 |
|
Rod Boev
|
c85db4f3d7
|
fix(#5523): show running tools as running in Transparent Stream
|
2026-07-04 13:37:39 -04:00 |
|
Rod Boev
|
dcaf5a69aa
|
test(docs): harden heartbeat rfc contract guard (#4812)
|
2026-07-04 01:49:24 -04:00 |
|
Rod Boev
|
55ca782c31
|
docs(#4812): keep session sse rfc citations current
|
2026-07-04 01:21:52 -04:00 |
|
Rod Boev
|
fc21c3f38e
|
fix(#5498): keep tombstoned backups out of repair audit
|
2026-07-04 00:53:03 -04:00 |
|
Rod Boev
|
c17ed6371e
|
fix(#5498): preserve messaging sessions outside WebUI tombstones
|
2026-07-04 00:42:07 -04:00 |
|
Rod Boev
|
308041c269
|
fix(#5498): remove unreachable tombstone recovery branch
|
2026-07-03 23:36:10 -04:00 |
|
Rod Boev
|
433f2a860e
|
fix(#5498): skip durable delete tombstones in recovery audit
|
2026-07-03 23:27:48 -04:00 |
|
Rod Boev
|
f566dc1d01
|
docs(#4812): add session sse contract rfc
|
2026-07-03 23:16:16 -04:00 |
|
Rod Boev
|
9e13ec9e03
|
fix(#5498): prevent deleted WebUI sessions from resurrecting from state.db
|
2026-07-03 23:05:44 -04:00 |
|
Rod Boev
|
f32938021c
|
fix(#5428): surface stale WebUI client recovery
|
2026-07-03 17:43:46 -04:00 |
|
Rod Boev
|
af3eb88225
|
Drop redundant live-row suppression after removing the animation source
|
2026-07-03 13:48:20 -04:00 |
|
Rod Boev
|
a9eb90a0d0
|
test(#5435): preserve raw speech settings between API cases
|
2026-07-03 09:22:50 -04:00 |
|
Rod Boev
|
8c82ed8f11
|
fix(#5435): read voice silence timeout at use time
|
2026-07-03 08:57:44 -04:00 |
|
Rod Boev
|
7a21825722
|
fix(#5435): keep speech settings payload sparse
|
2026-07-03 00:22:39 -04:00 |
|
Rod Boev
|
904d741ed2
|
fix(#5367): suppress transparent stream live row animation
|
2026-07-02 23:31:57 -04:00 |
|
Rod Boev
|
1127be609c
|
fix(#5413): smooth Mermaid lightbox resize behavior
|
2026-07-02 22:19:13 -04:00 |
|
Rod Boev
|
7bc33eb054
|
test(#5413): scope resize snapshot to dropdown handler
|
2026-07-02 22:10:05 -04:00 |
|
Rod Boev
|
32a127846e
|
test(#5413): prove fullscreen Mermaid resize cleanup
|
2026-07-02 21:47:57 -04:00 |
|
Rod Boev
|
fdacb4b922
|
fix(#5435): stop startup workspace repair from persisting speech defaults
|
2026-07-02 21:28:46 -04:00 |
|
Rod Boev
|
2034d6b51c
|
fix(#5413): fit fullscreen Mermaid diagrams to the lightbox
|
2026-07-02 21:28:40 -04:00 |
|
Rod Boev
|
8f7b9c1d0d
|
fix(#5435): drop dead persisted-key state from config load
|
2026-07-02 19:38:35 -04:00 |
|
Rod Boev
|
3b344b1d9a
|
fix(#5435): preserve local speech prefs until settings.json owns them
|
2026-07-02 19:33:13 -04:00 |
|
Rod Boev
|
ca31bf969b
|
fix(#5435): keep saved default speech prefs authoritative
|
2026-07-02 16:49:45 -04:00 |
|
Rod Boev
|
7ee2757afe
|
fix(#5435): preserve zero TTS pitch in settings
|
2026-07-02 16:09:15 -04:00 |
|
Rod Boev
|
4993eed120
|
refactor(#5430): reuse shared TTS transport scaffolding
|
2026-07-02 15:43:42 -04:00 |
|
Rod Boev
|
91ae1dede9
|
fix(#5435): persist TTS and voice preferences server-side
|
2026-07-02 15:43:24 -04:00 |
|
Rod Boev
|
482b2e4de6
|
fix(#5427): preserve custom preset selection
|
2026-07-02 15:40:58 -04:00 |
|
Rod Boev
|
cc7c3f9586
|
feat(#5427): add preset cron schedule builder
|
2026-07-02 15:31:59 -04:00 |
|
Rod Boev
|
74724b944d
|
test(#5430): keep no-proxy proof off the live network
|
2026-07-02 15:11:05 -04:00 |
|
Rod Boev
|
fc37919952
|
fix(#5430): harden ElevenLabs TTS transport guards
|
2026-07-02 15:10:01 -04:00 |
|
Rod Boev
|
581bd3044b
|
test(cron): isolate legacy mocks from PROJECTS_FILE reads (#5379)
|
2026-07-02 04:36:45 +00:00 |
|
Rod Boev
|
fd4d57b6da
|
test(cron): align the legacy fixture with PROJECTS_FILE (#5379)
|
2026-07-02 04:36:45 +00:00 |
|
Rod Boev
|
8e398cd1b3
|
fix(cron): stop auto-creating the Cron Jobs project without project opt-in (#5379)
|
2026-07-02 04:36:45 +00:00 |
|
Rod Boev
|
feaf9a423e
|
fix(#4737): retry even when the synth fallback is empty
|
2026-07-01 16:30:34 -04:00 |
|
Rod Boev
|
c5378cb96a
|
fix(#4737): skip stale live-model fetch before catalog retry
|
2026-07-01 16:23:36 -04:00 |
|
Rod Boev
|
f3c01812b7
|
fix(#4251): drop dead post-repair ownership writes
|
2026-07-01 16:20:31 -04:00 |
|
Rod Boev
|
481a6680c1
|
fix(#4737): restore source-shape contracts for model refresh retry
|
2026-07-01 16:19:53 -04:00 |
|
Rod Boev
|
a609b99e76
|
fix(#4251): guard provider ownership under the session lock
|
2026-07-01 16:19:53 -04:00 |
|
Rod Boev
|
d0e99e9d84
|
fix(#4737): preserve boot redirect handling on catalog retry
|
2026-07-01 16:03:08 -04:00 |
|
Rod Boev
|
d73bea19cd
|
fix(#4737): retry model catalog fetch once after cold-cache fallback
|
2026-07-01 15:56:04 -04:00 |
|
Rod Boev
|
5c7ff9c70e
|
fix(#4251): preserve raced picker ownership through profile repair
|
2026-07-01 15:42:57 -04:00 |
|
Rod Boev
|
160a397c48
|
fix(#4251): stop in-flight turns from reverting picker model choice
|
2026-07-01 15:35:08 -04:00 |
|
Rod Boev
|
c561cf546b
|
fix(#5340): use local time for pasted-text filenames
|
2026-07-01 15:22:59 -04:00 |
|
Rod Boev
|
2ea5fe06fa
|
fix(#3825): harden oidc endpoint and claim validation
|
2026-06-30 20:59:19 -04:00 |
|
Rod Boev
|
027ad18834
|
test(#5231): harden JS source extraction coverage
|
2026-06-30 16:06:39 -04:00 |
|
Rod Boev
|
e8631b808f
|
fix(#5231): unblock Run dispatcher on the default Kanban board
|
2026-06-30 15:49:09 -04:00 |
|
Rod Boev
|
66fc8722c1
|
fix(#4676): expose quick-create button purpose to screen readers
|
2026-06-30 19:28:28 +00:00 |
|
Rod Boev
|
80dbbc1e93
|
fix(#4676): swallow duplicate quick-create inflight rejections
|
2026-06-30 19:28:27 +00:00 |
|
Rod Boev
|
0ea9e72a9a
|
docs(#4676): clarify quick-create rollback ownership
|
2026-06-30 19:28:27 +00:00 |
|
Rod Boev
|
a109f86946
|
Keep project quick-create filter changes in sync with session creation outcomes
|
2026-06-30 19:28:27 +00:00 |
|
Rod Boev
|
08c4004271
|
Preserve touch quick-create clicks while blocking chip long-press leakage
|
2026-06-30 19:28:27 +00:00 |
|
Rod Boev
|
a9871bbd9f
|
Harden project quick-create against eval-arg drift and touch long-press leakage
|
2026-06-30 19:28:27 +00:00 |
|
Rod Boev
|
5f78e0f100
|
test(projects): remove dead local from quick-create harness (#4676)
|
2026-06-30 19:28:27 +00:00 |
|
Rod Boev
|
11882aab2a
|
feat(projects): add per-project new conversation shortcuts (#4676)
|
2026-06-30 19:28:27 +00:00 |
|
Rod Boev
|
6b9686d5ae
|
fix(#4961): preserve authenticated drafts without starting a session
|
2026-06-30 14:31:28 -04:00 |
|
Rod Boev
|
a13b8b996c
|
Keep done-settle unread metadata aligned with compacted counts
|
2026-06-30 08:50:25 -04:00 |
|
Rod Boev
|
0c67db9513
|
fix(#5270): keep cron reply tests compatible with route refresh
|
2026-06-30 08:41:14 -04:00 |
|
Rod Boev
|
22275c895e
|
fix(#5270): keep chat-start auth tests compatible with route refresh
|
2026-06-30 08:37:36 -04:00 |
|
Rod Boev
|
5f07e12387
|
fix(#5270): route the continuity refresh through chat start
|
2026-06-30 08:33:20 -04:00 |
|
Rod Boev
|
85fac54831
|
fix(#5273): sync active viewed count on done settle
|
2026-06-30 08:31:01 -04:00 |
|
Rod Boev
|
cbe36c0ada
|
fix(#5270): confine continuity repair to the chat path
|
2026-06-30 08:18:43 -04:00 |
|
Rod Boev
|
7e0936f3f1
|
fix(#5270): preserve first WebUI continuation context for CLI sessions
|
2026-06-30 07:47:57 -04:00 |
|
Rod Boev
|
51a0fca24a
|
fix(#5092): continue WebUI goals after gateway turns
|
2026-06-30 05:04:32 +00:00 |
|
Rod Boev
|
eb3c5a26bd
|
Clarify terminal marker replacement semantics
|
2026-06-30 03:33:55 +00:00 |
|
Rod Boev
|
ae67cd3428
|
test(chat): refresh restore guard source-shape assertions (#5224)
|
2026-06-30 03:33:55 +00:00 |
|
Rod Boev
|
494d137082
|
fix(chat): scope transcript preserve to the current terminal tail (#5224)
|
2026-06-30 03:33:55 +00:00 |
|
Rod Boev
|
fd35d8c9ab
|
fix(chat): narrow transcript preservation to stale-prefix restores (#5224)
|
2026-06-30 03:33:55 +00:00 |
|
Rod Boev
|
42cc02634a
|
test(chat): refresh terminal recovery source-shape guards (#5224)
|
2026-06-30 03:33:55 +00:00 |
|
Rod Boev
|
c17f222427
|
fix(chat): preserve visible transcript on terminal stream failure (#5224)
|
2026-06-30 03:33:55 +00:00 |
|
Rod Boev
|
c2a0472514
|
test(#5250): harden settings menu selector contract
|
2026-06-29 22:56:07 -04:00 |
|
Rod Boev
|
600f1d3a61
|
test(#3825): fix OIDC regression checks
|
2026-06-29 22:31:45 -04:00 |
|
Rod Boev
|
39fbcb493b
|
fix(auth): harden OIDC issuer and EC token checks (#3825)
|
2026-06-29 22:31:45 -04:00 |
|
Rod Boev
|
3b26cab859
|
fix(auth): keep OIDC startup warnings off the optional crypto path (#3825)
|
2026-06-29 22:31:45 -04:00 |
|
Rod Boev
|
f7a9c98810
|
fix(auth): harden OIDC key selection and startup guidance (#3825)
|
2026-06-29 22:28:53 -04:00 |
|
Rod Boev
|
7d0e86ecc5
|
fix(auth): require an explicit OIDC allowlist (#3825)
|
2026-06-29 22:28:53 -04:00 |
|
Rod Boev
|
1167617e74
|
fix(auth): harden OIDC login links and token handling (#3825)
|
2026-06-29 22:28:53 -04:00 |
|
Rod Boev
|
585fab50c2
|
fix(auth): keep login rendering stable while adding OIDC (#3825)
|
2026-06-29 22:28:53 -04:00 |
|
Rod Boev
|
e0e10cb106
|
feat(auth): add native OIDC login for WebUI sessions (#3825)
|
2026-06-29 22:28:53 -04:00 |
|
Rod Boev
|
761ffc5d96
|
fix(#5250): let settings search results escape the menu clip
|
2026-06-29 22:23:00 -04:00 |
|
Rod Boev
|
07a8c7dc6f
|
fix(session): preserve kept tool rows on ambiguous truncate (#5134)
|
2026-06-30 01:40:07 +00:00 |
|
Rod Boev
|
e9387f8aa5
|
fix(session): fail closed on ambiguous truncate context matches (#5134)
|
2026-06-30 01:40:07 +00:00 |
|
Rod Boev
|
02a3750488
|
fix(session): keep truncate rewind on complete turns (#5134)
|
2026-06-30 01:40:07 +00:00 |
|
Rod Boev
|
3627c9e5d8
|
fix(session): drop interleaved tool rows after mid-history truncate (#5134)
|
2026-06-30 01:40:07 +00:00 |
|
Rod Boev
|
e2a1a54b37
|
fix(#4843): preserve falsy /pet hook messages
|
2026-06-29 18:26:40 -04:00 |
|
Rod Boev
|
db5d406d88
|
fix(boot): restore voice-mode runtime prefs during prefill rework (#4961)
|
2026-06-29 17:36:51 -04:00 |
|
Rod Boev
|
affdb40a1c
|
fix(config): route stale model reads through shared reload gate (#5220)
|
2026-06-29 20:50:34 +00:00 |
|