Dallin Romney
33ea7ffa54
fix(ci): isolate package Telegram QA harness ( #120193 )
...
* fix(qa): isolate package Telegram harness
Keep private QA source, dependencies, taxonomy, and SDK dist in the trusted harness while the installed candidate owns its CLI, Gateway runtime, and persisted mock auth. Preserve the documented package RTT canary after taxonomy selection.
Co-authored-by: Dallin Romney <dallinromney@gmail.com >
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
* fix(qa): export private QA harness SDK entries
Canonicalize the QA-only plugin SDK entries shared by the private build and package Telegram harness manifest so qa-runtime and qa-lab resolve from trusted dist.
* fix(qa): expose private runtime to package harness
* fix(qa): surface Telegram observer conflicts
* fix(qa): accept separate preview and final messages
* test(qa): exercise Telegram poll delay contract
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-08-08 15:11:03 -07:00
Vincent Koc
ad664ad859
fix(release): match ClawHub security fixture contract ( #120725 )
2026-08-09 06:10:19 +08:00
Vincent Koc
b729806758
fix(release): preserve ClawHub fixture across restart ( #120709 )
2026-08-09 05:26:16 +08:00
Vincent Koc
e455cafa13
fix(release): run ClawHub prepublish fixture from isolated cwd ( #120692 )
2026-08-09 04:36:14 +08:00
Vincent Koc
33a5f37937
fix(release): repair survivor fixture assertion quoting ( #120680 )
2026-08-09 03:53:51 +08:00
Vincent Koc
b40f846757
fix(release): keep survivor plugin repair hermetic ( #120677 )
2026-08-09 03:34:42 +08:00
Peter Steinberger
0487b6812c
fix(qa): honor Crabbox SSH fallback ports ( #120539 )
2026-08-08 12:01:30 -07:00
Vincent Koc
e81d7e62e8
fix(release): scope upgrade plugin credentials ( #120666 )
2026-08-09 03:00:36 +08:00
Vincent Koc
49161dee60
fix(release): unblock deferred Telegram beta validation ( #120630 )
...
* fix(release): allow deferring package Telegram validation
* fix(qa): mount taxonomy in package Telegram harness
* fix(release): restrict Telegram deferral to beta
2026-08-09 01:03:02 +08:00
Peter Steinberger
7ecdef6e2e
fix: prefer Crabbox inspect SSH host ( #120611 )
2026-08-08 08:30:07 -07:00
Peter Steinberger
d9080cfff8
fix(agents): transfer requester wake ownership across yield and deflake survivor registry setup ( #120538 )
2026-08-08 01:42:33 -07:00
Peter Steinberger
733512b612
fix(e2e): expose beta companions in survivor registries and unbind ReDoS timing from shell startup ( #120479 )
2026-08-07 22:12:00 -07:00
Peter Steinberger
fb0812c857
fix(qa): prevent false update-restart package failures ( #120300 )
...
* test(qa): expose update restart process exits
* test(qa): supervise update restart gateway
* test(qa): isolate supervised gateway environment
* test(qa): diagnose restart plugin convergence
* test(qa): mount trusted upgrade harness
* test(qa): include upgrade runtime companions
* test(qa): remove temporary restart diagnostics
* test(qa): enforce systemd restart budget
* test(qa): honor systemd stop timeout
* test(qa): tighten package fixture ownership
* test(qa): preserve unrelated lane shapes
* test(qa): complete service fixture boundaries
2026-08-07 14:46:59 -07:00
Peter Steinberger
2fa9a29c77
test(plugins): add Agent Plugins gateway e2e with model-driven MCP tool call ( #120303 )
...
* test(plugins): add Agent Plugins gateway e2e with model-driven MCP tool call
* fix(test): wire Agent Plugins gateway E2E and assert activation
2026-08-07 11:47:07 -07:00
Vincent Koc
a0deb8edae
fix(release): provide prerelease plugin companions to package QA ( #120107 )
2026-08-07 13:31:41 +08:00
Vincent Koc
2013123472
fix(release): isolate private Telegram QA harness ( #120088 )
2026-08-07 10:03:14 +08:00
sinner
c7de4413a9
fix(cron): reject unsupported generic timeout edits ( #119899 )
...
Co-authored-by: zyw02 <zyw02@users.noreply.github.com >
Punchcard-Session: cobalt-willow-summit-z1
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-08-06 19:45:59 +08:00
Vincent Koc
beda1e97c6
fix(onboarding): honor external gateway supervision ( #119846 )
...
Punchcard-Session: quiet-meadow-timber-mj
2026-08-06 17:26:43 +08:00
Peter Steinberger
d6233c29b9
fix(browser): preserve locale, timezone, and device overrides ( #119695 )
...
* fix(browser): make device emulation transitions atomic
* test(browser): verify device presets in packaged profile
* fix(browser): retain page emulation overrides
2026-08-05 12:29:26 -07:00
qingminlong
cb2965ddde
fix(scripts): use direct-run helper for Windows guards ( #110877 )
...
* fix(scripts): normalize Windows direct-run guards
* test(scripts): cover direct-run routing
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-08-04 23:11:12 +08:00
Vincent Koc
12beeb7b29
test(qa): cover packaged browser profiles ( #119043 )
2026-08-04 11:13:05 +08:00
Vincent Koc
b4faa5aa5e
chore(gateway): cover update and setup RPCs
...
* test(gateway): cover update and setup RPCs
* test(gateway): cover target wizard lifecycle
* test(gateway): normalize QA fixture ownership
* test(gateway): include historical dist closure
* test(gateway): isolate historical update fixture
* test(qa): align target wizard lifecycle proof
* test(qa): read structured gateway call errors
2026-08-04 09:15:55 +08:00
Vincent Koc
ee397f0c59
test(qa): prove ClawHub catalog discovery ( #118934 )
...
* test(qa): prove ClawHub catalog discovery
* test(qa): use shared temp cleanup
2026-08-04 09:07:35 +08:00
Vincent Koc
a85d3bbc5c
test(qa): prove container health endpoints ( #119012 )
2026-08-04 08:49:51 +08:00
Vincent Koc
15b23cfc2d
fix(docker): use authenticated gateway health command ( #118996 )
...
* fix(docker): use authenticated gateway health command
* test(docker): prove documented compose health command
2026-08-04 07:10:36 +08:00
Vincent Koc
06b5f0b2ff
test(qa): cover CLI onboarding and plugin install sources ( #118882 )
...
* test(qa): cover CLI onboarding and plugin sources
* test(qa): assert npm file plugin source
* test(qa): redact onboarding password assertion
* test(qa): retain onboarding evidence log
2026-08-04 06:54:42 +08:00
Vincent Koc
1d446ad2cc
fix(plugins): remove stale load paths during uninstall ( #118930 )
...
* test(qa): prove marketplace plugin updates
* fix(plugins): clean exact install load paths on uninstall
* fix(ci): register marketplace lifecycle assertions
2026-08-03 21:57:54 +00:00
Vincent Koc
5b1b1e0632
test(qa): cover CLI distribution workflows ( #118948 )
2026-08-04 05:09:39 +08:00
Vincent Koc
819c241406
fix(parallels): keep provider keys out of POSIX job logs ( #118840 )
2026-08-04 02:26:22 +08:00
Shakker
b8f5aa8ec8
fix: keep skip-ui onboarding on guided flow ( #118737 )
...
Keep `openclaw onboard --skip-ui` and `openclaw setup --skip-ui` on guided onboarding while suppressing browser and terminal handoffs.
Refs #118388 and #118038 .
Prepared head SHA: 4e284c4523
Co-authored-by: Shakker <165377636+shakkernerd@users.noreply.github.com >
Reviewed-by: @shakkernerd
2026-08-03 18:03:01 +01:00
Peter Steinberger
b132ceba1a
fix(parallels): preserve real Windows launch outcomes after setup timeouts ( #118765 )
...
* fix(parallels): preserve real launch outcomes after setup consumes its deadline
* fix(parallels): drain completed launches before enforcing setup deadlines
2026-08-03 10:01:33 -07:00
Vincent Koc
8987e93c65
fix(parallels): recover Windows poll transport failures ( #118479 )
2026-08-03 23:38:08 +08:00
Peter Steinberger
a613ec3383
refactor: consolidate kitchen sink RPC walk helpers ( #118486 )
...
* refactor(e2e): consolidate kitchen sink RPC helpers
* fix: bind kitchen sink process signaling
2026-08-02 22:30:38 -07:00
Peter Steinberger
9b8e50b9f6
refactor(scripts): consolidate redundant tooling paths ( #118259 )
2026-08-02 16:20:09 -07:00
Peter Steinberger
7866ecae4b
fix(release): keep npm 12 pack checks working ( #118209 )
...
* fix(release): accept npm 12 pack json
* fix(release): share npm pack normalizer in plugin workflow
2026-08-02 14:57:49 -07:00
Vincent Koc
b35b8e286d
fix(plugins): unblock prerelease validation ( #118103 )
...
* fix(plugins): align compatibility registry identity
* fix(slack): compact response URL native fallbacks
* test(plugins): stabilize prerelease runtime checks
* fix(packaging): include CUA driver in root package
* fix(packaging): declare CUA runtime dependency
* fix(cua): defer native driver loading
2026-08-03 04:48:05 +08:00
Dallin Romney
44dc286ce7
fix(qa): use canonical service identity for update restart ( #117814 )
2026-08-02 17:18:01 +08:00
Vincent Koc
263741b1f0
fix(ci): align release validation fixtures ( #117494 )
...
* fix(release): align beta 6 e2e fixtures
* fix(doctor): preserve missing state startup signal
* test(release): align beta e2e contracts
* test(agents): use canonical empty auth store
* test(agents): isolate prompt cooldown scheduling
* test(release): align main validation fixtures
* test(release): accept Code Mode plugin tool evidence
* fix(test): repair release validation checks
* test(cron): assert structured session targets
2026-08-02 00:39:36 +08:00
Dallin Romney
f1f53f49b3
fix(release): accept legacy Codex follow-through delivery ( #117458 )
...
* fix(release): accept legacy Codex follow-through delivery
* docs(release): explain extended-stable Codex validation
2026-08-01 23:30:47 +08:00
Vincent Koc
f5a8cb02ea
test(release): repair full validation regressions ( #116931 )
...
* test(discord): mock thread delete listener
* test(qa): expect blocked update evidence
* test(telegram): preserve recovered context body
* fix(test): configure kitchen-sink personality
* test(browser): expect canonical staged upload paths
* test(browser): canonicalize macOS download roots
* test(feishu): seed legacy session rows offline
* test(telegram): isolate message context session stores
* test(qqbot): expect canonical media paths
* test(anthropic): match canonical transcript paths
* test(qa): expect canonical session store keys
* test(gateway): isolate rewind media reads
* test(release): review plugin child spawns
* test(plugins): expect process-stable manifest metadata
* test(google): retire usage telemetry contracts
2026-08-01 15:42:50 +08:00
Vincent Koc
b45ca07ec9
fix(ci): keep full release validation aligned with runtime state ( #116653 )
...
Align Telegram artifact reuse and packaged Docker validation with current GitHub Actions and runtime state contracts. Refresh affected regression fixtures and isolate test state.
2026-07-31 23:03:02 +08:00
Vincent Koc
c45c318848
fix(plugins): enforce conformance probe diagnostics ( #116676 )
2026-07-31 13:20:33 +08:00
Vincent Koc
39156a99cd
fix(ci): restore beta release harnesses ( #116596 )
...
* test(release): model systemd ownership probes
* fix(ci): restore release Docker package probes
* fix(release): preserve Windows setup-node runtime
* fix(release): isolate Windows service validation
* fix(release): strip isolated Windows service identity
2026-07-31 09:17:35 +08:00
Peter Steinberger
e604cf5b77
fix(release): trust update restart harness ( #116301 )
...
* fix(release): trust update restart harness
* fix(release): preserve candidate harness root
2026-07-30 05:19:16 -07:00
Ayaan Zaidi
4bd56b8ad8
test(e2e): tag the mock Responses preamble with its wire phase
...
The mock streamed pre-tool assistant text on the Responses path without `phase: "commentary"`, the field the API sets and the transport reads, so the draft-proof scenario ran green while never exercising the preamble lane on that transport. Proven live on Telegram: the preamble now renders as the status headline, and as a commentary line when progress.commentary is on.
2026-07-30 16:34:38 +09:00
Peter Steinberger
3e67671d92
fix(e2e): apply default service identity per flow ( #116265 )
2026-07-30 00:00:14 -07:00
Peter Steinberger
62cbbcc800
fix(e2e): align service account state ( #116254 )
2026-07-29 23:00:16 -07:00
Ayaan Zaidi
d8d77ffbae
test(e2e): delay the draft-proof final answer past the start gate
...
A progress draft only exists while the agent is working, and OpenClaw's exec
returns instantly for a mock tool call, so the whole turn finished in ~86ms —
inside the 1.5s draft gate. No draft was created, which is correct behavior but
proves nothing about rendering.
The draft-proof scenario now holds its final answer (MOCK_DRAFTPROOF_FINAL_DELAY_MS,
default 6s) so the turn straddles the gate. That is what made the live Discord
recording possible: draft created, edited with the status headline above the
tool line, replaced by the final answer, then deleted.
2026-07-30 13:36:21 +09:00
Ayaan Zaidi
dcb0ad5c29
fix(ci): satisfy docs formatting, lint, and the SDK API baseline
...
Three gates my own changes broke:
- docs/channels/telegram.md needed a blank line before </Note>; I formatted the
TypeScript but never ran the docs formatter over the pages I edited.
- The mock harness matched a literal with a regex, which oxlint's prefer-includes
rejects.
- Widening resolveChannelPreviewStreamMode's defaultMode to StreamingMode and
adding rendersRollingLinesNatively changes the exported plugin-SDK surface, so
the API baseline hash had to be regenerated.
2026-07-30 13:36:21 +09:00
Ayaan Zaidi
436557b8e9
test(e2e): add a progress-draft scenario to the mock provider
...
Proving headline-plus-tool-line composition needs assistant text emitted
*before* a tool call: that leading text is what gets tagged as commentary and
rendered as the draft's status headline. The mock could only echo a single token,
so the draft path was unreachable without a live model.
Trigger `OPENCLAW_E2E_DRAFTPROOF` now serves two turns — preamble plus a shell
call, then the final answer — on both /v1/responses and /v1/chat/completions.
Only the completions transport tags commentary today, which is why the
completions path matters here.
Used to record the draft live on real Telegram: one message carrying the
headline above the tool line, the final answer, then the draft edited to its
receipt.
2026-07-30 13:36:21 +09:00