507 Commits
Author SHA1 Message Date
Peter SteinbergerandGitHub 4e008cd713 feat(ios): adopt Talk voice sessions (#111369)
* feat(ios): adopt Talk voice sessions

* docs(agents): fix unrelated red-main breakage in the landing PR

* chore(i18n): translate Talk voice-session strings across native locales
2026-07-19 06:28:18 -07:00
431482ca3e docs(agents): require reading ClawSweeper rank-up moves before landing PRs (#111385)
Co-authored-by: Molty <molty@openclaw.ai>
2026-07-19 05:37:44 -07:00
Peter SteinbergerandGitHub fa9ae68c34 docs(agents): draft-then-ready PR creation prevents the merge-ref CI race (#110970) 2026-07-18 22:41:10 +01:00
Peter Steinberger 6d5ebac0b1 docs(agents): additive SQLite surfaces skip schema-version bumps 2026-07-18 10:27:27 -07:00
Peter SteinbergerandGitHub a54a292d62 test(ui): fix Node 25+ localStorage crashes in jsdom suites; document PR-open CI drops (#110812)
* test(ui): shim dead Node 25+ WebStorage localStorage in jsdom test setup

Node 25+ ships a default-on global localStorage that is dead without
--localstorage-file (undefined on 26.5; throwing or inert elsewhere). It
shadows jsdom's Storage during vitest global population, so storage-touching
UI tests crash on newer local Node while Linux CI (Node 24) passes — six
files failed locally on Node 26.5. The shared setup now capability-probes
(round-trip, throw-safe), prefers jsdom's own window Storage when only the
global alias is dead, and otherwise installs one in-memory Storage on both
window and globalThis.

Also documents the PR-open CI drop pattern in AGENTS.md: fresh PRs race
GitHub's merge-ref computation and the open-event CI run can drop or die
as startup_failure/BuildFailed (not rerunnable); verify attach and
close/reopen to re-fire.

* fix(test): drop unnecessary String() conversions in localStorage shim
2026-07-18 18:19:44 +01:00
Peter Steinberger 2ca4d92f1a docs: live-test gateway isolation policy (session-owned dev gateway, operator approval for real instances) 2026-07-17 17:55:33 -07:00
Peter Steinberger cc0b8479d9 docs: require approval for SQLite schema bumps 2026-07-17 06:11:51 +01:00
Peter Steinberger 523c07d20e docs(agents): add correct-but-pragmatic code guidance
Two Code-section bullets: correctness on real inputs is mandatory but
over-engineering for imagined ones is a defect; extremely unlikely edge
cases are tradable for real simplification when the tradeoff is named.
2026-07-17 02:24:41 +01:00
Peter SteinbergerandGitHub 333409908d docs: define SecretRef failure isolation policy (#109430) 2026-07-16 17:05:20 -07:00
Peter Steinberger 442d6fc94a docs(agents): prefer remote testboxes with trusted local fallback when unavailable 2026-07-16 21:52:58 +01:00
Peter Steinberger 6dc3e6055f docs(agents): note OPENCLAW_BUILD_PRIVATE_QA=1 to build QA Lab/qa-channel into dist 2026-07-16 13:40:46 -07:00
Peter SteinbergerandGitHub c57d1af958 fix(qa): wait for Matrix config reload (#108214) 2026-07-15 03:31:59 -07:00
Peter SteinbergerandGitHub 40e245856e fix: synchronize gateway dispatch tests before invocation (#108138)
* test(gateway): capture dispatch baseline before invocation

* docs(agents): guard local PR token identity
2026-07-15 01:22:23 -07:00
Peter SteinbergerandGitHub 4f71a2855e test(auto-reply): install channel metadata for group prompt cases (#108113) 2026-07-15 00:43:03 -07:00
Peter SteinbergerandGitHub d801f2e68c docs: document CI rerun attempt selection (#108095) 2026-07-15 00:12:41 -07:00
Peter Steinberger 18c14abc2a docs: require post-merge recap 2026-07-14 23:48:20 -07:00
Peter SteinbergerandGitHub c51bb5ed20 test(github-copilot): align token endpoint fixtures (#108047)
* test(github-copilot): align token endpoint fixtures

* docs: refresh generated docs map
2026-07-14 23:25:49 -07:00
Peter SteinbergerandGitHub d702f6fb33 ci: shorten full release validation critical path (#107894)
* ci(release): parallelize plugin Docker lanes

* test(plugins): expect malformed URL redaction

* ci: start release performance validation concurrently

* docs(agents): guard PR operations after throttling
2026-07-14 22:39:32 -07:00
Peter SteinbergerandGitHub ec5a6d83ef docs: note bounded maintainer invocations (#107830)
* docs: note bounded maintainer invocations

* docs: note exact run filtering
2026-07-14 16:20:10 -07:00
Peter SteinbergerandGitHub 59dea92da1 docs: note gh pr diff stat limitation (#107819)
* docs: note gh pr diff stat limitation

* docs: note yielded exec session handling
2026-07-14 15:55:58 -07:00
Peter SteinbergerandGitHub 80fed99d08 docs(agents): record invocation guards (#107757) 2026-07-14 13:46:48 -07:00
Peter SteinbergerandGitHub c2e0ce7b68 fix(ci): restore main validation gates (#107697)
* fix(ci): allow Unreleased notes for main validation

* test(ci): cover release smoke changelog intent

* test(ci): require release changelog policy propagation

* docs(agents): require review init after pushes

* chore(ci): prune stale max-lines baseline

* refactor(system-agent): split operation modules

* refactor(bonjour): keep ciao classification type private

* fix(bonjour): remove stale local classification alias
2026-07-14 12:11:25 -07:00
Peter SteinbergerandGitHub f81f9d8570 chore: enforce max-lines suppression ratchet (#107315)
* ci: enforce max-lines suppression ratchet

* chore: prune stale max-lines suppression

* fix: close max-lines ratchet enforcement gaps

* fix: harden max-lines ratchet checks

* fix(ci): satisfy max-lines ratchet checks

* style: format max-lines declarations

* fix(ci): match oxlint suppression grammar

* test: isolate max-lines git fixtures

* chore: prune resolved max-lines debt

* test: skip newline path fixture on Windows

* fix: harden max-lines suppression ratchet

* chore: refresh max-lines baseline

* fix: close max-lines ratchet bypasses

* fix: derive ratchet base from PR merge tree

* fix: support older Git in staged ratchet

* fix: align max-lines declarations and baseline

* chore: refresh max-lines baseline for current main

* fix: exclude generated wizard locales from max-lines

* chore: prune resolved max-lines debt
2026-07-14 09:27:02 -07:00
Peter SteinbergerandGitHub ca83f1ca51 fix(ci): restore release validation after runtime migrations (#107371)
* test(ci): repair plugin prerelease validation

* test(zalo): preserve adapter narrowing in sender helpers

* test(ci): track current bundled startup metadata

* fix(google-meet): refresh plugin shrinkwrap
2026-07-14 03:52:44 -07:00
Peter SteinbergerandGitHub 625d859938 test(ci): harden scheduled release probes (#107272)
* test(ci): harden scheduled release probes

* docs(agents): record testbox warmup failure

* test(wizard): avoid Promise executor return
2026-07-14 01:48:10 -07:00
Peter SteinbergerandGitHub f4b7a19624 fix: avoid remote boxes for focused validation (#107166)
* fix: avoid remote boxes for focused validation

* fix: preserve explicit remote proof routing

* fix: delegate when local diff refs are unavailable
2026-07-14 00:53:17 -07:00
Peter SteinbergerandGitHub 044392684b test(release): repair scheduled E2E regressions (#107173)
* test(release): repair scheduled E2E regressions

* test(release): refresh generated protocol bindings

* docs(agents): harden remote proof invocations
2026-07-13 23:49:36 -07:00
61986571bb fix(plugins): forward-port bundled SDK fallback hardening (#107131)
* fix(plugins): avoid bundled SDK fallback races

* fix(ci): satisfy plugin SDK LOC ratchet

* fix(ci): align fallback forward-port guards

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-13 21:50:46 -07:00
Peter SteinbergerandGitHub be5558cb4e fix(plugin-sdk): preserve runtime contexts in test mocks (#107059)
* test(plugin-sdk): make runtime context mock stateful

* docs(agents): record Testbox invocation contracts
2026-07-13 21:21:09 -07:00
Peter SteinbergerandGitHub 8a66398b2b fix(release): harden validation orchestration (#106873)
* fix(release): harden validation orchestration

* fix(ci): repair release gate regressions

* docs(agents): record PR review guard mode

* test(ci): stabilize release gate coverage

* refactor(agents): remove session factory test export
2026-07-13 17:53:10 -07:00
Vincent KocandGitHub 85cf09a3e1 docs(release): bound release recovery loops (#106852)
* docs(release): keep release work scoped

* style(release): format workflow test
2026-07-14 06:44:23 +08:00
Peter SteinbergerandGitHub b4343426f1 docs: make CI polling sparse (#106821) 2026-07-13 14:19:54 -07:00
Peter SteinbergerandGitHub 668e5e8096 refactor: split config reply dispatch (#106642)
* docs: relax refactor issue and CI gates

* refactor: split config reply dispatch

* test: allow ACP dispatch startup under parallel load

* refactor: keep dispatch helper types private
2026-07-13 11:12:32 -07:00
Peter SteinbergerandGitHub 6df498c3cd refactor: canonicalize binary operation results (#106049)
* refactor(normalization-core): promote shared result type

* refactor(agent-core): reuse canonical error coercion

* refactor: discriminate internal operation results

* docs: establish shared result convention

* fix(agent-core): preserve error coercion facade

* build: derive package entries from exports

* fix(plugins): resolve shared result subpath

* fix(ci): align Result integration guards

* build: refresh plugin SDK API baseline

* fix(agent-core): preserve toError compatibility
2026-07-13 00:39:43 -07:00
Vincent KocandGitHub f33ab243cf fix(sqlite): reject runtimes vulnerable to WAL corruption (#106065)
* fix(sqlite): require WAL-reset-safe Node runtime

* docs(sqlite): document safe Node runtime floor

* fix(sqlite): defer runtime library validation until use

* fix(ci): align startup memory with Node 24.15
2026-07-13 13:59:00 +08:00
Vincent KocandGitHub 6a0eecdb44 fix(release): separate code and release SHA validation (#105948) 2026-07-13 13:38:19 +08:00
Peter SteinbergerandGitHub 67d7bf1037 ci(release): deduplicate Telegram routing proofs (#105613) 2026-07-12 21:07:24 +02:00
Peter SteinbergerandGitHub 1634d849c7 fix(ci): allow empty success diagnostics (#105569)
* fix(ci): allow empty success diagnostics

* docs(agents): guard non-main PR landing
2026-07-12 18:57:42 +01:00
Peter SteinbergerandGitHub c41326e320 fix(ci): retain safe Telegram trace milestones (#105521) 2026-07-12 17:37:14 +01:00
Peter SteinbergerandGitHub f5474fcea3 test(ui): stabilize read tool card fixture (#105508)
* test(ui): stabilize read tool card fixture

* docs(agents): wait for CI before PR prepare
2026-07-12 17:16:31 +01:00
Peter SteinbergerandGitHub a24eab8488 fix(qa): read runtime parity transcripts from sqlite (#105495)
* fix(qa): read runtime parity transcripts from sqlite

* test(qa): track parity temp directories

* docs(agents): note PR head refresh sequence
2026-07-12 16:48:35 +01:00
Peter SteinbergerandGitHub 30cc87a8a6 test(qa): model Codex compaction in parity mock (#105493)
* test(qa): model codex compaction in parity mock

* docs(agents): record gh branch lookup syntax
2026-07-12 16:37:39 +01:00
Peter SteinbergerandGitHub 3b0d3574e3 fix(qa): keep mock memory embeddings offline (#105488) 2026-07-12 16:28:46 +01:00
Peter SteinbergerandGitHub 7ca827eba2 fix(qa): align mock catalog with selected models (#105401)
* fix(qa): align mock catalog with selected models

* test(qa): verify selected refs reach mock server
2026-07-12 15:21:19 +01:00
Peter SteinbergerandGitHub 5da7dbd4c4 fix(clawhub): restore bounded promotions refresh and lint (#105411)
* fix(clawhub): remove useless query body assignment

* docs(agents): note delegated Testbox lifecycle

* docs(agents): clarify delegated Testbox sync

* fix(clawhub): bound promotions feed refresh latency
2026-07-12 15:08:07 +01:00
Peter SteinbergerandGitHub eb9bd4e457 fix(ci): retain failed Telegram QA evidence (#105367)
* fix(ci): retain failed Telegram QA evidence

* docs(agents): clarify gh jq boundary

* docs(agents): require full checkout SHAs

* docs(agents): quote zsh Git object refs
2026-07-12 14:09:07 +01:00
Peter SteinbergerandGitHub 9d042e252c fix(release): keep source-ref packaging self-contained (#105360)
* fix(release): make ref packaging harness self-contained

* docs(agents): preserve cwd after PR merge

* test(release): track package harness temp dirs

* style(test): format package harness imports
2026-07-12 13:45:24 +01:00
Peter SteinbergerandGitHub b1fcd7c178 fix(ci): keep LTS Telegram QA model compatible (#105348)
* fix(ci): keep LTS Telegram QA model compatible

* fix(ci): probe Telegram QA model contract

* style(ci): format Telegram QA contract test

* docs(agents): note review checkout order

* docs(agents): clarify rg option order
2026-07-12 13:18:37 +01:00
f9cc26c17d docs(plugin-sdk): correct beta compatibility contract (#105341)
* docs(plugin-sdk): correct beta compatibility contract

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>

* docs(agents): note scripts pr usage

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-12 13:06:26 +01:00
Peter SteinbergerandGitHub 22f183f8cb ci: isolate legacy QA smoke invocations (#105340)
* ci: isolate legacy QA smoke invocations

* docs(agents): record PR review recommendation
2026-07-12 12:52:31 +01:00