nesquena-hermes
bac8a5205b
docs(changelog): stamp #7420 + #7814
2026-09-26 05:11:46 +00:00
nesquena-hermes
728472cacb
Merge PR #7814 (@happy5318): Chinese remote-access guide
2026-09-26 05:06:30 +00:00
nesquena-hermes
0265bd0880
Merge PR #7420 (@taljeon): README leads with Tailscale Serve
2026-09-26 05:06:30 +00:00
nesquena-hermes and happy5318
94539cf074
docs(zh): correct the .env precedence note for start.ps1
...
The new "改完密码先验证一下" note said start.sh, start.ps1 and bootstrap.py all let
repo-.env values override an inline HERMES_WEBUI_PASSWORD. That holds for start.sh
(`set -a; source .env` runs before anything else), but start.ps1 skips any .env key that
is already set in the environment (start.ps1:70-72), so on native Windows the
`$env:HERMES_WEBUI_PASSWORD` shown in this section wins. start.ps1 runs server.py
directly, so the suggested HERMES_WEBUI_PRESERVE_ENV=1 did not apply to it either.
Keep the useful advice (check the login page actually asks for the new password, and
look for a stale value in .env), state the correct precedence for each launcher, and
drop the PRESERVE_ENV suggestion.
Co-authored-by: happy5318 <34227488+happy5318@users.noreply.github.com >
2026-09-26 05:01:24 +00:00
nesquena-hermes
24dd1fbd58
docs(zh): correct the public-exposure note (WebUI does rate-limit logins; the gap is plaintext HTTP)
2026-09-24 19:47:45 +00:00
nesquena-hermes
ae05896eb5
docs(changelog): #7785 gateway turns survive a WebUI restart
2026-09-24 19:15:19 +00:00
nesquena-hermes
15ac01e2c3
Merge PR #7785 into stage/0924-o
2026-09-24 19:15:12 +00:00
nesquena-hermes
1317ba0148
docs(changelog): #7789 console-noise fixes
2026-09-24 19:01:38 +00:00
nesquena-hermes
016a04c0b6
Merge PR #7789 into stage/0924-n
2026-09-24 19:01:31 +00:00
nesquena-hermes
8622bdfb31
docs(changelog): #6659 project-assigned CLI sessions survive the recent cap
2026-09-24 18:50:08 +00:00
nesquena-hermes
145cab958d
Merge PR #6659 into stage/0924-m
2026-09-24 18:49:38 +00:00
nesquena-hermes
57e8693739
docs(changelog): #7577 stop cross-client clobber of unread state
2026-09-24 17:53:40 +00:00
nesquena-hermes
96921c2cfc
Merge PR #7577 into stage/0924-l
2026-09-24 17:53:18 +00:00
nesquena-hermes
a07f18617f
docs(changelog): #7632 keep per-profile models cache across profile switch
2026-09-24 16:53:40 +00:00
nesquena-hermes
b26839b996
Merge PR #7632 into stage/0924-k
2026-09-24 16:53:13 +00:00
nesquena-hermes
1c4d5abf28
docs(changelog): #6717 virtual measurement retry budget no longer resets on window oscillation
2026-09-24 14:26:51 +00:00
nesquena-hermes
38c5c69b63
Merge PR #6717 into stage/0924-i
2026-09-24 14:26:32 +00:00
nesquena-hermes
28edb04ebd
test: widen renderMessages() source window in R16d guard-order probe
...
The #6717 burst-reset call grows the renderMessages() preamble, pushing the
render-window reset past the probe's 1400-char slice. Widen it to 2400; the
guard-before-reset ordering assertion is unchanged and still passes on master.
2026-09-24 14:02:48 +00:00
nesquena-hermes
73d08d3cfb
test: follow the #6717 render-scheduler signature; guard the burst reset for node harnesses
...
_scheduleMessageVirtualizedRender now takes (force, request), so the two
structural probes in test_issue4346_vscroll_footer_jitter.py matched nothing.
renderMessages() calls _resetMessageVirtualMeasurementBurst(), which node
harnesses that extract renderMessages() alone (test_compaction_current_summary_fallback.py)
don't define; guard it with typeof like the file's other optional helpers.
2026-09-24 13:43:12 +00:00
nesquena-hermes
82ee11c71f
docs(changelog): #6895 custom-provider model prefix stripped before send
2026-09-24 13:25:26 +00:00
nesquena-hermes
1cb16f6037
Merge PR #6895 into stage/0924-h
2026-09-24 13:25:15 +00:00
nesquena-hermes
3f76b8a3a9
docs(changelog): #6565 lineage reset/tool children stay separate
2026-09-24 13:04:39 +00:00
nesquena-hermes
30f12dc526
Merge PR #6565 into stage/0924-g
2026-09-24 13:04:21 +00:00
nesquena-hermes
1633658fa5
test( #6717 ): assert the non-consecutive repeat condition
...
The production guard now ends the burst only on a non-consecutive repeat
(A -> B -> A), so a window needing a second re-measure is not mistaken for
oscillation. Update the structural assertion to that condition.
2026-09-24 12:57:14 +00:00
nesquena-hermes
5a2105684d
docs(changelog): stamp #7301 under [Unreleased]
2026-09-24 11:27:12 +00:00
nesquena-hermes
c2c8ef5fce
Merge PR #7301 from laitekin/fix/7299-hidden-session-poll
2026-09-24 11:26:41 +00:00
nesquena-hermes
cb7852cdc1
docs(changelog): stamp #7754 under [Unreleased]
2026-09-24 10:55:11 +00:00
nesquena-hermes
0adc1f6e4f
Merge PR #7754 from starship-s/fix/image-turn-display-context
2026-09-24 10:54:56 +00:00
nesquena-hermes
315ea7d3a8
fix(models): let a marked image row consume its replay slot
...
The row-id fast path for a marked native-image mirror row continued
without advancing state_replay_idx, unlike the ordinary and multimodal-
mirror replay paths. The edited checkpoint then never read as consumed,
so a rerun reply that exists only in state.db was truncated. Master (no
marker branch) keeps that reply.
Advance the replay index when the resolved sidecar row is the next
expected visible row, the same guard the mirror branch uses. Adds a
regression that fails without the fix: sidecar [u1,a1,img#42,a_img,uE],
state [.., marked img#42, a_img, u_old, a_old, uE, aE], watermark 900,
boundary 861 -> aE survives, u_old/a_old stay out.
Found by the release-manager advisor gate on #7754 .
2026-09-24 10:47:47 +00:00
nesquena-hermes
026bad541d
docs(changelog): stamp #7720 under [Unreleased]
2026-09-24 09:58:07 +00:00
nesquena-hermes
19908b5db4
Merge PR #7720 : scope MCP status, inventory and /reload-mcp to the request profile
2026-09-24 09:58:07 +00:00
nesquena-hermes
d261041a9a
test(mcp): import the fake server class under mcp 1.x and 2.x
...
mcp 2.x removed mcp.server.fastmcp (the high-level server is now
mcp.server.MCPServer), so the fake stdio server in this test failed to
start on hosts with mcp 2.x installed and four tests failed there. CI pins
mcp<2, so this only affected local runs. Try the 1.x import first and fall
back to the 2.x name.
2026-09-24 09:57:52 +00:00
nesquena-hermes
3f29a5be08
docs(changelog): stamp #6746 under [Unreleased]
2026-09-24 08:05:40 +00:00
nesquena-hermes
10faa69155
Merge PR #6746 from happy5318/fix/mobile-enter-newline
2026-09-24 08:05:12 +00:00
nesquena-hermes
60f61f9038
docs(changelog): stamp #7798 under [Unreleased]
2026-09-24 06:57:37 +00:00
nesquena-hermes
18cf0fa0ba
Merge PR #7798 from webtecnica/fix/7548-cli-archived-sessions-projection
2026-09-24 06:57:17 +00:00
nesquena-hermes and webtecnica
5ecf92382a
test( #7548 ): mark the monkeypatch-target import as intentional (ruff F401)
...
Co-authored-by: webtecnica <webtecnica@users.noreply.github.com >
2026-09-24 06:56:57 +00:00
nesquena-hermes and webtecnica
afcb1bf420
test( #7548 ): expect archived=None for a missing sidecar
...
The sidecar default is now 'no opinion' (None) so the projection can fall
back to state.db's archived flag. Update the #4842 perf test's missing-
sidecar expectation to match.
Co-authored-by: webtecnica <webtecnica@users.noreply.github.com >
2026-09-24 06:45:50 +00:00
nesquena-hermes
3116280dce
docs(changelog): stamp #7628 , #7493 , #6433 under [Unreleased]
2026-09-24 03:38:33 +00:00
nesquena-hermes
a1b3c068f7
docs: document HERMES_WEBUI_SETTINGS_FILE ( #6433 ) incl. restart-to-change note
2026-09-24 03:15:28 +00:00
nesquena-hermes
16acb63a6d
fix(notifications): auto-request 'default' permission at most once per page
...
A pending approval/clarify prompt re-surfaces on every 1.5s poll tick, and
with permission still 'default' (second browser/device) each tick issued a
non-gesture Notification.requestPermission() and toasted 'notifications
denied'. Auto requests are now made once per page; the explicit Send-test
path still always asks. Release-gate hardening on top of #7493 .
2026-09-24 03:15:09 +00:00
nesquena-hermes
ea5f7730be
Merge PR #6433 into stage/0924-a
2026-09-24 03:15:02 +00:00
nesquena-hermes
1c4072228e
Merge PR #7493 into stage/0924-a
2026-09-24 03:15:02 +00:00
nesquena-hermes
0b8d6d6fd8
Merge PR #7628 into stage/0924-a
...
# Conflicts:
# static/messages.js
2026-09-24 03:15:02 +00:00
nesquena-hermes
57eb9fc1f4
Merge master into stage/7765-subagent-project
...
# Conflicts:
# CHANGELOG.md
2026-09-23 21:56:19 +00:00
nesquena-hermes
fab2502928
Merge master into stage/7779-cron-provider-pin
...
# Conflicts:
# CHANGELOG.md
2026-09-23 21:44:20 +00:00
nesquena-hermes
a78680a341
Merge master (exp-v0.52.362) into stage/7765-subagent-project
...
# Conflicts:
# CHANGELOG.md
2026-09-23 21:38:12 +00:00
nesquena-hermes
8692e0d325
Merge master (exp-v0.52.362) into stage/7779-cron-provider-pin
...
# Conflicts:
# CHANGELOG.md
2026-09-23 21:36:55 +00:00
nesquena-hermes
3b5cd93309
Merge master (exp-v0.52.362) into stage/7610-oob-writeback
...
# Conflicts:
# CHANGELOG.md
2026-09-23 21:24:29 +00:00
nesquena-hermes
ac0a6d08a7
Merge master (exp-v0.52.361) into stage/7578-save-count
...
# Conflicts:
# CHANGELOG.md
2026-09-23 21:13:41 +00:00
nesquena-hermes
b85594f602
docs(changelog): #7765
2026-09-23 18:36:16 +00:00
nesquena-hermes
9dfd9d4e9f
docs(changelog): #7779
2026-09-23 18:36:16 +00:00
nesquena-hermes
c960ab601b
docs(changelog): #7610
2026-09-23 18:36:16 +00:00
nesquena-hermes
19693918fa
docs(changelog): #7578
2026-09-23 18:36:16 +00:00
nesquena-hermes
4f88aa1026
docs(changelog): #7682
2026-09-23 18:36:16 +00:00
nesquena-hermes
3f85d3bbc4
Merge PR #7765 into stage/7765-subagent-project
2026-09-23 18:23:46 +00:00
nesquena-hermes
d7530ab90a
Merge PR #7779 into stage/7779-cron-provider-pin
2026-09-23 18:23:39 +00:00
nesquena-hermes
ab130f2cd0
Merge PR #7610 into stage/7610-oob-writeback
2026-09-23 18:23:35 +00:00
nesquena-hermes
350e30ab26
Merge PR #7578 into stage/7578-save-count
2026-09-23 18:23:31 +00:00
nesquena-hermes
e3e304edae
Merge PR #7682 into stage/7682-stale-cancel
2026-09-23 18:23:27 +00:00
nesquena-hermes
6ba0a84bf0
Merge master (exp-v0.52.359) into stage/7767-runtime-model
...
# Conflicts:
# CHANGELOG.md
2026-09-23 16:59:54 +00:00
nesquena-hermes
b2b5ea282c
Merge master (exp-v0.52.358) into stage/7651-inflight-cursor
...
# Conflicts:
# CHANGELOG.md
2026-09-23 16:38:29 +00:00
nesquena-hermes
4c0cba898f
Merge master (exp-v0.52.357) into stage/7743-context-baseurl
...
# Conflicts:
# CHANGELOG.md
2026-09-23 16:26:14 +00:00
nesquena-hermes
4ca1754ba0
test( #7767 ): bind nonlocal closure state when extracting _agent_status_callback
...
#7767 makes _agent_status_callback declare 'nonlocal _last_runtime_model_identity'
(reset on a fallback warning). #7760 's test compiled the extracted callback alone
at module level, where a nonlocal has no binding -> SyntaxError, failing all six
relay tests. Wrap the callback in a scope that binds every nonlocal it declares.
Verified: 16/16 with and without the Agent on py3.11; still 16/16 against master's
callback (no nonlocal); reverting reproduces the 6 failures.
2026-09-23 16:17:17 +00:00
nesquena-hermes
a4b2264446
docs(changelog): #7651
2026-09-23 14:34:41 +00:00
nesquena-hermes
16bc5ab3ed
docs(changelog): #7743
2026-09-23 14:34:41 +00:00
nesquena-hermes
ef7d325a54
docs(changelog): #7774
2026-09-23 14:34:41 +00:00
nesquena-hermes
866cb31e6a
docs(changelog): #7767
2026-09-23 14:34:41 +00:00
nesquena-hermes
9b6f70c959
Merge PR #7767 into stage/7767-runtime-model
2026-09-23 14:11:17 +00:00
nesquena-hermes
d3a5e7579a
Merge PR #7651 into stage/7651-inflight-cursor
2026-09-23 14:11:13 +00:00
nesquena-hermes
7c9d3b53d6
Merge PR #7743 into stage/7743-context-baseurl
2026-09-23 14:11:09 +00:00
nesquena-hermes
889d9b1f5d
Merge PR #7774 into stage/7774-vanished-owner
2026-09-23 14:11:06 +00:00
nesquena-hermes
e577777051
Merge master (exp-v0.52.355) into stage/7760-lease-warnings
...
# Conflicts:
# CHANGELOG.md
2026-09-23 13:06:40 +00:00
nesquena-hermes
fbfb737f72
Merge master (exp-v0.52.354) into stage/7761-watcher-fence
...
# Conflicts:
# CHANGELOG.md
2026-09-23 12:57:23 +00:00
nesquena-hermes
ae081638d6
Merge master into stage/7760-lease-warnings
...
# Conflicts:
# CHANGELOG.md
2026-09-23 12:47:53 +00:00
nesquena-hermes
c5d8e5fe4f
Merge master into stage/7761-watcher-fence
...
# Conflicts:
# CHANGELOG.md
2026-09-23 12:47:36 +00:00
nesquena-hermes
4eef3f3bbf
Merge master into stage/7758-wakeup-budget
...
# Conflicts:
# CHANGELOG.md
2026-09-23 12:46:45 +00:00
nesquena-hermes
f159d6d219
Merge master (exp-v0.52.352) into stage/7730-browser-locale
...
# Conflicts:
# CHANGELOG.md
2026-09-23 11:41:53 +00:00
nesquena-hermes
002945c85a
Merge master (exp-v0.52.351) into stage/7730-first-visit-locale
2026-09-23 11:33:37 +00:00
nesquena-hermes
00cefff681
Merge master (exp-v0.52.351) into stage/7165-custom-allowlist
2026-09-23 11:33:37 +00:00
nesquena-hermes
9e8426236a
docs(changelog): #7760
2026-09-23 10:41:45 +00:00
nesquena-hermes
75554fd7d6
docs(changelog): #7761
2026-09-23 10:41:22 +00:00
nesquena-hermes
0327db23ef
docs(changelog): #7758
2026-09-23 10:41:22 +00:00
nesquena-hermes
86b95eadb7
Merge PR #7760 into stage/7760-lease-warnings
2026-09-23 10:29:33 +00:00
nesquena-hermes
ec78f8a80d
Merge PR #7761 into stage/7761-watcher-fence
2026-09-23 10:29:29 +00:00
nesquena-hermes
7f4668eb1a
Merge PR #7758 into stage/7758-wakeup-budget
2026-09-23 10:29:26 +00:00
nesquena-hermes
c767ac70b3
docs(changelog): #7730
2026-09-23 10:23:04 +00:00
nesquena-hermes
b43a3b4d43
docs(changelog): #7165
2026-09-23 10:23:03 +00:00
nesquena-hermes
aebcd96ff8
Merge PR #7730 into stage/7730-first-visit-locale
2026-09-23 10:22:45 +00:00
nesquena-hermes
dc554cbd1c
Merge PR #7165 into stage/7165-custom-allowlist
2026-09-23 10:22:41 +00:00
nesquena-hermes
0ff718bb11
docs(changelog): #7656 resolve-concurrency setting
2026-09-23 10:16:42 +00:00
nesquena-hermes
daad118675
Merge PR #7656 (@happy5318) into stage/7656-resolve-cap
2026-09-23 10:16:21 +00:00
nesquena-hermes
86d5b36898
Merge master (exp-v0.52.349) into stage/7708-media-backtick
...
# Conflicts:
# CHANGELOG.md
2026-09-23 08:50:25 +00:00
nesquena-hermes
69655b1fc6
Merge master (exp-v0.52.348) into stage/7749-terminal-handoff
...
# Conflicts:
# CHANGELOG.md
2026-09-23 08:37:23 +00:00
nesquena-hermes
d06ee674a3
Merge master (exp-v0.52.347) into stage/7708-media-backtick
...
# Conflicts:
# CHANGELOG.md
2026-09-23 08:29:47 +00:00
nesquena-hermes
adda410ec0
Merge master (exp-v0.52.347) into stage/7749-terminal-handoff
...
# Conflicts:
# CHANGELOG.md
2026-09-23 08:29:47 +00:00
nesquena-hermes
64106a790d
Merge master (exp-v0.52.347) into stage/7751-journal-seq
...
# Conflicts:
# CHANGELOG.md
# docs/rfcs/webui-run-state-consistency-contract.md
2026-09-23 08:28:18 +00:00
nesquena-hermes
398d9495ef
docs(changelog): #7749
2026-09-23 06:25:04 +00:00
nesquena-hermes
e1c707c6d4
Merge PR #7749 (contributor head bbca954c5c)
2026-09-23 06:24:37 +00:00
nesquena-hermes
167a932326
docs(changelog): #7708
2026-09-23 06:23:42 +00:00