Commit Graph

68443 Commits

Author SHA1 Message Date
Peter Steinberger
d66033315f style(macos): doc comment on storedPendingPayload
Refs #107237
2026-07-14 11:03:02 -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
6fdbe9a02a fix(system-agent): adopt retired pending key and re-enter shell on bare /openclaw
Review findings on the rename: macOS resume store now migrates activation
leases persisted under the retired crestodian UserDefaults key so an app
upgrade cannot orphan a live activation; open-tui results carry
returnToShell so bare /openclaw re-enters the OpenClaw shell instead of
exiting the CLI.

Refs #107237
2026-07-14 11:03:02 -07:00
Peter Steinberger
d7f3229f74 refactor(system-agent): rename grammar TOKEN constant to ARG_WORD
Identifiers ending in TOKEN false-positive secret scanners on every diff
touching this file; ARG_WORD also describes the grammar role better.

Refs #107237
2026-07-14 11:03:02 -07:00
Peter Steinberger
eaaeeef19b refactor(cli): type-safe option reads in setup command
Replace blind string casts with an optionalString reader and rename the
options record; blind token/password casts also false-positived secret
scanners on every future diff of this file.

Refs #107237
2026-07-14 11:03:02 -07:00
Peter Steinberger
bc4d2eb8c7 refactor(system-agent): keep LOC ratchet flat after rename
Shorten resolvePersistentApplyInference (SystemAgent prefix redundant in
module), drop duplicate non-interactive workspace guard in agents add
(inner check keeps narrowing and message precedence).

Refs #107237
2026-07-14 11:03:02 -07:00
Peter Steinberger
985a13ba3a chore(i18n): prune retired crestodian strings and polish setup docs
android:i18n sync drops orphaned entries for the renamed key; wizard zh
locales reference openclaw setup; docs title disambiguates the system
agent from the product.

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
8456719a90 fix(tokenjuice): preserve middleware boundaries 2026-07-14 11:00:31 -07:00
Peter Steinberger
a8bcaf9505 fix(tokenjuice): drop duplicate compacted output 2026-07-14 11:00:31 -07:00
Peter Steinberger
e20c029efd refactor(codex): split app-server event projection (#107680)
* refactor(codex): split app-server event projector

* fix(codex): preserve raw event projection ordering

* chore(codex): remove projector max-lines exemption

* refactor(codex): split stateful projector owners
2026-07-14 11:00:08 -07:00
Peter Steinberger
96eaf2be80 fix: restore recent native, browser, and audio behavior (#107631)
* fix: repair recent landed regressions

* chore: keep release changelog owned

* test(macos): align CLI fixtures with Node floor

* fix(macos): document Node runtime floor contract

* style(auto-reply): restore runtime mode formatting
2026-07-14 10:47:33 -07:00
Peter Steinberger
e297bc2ac5 fix(release): validate npm preflight workflow trust 2026-07-14 18:44:08 +01:00
Peter Steinberger
9f206933af style(auto-reply): restore runtime-mode formatting (#107692) 2026-07-14 10:41:50 -07: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
Peter Steinberger
433656286d refactor(ws): use native socket contracts 2026-07-14 10:35:38 -07:00
Peter Steinberger
4ed28c3559 refactor(agents): trim shell and tool-loop exports (#107695)
* refactor(agents): trim shell and session exports

* refactor(agents): trim loop and model exports

* chore(deadcode): refresh unused export baseline
2026-07-14 10:34:39 -07:00
Shakker
3976ec47d3 fix: default skill workshop approvals to auto (#107690)
Skill Workshop lifecycle actions now run without an additional Gateway approval by default, while explicit `approvalPolicy: "pending"` keeps the operator approval gate.

Prepared head SHA: 06e907797e
Co-authored-by: Shakker <165377636+shakkernerd@users.noreply.github.com>
Reviewed-by: @shakkernerd
2026-07-14 18:31:51 +01: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
13a2b0707d fix(scripts): preserve parser overrides 2026-07-14 10:21:56 -07:00
Peter Steinberger
0e3a46f8d4 refactor(scripts): use native TypeScript AST helpers 2026-07-14 10:21:56 -07:00
Alix-007
0c8220ebf9 fix(msteams): add timeouts to file consent upload requests (#104120)
* fix(msteams): add timeouts to file consent upload requests

* fix(msteams): share file consent upload timeout helper

* fix(msteams): size-budget file consent upload timeout

* chore(deadcode): allowlist test-only timeout constant exports

* style(msteams): format consent timeout test

* test(msteams): reject consent aborts with errors

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 10:14:23 -07: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
9daef57c85 refactor(auto-reply): trim internal dead exports (#107678)
* refactor(auto-reply): trim internal exports

* chore(deadcode): refresh unused export baseline
2026-07-14 10:06:14 -07:00
Peter Steinberger
214e7957dc test(plugins): use native tar recursion 2026-07-14 10:02:50 -07:00
Peter Steinberger
bea48db878 refactor(command-explainer): use native tree-sitter contracts 2026-07-14 09:59:20 -07:00
SunnyShu
b857fec2ee fix(skills): log ClawHub skill verification errors instead of swallowing (#107143)
* fix(skills): log ClawHub skill verification errors instead of swallowing (#P2)

catch {} in fetchInstallVerificationLock silently swallowed all network
errors (timeout, DNS, 5xx, JSON parse) from the registry verification
request. Callers could not distinguish verified from failed verification.

Pass logger through and log a warning on failure so transient errors
are visible in the operator log.

Co-Authored-By: Claude <noreply@anthropic.com>

* fix(skills): surface ClawHub verification failures

Co-authored-by: SunnyShu0925 <shu.zongyu@xydigit.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 09:55:35 -07:00
Peter Steinberger
82d2a03d0a fix(swift): remove dead shared kit declarations (#107616) 2026-07-14 09:55:01 -07:00
Peter Steinberger
60a3b16dc5 fix(ci): keep LSP tests stable in non-isolated shards (#107625)
* fix(ci): stabilize main release checks

* fix(ci): keep LSP runtime under LOC ratchet

* fix(ci): disambiguate LSP config dependency

* refactor(test): inject LSP dependencies per runtime
2026-07-14 09:53:10 -07:00
Peter Steinberger
ecb6eac684 refactor(sessions): split SQLite session accessor (#107653)
* refactor(sessions): split SQLite session accessor

* fix(sessions): keep extracted helpers module-private
2026-07-14 09:49:42 -07:00
qingminlong
04e523a73b fix(logbook): reject invalid 12-hour analysis clocks (#107191)
* fix(logbook): reject invalid meridiem clocks

* test(logbook): cover invalid meridiem card output

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 09:43:10 -07:00
felirami
c1191cdf2f fix(memory-core): preserve canonical cache rows during legacy migration (#107243)
* fix(memory-core): preserve canonical cache rows on migration

* fix(memory-core): guard cache migration dimensions

* fix(memory-core): validate cache embedding lengths

* fix(memory-core): validate cache migration dimensions

* refactor(memory-core): keep cache guard compact

---------

Co-authored-by: felirami <felirami@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 09:40:35 -07:00
Peter Steinberger
084d1d9637 feat(control-ui): upload files into terminals (#107364)
* feat(control-ui): add terminal file uploads

* fix(control-ui): protect Windows terminal uploads

* fix(control-ui): satisfy terminal upload gates

* chore(ui): translate terminal upload labels

* fix(control-ui): reject unknown Windows upload shells

* fix(control-ui): harden Windows upload paths

* fix(control-ui): retry terminal upload cleanup

* chore(ui): reconcile locale translation memory

* fix(control-ui): validate terminal upload inputs

* fix(control-ui): retry failed upload cleanup

* chore(ui): refresh terminal upload locale metadata

* fix(terminal): integrate uploads with session recovery

* refactor(control-ui): isolate terminal upload transport

* fix(control-ui): keep upload helper types private
2026-07-14 09:33:39 -07:00
Peter Steinberger
4ea573edd2 refactor(agents): split embedded runner model setup (#107646) 2026-07-14 09:32:39 -07:00
wahaha1223
7f36f49052 fix(memory): preserve UTF-8 when qmd output splits across pipe chunks (#107263)
* fix(memory): preserve UTF-8 across fragmented qmd output chunks

* fix(memory): decode qmd streams at UTF-8 boundary

Co-authored-by: wahaha1223 <0668001153@xydigit.com>

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 09:32:25 -07:00
Peter Steinberger
e323c70ada refactor(cli): trim internal dead exports (#107654)
* refactor(cli): trim internal helper exports

* chore(deadcode): refresh CLI export baseline
2026-07-14 09:28:16 -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
cbe012ec70 refactor(matrix): use native sdk event contracts 2026-07-14 09:25:33 -07:00
VACInc
6f0326af36 fix: prevent session exports from writing outside workspace (#104708)
* fix: prevent session exports outside workspace

* fix: support aliased workspace export paths

---------

Co-authored-by: VACInc <3279061+VACInc@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 09:20:43 -07:00
wahaha1223
acd67cf3e4 fix(agents): reject partial fallback skip TTL env values (#107234)
* fix(agents): reject partial fallback skip TTL env values

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(agents): tighten fallback skip TTL validation

Co-authored-by: wahaha1223 <0668001153@xydigit.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 09:18:47 -07:00
Peter Steinberger
5f13921c26 fix: preserve Fable thinking on Claude CLI routes (#107636)
* fix(anthropic): preserve Claude CLI effort on root gateways

* chore: leave release notes to release workflow
2026-07-14 09:15:21 -07:00
SunnyShu
6de8aa6f9b fix(skills): clean up orphaned usage rows (#107144)
Remove lifecycle and usage rows atomically when curated skill files disappear.

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 09:03:32 -07:00
Peter Steinberger
b146ef8a59 refactor(cron): trim internal export surface (#107640)
* refactor(cron): trim internal export surface

* chore(deadcode): refresh cron export baseline
2026-07-14 09:02:18 -07:00
Peter Steinberger
8251976cf6 fix(agents): normalize git package identities 2026-07-14 08:55:08 -07:00
Peter Steinberger
6d31c162f9 fix: keep root Claude live sessions usable (#107606)
* fix(agents): support Claude live sessions as root

* chore: leave release notes to release workflow
2026-07-14 08:46:58 -07:00
Jason (Json)
c93b7ca130 fix(control-ui): prevent inflated run times and overlapping tasks (#107229)
* fix(control-ui): use wall clock for run timer

* fix(control-ui): prevent background task overlap
2026-07-14 09:44:54 -06:00
Peter Steinberger
2ecc6b6b6b fix(ui): show restart banner for unapplied config (#107577)
* fix(ui): derive config apply state from gateway

* test(ui): align applied config hash coverage

* test(ui): follow config autosave flow

* fix(ui): guard applied config refreshes

* fix(ui): reconcile patched config revisions

* fix(ui): prevent stale config apply polling

* chore: leave release notes to release flow

* refactor(config): split applied revision helpers

* style(config): format gateway methods

* fix(i18n): refresh Korean native glossary hash
2026-07-14 08:43:35 -07:00
Peter Steinberger
e6cec8e124 test(agents): skip unrelated message tool setup (#107613) 2026-07-14 08:42:31 -07:00