Commit Graph
100 Commits
Author SHA1 Message Date
Rod Boev 40fc69b1cf Require real browser origins for escape grant minting (#4582) 2026-06-23 02:53:12 -04:00
Rod Boev decb1037bc Keep escape grants browser-confirmed and refreshable (#4582) 2026-06-23 02:53:12 -04:00
Rod Boev e8c4cb85c3 Preserve explicit inline markers for HTML preview guards 2026-06-23 02:53:12 -04:00
Rod Boev d20e9dd852 Prevent stale escape errors from collapsing live browse grants 2026-06-23 02:53:12 -04:00
Rod Boev 58b361b811 Keep escape navigation compatible with workspace static guards 2026-06-23 02:53:12 -04:00
Rod Boev 29f38902be Keep escape navigation on the tested UI route path (#4582)
# Conflicts:
#	static/workspace.js
2026-06-23 02:53:12 -04:00
Rod Boev 3401f589a7 Prevent file escape grants from breaking anchored reads (#4582) 2026-06-23 02:52:44 -04:00
Rod Boev 8caca99cae Preserve escape grants while locking second-hop regressions 2026-06-23 02:52:44 -04:00
Rod Boev 0f80113c12 feat(workspace): allow browser-only escape-target navigation (#4582)
# Conflicts:
#	static/workspace.js
2026-06-23 02:52:44 -04:00
Rod Boev c1355f9e6a Clarify the measurement transition guard and make its test precise 2026-06-23 05:48:36 +00:00
Rod Boev 2f7fe9da32 fix(#4346): harden footer jitter cleanup test 2026-06-23 05:48:36 +00:00
Rod Boev 8b74045bf8 fix(#4346): address review findings — classList fakes, .msg-time guard, test precision 2026-06-23 05:48:36 +00:00
Rod Boev 028fb61f3a fix(#4346): suppress footer jitter during virtual scroll measurement re-renders 2026-06-23 05:48:36 +00:00
Rod Boev 7f7ec57ebd Skip dead and exhausted pool entries in _get_provider_api_key to match prior pool.select() contract 2026-06-20 21:42:51 -04:00
Rod Boev b3c9bf5ad1 Preserve sys.modules state across secret_scope tests to avoid polluting sibling test modules 2026-06-20 21:39:06 -04:00
Rod Boev 454371c466 fix(#3961): probe agent availability without polluting sys.modules 2026-06-20 21:32:13 -04:00
Rod Boev 1dbfddd5b8 fix(#3961): use find_spec to avoid sys.modules pollution from failed agent import 2026-06-20 21:26:50 -04:00
Rod Boev 466412a732 fix(#3961): clean up partial agent entry from sys.modules on ImportError 2026-06-20 21:18:57 -04:00
Rod Boev 58b50d243e fix(#3961): close load_pool secret-scope bypass and extend subprocess env strip set 2026-06-20 20:50:13 -04:00
Rod Boev c237946ea3 fix(#3961): keep mirrored worker env updates and pool helpers compatible 2026-06-20 20:01:58 -04:00
Rod Boev 62ff54d5da fix(#3961): preserve live pool entry state outside readonly scopes 2026-06-20 19:58:04 -04:00
Rod Boev 44437f7a26 fix(#3961): fail closed for profile-scoped credential pool reads 2026-06-20 19:52:52 -04:00
Rod Boev ee588ba70e fix(#4550): harden gateway reasoning forwarding follow-up 2026-06-20 18:44:25 +00:00
Rod Boev 26c55404a5 fix(#4550): forward gateway reasoning effort 2026-06-20 18:44:25 +00:00
Rod Boev 6ae0ecca0a fix(#4535): include session_id in Runs API request body 2026-06-20 17:42:18 +00:00
Rod Boev 172ca592b6 Add behavioral regression test for legacy approval relay 2026-06-20 09:14:26 -04:00
Rod Boev 0435dddda1 Move approval handler before tool.progress per GPT-5.5 spec review 2026-06-20 08:59:52 -04:00
Rod Boev 9bc84dcad5 Unify approval handler blocks and add debug logging per review 2026-06-20 08:48:55 -04:00
Rod Boev 39d18b39c7 fix: remove unused imports flagged by ruff 2026-06-20 08:40:44 -04:00
Rod Boev f19b0ffc67 fix: relay approval SSE events on the legacy gateway chat/completions path 2026-06-20 08:32:02 -04:00
Rod Boev 4d3817f64b Ask GitHub to re-register checks for the profile-scope follow-up head 2026-06-20 03:53:25 -04:00
Rod Boev 7a0d868635 Keep profile-scoped reads from falling back to server credentials 2026-06-20 03:37:35 -04:00
Rod Boev 6220cc95db Keep readonly profile scoping alive without hermes-agent imports 2026-06-20 03:01:13 -04:00
Rod Boev b59f58601e fix(#3961): block process-env fallback in readonly profile scopes 2026-06-20 02:48:24 -04:00
Rod Boev 321090efcc fix(#3961): preserve mirrored live-model profile reads 2026-06-20 02:33:54 -04:00
Rod Boev 846951304d fix(#3961): route provider and model credential reads through the thread-local profile channel 2026-06-20 02:24:07 -04:00
Rod Boev e77ca8dbac fix(#2698): keep the pinned home across isolated fallbacks 2026-06-20 00:48:20 +00:00
Rod Boev c7375c60c4 fix(#2698): clamp isolated profile lookups to the pinned home 2026-06-20 00:48:20 +00:00
Rod Boev 41f2015a32 fix(#2698): close isolated profile escape hatches 2026-06-20 00:48:20 +00:00
Rod Boev f086158c10 fix(#2698): keep isolated deployments on their own state and profile roots 2026-06-20 00:48:19 +00:00
Rod Boev c00bfab9f5 fix(#2698): keep isolated default-named profiles pinned 2026-06-20 00:48:19 +00:00
Rod Boev 498a5e73e3 fix(#2698): pin isolated runtime home to configured profile 2026-06-20 00:48:19 +00:00
Rod Boev 8da03dbbad Use HERMES_HOME path directly for isolated profile home resolution 2026-06-20 00:48:19 +00:00
Rod Boev d267646b9b Add switch_profile isolation guard tests 2026-06-20 00:48:19 +00:00
Rod Boev 0291af5f85 Derive isolated profile name from HERMES_HOME path, not process-level default 2026-06-20 00:48:19 +00:00
Rod Boev a2ca2ff0c2 fix(profiles): snapshot HERMES_HOME at import time for isolation detection (#2698) 2026-06-20 00:48:19 +00:00
Rod Boev a40ed2dbb8 fix(test): clear profile cache between tests to prevent cross-test leakage (#2698) 2026-06-20 00:48:19 +00:00
Rod Boev 35eced6f35 fix(profiles): broaden except clause and sanitize error in isolated mode (#2698) 2026-06-20 00:48:19 +00:00
Rod Boev bf7208f19b fix(test): mock agent.skill_utils to fix CI import errors (#2698) 2026-06-20 00:48:19 +00:00
Rod Boev 94c3d2028a fix(tests): remove unused imports and variables (#2698) 2026-06-20 00:48:19 +00:00
Rod Boev 36dbe1a415 fix(profiles): return 403 for isolated-mode guards, fix fallback identity (#2698) 2026-06-20 00:48:19 +00:00
Rod Boev 963f7c3864 fix(profiles): honor isolated HERMES_HOME profile mode (#2698) 2026-06-20 00:48:19 +00:00
Rod Boev 9e92d7a8f4 fix(wiki): drop stray status-test import (#4375) 2026-06-19 21:11:11 +00:00
Rod Boev 0c4894efe9 fix(wiki): lstat log fallback before reading headings (#4375) 2026-06-19 21:11:11 +00:00
Rod Boev 9242f1facb fix(wiki): bind status metadata to verified file identities (#4375) 2026-06-19 21:11:10 +00:00
Rod Boev 82fd7d0166 fix(wiki): exclude unverified status-file metadata (#4375) 2026-06-19 21:11:10 +00:00
Rod Boev 8e4d390366 fix(wiki): reject post-snapshot metadata races (#4375) 2026-06-19 21:11:10 +00:00
Rod Boev 9a75a85d59 fix(wiki): keep status and browse metadata on verified identities (#4375) 2026-06-19 21:11:10 +00:00
Rod Boev 0542d91824 fix(wiki): recheck status reads against allowlisted identity (#4375) 2026-06-19 21:11:10 +00:00
Rod Boev db0bcaae8f fix(wiki): drop stale cached paths that no longer point to files (#4375) 2026-06-19 21:11:10 +00:00
Rod Boev f93d1332df fix(wiki): align browse and status with page-path rules (#4375) 2026-06-19 21:11:10 +00:00
Rod Boev b93cd10b40 fix(wiki): reject non-listed Windows path aliases (#4375) 2026-06-19 21:11:10 +00:00
Rod Boev 10c8ae4e46 fix(wiki): reuse the checked page allowlist across wiki reads (#4375) 2026-06-19 21:11:10 +00:00
Rod Boev 22bfed43ac fix(wiki): bind cached reads to the requested allowlisted page (#4375) 2026-06-19 21:11:10 +00:00
Rod Boev 1dd0b5bbcf fix(wiki): keep cached reads inside their original section (#4375) 2026-06-19 21:11:10 +00:00
Rod Boev e44fd2a6ac fix(wiki): reassert cached read-path containment (#4375) 2026-06-19 21:11:10 +00:00
Rod Boev 3f6369ae5c Address cross-provider review findings for browse-path resolve and test anchor 2026-06-19 21:11:10 +00:00
Rod Boev 46c3e495fc perf(wiki): cache resolved page allowlist and document hardlink trust boundary (#4375) 2026-06-19 21:11:09 +00:00
Rod Boev c6392902cd fix(gateway): correct approval URL and thread session history into runs API (#4479) 2026-06-19 13:16:39 -04:00
Rod Boev aed7da07e9 fix(kanban): skip workspace validation in edit mode (#3797) 2026-06-18 20:51:17 -04:00
Rod Boev 7fb58478bf fix(kanban): correct parent/child inversion in dependency removal (#3797) 2026-06-18 20:36:33 -04:00
Rod Boev cb812a0aae fix(i18n): add missing kanban keys to zh, zh-Hant, fr, tr, pl (#3797) 2026-06-18 20:30:55 -04:00
Rod Boev 14c098e996 fix(tests): remove bs4 dependency and unused imports (#3797) 2026-06-18 20:21:18 -04:00
Rod Boev 8f83a11225 fix(tests): scope span:last-child assertion to mobile media query (#3851) 2026-06-18 20:17:25 -04:00
Rod Boev a3c1647afb fix(kanban): correct dependency endpoint and payload field names (#3797) 2026-06-18 20:06:38 -04:00
Rod Boev 2264c5aff9 fix(tests): correct mobile CSS assertions to match refactored styling (#3851) 2026-06-18 20:03:16 -04:00
Rod Boev 32c8fa0626 fix(chat): keep jump-to-question visible on mobile (#3851) 2026-06-18 19:48:53 -04:00
Rod Boev 947b770a57 feat(kanban): add task workspace and dependency controls (#3797) 2026-06-18 19:48:47 -04:00
Rod Boev b09796375f Keep process-wakeup tags through cancel and recovery paths 2026-06-18 18:33:29 -04:00
Rod Boev 2053825d74 fix(#4373): keep process-wakeup source on settled transcript rows 2026-06-18 18:21:10 -04:00
Rod Boev ce443af95e Retrigger browser-smoke after CI install timeout 2026-06-18 17:25:21 -04:00
Rod Boev 1e33f24ac6 Retrigger CI for flaky test_gateway_sync isolation failure 2026-06-18 17:13:37 -04:00
Rod Boev a4058e31e4 Move sub-group rendering inside heading scope to fix wrapper ReferenceError 2026-06-18 16:27:07 -04:00
Rod Boev 851cc0e313 Fix lexical scope errors caught by cross-provider review 2026-06-18 16:15:39 -04:00
Rod Boev 9d26c80e64 Clear pending_user_source on teardown and expose it in session API 2026-06-18 16:15:36 -04:00
Rod Boev 6b967d5d5d Remove unused re import flagged by ruff 2026-06-18 16:15:33 -04:00
Rod Boev 7aa0649e3e feat(#4336): add vendor prefix sub-grouping in model picker for OpenRouter and Nous 2026-06-18 15:47:11 -04:00
Rod Boev d85979cd69 fix(#4373): mark process-wakeup turns as synthetic and filter from visible transcript 2026-06-18 15:47:06 -04:00
Rod Boev 8c68bc6bf7 feat(#4391): add Ctrl/Cmd+, shortcut for settings toggle 2026-06-18 15:46:53 -04:00
Rod Boev 31191a6c50 fix(scroll): mount virtualized-out anchor row before same-frame restore 2026-06-17 01:42:44 +00:00
Rod Boev 387af5d9c9 fix(scroll): remove synchronous _programmaticScroll toggle around DOM clear 2026-06-17 01:42:44 +00:00
Rod Boev 152b44c138 Clear _programmaticScroll after innerHTML wipe to prevent stuck flag on early-return paths 2026-06-17 01:42:44 +00:00
Rod Boev b24aa661dc fix(#4325): use semantic viewport anchoring for stream-end scroll restore 2026-06-17 01:42:44 +00:00
Rod Boev 40df3700af fix(review): target errored group wrapper by data-group in endpoint-error driver 2026-06-16 19:43:36 -04:00
Rod Boev 840e8a603a fix(review): fix bug #1 selected-group masking in search-clear test 2026-06-16 19:36:42 -04:00
Rod Boev f90b9b1551 fix(review): harden in-place overflow tests so each fails on its reverted fix 2026-06-16 19:31:11 -04:00
Rod Boev 34efedc97b fix(#4326): reject embedded null byte in remote workspace candidate 2026-06-16 22:19:43 +00:00
Rod Boev 7bb6dba3f4 fix(review): harden in-place overflow test assertions per adversarial review 2026-06-16 18:14:27 -04:00
Rod Boev 99883dbea5 test(#4331): CI coverage for model-picker in-place overflow reveal path 2026-06-16 18:14:27 -04:00
Rod Boev fcaab02e93 fix(autocomplete): support slash commands after non-ASCII prefix and multiple slashes (#3924) 2026-06-14 19:57:17 +00:00