Rod Boev
4f2bcada31
fix( #5047 ): keep sync refresh followers coalesced
2026-06-27 13:35:24 +00:00
Rod Boev
8da4c7a334
fix( #5047 ): require live rebuild publication for refresh reuse
2026-06-27 13:35:24 +00:00
Rod Boev
bcfec68c5c
fix( #5047 ): cover bounded refresh followers
2026-06-27 13:35:24 +00:00
Rod Boev
53d44d3795
fix( #5047 ): coalesce session-visit refresh followers
2026-06-27 13:35:24 +00:00
nesquena-hermes
db15233c4f
Merge pull request #5052 from nesquena/release/stage-5050-memhover
...
Release: memory-section hover path titles (#5050 , fixes #5045 )
2026-06-27 03:57:19 -07:00
nesquena-hermes
e7cd8f5f12
Release: memory-section hover path titles ( #5050 , fixes #5045 )
2026-06-27 10:52:29 +00:00
Rod Boev
f65543f88e
fix( #5045 ): add memory-section hover path titles
2026-06-27 06:05:28 -04:00
nesquena-hermes
8b2d3db2e6
Merge pull request #5044 from nesquena/release/stage-5041-approval
...
Release: relay mirrored gateway approvals after stream loss (#5041 , fixes #5000 )
2026-06-26 23:19:25 -07:00
nesquena-hermes
e47c336981
Release: relay mirrored gateway approvals after stream loss ( #5041 , fixes #5000 )
2026-06-27 06:14:26 +00:00
Rod Boev
e621d7360a
test( #5000 ): keep gateway approval regressions CI-portable
2026-06-27 06:03:24 +00:00
Rod Boev
8f0cc7912b
fix( #5000 ): settle mirrored gateway approval cleanup
2026-06-27 06:03:24 +00:00
Rod Boev
5f1e308341
fix( #5000 ): relay mirrored gateway approvals after stream loss
2026-06-27 06:03:24 +00:00
nesquena-hermes
2d9422adf2
Merge pull request #5043 from nesquena/release/stage-4964-postinstall
...
Release: extension post-install next steps in gallery (#4964 , fixes #4959 )
2026-06-26 22:58:33 -07:00
nesquena-hermes
470769454f
Release: extension post-install next steps in gallery ( #4964 , fixes #4959 )
2026-06-27 05:53:40 +00:00
nesquena-hermes
11260c8df5
feat(extensions): show post-install next steps in the gallery ( #4964 )
...
Renders generic registry post_install guidance + lifecycle requirements in the
Settings extensions gallery card (manifest-driven, no vendor special-casing).
Fixes #4959 . Rebased onto current master (squash-applied #4964 's net diff so it
coexists with the #4979 sidecar-runtime-status feature that landed in v0.51.697).
Co-authored-by: franksong2702 <franksong2702@users.noreply.github.com>
2026-06-27 05:44:10 +00:00
nesquena-hermes
1b3b49b33d
Merge pull request #5042 from nesquena/release/stage-4979-extruntime
...
Release: extension sidecar runtime status in diagnostics panel (#4979 )
2026-06-26 22:37:35 -07:00
nesquena-hermes
0825612a59
Release: extension sidecar runtime status in diagnostics panel ( #4979 )
2026-06-27 05:33:40 +00:00
nesquena-hermes
64e877b432
fix(extensions): don't preserve loading/error placeholder as existing diagnostics
...
Codex gate finding on #4979 : loadExtensionsPanel({preserveExisting:true}) on the
diagnostics tab treated the 'Loading extension diagnostics…' placeholder as real
content, so a failed refresh returned early (preserveExisting && innerHTML.trim())
and left the panel stuck on 'Loading…' instead of rendering the error. Exclude the
.extensions-loading/.extensions-error placeholders from the preserve check + add a
regression assertion.
Co-authored-by: franksong2702 <franksong2702@users.noreply.github.com>
2026-06-27 05:21:45 +00:00
Frank Song
33e95277ca
Honor preserved extension diagnostics refresh failures
...
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-06-27 05:13:10 +00:00
Frank Song
71dd4a6ab8
Polish extension sidecar diagnostics refresh
...
Keep the Diagnostics tab content visible while status refreshes on repeat visits, and reject malformed or far-future sidecar runtime timestamps before rendering relative age text.
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-06-27 05:12:50 +00:00
Frank Song
d2eedd85f8
Show extension sidecar runtime status
2026-06-27 05:12:50 +00:00
nesquena-hermes
d38aa51a8c
Merge pull request #5040 from nesquena/release/stage-5036-notif
...
Release: completion notification previews settled final answer (#5036 , fixes #5035 )
2026-06-26 22:07:57 -07:00
nesquena-hermes
1035c24fb2
Release: completion notification previews settled final answer ( #5036 , fixes #5035 )
2026-06-27 05:03:17 +00:00
b3nw
121ac7f253
fix: coerce msgContent to string in completion notification preview
...
Greptile P1 on #5036 : block-array content can make msgContent return a
non-string; normalize before .replace() in preview helper.
2026-06-27 04:50:08 +00:00
b3nw
a84fc8e5c2
Fix completion notification preview to use settled final answer
...
The SSE done handler previously used assistantText.slice(0, 100), which
captures the start of the live-stream accumulator (early tokens and interim
updates) rather than the final answer shown after tools settle.
Add _completionNotificationPreviewText() using anchor final-answer projection
and settled message content, with a cleaned live-stream fallback. Hoist
lastAsst so background completions on non-active panes still get preview text.
Update PWA notification regression tests.
Closes #5035
2026-06-27 04:50:08 +00:00
nesquena-hermes
173eb67715
Merge pull request #5038 from nesquena/release/stage-5031-onboarding
...
Release: onboarding searchable model picker (#5031 , fixes #4706 )
2026-06-26 21:47:04 -07:00
nesquena-hermes
cee278391e
Release: onboarding searchable model picker ( #5031 , fixes #4706 )
2026-06-27 04:42:14 +00:00
nesquena-hermes
0a32fb899f
fix(onboarding): rehydrate plain-select fallback so saved model isn't reset to option[0]
...
Codex gate finding on #5031 : when _mountSearchableModelSelect is absent the
fallback returns the old plain <select>, but the post-render rehydration
(modelSel.value = ONBOARDING.form.model) was removed — so a saved/default model
that isn't the first option would be silently replaced by option[0] on render.
Restore the rehydration in an else branch + add a regression test.
Co-authored-by: rodboev <rodboev@users.noreply.github.com>
2026-06-27 04:33:02 +00:00
Rod Boev
88911448ff
fix( #4706 ): keep onboarding picker state aligned after custom clear
2026-06-27 04:25:45 +00:00
Rod Boev
d0eb9b57df
fix( #4706 ): reuse the searchable model picker in onboarding
2026-06-27 04:25:45 +00:00
nesquena-hermes
12b269f94c
Merge pull request #5037 from nesquena/release/stage-4876-fr
...
Release: complete French localization (#4876 , rebased + fixed)
2026-06-26 21:19:55 -07:00
nesquena-hermes
532ac22e77
Release: French localization completion ( #4876 )
2026-06-27 04:10:26 +00:00
nesquena-hermes
1463aedd69
fix(i18n): rebase French translation onto master — union-merge new keys, restore theme_usage nbsp, bump open_in_vscode locale count 13->14 (fr gap closed)
...
Co-authored-by: Pichatu <4161398+Pichatu@users.noreply.github.com>
2026-06-27 04:09:36 +00:00
Pichatu
688fd1f6f1
Fixing grammatical errors
2026-06-27 04:04:12 +00:00
Pichatu
e83f820995
Fix French
2026-06-27 04:04:12 +00:00
Pichatu
7f887a7839
Fix French translation
2026-06-27 04:04:12 +00:00
nesquena-hermes
dc25d0aa64
Merge pull request #5034 from nesquena/release/stage-t1-tier1
...
Release: tier-1 batch — graphite chip contrast (#4888 ), memory file paths (#5025 ), mobile dashboard link hide (#4997 )
2026-06-26 20:54:05 -07:00
nesquena-hermes
dee0080951
Release: tier-1 batch ( #4888 , #5025 , #4997 ) — graphite chip contrast, memory file paths, mobile dashboard link hide
2026-06-27 03:49:53 +00:00
nesquena-hermes
1ff3f2f3ac
Merge PR #4997 into tier-1 batch
2026-06-27 03:39:10 +00:00
nesquena-hermes
298f7af562
Merge PR #5025 into tier-1 batch
2026-06-27 03:39:10 +00:00
nesquena-hermes
59f14f05cd
Merge PR #4888 into tier-1 batch
2026-06-27 03:39:10 +00:00
nesquena-hermes
600d196efd
Release YV (v0.51.692): bound boot /api/models 401 via shared boot budget ( #5026 , fixes #5021 )
...
Release YV (v0.51.692): bound boot /api/models 401 via shared boot budget (#5026 , fixes #5021 )
2026-06-26 20:06:03 -07:00
nesquena-hermes
f95f8c39bb
Release YV (v0.51.692): bound boot /api/models 401 via shared boot budget ( #5026 , fixes #5021 )
...
Co-authored-by: rodboev <rodboev@users.noreply.github.com>
2026-06-27 03:03:08 +00:00
Rod Boev
1bff768c74
fix( #5021 ): preserve extra-model label contract
2026-06-27 02:52:33 +00:00
Rod Boev
288cbb55bc
fix( #5021 ): keep boot model budget across restore paths
2026-06-27 02:52:33 +00:00
Rod Boev
a18ddae930
fix( #5021 ): retry generic model auth after boot 401
2026-06-27 02:52:33 +00:00
Rod Boev
7b5941dff9
test( #5021 ): harden boot redirect proof
2026-06-27 02:52:33 +00:00
Rod Boev
576834a195
fix( #5021 ): keep restored-session boot inside the shared 401 budget
2026-06-27 02:52:33 +00:00
Rod Boev
df1cb13cd5
fix( #5021 ): keep boot 401 budget out of later dropdown refreshes
2026-06-27 02:52:33 +00:00
Rod Boev
0b9235c646
test( #5021 ): keep active-profile recovery harness aligned
2026-06-27 02:52:33 +00:00