Commit Graph

19845 Commits

Author SHA1 Message Date
Dallin Romney 41194dadb9 test(qa): prove Slack pagination request budget 2026-08-24 16:23:48 -07:00
Dallin Romney 7e69a9111b qa: retain required Slack history timestamps 2026-08-24 16:06:00 -07:00
Dallin Romney c5bbd85297 qa: paginate Slack channel observations 2026-08-24 15:53:57 -07:00
Dallin Romney bc0cfeba6c fix(qa): retain Slack presentation history 2026-08-21 10:07:20 -07:00
Peter Steinberger 4343b38ce7 perf(googlechat): render bullet markers in one pass (#127274)
Co-authored-by: Amp <amp@ampcode.com>
2026-08-21 09:34:18 -07:00
Onur Solmaz 1319e1e606 fix(providers): report request acceptance consistently (#126028)
* fix(providers): restore provider acceptance lifecycle

* fix(providers): cancel streams on acceptance failure

* test(amazon-bedrock): split stream lifecycle coverage

* refactor(providers): keep acceptance lifecycle private

* refactor(providers): make acceptance observation synchronous

* refactor(providers): narrow private observer safely

* fix(google): keep response hook within retry deadline

* test(ui): tolerate subpixel spacing variance

* test(ui): wait for durable draft before reload
2026-08-21 19:32:07 +03:00
Shakker f65b7e06ea fix: persist manual Codex compactions (#127230) 2026-08-21 16:24:53 +01:00
Shakker 7b5430a2d3 test: cover durable compaction activity 2026-08-21 16:24:53 +01:00
Shakker a5bac03e51 fix: preserve Codex compaction activity 2026-08-21 16:24:53 +01:00
Yiğit ERDOĞAN ff83e3efe8 test(extensions): close cached agent databases before removing fixture state dirs (#126352)
Doctor migrations and auth-profile writes open per-agent and shared state
databases under the fixture's temporary directory. Clearing the plugin
state store or the runtime auth snapshots does not release those handles,
so Windows fails the directory removal with EBUSY while Linux unlinks the
open files and stays green.

Close the cached databases before each removal, matching the ordering the
zalouser and zalo fixtures already use.
2026-08-21 07:22:57 -07:00
Peter Steinberger e66d7c5cac fix(qa): index scenario execution paths (#127185) 2026-08-21 05:49:27 -07:00
wanyongstar 2c7936414e fix(comfy): forward req.timeoutMs in music generation (#123444)
The Comfy music provider dropped req.timeoutMs when calling
runComfyWorkflow, while the image and video providers forward it.
Request-level timeouts (mediaModels.music.timeoutMs, tool parameter)
were silently ignored: shorter values had no effect and longer ones
still failed at the hardcoded 300s default.

Punchcard-Session: coral-harbor-river-yv
2026-08-21 03:46:42 -07:00
Peter Steinberger 5016e6519f perf(clickclack): avoid duplicate upload buffer (#127152)
Amp-Thread-ID: https://ampcode.com/threads/T-01a021f5-984a-7628-a30c-491c166ff247

Co-authored-by: Amp <amp@ampcode.com>
2026-08-21 03:43:21 -07:00
Peter Steinberger f7cbe9e5da fix(slack): preserve partial reply delivery (#127130) 2026-08-21 02:32:05 -07:00
Peter Steinberger 9c3335a1a4 fix(qa): restore failed-tool recovery scenarios (#126971)
* fix(qa): sync cron failed-tool honesty fixture

* fix(qa): sync channel failed-tool honesty fixture

Amp-Thread-ID: https://ampcode.com/threads/T-01a02218-492f-73b8-8514-ef342917e129

* test(qa): sync OTEL failed-tool assertion

---------

Co-authored-by: Amp <amp@ampcode.com>
Co-authored-by: Dallin Romney <dallinromney@gmail.com>
2026-08-21 02:20:53 -07:00
Peter Steinberger 782a7d7aed refactor(discord): remove obsolete action runtime wrapper (#127123) 2026-08-21 02:07:48 -07:00
Peter Steinberger d17bbfc31a feat(nodes): expose plugin duplex channels (#126961)
* feat(nodes): expose plugin duplex channels

* fix(nodes): enforce duplex declarations
2026-08-21 01:52:06 -07:00
Peter Steinberger 5edc2a7f21 fix(twitch): retire client managers before disconnect (#127103) 2026-08-21 01:33:26 -07:00
Peter Steinberger f28bb5e79d refactor(telegram): remove obsolete progress summary collapse (#127089) 2026-08-21 01:19:49 -07:00
Peter Steinberger fd3a919063 fix(media): clean failed temporary staging (#127092) 2026-08-21 01:02:27 -07:00
Shakker 69fa1a8eab fix(codex): preserve steering transcript order 2026-08-21 07:45:40 +01:00
Peter Steinberger 5570c5ffac fix(file-transfer): expose directory page tokens (#127051) 2026-08-20 23:28:31 -07:00
Peter Steinberger f1723c757b fix(telegram): preserve direct-topic self-history (#127050) 2026-08-20 23:18:05 -07:00
Peter Steinberger 6f52e9fc2f fix(telegram): preserve direct-message topics in config and cron writeback (#127010)
* fix(telegram): preserve direct message topics in target writeback

* test(ui): consolidate cron scheduler status coverage
2026-08-20 22:27:10 -07:00
Peter Steinberger 4ba2c46cc4 fix(qa): own container first-run onboarding journey (#126981)
Co-authored-by: Amp <amp@ampcode.com>
2026-08-20 21:47:44 -07:00
Peter Steinberger 514d148519 fix(qa): reject skipped-only confidence lanes (#126975) 2026-08-20 21:01:38 -07:00
Dallin Romney d0091b001c fix(browser): isolate startup upload cleanup runtime (#126136)
* fix(browser): keep node-host cleanup lazy

* fix(browser): isolate upload cleanup runtime
2026-08-20 20:52:41 -07:00
Dallin Romney 5e00a07db8 fix(qa): stop lifecycle CI failing on reused PGIDs (#123161)
* test(qa): avoid reused PGID lifecycle assertion

* test(qa): drop reused PID cleanup fallback
2026-08-20 20:31:39 -07:00
Dallin Romney 45db176a64 test(openai): drop upstream realtime outcome assumption (#126025) 2026-08-20 20:09:32 -07:00
Vito Cappello 6d7bc062e3 fix(session-catalog): hide OpenClaw-managed provider sessions (#125424)
* fix(session-catalog): hide OpenClaw-managed upstream sessions

* fix(codex): filter managed paired-node sessions

* fix(codex): classify legacy managed sessions

* fix(session-catalog): classify managed provider sessions

* fix(session-catalog): backfill inter-session ownership

* fix(session-catalog): classify Claude internal prompts

* fix(session-catalog): retain durable provenance

* fix(codex): keep rollout home derivation private

* fix(anthropic): declare catalog schema dependency

* fix(anthropic): avoid catalog schema dependency

* fix(session-catalog): scope managed ownership to Codex

* fix(codex): contain catalog provenance reads

* fix(codex): bind managed threads to catalog home

---------

Co-authored-by: VACInc <3279061+VACInc@users.noreply.github.com>
Co-authored-by: Josh Lehman <550978+jalehman@users.noreply.github.com>
2026-08-20 19:51:55 -07:00
Peter Steinberger 94f042ba86 fix(nostr): retain SecretRef-backed accounts (#126934) 2026-08-20 19:14:08 -07:00
Peter Steinberger 07c8b42a71 fix(channels): preserve delivery after preview cleanup (#126922) 2026-08-20 18:18:25 -07:00
Peter Steinberger 319df0e7a1 test: trim plugin test duplicates (#126917) 2026-08-20 18:07:27 -07:00
Peter Steinberger 7e87d77261 fix(auth): report the database that actually holds an agent's profiles (#126918)
`openclaw models auth list` printed `Auth state store:
<state>/agents/main/agent/openclaw-agent.sqlite` on every install created since
a8a9f284fb, and that file does not exist. Credentials now persist in the shared
state database, so an operator debugging auth was sent to the wrong file while
the listed profiles resolved correctly from somewhere else.

`resolveAuthStorePathForDisplay` and `resolveAuthStatePathForDisplay` named the
agent-local file whenever an agent dir was supplied. That matched storage before
shared-auth ownership moved and stopped matching afterwards. The same helpers
feed `models auth order`, `models list --status`, the auth overview, two
auto-reply directive surfaces, and the `path` field of doctor's auth
HealthFindings, so structured diagnostics pointed at the wrong file too.

Display now mirrors the loader's own selection: an agent with a local auth store
shows its own database, otherwise the shared owner. Both helpers move to the
`paths.ts` barrel so they can consult `hasLocalAuthProfileStoreSource` without a
cycle back through `path-resolve`. Nothing about storage or loading changes.

`model-auth-provider` no longer derives the agent dir from the store path -- that
would have reported the state directory once the shared owner is selected -- and
uses the caller's agent dir instead.

Production -4 LOC.
2026-08-20 18:05:50 -07:00
Josh Avant a042125170 fix(memory): preserve provenance across dreaming (#126489)
* fix(memory): preserve provenance across dreaming

* fix(build): preserve bundled hook metadata

* refactor(build): remove obsolete directory helper

* test(memory): align provenance fixtures

* test(memory): type consolidation run options

* test(memory): register write provenance siblings

* fix(memory): preserve legacy provenance registration

* fix(memory): make provenance provider-independent

* fix(memory): canonicalize provenance workspace keys

* fix(memory): keep provenance mutation host-private

* fix(build): track runtime postbuild implementations

* fix(build): verify bundled hook metadata outputs
2026-08-20 17:58:31 -07:00
Peter Steinberger 500fd2cac9 refactor(codex): separate exec session transport (#126859) 2026-08-20 17:10:26 -07:00
Peter Steinberger a0786cf741 perf(matrix): replace lease drain test waits with fake timers (#126885) 2026-08-20 17:01:23 -07:00
Vincent Koc fa71a6f27b fix(qa): isolate packaged mock auth bootstrap (#126247)
* fix(qa): isolate packaged mock auth config

Punchcard-Session: frost-orchard-lantern-ze
(cherry picked from commit 648bd40a4f)

* fix(qa): scrub inherited shell startup env

* fix(qa): block exported Bash functions
2026-08-21 06:51:34 +08:00
Conan-Scott 7c959c85f9 fix(openai): preserve OAuth realtime session policy (#126363)
Co-authored-by: Clawdbot <clawdbot@apilab.us>
2026-08-20 15:17:03 -07:00
Peter Steinberger 6c9aae7cee fix(firecrawl): prevent canceled requests from caching late results (#126857) 2026-08-20 15:09:38 -07:00
Sarah Fortune 67bcea131e feat(slack): add compact commentary progress (#126480)
* feat(slack): add compact progress style

* chore(slack): protect compact progress contract

* chore(slack): clarify compact progress comment

* chore(slack): document compact task card behavior

* chore(slack): document compact draft card behavior

* chore(slack): document compact progress config contract

* fix(slack): enforce compact commentary-only progress

* chore(slack): strengthen compact style guard

* fix(slack): type compact progress config

* fix(slack): scope compact plan suppression

---------

Co-authored-by: Sarah Fortune <sarah.fortune@gmail.com>
2026-08-20 15:02:33 -07:00
Ben Badejo 784a228781 fix(matrix): recover after late leases drain (#126712)
Co-authored-by: Benjamin Badejo <ben@benbadejo.com>
2026-08-20 14:44:29 -07:00
Peter Steinberger 1362490b80 refactor(sandbox): canonicalize backend ownership (#126828) 2026-08-20 13:52:15 -07:00
Peter Steinberger a4178c7eb1 fix(discord): demote expected command truncation logs (#126824) 2026-08-20 13:26:44 -07:00
Peter Steinberger af858dff8e fix(clickclack): clarify command menu permission errors (#126802) 2026-08-20 12:29:38 -07:00
Peter Steinberger 4249df34b4 improve(code-mode): call tools as global functions (#126262)
* feat(code-mode): expose tools as global functions

* fix(code-mode): harden callable tool composition

* fix(code-mode): reserve private guest globals

* fix(cron): migrate legacy code-mode triggers

* fix(code-mode): align final tool result contracts
2026-08-20 12:18:23 -07:00
Vincent Koc 15f33d9edc fix(qa): preserve Codex auth identity across restarts (#126777) 2026-08-21 03:16:22 +08:00
Peter Steinberger c0775c7f6d fix(search): preserve provider cache hits across equivalent queries (#126798) 2026-08-20 12:04:19 -07:00
Peter Steinberger 231405930a fix(discord): record activity after successful poll and sticker sends (#126791)
* fix(discord): record activity for structured outbound messages

* chore(discord): shrink structured-send assertion baseline
2026-08-20 11:56:07 -07:00
Peter Steinberger c6c598c149 fix(qa-lab): normalize direct-message ingress before validation (#126782) 2026-08-20 11:37:12 -07:00