Commit Graph

6276 Commits

Author SHA1 Message Date
Peter Steinberger
4dd839c462 refactor(release): split cross-os checks (#106309) 2026-07-13 04:01:40 -07:00
Peter Steinberger
e0e0394d05 refactor(ui): remove dead export seams (#106220) 2026-07-13 03:54:00 -07:00
Peter Steinberger
624977ec90 fix(ci): await async doctor compaction in the sqlite reliability runner
runDoctorStateSqliteCompact became async in #106210 but this caller
still read fields off the Promise, breaking check-test-types and the
bench-sqlite-reliability tooling test on main.
2026-07-13 03:51:25 -07:00
Peter Steinberger
8ba5cd3070 refactor(agents): trim exec approval exports (#106292) 2026-07-13 03:43:45 -07:00
Peter Steinberger
3a9e750939 fix(pr): fail closed on paginated file errors (#106254) 2026-07-13 03:40:53 -07:00
Peter Steinberger
9857f05b74 fix(ci): drop stale gateway-lock deadcode entries 2026-07-13 03:28:56 -07:00
Peter Steinberger
1577c28500 refactor(deadcode): trim msteams private exports (#106279)
* refactor(deadcode): trim msteams private exports

* chore(deadcode): refresh unused export baseline
2026-07-13 03:26:24 -07:00
Peter Steinberger
ca0fe7f691 refactor(agents): trim subagent spawn exports (#106275) 2026-07-13 03:22:12 -07:00
Peter Steinberger
a2da4700be refactor: consolidate remaining bounded concurrency (#106265) 2026-07-13 03:16:28 -07:00
Peter Steinberger
b395dfca85 improve(ui): load optional shell surfaces on demand (#106243)
* perf(ui): lazy-load optional shell surfaces

* fix(ui): align lazy shell static contracts
2026-07-13 03:15:00 -07:00
Peter Steinberger
f355f6afbb fix(installer): pass SQLite probe over stdin (#106252) 2026-07-13 03:13:14 -07:00
Vincent Koc
5eb52493c7 refactor(config): remove dead session runtime exports (#106197) 2026-07-13 18:11:31 +08:00
Peter Steinberger
581cf6601a refactor(deadcode): trim memory-core type exports (#106263) 2026-07-13 03:04:08 -07:00
Peter Steinberger
380f6c8086 fix(plugin-sdk): ratchet wildcard surface budget (#106242) 2026-07-13 02:58:22 -07:00
Peter Steinberger
9092e59a43 refactor(agents): trim sandbox test seams (#106257) 2026-07-13 02:58:06 -07:00
Peter Steinberger
69710f1e88 refactor(deadcode): trim whatsapp session config exports (#106256) 2026-07-13 02:53:15 -07:00
Peter Steinberger
9ea4b167fa refactor(deadcode): trim channel auth exports (#106247) 2026-07-13 02:45:34 -07:00
Peter Steinberger
73a0bf4b7c refactor(apple): share chat gateway payload mapping (#106154)
* refactor(apple): share chat gateway payload mapping

* test(apple): track shared event mapping
2026-07-13 02:39:01 -07:00
Peter Steinberger
9b565e8d50 refactor(plugins): trim long-tail dead exports (#106230)
* refactor(extensions): trim long-tail plugin exports

* refactor(whatsapp): remove dead media relay
2026-07-13 02:34:06 -07:00
Peter Steinberger
598e3092f7 refactor(deadcode): trim oc-path barrel (#106240) 2026-07-13 02:33:39 -07:00
Peter Steinberger
16b1bd2032 fix(android): support gateway protocol v3 (#106205) 2026-07-13 02:29:16 -07:00
Vincent Koc
c43c960aad refactor(ui): trim private realtime type exports (#106221) 2026-07-13 17:27:01 +08:00
Peter Steinberger
8c9b034480 refactor(agents): trim sandbox export seams (#106237) 2026-07-13 02:25:42 -07:00
Peter Steinberger
4f287dd740 refactor(process): adopt Execa execution layer (#105939)
* refactor(process): adopt execa execution layer

* fix(process): preserve launch error semantics

* chore(process): ratchet exec size baseline

* fix(process): preserve Windows and error contracts

* chore(plugin-sdk): ratchet wildcard surface budget

* test(process): allow resolved Windows executable paths

* fix(process): preserve Windows shim completion

* test(process): isolate Execa mocks

* style(process): format Windows exec test

* style(process): apply Windows test formatting

* test(process): normalize Windows system path casing

* fix(process): harden execa edge handling

* test(tui): preserve ESM fixture semantics

* fix(process): preserve PATHEXT lookup contract

* fix(process): keep invocation type internal
2026-07-13 02:21:08 -07:00
Peter Steinberger
bc691eabbc fix(docs-i18n): preserve split fenced blocks 2026-07-13 05:20:21 -04:00
Peter Steinberger
7da28f3704 fix(plugin-sdk): freeze directory compat exports (#106222) 2026-07-13 02:14:02 -07:00
Peter Steinberger
227533c813 fix(deadcode): track maturity renderer exports (#106225) 2026-07-13 02:13:02 -07:00
Peter Steinberger
bafabba0df fix(gateway): preserve Control UI turns across restarts (#106151)
* fix(gateway): preserve Control UI turns across restart

* perf(sessions): index restart recovery state

* fix(sessions): avoid replaying pre-admitted turns

* fix(sessions): index per-entry recovery status

* fix(sessions): guard restart failure notices

* fix(sessions): preserve terminal claims across admissions

* fix(sessions): retry failed recovery notices

* fix(sessions): harden restart retry ownership

* fix(gateway): tighten restart recovery typing

* fix(sessions): close restart recovery races

* refactor(sessions): split restart recovery ownership

* chore(sessions): clean restart recovery lint

* chore: drop release-owned changelog entry

* fix(gateway): satisfy restart recovery guards

* test(gateway): cover Control UI durable admission
2026-07-13 02:08:56 -07:00
Peter Steinberger
48e212a19a refactor(agents): trim embedded runner exports (#105855)
* refactor(agents): trim embedded runner exports

* chore(deadcode): refresh export baseline
2026-07-13 02:07:28 -07:00
Peter Steinberger
22daf8f234 fix(pr): paginate changed file metadata (#106217) 2026-07-13 02:02:47 -07:00
Peter Steinberger
1136757174 refactor: consolidate bounded concurrency on p-limit and p-map (#106002)
* refactor: adopt p-limit and p-map for bounded concurrency

* chore: normalize lockfile ordering

* fix: preserve memory host concurrency export

* refactor: keep media apply within size budget

* fix: drain memory concurrency before failure

* fix: satisfy memory concurrency guards

* chore: scope memory host dead-code checks

* chore: lower concurrency LOC baselines

* fix: preserve concurrency API surfaces

* chore: reconcile concurrency LOC baseline

* test: keep memory concurrency gate portable

* style: simplify concurrency drain

* ci: refresh deadcode export baseline
2026-07-13 01:53:28 -07:00
Peter Steinberger
83bf0379c9 refactor(channels): share plugin contract scaffolds (#105838)
* refactor(channels): share plugin contract scaffolds

* fix: preserve channel config hint metadata

* chore: refresh Plugin SDK API baseline

* ci: refresh plugin SDK surface budget

* fix(ci): allow read-only state database boundary

* fix(ci): dedupe read-only state database boundary
2026-07-13 01:51:32 -07:00
Peter Steinberger
39cda9e548 refactor(mattermost): trim private runtime facade (#106114)
* refactor(mattermost): trim private runtime facade

* refactor(mattermost): remove stale runtime note

* fix(mattermost): preserve legacy history exports

* chore(deadcode): refresh export baseline
2026-07-13 01:49:21 -07:00
Peter Steinberger
61a9b49cea refactor(telegram): remove dead private exports (#106175)
* refactor(extensions): trim channel-private exports

* chore(deadcode): refresh Telegram export baseline

* fix(telegram): drop unused media import

* refactor(telegram): drop dead media re-export

* style(telegram): format media runtime imports
2026-07-13 01:46:24 -07:00
Peter Steinberger
c2da10585c refactor(plugin-sdk): prune eligible deprecated exports (#106010)
* refactor(plugin-sdk): remove unshipped compatibility exports

* refactor(zalo): use typed outbound delivery results

* chore(plugin-sdk): ratchet deprecated surface budgets

* chore(changelog): defer release note to release automation

* fix(zalo): reject failed message adapter sends

* refactor(zalo): share typed send boundary

* chore(plugin-sdk): account for main deprecation drift
2026-07-13 01:39:38 -07:00
Peter Steinberger
b1ce84b079 ci: reduce Blacksmith registrations for pull requests (#106146) 2026-07-13 01:32:25 -07:00
Peter Steinberger
cd36a175e6 fix(ci): register experience review live opt-in (#106157) 2026-07-13 01:31:01 -07:00
Peter Steinberger
98e3f729bc refactor: remove dead plugin loader exports (#105937)
* refactor(plugins): trim activation and contract exports

* test(plugins): restore fixture cleanup

* refactor(plugins): trim install and loader exports

* test(plugins): fully reset loader caches

* refactor(plugins): trim metadata and catalog exports

* test(plugins): preserve catalog trust coverage

* refactor(plugins): trim provider and plugin exports

* refactor(plugins): trim runtime and tool exports

* test(plugins): update dead-export consumers

* test(plugins): remove empty dead-export suites

* refactor(plugins): align exports with split registry

* refactor(plugins): trim drifted loader exports

* style(plugins): format test fixtures

* refactor(scripts): use supported plugin APIs

* refactor(plugins): finish dead export cleanup

* chore(deadcode): refresh export baseline

* test(cli): mock production memory state

* chore(deadcode): sync latest export baseline

* fix(tests): keep plugin fixtures inside core

* chore(deadcode): refresh rebased export baseline

* chore(deadcode): sync current ratchets

* fix(plugins): retain reserved slot invariant

* fix(plugins): preserve dead-export invariants

* test(plugins): use neutral catalog query fixture

* test(plugins): satisfy catalog lint

* test(plugins): preserve integrity drift coverage

* fix(ci): register skill experience live proof
2026-07-13 01:29:33 -07:00
Peter Steinberger
b9ab918354 feat(ui): surface still-running background tasks after the chat turn settles (#106115)
Control UI chat now keeps still-running background tasks visible after the agent turn settles: a status row above the composer shows the claw glyph parked nose-down (static, opacity breath only), a live elapsed time with tabular digits so the row never shifts, and a "1 running task"/"N running tasks" link that opens the background-tasks rail. The row hides while the agent is working, while disconnected, and once the last task finishes. Reuses the pane's existing tasks.list snapshot and live task events — no new polling or RPC. Includes a mock-dev-harness running-task fixture and generated locale translations for the two new strings.

Closes #106107

Evidence: focused suites green on Blacksmith Testbox (chat-background-tasks 16 tests, chat-view 185 tests); live mock-gateway verification with screenshots on the PR; autoreview (gpt-5.6-sol, xhigh) clean after fixing its two findings (aria-hidden ticking timer, disconnected suppression).
2026-07-13 01:25:56 -07:00
Peter Steinberger
380cd9b7c8 chore(ci): drop obsolete experience review exemptions 2026-07-13 04:09:02 -04:00
Peter Steinberger
26e05c1c56 ci: repair main gate drift from skills experience-review landing 2026-07-13 00:59:56 -07:00
Peter Steinberger
e2ec8283c4 refactor(deadcode): trim mid-size src exports (#105888)
* refactor(deadcode): trim auto-reply and CLI exports

* refactor(deadcode): trim cron and task exports

* refactor(deadcode): trim fleet and process exports

* test(deadcode): exercise live task and process seams

* test(fleet): cover stream redaction through owner module

* refactor(security): trim dead internal exports

* refactor(secrets): trim dead internal exports

* refactor(deadcode): trim remaining src exports

* refactor(deadcode): remove test-only runtime exports

* refactor(deadcode): trim pairing test exports

* refactor(deadcode): reconcile refreshed baseline

* test(auto-reply): deduplicate queue state imports
2026-07-13 00:42:56 -07:00
Peter Steinberger
92962af779 refactor: prune unsupported OPENCLAW env overrides (#105970)
* refactor: prune unsupported env overrides

* refactor: prune unsupported env overrides

* chore: keep dead export baseline current

* fix: preserve packaged telemetry override
2026-07-13 00:36:02 -07:00
Peter Steinberger
d2b382528e feat(ios): guide first launch through pairing explainer and permissions (#106129)
* feat(ios): guide first launch through pairing explainer and permissions

* fix(ios): keep first-run flow resumable and surface limited grants in onboarding

* chore(ios): regenerate native i18n after rebase

* chore(android): project refreshed native translations into strings.xml

* fix(ios): move i18n wrapper contract to shared permission row and sync catalog
2026-07-13 00:35:31 -07:00
Peter Steinberger
29781ab39e feat(android): generate gateway protocol models (#106011)
* feat(android): generate gateway protocol models

* fix(ci): recognize generated Kotlin event constants

* fix(android): normalize generated event catalog

* fix(ci): type Kotlin event coverage exports

* fix(ci): satisfy Kotlin codegen gates
2026-07-13 00:34:57 -07:00
Peter Steinberger
2237196871 refactor(extensions): remove dead QA and utility exports (#105914)
* refactor(extensions): remove dead QA and utility exports

* refactor(extensions): trim Matrix QA internal exports

* chore(deadcode): refresh extension export baseline

* chore(ci): reconcile deadcode and LOC baselines

* chore(deadcode): refresh baseline after main advance

* chore(deadcode): refresh baseline after main advance

* refactor(plugins): keep channel snapshot type private

* fix(ci): align Linux deadcode baseline
2026-07-13 00:34:46 -07:00
Peter Steinberger
af7379bceb fix(docs): localize Russian plugin terminology 2026-07-13 03:34:26 -04:00
Peter Steinberger
00e8ca6676 fix(ci): dedupe read-only state DB entry in kysely raw-sqlite allowlist
Three concurrent unbreak commits (#106124, #106126, a4467f1971) each
added src/state/openclaw-state-db-readonly.ts, so the guard now dies on
its own duplicate-path assertion before checking anything. Keep the
dedicated read-only shared-state group entry.
2026-07-13 00:06:27 -07:00
Peter Steinberger
d614920c3e fix(ci): allow read-only state database boundary (#106126)
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-12 23:59:39 -07:00
Peter Steinberger
a4467f1971 ci: allowlist read-only state DB opener in kysely guardrails 2026-07-12 23:57:56 -07:00