Peter Steinberger
b2fd0276aa
ci(perf): pin calibrated Kova revision ( #107870 )
2026-07-14 17:59:43 -07:00
Peter Steinberger
9043bcf230
test: share deep archive fixture prefix ( #107858 )
2026-07-14 17:20:22 -07:00
Peter Steinberger
b363d5a293
feat(linux): canvas UI via CLI-node + Tauri app IPC bridge ( #107633 )
...
* feat(linux): canvas via CLI-node + Tauri app IPC bridge
* refactor: extract gateway helper modules
* build(linux-canvas): register plugin package in lockfile
* fix(linux-canvas): move canvas advertise test out of core, regen docs/protocol/deadcode
* fix(gateway): break node-catalog/registry import cycle via leaf normalize module; add canvas glossary term
* style: oxfmt invoke.ts and runtime.ts after buildNodeEventParams extraction
* fix(linux): load Canvas WebView via dedicated data_directory context
Wry's Linux/WebKitGTK incognito mode discards Tauri's registered
WebContext (wry webkitgtk/mod.rs), so the Canvas window got a fresh
ephemeral context without the openclaw-canvas:// scheme handler — the
bundled A2UI page never committed (stayed about:blank) and every A2UI
command timed out. Use an isolated cache-backed data_directory instead,
which keeps the protocol handler while still isolating Canvas storage
from the dashboard window.
* fix(linux): keep Canvas WebView ephemeral via incognito + data_directory
Autoreview flagged that a dedicated data_directory alone persists Canvas
browser state (cookies, localStorage, IndexedDB, service workers) across
restarts, so an agent that navigates Canvas to a site could leak an
authenticated session into a later session. iOS uses a non-persistent
store; Linux should match.
Add .incognito(true) alongside .data_directory(): the distinct directory
gives Tauri a fresh WebContext key so it still attaches the
openclaw-canvas:// protocol closure, and incognito makes Wry swap in a
fresh *ephemeral* context carrying those protocols. Live-verified on a
Wayland/WebKitGTK box: the bundled page still loads
(location.href=openclaw-canvas://localhost/index.html, openclawA2UI
present, A2UI renders) and the canvas-webview dir holds no persistent
cookie/storage files.
2026-07-14 16:05:14 -07:00
Peter Steinberger
86085563be
test(ci): isolate flaky shared-worker suites ( #107780 )
...
* test(ci): isolate flaky shared-worker suites
* test(ci): route isolated agent targets
2026-07-14 15:00:58 -07:00
Peter Steinberger
60f0a83db0
fix(ci): repair full release validation dispatch ( #107728 )
...
* fix(ci): accept documented release validation extras
* fix(ci): pass main changelog policy to release checks
2026-07-14 12:34:47 -07:00
Peter Steinberger
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 Steinberger
3ce9166319
test(scripts): align pinned e2e entrypoint and live-shard order with rename
...
Refs #107237
2026-07-14 11:03:02 -07:00
Peter Steinberger
69e9254e0e
fix(ci): regen rename-affected generated surfaces and fix e2e entrypoint
...
native i18n inventory + per-locale artifacts resynced for the OpenClaw
strings; Kotlin gateway protocol enum regenerated instead of hand-edited;
deadcode baseline re-sorted; lint suppression allowlist entries moved to
sorted position; setup TTY check drops redundant boolean compares;
ring-zero first-run e2e calls the real 'openclaw setup' subcommand.
Refs #107237
2026-07-14 11:03:02 -07:00
Peter Steinberger
a6a0716486
feat(setup): rename Crestodian to OpenClaw system agent
...
User-facing name is now OpenClaw (the system speaks); internal code name is
system-agent. Gateway methods crestodian.* -> openclaw.chat/openclaw.setup.*,
agent tool -> openclaw, reserved agent ids openclaw + retired crestodian.
openclaw setup routes: onboarding flags -> onboard, -m/--yes -> system agent,
bare configured interactive -> OpenClaw chat, unconfigured -> onboarding.
Hidden crestodian CLI and /crestodian TUI aliases kept; docs moved to
docs/cli/openclaw.md with redirect stub. macOS/Android strings in lockstep.
Refs #107237
2026-07-14 11:03:02 -07:00
Peter Steinberger
e297bc2ac5
fix(release): validate npm preflight workflow trust
2026-07-14 18:44:08 +01:00
Peter Steinberger
0b409a0348
refactor(gateway): split session handlers ( #107677 )
...
* refactor(gateway): split session handlers
* chore(gateway): drop obsolete max-lines suppression
* test(gateway): preserve session boundary ratchets
* test(gateway): update session boundary fixtures
* style(auto-reply): restore formatter compliance
2026-07-14 10:41:36 -07:00
Jesse Merhi
00364ee777
improve: warn before non-ClawHub plugin installs ( #102197 )
...
Merged via squash.
Prepared head SHA: e08d9e737d
Co-authored-by: jesse-merhi <79823012+jesse-merhi@users.noreply.github.com >
Co-authored-by: jesse-merhi <79823012+jesse-merhi@users.noreply.github.com >
Reviewed-by: @jesse-merhi
2026-07-15 03:25:36 +10:00
Peter Steinberger
202b04925c
fix(ci): fetch exact PR base before history ( #107674 )
2026-07-14 10:12:40 -07:00
Peter Steinberger
2bbf5e6ca0
fix(macos): prevent clipped and stalled onboarding ( #107598 )
...
* fix(macos): harden onboarding on short screens
* chore: keep release notes in PR body
* chore(i18n): refresh macOS onboarding inventory
2026-07-14 10:07:41 -07:00
Peter Steinberger
bea48db878
refactor(command-explainer): use native tree-sitter contracts
2026-07-14 09:59:20 -07:00
Peter Steinberger
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 Steinberger
242cdca058
fix(docker): keep gateway ws client self-contained ( #107561 )
...
* fix(docker): keep gateway ws client self-contained
* test(raft): narrow optional runtime schema
* test(tlon): narrow signed URL mock input
* fix(tui): type searchable selector metadata
2026-07-14 07:42:17 -07:00
Peter Steinberger
0869e92b23
fix(ci): pin calibrated Kova status budget
2026-07-14 10:24:00 -04:00
Peter Steinberger
cfd4ecb217
fix(release): use active gh authentication for evidence
2026-07-14 09:35:58 -04:00
Peter Steinberger
99cf5836dd
fix(ci): pin calibrated Kova performance budgets
2026-07-14 13:54:29 +01:00
Peter Steinberger
9de11f098e
fix(release): forward-port July guards and restore main validation ( #107462 )
...
* fix(installer): validate upgraded Windows SQLite runtime
* fix(release): lock packed AI runtime dependency
* test(mattermost): tolerate additional fallback diagnostics
* test(live): make Claude resume proof explicit
* test(plugins): repair exact-main prerelease coverage
* test(release): restore root test type coverage
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
Co-authored-by: Vincent Koc <25068+vincentkoc@users.noreply.github.com >
2026-07-14 05:41:24 -07:00
Peter Steinberger
52b56c1f31
fix(maint): honor recent green PR cohorts ( #107411 )
2026-07-14 05:11:57 -07:00
Peter Steinberger
a2790f10af
fix(release): recover vanished PR ledger entries
2026-07-14 12:45:31 +01:00
Josh Avant
db541e5c60
fix(ios): preserve pinned tools for archive ( #107188 )
2026-07-14 03:25:56 -07:00
Peter Steinberger
f20089c569
fix: route heavy changed checks remotely ( #107282 )
2026-07-14 01:15:58 -07:00
Peter Steinberger
47d37804a8
improve(ui): catch i18n catalog drift locally ( #107253 )
...
* ci(ui): verify i18n catalogs locally
* fix(ui): preserve scoped i18n sync errors
* refactor(ui): share i18n raw-copy verifier
* test(ui): cover i18n lint gate
* fix(ui): route lint threads to oxlint
2026-07-14 01:12:36 -07:00
Peter Steinberger
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 Steinberger
63f497a428
fix(build): refresh cached CLI help per build
2026-07-14 00:21:36 -07:00
Peter Steinberger
69a578034f
test: isolate provider auth parity suite ( #107167 )
2026-07-14 00:16:49 -07:00
Peter Steinberger
a418bf9bef
test: parallelize dev tooling CLI probes ( #107232 )
2026-07-14 00:11:22 -07:00
Peter Steinberger
606e2f5dba
fix(ci): stop unrelated main updates from forcing PR rebases ( #107050 )
...
* fix(ci): stop unrelated main updates from forcing PR rebases
* docs(ci): document reusable aggregate proof
* docs(ci): clarify immutable gate success
* chore(ci): refresh stalled PR head
2026-07-14 00:01:01 -07:00
Peter Steinberger
ec72fda21c
refactor(scripts): use dependency metadata parsers
2026-07-13 23:33:30 -07:00
Peter Steinberger
df5097b6e7
fix(native): keep platform validation warning-free ( #107101 )
...
* build(android): keep Gradle warning-free
* ci(native): pin XcodeGen tooling
* test(macos): avoid concurrency warnings
2026-07-13 22:33:12 -07:00
Peter Steinberger
069915f173
test: accelerate sqlite state cli tests ( #107150 )
2026-07-13 22:12:21 -07:00
Peter Steinberger
e278a34331
feat(macos): refresh DMG installer artwork ( #107142 )
2026-07-13 22:09:36 -07:00
Peter Steinberger
2e58c2bc53
test: accelerate sqlite reliability suite ( #107134 )
2026-07-13 21:50:36 -07:00
Peter Steinberger
504be0c255
fix(release): preserve closeout asset names ( #107047 )
2026-07-13 21:20:01 -07:00
Peter Steinberger
07284af748
test: omit live-only tooling leaf shards ( #107088 )
2026-07-13 20:56:14 -07:00
Peter Steinberger
04fa6beed4
fix(release): make closeout recovery shell-safe ( #107015 )
2026-07-13 20:02:45 -07:00
Peter Steinberger
130480871e
perf(test): reuse live updater Git fixture ( #106975 )
2026-07-13 19:26:47 -07:00
Peter Steinberger
568e4d95e7
fix(release): keep verifier output valid and deterministic ( #106953 )
...
* fix(release): validate changelog before atomic write
* fix(release): defer optional provenance main lookup
* fix(release): suppress overridden release PR subjects
* fix(release): satisfy verifier lint
* test(release): declare verifier suppression helper
---------
Co-authored-by: Vincent Koc <25068+vincentkoc@users.noreply.github.com >
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-07-13 19:25:01 -07:00
Vincent Koc
f7ea3c776c
fix(ci): pin corrected Kova scenario calibration ( #106992 )
2026-07-14 10:23:58 +08:00
Peter Steinberger
6e067f7662
test: restore moving-main quality gates ( #106972 )
...
* test(agents): preserve caught abort cause
* refactor(browser): privatize route handler type
* test(lint): cover browser route override
2026-07-13 19:06:30 -07:00
Peter Steinberger
48eebe090f
fix(testing): make changed-gate bundles self-contained
2026-07-13 19:03:31 -07:00
Peter Steinberger
4645a850d5
fix(testing): omit changed-gate history from bundles
2026-07-13 18:50:35 -07:00
Peter Steinberger
9668b668c5
fix(testing): preserve changed-gate diagnostics
2026-07-13 18:50:35 -07:00
Peter Steinberger
c4c72aa086
fix(testing): reset reused changed-gate worktrees
2026-07-13 18:50:35 -07:00
Peter Steinberger
23c19510b1
perf(test): skip irrelevant suppression ASTs ( #106928 )
2026-07-13 18:03:06 -07:00
Vincent Koc
e5722a6726
fix(ci): pin calibrated Kova release budgets
2026-07-13 17:54:41 -07:00
Peter Steinberger
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