Commit Graph

1144 Commits

Author SHA1 Message Date
wings1029 730cfd774d fix(qa): bound Windows taskkill process termination (#109453)
`taskkill.exe` can hang when the target process is stuck in a kernel wait
state (e.g. a pending I/O request). Add a 5-second timeout so QA scenario
cleanup fails closed instead of hanging the test runner indefinitely.

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-16 19:11:43 -07:00
wings1029 13e43d4c05 fix(qa): bound gateway child taskkill termination (#109454)
`taskkill.exe` can hang when the target process is stuck in a kernel wait
state. Add a 5-second timeout to both taskkill invocations in the gateway
child process tree cleanup so stalled termination fails closed instead of
hanging the QA runner.

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-16 19:10:53 -07:00
xingzhou afd0fe32c2 fix(qa-lab): preserve boundary emoji in gateway startup diagnostics (#104840)
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-16 18:26:26 -07:00
mushuiyu886 3ba08dbf77 fix(qa): bound process snapshot probes (#109207) 2026-07-16 16:54:54 -07:00
Dallin Romney 8924e27bb6 refactor(qa): keep synthetic UX evidence out of scenario catalog (#109315)
* refactor(qa): keep UX evidence producer out of catalog

* test(qa): preserve UX producer runner integration
2026-07-16 13:51:18 -07:00
Dallin Romney b5eb8977dc test(qa): prove Codex cold install product path (#109267) 2026-07-16 13:10:41 -07:00
Peter Steinberger 04c31f453c fix: reject oversized credential files in remaining readers (#109260)
* fix(security): bound remaining credential file reads

* fix(anthropic-vertex): keep ADC helper type private
2026-07-16 11:33:18 -07:00
Peter Steinberger 822f16303d fix(qa): retry transient credential heartbeats 2026-07-16 18:52:01 +01:00
Peter Steinberger a726bd7340 fix(qa): retry transient FTS settle races 2026-07-16 18:11:50 +01:00
Peter Steinberger 4dc67161ee fix(qa): harden gateway process cleanup 2026-07-16 17:51:26 +01:00
Dallin Romney 303be5e0e4 fix(qa): label static scorecard data as inventory (#108784) 2026-07-16 09:43:51 -07:00
qingminlong ac3635b50c fix(qa-lab): keep child output UTF-8 safe when capped (#108156)
* fix(qa-lab): keep child output UTF-8 safe when capped

* fix(qa-lab): preserve uncapped malformed output

Co-authored-by: qingminlong <34085845+qingminglong@users.noreply.github.com>

* refactor(qa-lab): keep utf8 repair plugin-local

Co-authored-by: qingminlong <34085845+qingminglong@users.noreply.github.com>

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-16 08:35:42 -07:00
Alix-007 ee70f20fed fix(qa): stop Docker startup hangs on stalled health checks (#108992)
* fix(qa): bound Docker health probe deadlines

* fix(qa): race Matrix health candidates

Co-authored-by: Alix-007 <li.long15@xydigit.com>

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-16 05:51:38 -07:00
xingzhou 6e594ca7ca fix(qa-lab): preserve Unicode in capped evidence previews (#108545)
* fix(qa-lab): preserve UTF-8 evidence previews

* fix(qa-lab): complete short evidence preview reads

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-16 03:50:30 -07:00
Peter Steinberger a7d5386896 improve: speed up ring-zero QA smoke (#108694)
* ci: speed up ring-zero QA smoke

* ci: scope QA sticky cache to Docker lane

* ci: keep QA dependency setup on actions cache

* test: restore modern Docker QA proof
2026-07-16 01:12:40 -07:00
Dallin Romney 9a2f25c82b refactor(qa): make channel drivers run-level (#108602) 2026-07-16 00:59:03 -07:00
Peter Steinberger dde90a345a refactor(plugin-sdk): narrow wildcard barrels to explicit used exports (#108440)
* refactor(plugin-sdk): narrow wildcard barrels to explicit used exports

* refactor(tools): delete dead tool-planning module exposed by barrel narrowing

* fix(plugin-sdk): restore deprecation tag on OpenClawSchemaType alias

* test(agents): drop test for deleted runtime proxy module

* refactor(tools): trim descriptor types to cache consumers

* refactor(deadcode): harvest exports orphaned by barrel narrowing

* refactor(deadcode): harvest exports orphaned by barrel narrowing (rest)

* fix(agents): restore sdk imports and test markers via public predicate

* fix(plugin-sdk): named type re-exports in plugin-entry; trim types barrel precisely

* chore(plugin-sdk): account unmasked deprecated provider types in budgets

* fix(plugins): name star-only type rows for dts bundling

* fix(plugins): restore host-hook surface; unexport internal api compositions

* fix(plugins): named type imports for api composition; restore needed source exports

* fix(plugins): knip-visible type imports for registry surfaces

* test: adapt tests to privatized media and command internals

* fix(qa-lab): re-export snapshot conversation type

* style: format sessions sdk imports

* fix(plugins): restore smoke entry export; pin budgets to exact actuals

* fix(plugins): canonical smoke-entry import; drop orphaned root shims

* fix(plugins): allowlist manifest probe, repoint qa web import, drop dead browser barrels

* fix(plugin-sdk): pin codex auth marker and scaffold provider type

* fix(qa-lab): keep web-facing model-selection shim within boundary rules

* fix(plugin-sdk): preserve merged contracts through narrowed barrels

* chore(plugin-sdk): pin post-rebase surface budgets
2026-07-16 00:45:23 -07:00
Dallin Romney ae5773187b fix(qa-lab): failed evidence no longer fulfills scorecard coverage (#108537)
* fix(qa-lab): require passing scorecard evidence

* test(qa-lab): keep evidence fixture identity stable
2026-07-15 23:53:52 -07:00
Alix-007 5a2bc73c28 fix(qa-lab): keep suite HTTP probes within deadlines (#108064)
* fix(qa-lab): bound suite HTTP probes

* style(qa-lab): format gateway timeout proof

* test(qa-lab): pin media deadline request count
2026-07-15 22:45:30 -07:00
Peter Steinberger a6125b7868 perf(ci): split QA smoke into four profile parts and time tsdown invocations (#108638) 2026-07-15 22:41:02 -07:00
Peter Steinberger bae9752c5a refactor(deadcode): enforce repository hard zero (#108641) 2026-07-15 22:40:00 -07:00
Alix-007 24e96bd8c1 fix(qa-lab): prevent Slack desktop bootstrap hangs (#108161)
* fix(qa-lab): bound Slack installer downloads

* fix(qa-lab): bound Slack installer retry window
2026-07-15 22:35:24 -07:00
Peter Steinberger de3f7925c4 test(release): harden QA and live validation (#108589) 2026-07-15 20:45:36 -07:00
Peter Steinberger 7f9d519fcb fix(ci): repair provider fold validation (#108564)
* fix(ci): repair provider fold validation

* fix(qa): model debugger web entry
2026-07-15 19:49:02 -07:00
Dallin Romney 652c6444b3 fix(qa): enforce scenario lane contracts (#108539) 2026-07-15 19:48:09 -07:00
Peter Steinberger 154d1277e1 fix(qa): repair package Telegram harness boundaries (#108499)
* fix(qa): keep packaged entry off private transport

* fix(qa): lazy-load private transport runtime

* fix(qa): pass relative package artifact path

* fix(qa): isolate packaged bus protocol

* fix(qa): mount package scenario catalog
2026-07-15 19:24:55 -07:00
Peter Steinberger 08ecf63bb6 fix(deadcode): resolve strict-workspace fallout from bundled plugin roots
The strict knip workspaces landed in #108547 flagged seven files. Two are
convention-resolved and become explicit entries (discord configured-state via
the package-state probes, qa-lab cli via the SDK facade basename resolver);
the other five were dead barrels/wrappers superseded by canonical modules and
are deleted (browser bridge/cdp barrels, discord timeouts wrapper, openai
register.runtime, qa-lab model-selection wrapper).
2026-07-16 03:08:17 +01:00
Peter Steinberger d4183facf1 refactor(deadcode): tighten extension root modeling (#108538) 2026-07-15 18:18:23 -07:00
Dallin Romney 87079d025e improve(qa): consolidate live transport selector contracts (#108465)
* refactor(qa): consolidate live transport selectors

* refactor(qa): remove live transport indirection
2026-07-15 17:20:07 -07:00
Dallin Romney 2d9b78fff7 refactor(qa): canonicalize live scenario coverage (#108464) 2026-07-15 16:50:41 -07:00
Peter Steinberger 555c38f483 test(qa): align live selector coverage tests (#108481) 2026-07-15 15:40:32 -07:00
Peter Steinberger 484ad52f37 fix(qa): keep package harness off private runtime (#108476) 2026-07-15 15:23:01 -07:00
Peter Steinberger 3ee408b7b5 fix(qa): isolate Crabline from package live lanes (#108472)
* fix(qa): isolate Crabline from package live lanes

* fix(qa): narrow optional smoke runtime

* ci(release): avoid unrelated Crabline install
2026-07-15 15:09:07 -07:00
Josh Avant 2cc04c205f fix(qa-channel): bind message actions to authorized targets (#108433)
* fix(qa-channel): bind message actions to authorized targets

* fix(qa-channel): close target-binding review gaps

* fix(qa-lab): preserve conversation identity in snapshots

* fix(qa-channel): canonicalize scoped targets

* fix(qa-channel): unify target parsing

* fix(qa-channel): close review gaps
2026-07-15 14:36:20 -07:00
Dallin Romney af71400c8e refactor(qa): route live channel selectors through suite host (#108429)
* refactor(qa): route live channel selectors through suite host

* fix(qa): repair live selector CI

* fix(qa): remove retired runner exports

* fix(qa): remove obsolete live evidence
2026-07-15 13:35:34 -07:00
Peter Steinberger ff8a015981 test: tighten additional async polling (#108450) 2026-07-15 13:14:35 -07:00
Dallin Romney 77d07dc3e9 refactor(qa): migrate Telegram scenarios into QA Lab (#108430)
* refactor(qa): migrate Telegram scenarios into QA Lab

* refactor(qa): remove retired Telegram runner exports
2026-07-15 12:55:00 -07:00
xingzhou 7ea249463c fix(qa): handle Matrix CLI stream errors (#102698)
Co-authored-by: Dallin Romney <dallinromney@gmail.com>
2026-07-15 12:33:35 -07:00
Alix-007 851f76cb0d fix(qa-lab): prevent Telegram desktop bootstrap hangs (#108157)
* fix(qa-lab): bound Telegram installer downloads

* fix(qa-lab): stage NodeSource setup script

Co-authored-by: Alix-007 <li.long15@xydigit.com>

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-15 09:57:57 -07:00
Peter Steinberger 84c7941f1e refactor: simplify recent async ownership fixes (#108164)
* fix(device-pair): preserve concurrent notify state

Co-authored-by: Alix-007 <li.long15@xydigit.com>

* refactor(ui): simplify logbook refresh ownership

Co-authored-by: Alix-007 <li.long15@xydigit.com>

* fix(qa-lab): bound multipass retry window

Co-authored-by: Alix-007 <li.long15@xydigit.com>

* chore: keep release notes in PR body

Co-authored-by: Alix-007 <li.long15@xydigit.com>

* fix(ui): keep logbook controller state private

Co-authored-by: Alix-007 <li.long15@xydigit.com>

* fix(ui): retire logbook client epochs

Co-authored-by: Alix-007 <li.long15@xydigit.com>

* fix(ui): retire inactive logbook ownership

Co-authored-by: Alix-007 <li.long15@xydigit.com>

* fix(device-pair): require atomic notify state

Co-authored-by: Alix-007 <li.long15@xydigit.com>

---------

Co-authored-by: Alix-007 <li.long15@xydigit.com>
2026-07-15 03:32:15 -07:00
Peter Steinberger c57d1af958 fix(qa): wait for Matrix config reload (#108214) 2026-07-15 03:31:59 -07:00
Dallin Romney ad34552473 refactor(qa): migrate Matrix scenarios into QA Lab (#103589)
* refactor(qa): migrate Matrix scenarios into QA Lab

* fix(qa): build Matrix boundary declarations

* fix(qa): preserve Matrix preview boundaries

* fix(qa): preserve Matrix hot reload semantics

* fix(qa): harden Matrix destructive scenario failures

* fix(qa): harden Matrix scenario isolation

* fix(qa): close Matrix negative scenario blind spots

* fix(qa): isolate Matrix substrate state

* fix(qa): harden Matrix transport substrate

* fix(qa): preserve Matrix profile and event parity

* fix(qa): preserve explicit scenario models

* fix(qa): align Matrix scenario coverage taxonomy

* fix(qa): format Matrix allowlist cleanup

* fix(qa): satisfy migrated Matrix CI contracts

* fix(qa): reconcile Matrix migration with current main

* fix(qa): break scenario flow import cycle

* fix(qa): reconcile Matrix max-lines ownership

* fix(qa): address Matrix review boundaries

* fix(qa): remove stale Matrix lint suppression

* fix(qa): adopt split Matrix E2EE flows

* fix(qa): export Matrix scenario record guard

* fix(qa): align Matrix migration with privatized helpers

* refactor(qa): finish Matrix QA Lab ownership

* fix(qa): preserve Matrix suite defaults

* fix(qa): reconcile Matrix cleanup with current main

* test(qa): follow canonical Matrix profile size

* fix(qa): guard stale Matrix QA package output

* docs(qa): redirect retired Matrix QA pages

* refactor(qa): finish Matrix runner rename

* test(qa): assert Matrix defaults through profile resolver

* docs: refresh QA cleanup map

* fix(qa): privatize Matrix storage discovery
2026-07-15 01:22:20 -07:00
Peter Steinberger bac7744233 fix(qa): scope duplicate parity capture handling 2026-07-15 05:03:43 +01:00
Peter Steinberger 33e415ea6c fix(qa): keep parity helper private 2026-07-15 05:03:43 +01:00
Peter Steinberger e23ba67142 fix(qa): reconcile duplicate parity capture rows 2026-07-15 05:03:43 +01:00
Marcus Castro bc769663f8 fix(qa): restore WhatsApp scenario contracts (#107543) 2026-07-15 00:58:38 -03:00
Alix-007 4e24470ced fix(qa-lab): prevent Multipass Node download hangs (#107702) 2026-07-14 20:47:49 -07:00
Alix-007 e9d76ae2a7 fix(qa-lab): prevent dashboard API hangs (#107701) 2026-07-14 20:45:57 -07:00
Alix-007 1878c57a46 fix(qa-lab): prevent Slack desktop auth hangs (#107700) 2026-07-14 20:43:46 -07:00
Alix-007 8d260d2f49 fix(qa-lab): prevent Telegram desktop API hangs (#107699) 2026-07-14 20:40:55 -07:00