Commit Graph

66940 Commits

Author SHA1 Message Date
Vincent Koc
e3bab80bda fix(e2e): give cleanup smoke build heap headroom 2026-06-19 01:50:54 +02:00
Vincent Koc
7207072436 fix(e2e): validate plugin lifecycle limits 2026-06-19 01:43:24 +02:00
Josh Lehman
49e6f5a524 refactor(auto-reply): add lifecycle storage seams (#93685)
* refactor(auto-reply): add lifecycle storage seams

* fix(auto-reply): remove unused transcript replay shim
2026-06-18 16:40:27 -07:00
Sally O'Malley
95c87e31e2 fix: preserve pending subagent completion announces (#94349)
Signed-off-by: sallyom <somalley@redhat.com>
2026-06-18 19:38:11 -04:00
Vincent Koc
0d2102d247 fix(e2e): validate plugin log limits before setup 2026-06-19 01:31:33 +02:00
Vincent Koc
55323103b9 fix(e2e): validate codex media timeout 2026-06-19 01:24:12 +02:00
Vincent Koc
239b4de6af fix(e2e): validate fixture log limits 2026-06-19 01:17:35 +02:00
Vincent Koc
a7b52ecad9 fix(e2e): validate cleanup log limits 2026-06-19 01:08:42 +02:00
Vincent Koc
bb44c5326e fix(e2e): validate docker log limits 2026-06-19 01:02:59 +02:00
Vincent Koc
4764258b3f fix(live): validate docker pids limits 2026-06-19 00:54:57 +02:00
Vincent Koc
6af1b97b1d fix(e2e): validate docker pids limits 2026-06-19 00:46:17 +02:00
Dallin Romney
4ca0e52d0e test: fold channel message flows into qa e2e (#93174)
* test: fold channel flows into qa e2e

* test: keep channel flow skill pointed at qa

* test: move channel flow proof under telegram
2026-06-18 15:45:33 -07:00
Vincent Koc
37eea55afa fix(e2e): validate docker build limits 2026-06-19 00:35:49 +02:00
VACInc
ea76a45917 Prevent Codex thread rotation from losing next-step context (#94093)
Merged via squash.

Prepared head SHA: 1f3ced8f63
Maintainer decision: `checks-node-core-tooling` is an unrelated baseline/tooling failure; PR-relevant CI and real behavior proof passed.

Co-authored-by: VACInc <3279061+VACInc@users.noreply.github.com>
Co-authored-by: jalehman <550978+jalehman@users.noreply.github.com>
Reviewed-by: @jalehman
2026-06-18 15:33:48 -07:00
Vincent Koc
84bcdaa983 fix(e2e): validate fixture cleanup interval 2026-06-19 00:29:25 +02:00
Vincent Koc
4ac192deef fix(agents): correct claw-score validation workflow 2026-06-19 00:26:35 +02:00
Vincent Koc
3c9cf2d583 fix(e2e): validate log tail limits 2026-06-19 00:18:39 +02:00
Dallin Romney
c4ae2be947 fix: taxonomy coverage id cleanup (#94304)
* fix: split taxonomy coverage id features

* fix: clean taxonomy feature row names

* docs: clarify taxonomy coverage id semantics

* docs: tighten coverage id guidance

* fix: keep taxonomy features product shaped

* fix: narrow sdk artifact coverage bundle

* fix: name taxonomy coverage ids clearly

* fix: polish taxonomy feature descriptions
2026-06-18 15:16:58 -07:00
Vincent Koc
27310bfa34 fix(e2e): validate docker e2e ports 2026-06-19 00:09:47 +02:00
Xavier Coulon
fbc12e0879 fix(slack): stop leaking bot token into /api/auth.test request body (#94574)
* fix(slack): stop leaking bot token into /api/auth.test request body

The bot token is already passed as an `Authorization` header,
so we don't need to send it in the request body when calling `/api/auth.test`.

See [Slack API documentation](https://api.slack.com/methods/auth.test).

Also, showing with `curl` that the bot token is not needed in the request body when passed as an `Authorization` header when calling `/api/auth.test`:
```
curl -X POST https://slack.com:443/api/auth.test -H "Authorization: Bearer xoxb-..."
{"ok":true,"url":"https://xcoulonworkspace.slack.com/","team":"xcoulon",...}
```

Signed-off-by: Xavier Coulon <xcoulon@redhat.com>

* add test for slack auth.test token handling

verify that the bot token is not passed in the request body when calling `/api/auth.test`.

Signed-off-by: Xavier Coulon <xcoulon@redhat.com>

---------

Signed-off-by: Xavier Coulon <xcoulon@redhat.com>
2026-06-18 18:09:37 -04:00
Vincent Koc
73cdb78a1e fix(sdk): refresh plugin api baseline hash 2026-06-19 00:01:15 +02:00
Vincent Koc
0df60ad306 fix(e2e): validate docker resource limits 2026-06-19 00:00:42 +02:00
Vincent Koc
9928516a78 fix(codex): deliver native subagent idle results 2026-06-18 23:41:34 +02:00
Josh Lehman
7845182410 clawdbot-d02.1.9.1.39: add task session registry maintenance seam (#93734) 2026-06-18 14:36:10 -07:00
Vincent Koc
aba6f7ad21 fix(live): validate model sweep limits 2026-06-18 23:33:44 +02:00
Vincent Koc
5570a10bf4 refactor(auth): remove stale external auth persist wrapper 2026-06-19 05:26:31 +08:00
Vincent Koc
98857235d5 fix(live): validate gateway model limits 2026-06-18 23:26:21 +02:00
Vincent Koc
39e9336d40 test(scripts): match installer e2e env validation 2026-06-18 23:23:24 +02:00
Vincent Koc
392f5b75bf fix(e2e): validate kitchen sink fixture wait attempts 2026-06-18 23:21:28 +02:00
Vincent Koc
a98bfdb2b7 refactor(agents): remove stale wrapper exports 2026-06-19 05:18:25 +08:00
Vincent Koc
34d402f53c fix(e2e): validate plugin fixture stop attempts 2026-06-18 23:17:00 +02:00
Vincent Koc
1faf8175e4 fix(e2e): validate onboard gateway wait attempts 2026-06-18 23:12:41 +02:00
Vincent Koc
fdb042b9ce refactor(providers): remove stale primary model helper 2026-06-19 05:10:15 +08:00
Colin Johnson
d5a27b0b96 test: add QA Lab UX Matrix evidence scenario (#94306)
* test: add qa lab ux matrix script scenario

* fix(qa-lab): annotate UX Matrix producer catch callback as unknown for oxlint

---------

Co-authored-by: Dallin Romney <dallinromney@gmail.com>
2026-06-18 14:10:06 -07:00
Vincent Koc
9328f4a675 fix(e2e): validate bun smoke timeout env 2026-06-18 23:07:22 +02:00
Vincent Koc
75df29c215 fix(install): validate install e2e agent env 2026-06-18 23:03:34 +02:00
Vincent Koc
bf8ac0d96d refactor(cli): remove stale command group helpers 2026-06-19 05:02:54 +08:00
Vincent Koc
bfb47a03b3 fix(install): validate install smoke timing env 2026-06-18 22:57:17 +02:00
Vincent Koc
a93fc87e2c refactor(cli): keep relay stream helpers test-local 2026-06-19 04:53:59 +08:00
Vincent Koc
cc3d346c15 fix(e2e): validate upgrade survivor budgets 2026-06-18 22:52:19 +02:00
Vincent Koc
a8d60d352e refactor(cli): remove stale adapter helpers 2026-06-19 04:44:51 +08:00
NianJiu
1bfa2787b5 fix(exec): resume agent turn for native chat exec approvals (#93949)
* fix(exec): resume agent turn for native chat exec approvals (issue #93918)

Extend the inline approval-pending path that PR #85239 added for webchat to
every bundled chat channel that ships an `approval-handler.runtime`
adapter (Telegram, Discord, Slack, Signal, WhatsApp, iMessage, Matrix,
Google Chat, QQ Bot, plus webchat). When the originating turn can be
approved in the same chat, the gateway resolves the approval in place and
the agent waits inline for the command output instead of terminating the
run on the "approval-pending" tool result.

Before this fix, native chat approvals landed in the fire-and-forget
`sendExecApprovalFollowup` path. The followup either failed silently
against the agent dispatch and fell through to a direct delivery to the
operator, or never reached the agent at all; either way the model never
saw an "Exec running / Exec finished / Exec denied" event. The operator
had to send a follow-up message to recover the turn, and a new approval
was minted because the original run had already ended.

The change:

- Introduces `NATIVE_APPROVAL_CHANNELS` and `isNativeApprovalChannel`
  in `src/utils/message-channel-constants.ts`, listing the channels that
  ship a native chat approval client. `webchat` is included so the
  single-channel check inside `shouldAwaitGatewayApprovalInline` can
  move from "this one id" to "any native approval client".
- Replaces the `INTERNAL_MESSAGE_CHANNEL` equality check in
  `shouldAwaitGatewayApprovalInline` with `isNativeApprovalChannel`,
  preserving the `approvalFollowupMode` opt-out and the existing
  `unavailableReason === null` gate.
- Adds unit tests asserting inline resolution and inline denial for
  every native approval channel, plus a regression test that
  non-native channels (e.g. feishu) and explicit `approvalFollowupMode`
  settings still take the fire-and-forget path.
- Adds a `NATIVE_APPROVAL_CHANNELS` test in
  `src/utils/message-channel.test.ts` to lock the membership and the
  negative cases.

Refs https://github.com/openclaw/openclaw/issues/93918

* fix(lint): restore InternalMessageChannel type export lost during rebase

Rebase on upstream/main dropped the InternalMessageChannel type alias
from message-channel-constants.ts, breaking the plugin-sdk boundary
.dts check ('has no exported member named InternalMessageChannel').
message-channel.ts was also re-importing the type only to re-export
it, triggering the oxlint no-unused-vars rule.

- Re-add 'export type InternalMessageChannel = typeof INTERNAL_MESSAGE_CHANNEL'
  in message-channel-constants.ts so the public re-export is valid.
- Drop the redundant 'type InternalMessageChannel' from the local
  import in message-channel.ts; the value-side import is what the
  file body actually needs.

* test(exec): align native approval routing expectations
2026-06-18 16:41:04 -04:00
Vincent Koc
e385f6663a fix(live): validate docker setup timeouts 2026-06-18 22:39:43 +02:00
Vincent Koc
76bdb025d6 refactor(cli): remove stale path policy helpers 2026-06-19 04:37:29 +08:00
Vincent Koc
d2e36a176d fix(e2e): validate live plugin tool limits 2026-06-18 22:30:59 +02:00
Josh Lehman
b637414871 fix: add plugin host session cleanup seam (#93733)
* fix: add plugin host session cleanup seam (clawdbot-d02.1.9.1.38)

* test: update session accessor writer ratchet
2026-06-18 13:29:39 -07:00
Vincent Koc
aa39600793 refactor(agents): remove stale tool helpers 2026-06-19 04:28:18 +08:00
Vincent Koc
61b116d597 fix(e2e): validate plugin update timeout seconds 2026-06-18 22:23:23 +02:00
Vincent Koc
033162f209 refactor(channels): remove stale discovery helpers 2026-06-19 04:19:22 +08:00
Dallin Romney
dfd8a2220b test(scripts): route temp-dir helper importers for store.sqlite and status.scan tests (#94681) 2026-06-18 13:15:40 -07:00