Commit Graph

6528 Commits

Author SHA1 Message Date
Peter Steinberger b4a26783f7 refactor(test): consolidate duplicated requireRecord and provider HTTP mock helpers (#119982)
* refactor(test): consolidate duplicated test helpers

* test: remove stale record guard import

* fix(test): remove orphaned record guards

* refactor(test): keep record requirement messages exhaustively typed

* fix(test): keep packages/ai record guard package-local
2026-08-06 14:48:01 -07:00
Peter Steinberger 9fdae501b8 refactor(test): table-drive duplicated test cases (#119973) 2026-08-06 12:37:43 -07:00
Vincent Koc a914682467 fix(release): stream JSON preparation output (#119951) 2026-08-06 21:54:26 +08:00
Vincent Koc 4d9c249d40 test(qa): allow restart startup diagnostics (#119928)
Punchcard-Session: quiet-valley-meadow-gq
2026-08-06 19:56:22 +08:00
Vincent Koc d73eb23b29 fix(release): report seeded changelog provenance truthfully (#119897)
* fix(release): report seeded changelog provenance truthfully

* fix(release): reject legacy provenance formatting

* fix(release): enforce complete provenance records
2026-08-06 19:22:16 +08:00
Dallin Romney 8c64ca24b1 fix(qa): include pinned gateway restart in core runtime proof (#118009)
* fix(qa): run pinned gateway restart runtime pair

* fix(qa): run pinned pair before advisory report
2026-08-06 18:52:20 +08:00
Vincent Koc a3b0982148 perf(tasks): benchmark durable task registration churn (#119828)
* perf(tasks): add durable registry churn benchmark

* test(tasks): cover registry churn benchmark contract

* chore(tasks): wire registry churn benchmark
2026-08-06 18:37:30 +08:00
Vincent Koc 7321c44246 fix(agents): isolate spawn benchmark samples (#119859) 2026-08-06 18:10:35 +08:00
Vincent Koc f73eb88eda fix(pr): fail fast when temporary storage is unavailable (#119890) 2026-08-06 17:49:19 +08:00
Vincent Koc 01ae9d40fc chore(release): add protected npm placeholder publishing (#119875)
Adds a protected, dry-run-by-default workflow for reserving release-enabled external plugin package names with verified npm 0.0.0 placeholders.
2026-08-06 17:37:09 +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 83d586083d test(ci): assert timeout signals from supervisor log (#119889) 2026-08-06 02:15:56 -07:00
Vincent Koc c67556df31 fix(tooling): stop pnpm from reconciling shared worktree deps (#119863) 2026-08-06 16:58:01 +08:00
w33d 2ea567972c fix(diagnostics): attribute plugin LLM usage spans (#107937)
Emit usage once at the shared plugin completion boundary and expose host-derived plugin identity only on OTel usage spans. Preserve aggregate metric labels and cover the redacted Gateway path end to end.

Refs #98968

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
Co-authored-by: ZengWen-DT <ceng.wen@xydigit.com>
2026-08-06 16:55:53 +08:00
Patrick Erichsen 355c107c09 fix(macos): unblock first-launch gateway setup (#119831)
* fix(macos): stop writing retired config metadata

* fix(macos): guard packaged CLI bootstrap versions

* chore(macos): refresh native i18n inventory

* fix(macos): repair retired metadata before gateway start
2026-08-05 22:25:17 -07:00
Peter Steinberger 6e4d387fed fix(test): keep TUI PTY suites in their owner lane (#119787) 2026-08-05 18:28:17 -07:00
HughTang a1064adb68 fix(diagnostics-otel): propagate exported span context (#112283)
* fix(diagnostics-otel): harness.run root span adopts diagnostic trace context

Fall back to internalOrTrustedParentContext when there is no active
tracked parent, so the openclaw.harness.run root span (and its whole
OTel subtree) adopts the diagnostic traceId instead of minting a new
OTel root. This lets spans propagated via the diagnostic traceparent
(e.g. a2a-gateway a2a.call / downstream a2a.task) share one trace with
the run internals.

* fix(diagnostics-otel): propagate exported span context

Co-authored-by: HughTang <44694613+HughTang@users.noreply.github.com>

* fix(diagnostics): break propagation import cycle

* fix(diagnostics): preserve trace propagation contracts

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-08-06 08:41:20 +08:00
Vincent Koc 7dcb1ad5ce fix(qa): attest realized profile executions (#119761)
* fix(qa): attest profile execution plans

Persist the canonical profile membership partition and scheduler-owned expected and observed execution cells in QA evidence. Validate successful evidence completeness and bind the canonical plan digest into workflow manifests.

Punchcard-Session: silver-meadow-lantern-vx

* test(ci): exercise QA evidence artifact round trips

Punchcard-Session: silver-meadow-lantern-vx

* fix(qa): record only realized profile executions

Co-authored-by: Dallin Romney <dallinromney@gmail.com>
Co-authored-by: ruel225 <ruel225@users.noreply.github.com>
Punchcard-Session: silver-meadow-lantern-vx

* test(qa): type realized channel evidence

Punchcard-Session: silver-meadow-lantern-vx

---------

Co-authored-by: Dallin Romney <dallinromney@gmail.com>
Co-authored-by: ruel225 <ruel225@users.noreply.github.com>
2026-08-06 08:33:02 +08:00
Vincent Koc b4e82951e7 perf(agents): isolate concurrency benchmark workers (#119749) 2026-08-06 06:49:36 +08:00
Jacqueline Henriksen 5ec4d9f82a fix(agents): seed fresh session identity before transcript append (#119473)
* fix(agents): seed fresh session identity before transcript append

* test(agents): prove fresh session persistence through gateway

* fix(agents): seed session identity on first transcript write

* fix(agents): atomically seed fresh session identity
2026-08-05 15:30:30 -07:00
Peter Steinberger 414616f583 fix(video): harden DashScope task and media lifecycle (#117303)
* fix(video): validate DashScope task outputs and release request guards

* fix(video): validate DashScope task outputs and release request guards

* refactor(video): use shared empty-asset validation

* fix(video): align DashScope Wan request contracts

* refactor(video): use shared empty-asset validation

* fix(video): enforce catalog modes before provider calls

* fix(video): keep model checks fallback-aware

* fix(video): centralize fallback-aware capability checks

* docs(video): document Wan 2.7 fixed audio

---------

Co-authored-by: Peter Steinberger <steipete@macos.shared>
2026-08-05 10:19:09 -07:00
Peter Steinberger 221df8cdc6 fix(testing): resolve Playwright browser cache before UI install (#119658) 2026-08-05 09:25:24 -07:00
Vincent Koc 113af2fcbd fix(ci): preserve stdin through Docker heartbeat logging 2026-08-05 23:56:36 +08:00
Vincent Koc 99021d173a perf(agents): add concurrency benchmark (#119569) 2026-08-05 22:23:37 +08:00
Peter Steinberger 03a9e022ed fix(managed-child): honor process groups that vanish before cleanup (#119614) 2026-08-05 06:57:55 -07:00
Peter Steinberger e7b7d1c8cd fix(ci): stop label-driven automation churn (#119610) 2026-08-05 06:53:23 -07:00
Jason (Json) 90148cf3e7 fix(tooling): balance local tsgo CPU cap (#119542) 2026-08-05 07:11:31 -06:00
clawsweeper[bot] c3d17e84f4 fix(build): select the root-help bundle that exports outputRootHelp (#119590)
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
2026-08-05 21:10:48 +08:00
Vincent Koc 4b37a05225 fix(ci): preserve QA profile evidence on timeout (#119572)
* fix(ci): preserve QA profile timeout evidence

Punchcard-Session: silver-valley-valley-dt

* fix(ci): classify QA timeout escalation

Punchcard-Session: silver-valley-valley-dt

* fix(ci): distinguish QA watchdog expiry

Punchcard-Session: silver-valley-valley-dt

* test(ci): type QA watchdog signal expectations

Punchcard-Session: silver-valley-valley-dt
2026-08-05 21:06:35 +08:00
qingminlong 637de7d379 fix(scripts): reject unsafe web-fetch benchmark counts (#119533)
* fix(scripts): reject non-decimal benchmark counts

* fix(scripts): reject unsafe benchmark counts

Punchcard-Session: clear-orchard-lantern-bc

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-08-05 18:00:32 +08:00
Peter Steinberger dedfc01628 fix(test): stage live auth profiles from SQLite (#113651)
* fix(test): stage live auth from SQLite

Punchcard-Session: cobalt-cedar-timber-04

* fix(test): snapshot staged auth atomically

Punchcard-Session: cobalt-cedar-timber-04

* fix(test): fail closed on partial auth schema

Punchcard-Session: calm-cedar-river-aa

* fix(test): resolve live auth stage path lazily

Punchcard-Session: calm-cedar-river-aa

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-08-05 17:12:09 +08:00
Jason (Json) 05a03c66fe fix: cap local tsgo CPU usage (#119517) 2026-08-05 15:32:43 +08:00
Vincent Koc db8e95f70b test(qa): cover managed OTEL runtime paths (#118965)
* test(qa): cover managed OTEL runtime paths

* test(qa): prove OTEL flush clamp

* test(qa): clean up OTEL runtime fixtures

* test(qa): share OTLP runtime support

* test(qa): harden managed OTEL install proof

* test(qa): align OTEL runtime fixtures

* test(qa): expose OTEL runtime failures

* test(qa): align OTEL runtime boundaries

* test(qa): bound fixture registry shutdown

* test(qa): isolate managed OTEL plugins

* test(qa): start managed OTEL from no plugins

* test(qa): launch managed OTEL from built dist

* test(qa): read managed plugin index from state root

* test(qa): align OTEL runtime agents and types

* test(qa): stage managed plugin packages in scratch

* test(qa): verify OTEL span ancestry

* test(qa): support multiple OTEL harness spans

* test(qa): prove OTEL delivery and preload spans

Punchcard-Session: crisp-lantern-orchard-nv

* test(qa): align OTEL delivery proof with channel boundary

Punchcard-Session: crisp-lantern-orchard-nv

* test(qa): resolve OTEL preload through fixture modules

* test(qa): isolate sampled OTEL export proof
2026-08-05 14:53:45 +08:00
Vincent Koc fd1662f49c fix(cli): retire invalid secret flags and prove doctor recovery (#118926)
* test(qa): add doctor CLI recovery coverage

* test(qa): secure doctor exec SecretRef proof

* test(qa): gate doctor systemd recovery proof

* test(qa): normalize doctor terminal output

* test(qa): close doctor probe sockets

* test(qa): classify doctor probe as foreign

* test(qa): track doctor probe sockets

* test(qa): retain doctor instance narrowing

* test(qa): preserve observed doctor recovery proof

* test(qa): keep doctor recovery on stable dist

* test(qa): honor Windows exec ACL blocking

* test(qa): use canonical home for systemd recovery

* test(qa): follow bounded gateway recovery

* test(qa): accept lifecycle service label

* test(qa): align doctor recovery contract

Punchcard-Session: crisp-lantern-orchard-nv

* docs(secrets): remove retired provider bypasses

Punchcard-Session: crisp-lantern-orchard-nv

* test(qa): isolate doctor recovery target

Punchcard-Session: crisp-lantern-orchard-nv

* fix(cli): retire invalid secret provider flags

Punchcard-Session: crisp-lantern-orchard-nv

* test(qa): isolate doctor supervisor mode

Punchcard-Session: crisp-lantern-orchard-nv

* fix(plugins): remove dead secret path bypass

Punchcard-Session: crisp-lantern-orchard-nv

* chore: drop release-owned changelog entry

Punchcard-Session: crisp-lantern-orchard-nv

* test(qa): isolate doctor sudo scope

Punchcard-Session: crisp-lantern-orchard-nv

* fix(secrets): remove dead path bypass

Punchcard-Session: crisp-lantern-orchard-nv

* test(qa): isolate systemd user bus

Punchcard-Session: crisp-lantern-orchard-nv
2026-08-05 11:20:23 +08:00
Vincent Koc 17ef7771a6 fix(ci): stabilize TUI PTY proof ownership (#119420)
* fix(ci): stabilize TUI PTY proof ownership

Punchcard-Session: cobalt-brook-meadow-m9

* fix(test): align TUI PTY event typings

Punchcard-Session: cobalt-brook-meadow-m9
2026-08-05 11:08:56 +08:00
Vincent Koc 392e1c0620 fix(ci): preserve cache warmer shard envelopes (#119403)
Punchcard-Session: amber-orchard-valley-s4
2026-08-05 10:20:55 +08:00
Vincent Koc 8f2850d83e fix(ci): isolate cache warmer configs (#119381)
Punchcard-Session: amber-orchard-valley-s4
2026-08-05 09:12:28 +08:00
Josh Avant 618fba92bf feat(audit): add execution identity inspection (#117034)
* feat(audit): add opt-in execution identity inspection

* fix(audit): gate recovery identity retention

* fix(audit): keep recovery identity type private

* test(audit): type internal recovery fixture

* test(audit): split recovery identity coverage

* docs(audit): define operator read trust boundary

* test(qa): register identity scenario child

* fix(audit): enforce shared identity retention bounds

* fix(audit): seal public ingress identity boundary

* fix(audit): keep ingress guard lint-clean

* fix(gateway): preserve advertised method order

* chore(protocol): sync advertised method order

* fix(protocol): encode audit selector invariants

* test(audit): prove exact execution guard

* fix(audit): keep identity storage lazy
2026-08-04 20:05:15 -05:00
Vincent Koc 9518564e30 fix(ci): preserve release evidence across reruns (#119380)
Punchcard-Session: silver-valley-valley-dt
2026-08-05 08:43:25 +08:00
Vincent Koc 9ff9aac71a fix(ci): isolate built TUI PTY fixture (#119339)
Run the built local TUI PTY lane after the other artifact checks so its real Gateway fixture has exclusive process and event-loop capacity.

Punchcard-Session: cobalt-brook-meadow-m9
2026-08-05 08:00:29 +08:00
Heming Zeng 9bfe292c86 fix(sessions): keep gateway responsive while large transcript archives are built (#112424)
* fix(sessions): keep gateway responsive during transcript archiving

* test(sessions): strengthen archive worker coverage

* fix(sessions): bound archive worker concurrency

* test(sessions): normalize rollback paths on Windows

* fix(sessions): load source archive worker on node 22

* fix(sessions): align archive fencing with session windows

* test(sessions): adapt cleanup race to archive worker

* fix(sessions): harden archive worker lifecycle

* style(sessions): format archive lifecycle tests

* fix(sessions): release writer lane during archive work

---------

Co-authored-by: Josh Lehman <josh@martian.engineering>
2026-08-04 14:40:59 -07:00
Dallin Romney 8fc4458593 fix(release): accept legacy empty core artifacts (#119337) 2026-08-05 04:59:55 +08:00
Dallin Romney 532580fa2b fix(ci): retry interrupted Windows dashboard release checks (#119095) 2026-08-05 04:36:05 +08:00
Dallin Romney f3dbf15ad3 fix(release): filter validation ancestry fetch (#119334) 2026-08-05 04:34:15 +08:00
Dallin Romney 7c93cff84a fix(release): accept trusted extended-stable validation evidence (#119264)
* fix(release): accept trusted extended-stable validation evidence

* fix(release): document trusted candidate promotion

* docs(release): clarify validation evidence recovery
2026-08-05 04:14:30 +08:00
Vincent Koc e99c289f3b fix(ci): avoid duplicate Matrix release QA runs (#119171)
* fix(ci): gate reusable Matrix QA runs

* docs(ci): document Matrix release QA budget
2026-08-05 03:31:00 +08: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 b4f01afa86 test(qa): cover Canvas agent and node controls (#119047)
* test(qa): cover Canvas agent and node controls

* fix(test): activate Canvas registry before gateway startup

* fix(test): align Canvas node proof with wire contract

* fix(test): narrow Canvas node invocation frames
2026-08-04 20:42:30 +08:00
Vincent Koc e4aab26d01 fix(cli): avoid repeated migration scans during local agent turns (#119051)
* fix(cli): avoid repeated state migration scans

* fix(build): preserve source runtime provenance

* fix(cli): persist state checkpoint before plugin convergence

* fix(cli): invalidate migration checkpoints on input changes

* fix(plugins): refresh changed doctor contracts

* fix(plugins): preserve warm Doctor contract indexes

* test(plugins): align manifest registry fixtures

* test(cli): isolate ACP process state

* fix(doctor): persist refreshed plugin indexes

* fix(doctor): verify persisted plugin index from disk

* fix(doctor): fence plugin index persistence

* fix(doctor): retain validated migration lease

* fix(plugins): canonicalize persisted build metadata

* fix(plugins): preserve config policy during install repair
2026-08-04 20:28:16 +08:00
Vincent Koc d3557ec013 fix(ci): accept profiled partial Kova gates (#119121)
* fix(ci): accept profiled partial Kova gates

* fix(ci): scope Kova secrets to live runs

* fix(ci): require reviewed Kova refs for live runs

* fix(ci): pin cross-profile Kova repair

* fix(perf): preserve historical Kova report contracts

* fix(ci): declare Kova gate options

* fix(ci): preserve required Kova partial failures
2026-08-04 20:07:12 +08:00