Commit Graph

79375 Commits

Author SHA1 Message Date
Peter Steinberger 83fa01a57e test(sessions): avoid duplicate SQLite conformance runs (#123913) 2026-08-14 18:26:49 -07:00
scotthuang dd67c3bdf0 fix(doctor): keep migrated agents on their existing workspace (#123808)
Co-authored-by: scotthuang <scotthuang@tencent.com>
2026-08-14 18:26:45 -07:00
Peter Steinberger fd8741b4d8 perf(test): narrow plugin registration contract imports (#123902)
* perf(test): narrow plugin registration contract imports

* fix(test): preserve plugin registration contract boundary
2026-08-14 18:25:49 -07:00
Peter Steinberger 76e4ef68ce perf(ci): squeeze the last hybrid stragglers under the five-minute wall
Green tip run 31855637027 measured the remaining poles: ui-e2e shards up to
282s (imbalanced eight-way split), report-plugin-sdk-api-diff 246s on 4 vCPU,
and 220s test-type stripes (tsgo saturates a machine per graph, so stripe
count is the lever, not cores). Widen hosted-profile ui-e2e to ten rows,
test-type stripes to four, and lift the SDK diff to the 8 vCPU class.
2026-08-14 18:20:28 -07:00
Peter Steinberger 0982ee5729 perf(ui): reduce startup connect error overhead (#123910) 2026-08-14 18:07:20 -07:00
Peter Steinberger b8a8df7008 test(sessions): trim maintenance cap duplicates (#123909) 2026-08-14 18:00:49 -07:00
ClawSweeper d8cbcf64e5 test(plugins): include xai in empty startup baseline (#123904)
Co-authored-by: RoboClaw <309084314+roboclaw-bot@users.noreply.github.com>
2026-08-14 17:55:15 -07:00
Peter Steinberger 61bc6128a0 test(agents): trim compaction duplicate coverage (#123903) 2026-08-14 17:40:05 -07:00
Peter Steinberger 27bf9c2a74 docs: fix stale cua-computer section link on the Codex Computer Use page (#123892)
The Windows/Linux cross-reference still pointed at the pre-rename anchor
("experimental, via CUA Driver SDK"); the heading became "experimental,
direct SDK" in 19ace6830b, so the link landed at the top of the node
computer-use page instead of the fulfiller section.
2026-08-14 17:33:23 -07:00
Dallin Romney d862148954 refactor(sessions): use archived projection for maintenance (#123896) 2026-08-15 08:31:30 +08:00
Peter Steinberger 054354e099 test(gateway): consolidate pairing completion boundaries (#123895) 2026-08-14 17:23:27 -07:00
Peter Steinberger 156af00a78 fix(memory): report truthful index outcomes (#123863) 2026-08-14 17:17:16 -07:00
Peter Steinberger ad508a51c2 perf(ci): overlap two tsgo graphs inside each test-type stripe
Each graph is a serial single-project build, so tsgo gains little past four
cores; run 31852071103 measured ~34s/graph on 8 vCPU versus ~42s on hosted
4-core. Overlapping two fresh shard processes per CI stripe (--concurrency 2)
uses the idle cores and roughly halves the stripe body; local runs keep the
heap-bounded serial default.
2026-08-14 17:11:39 -07:00
Peter Steinberger 2702bcf09d refactor(gateway): remove setup GC test callback (#123891) 2026-08-14 17:07:52 -07:00
Peter Steinberger 7f891f4a78 fix(ui): stale tabs keep dispatching after gateway updates (#123882)
* fix(ui): reject stale bundled clients at connect

* chore: keep release notes out of runtime fix

* fix(ui): preserve stale-build admission invariants
2026-08-14 17:05:10 -07:00
Dallin Romney a01d40bfb9 fix(sessions): honor total entry cap with protected history (#123081)
* fix(sessions): count protected rows toward entry cap

* perf(sessions): defer maintenance snapshot loading

* test(sessions): assert total maintenance cap

* fix(sessions): align warning preservation

* fix(sessions): guard malformed maintenance rows
2026-08-15 08:03:57 +08:00
Peter Steinberger d913796112 fix(runners): preserve node workspaces across restarts (#123889)
* fix(runners): retain node workspaces from gateway state

* docs(plan): record authoritative node retention
2026-08-14 16:59:19 -07:00
Peter Steinberger 9adfe07d9b perf(ci): ride hybrid Blacksmith attempt-1 for the measured hosted poles
First hybrid main cycles (runs 31850815388-31851455918) landed at 5:47-6:32
walls with every remaining pole a hosted lane: the three test-type stripes
(232-269s), check-additional-runtime-topology (274s), check-dependencies
(260s), and report-plugin-sdk-api-diff (209s). Route them to their Blacksmith
labels on hybrid attempt 1 (retries stay hosted) and lift runtime topology to
the 8 vCPU class.
2026-08-14 16:56:52 -07:00
Peter Steinberger b5f6230386 refactor(system-agent): remove plugin install test seam (#123888) 2026-08-14 16:51:04 -07:00
Peter Steinberger 0a6b95a3df feat: cloud workers for the codex runtime (remote-exec placements) (#123743)
* feat(gateway): add remote-exec cloud placements

* feat(codex): run cloud turns through remote exec

* fix(sandbox): quote ssh_config path directives containing whitespace

Crabbox lease keys default to ~/Library/Application Support/... on macOS;
unquoted IdentityFile/UserKnownHostsFile/CertificateFile arguments tokenize
on the space and fail as 'extra arguments'. Found via live remote-exec
cloud-worker proof.

* test: consolidate gateway maintenance schedule coverage

* fix(ci): invalidate plugin sdk declarations on state changes
2026-08-14 16:46:56 -07:00
Peter Steinberger 72e67904be fix(cli): infer provider lists respect selected agent (#123884)
* fix(cli): require inference provider owners

* test(cli): type provider owner fixtures

* chore: leave infer release note to release
2026-08-14 16:45:37 -07:00
Colin Johnson 722e1ff48e fix(sessions): honor explicit legacy owner (#123887) 2026-08-14 19:44:34 -04:00
Josh Avant ed106bdc7b Fix channel startup admission ownership (#123885) 2026-08-14 18:37:10 -05:00
Peter Steinberger bc66c1731f test(cli): verify marketplace shorthand through command (#123883) 2026-08-14 16:34:10 -07:00
Josh Avant 2ce443d9a4 fix(compaction): preserve generated summaries when suffix context overflows (#123827)
* fix(compaction): preserve generated summaries under suffix pressure

* fix(compaction): keep suffix context message-aligned

* fix(compaction): report preserved context loss

* fix(compaction): cap tool interactions atomically
2026-08-14 18:28:14 -05:00
Peter Steinberger 1cf932295c refactor(ui): trim pairing uncertainty state (#123856)
* refactor(ui): trim pairing uncertainty state

* test(ui): stabilize navigation and worker readiness

* test(ui): drop popover flip geometry replay
2026-08-14 16:16:57 -07:00
Peter Steinberger bd1814bede fix(policy): require --agent for explicit workspaces (#123880)
* fix(policy): require explicit CLI agent owner

* chore(policy): leave release notes to release flow
2026-08-14 16:15:17 -07:00
Peter Steinberger 0fdf3ae36c fix(security): skip unused default workspace in explicit fleets (#123878)
* fix(security): preserve explicit fleet workspace ownership

* chore: leave security audit note to release
2026-08-14 16:12:23 -07:00
Peter Steinberger 98a8e0d63f fix(macos): prevent mismatched CUA driver endpoints (#123845)
* fix(macos): make CUA driver endpoint handoff atomic

* ci: record approved CUA env budget increase

* test: satisfy changed-gate hygiene

* style(macos): use failable endpoint string conversion

* fix(macos): strip retired CUA worker environment

* ci: constrain CUA env budget approval

* test(macos): isolate inherited CUA environment
2026-08-14 16:04:43 -07:00
Patrick Erichsen f726393812 fix(ui): offer permanent lobster dismissal (#123789)
* fix(ui): add persistent lobster dismissal

* fix(ui): keep the lobster dismiss menu from scrolling its own items

The dismiss menu anchors a synthetic trigger at the raw pointer position,
and the pet always sits on the sidebar footer ledge at the bottom of the
viewport. Web Awesome caps its popup to `--auto-size-available-height`,
and its `size` middleware runs after `flip`, so the menu was shrunk in
place to 60px against 64px of content instead of moving up. The two
dismissal items then scrolled inside a 6px overflow, which shows as a
scrollbar for anyone running the system setting that always renders them.

Clamp the anchor to the viewport the way every other pointer-anchored
menu already does (session-menu.ts:264, catalog-session-menu.ts:55,
native-link-menu.ts, sidebar-menus-controller.ts:270), so the popup keeps
the room it needs and renders both items in full.

* docs(web): describe the lobster dismiss menu options

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
Co-authored-by: vyctorbrzezowski <krzyszchweski@gmail.com>
2026-08-14 20:00:50 -03:00
Jason (Json) 89a424bcb9 fix(ui): page activity indicator matches session rows (#123813)
* fix(ui): align page working indicator with sessions

* test(ui): align lifecycle checks with home spinner
2026-08-14 16:58:44 -06:00
Peter Steinberger 47e683ad27 fix(gateway): keep node worker outcomes consistent under load (#123869)
* fix(gateway): reconcile saturated node turns safely

* test(gateway): provide queued turn context in wait coverage

* fix(gateway): keep workspace proof stable at capacity

* test(gateway): complete recovery wait context
2026-08-14 15:56:04 -07:00
Sarah Fortune f2e5d2054d feat(slack): include observed away duration in presence events (#123805)
* feat(slack): include observed away duration in presence events

* style(slack): format presence observation type

* test(slack): type presence enqueue mock

* fix(slack): preserve presence event prompting

---------

Co-authored-by: Sarah Fortune <sarah.fortune@gmail.com>
2026-08-14 22:46:00 +00:00
Peter Steinberger 1c055ba5e5 fix(cli): preserve explicit read-only agent targets (#123868)
* fix(cli): preserve explicit read-only agent targets

* chore: leave release changelog to release flow
2026-08-14 15:39:24 -07:00
Peter Steinberger 4fadf46740 fix(workers): own transfer scratch lifecycle (#123859) 2026-08-14 15:35:21 -07:00
Peter Steinberger 3ef7f590a7 fix(ci): invalidate plugin SDK declarations on auth changes (#123861)
* fix(ci): invalidate plugin sdk declarations on auth changes

* test(ui): await device migration overlay updates
2026-08-14 15:21:29 -07:00
Pavan Kumar Gondhi d5e89de906 fix(synology-chat): deliver attachments without forwarding source URLs [AI] (#119941)
* fix(synology-chat): host outbound attachments

* fix(synology-chat): isolate hosted media routes

* fix(synology-chat): harden hosted media limits

* fix(synology-chat): inspect hosted media content

* fix(synology-chat): reject ambiguous media routes

* fix(synology-chat): retain indeterminate media capabilities

* fix(synology-chat): mask public callback URLs

* fix(synology-chat): align callback sensitivity metadata

* fix(synology-chat): reserve media capability query keys

* fix(synology-chat): release rejected staged media

* fix(synology-chat): preserve ambiguous media handoffs

* fix(synology-chat): scan complete active media preamble

* fix(synology-chat): report validated attachment readiness

* fix(synology-chat): bound public media capability probes

* fix(synology-chat): bound hosted media responses

* test(synology-chat): model response headers read-only

* fix(synology-chat): bound hosted media reads

* fix(synology-chat): bound hosted media delivery

* fix(synology-chat): retain media through active serves

* fix(plugin-sdk): lease hosted media readers atomically

* fix(synology-chat): close hosted media review gaps

* test(synology-chat): clean up hosted media state

* fix(system-agent): canonicalize sensitive config paths

* fix(system-agent): honor runtime config sensitivity hints

* fix(config): inherit sensitive metadata

* fix(synology-chat): close latest review findings

* test(system-agent): keep config recovery checks lint-clean

* fix(system-agent): redact structured config secrets

* fix(synology-chat): harden active-content sniffing

* fix(security): close hosted media review gaps

* fix(security): close remaining hosted media review findings

* fix(system-agent): narrow dynamic owner ids safely

* fix(system-agent): narrow dynamic channel ids safely

* test(channels): isolate hosted media proofs

* fix(security): close config and hosted media review gaps

* test(plugin-sdk): split outbound media retention coverage

* test(plugin-sdk): isolate capacity store fixtures

* test(system-agent): assert config secrecy invariant
2026-08-14 17:05:20 -05:00
Peter Steinberger 1b98bc35a0 fix(onboard): stop failing intentionally unstarted gateway (#123857) 2026-08-14 14:59:54 -07:00
Peter Steinberger d5c194f4ea fix(status): keep explicit fleets ownerless in diagnostics (#123831)
* fix(status): preserve explicit agent ownership

* chore: leave status notes to release

* style(status): format reconciled imports
2026-08-14 14:54:52 -07:00
Peter Steinberger d343ea07ab fix(state): preserve orphaned SQLite sidecars (#123680)
* fix(state): preserve orphaned SQLite sidecars

* fix(state): narrow orphan sidecar recovery guard

* test(state): satisfy orphan sidecar lint

* fix(state): quarantine orphaned SQLite sidecars

* test(state): narrow quarantine path assertion

* fix(state): copy orphaned SQLite sidecars
2026-08-14 14:53:03 -07:00
Peter Steinberger 8a9c7324f8 fix(gateway): explain stale install chunks instead of raw module errors (#123842) 2026-08-14 14:46:55 -07:00
Peter Steinberger dc55a7d08d ci: expand Linux installer verification (#123849) 2026-08-14 14:45:39 -07:00
Jason (Json) 386b12ba9c fix(ui): sort created sessions by creation time (#123828) 2026-08-14 15:44:38 -06:00
Peter Steinberger d27e318072 improve: make git installs use a blobless clone (#123835)
* perf: use blobless clone in git installer

* refactor(install): move clone-filter rationale above the call

Keep the file's comment convention (comments on their own lines) instead of a
150-column trailing comment, and record why blob:none is preferred over
--depth 1 plus why no fallback is needed.

Narrow the ordering test's source needle to the stable prefix so it stops
duplicating the behavioral flag assertion and no longer breaks whenever the
clone flags change.
2026-08-14 14:38:21 -07:00
Peter Steinberger e7255b9e8c test(cli): remove duplicate skills verify error case (#123843) 2026-08-14 14:33:48 -07:00
ClawSweeper 4fd825bc0a fix(ui): contain mobile lightbox images (#123840)
Co-authored-by: RoboClaw <309084314+roboclaw-bot@users.noreply.github.com>
2026-08-14 14:32:36 -07:00
Peter Steinberger 6072a838a1 fix(anthropic): read keychain auth during non-interactive setup (#123839) 2026-08-14 14:31:15 -07:00
Peter Steinberger 9f125bcee0 perf(test): import package manifest helper directly (#123841) 2026-08-14 14:27:29 -07:00
Peter Steinberger 628056b0ba docs(plan): W2-PKB landed (#123801) (#123838) 2026-08-14 14:26:18 -07:00
Jason (Json) 204416747e fix: prevent sqlite commands from opening live state (#123816)
* fix: prevent sqlite commands from opening live state

* fix: preserve early exec control rejection

* fix: guard sqlite shell reopen commands
2026-08-14 15:19:27 -06:00