Commit Graph

68210 Commits

Author SHA1 Message Date
Peter Steinberger
9da229c8ba fix(test): drop deleted runner.credentials test from unit-fast forced list
src/node-host/runner.credentials.test.ts was removed in 4dff4e95b1
(#107270) but stayed in forcedUnitFastTestFiles, breaking
test/vitest-unit-fast-config.test.ts on every branch.
2026-07-14 01:00:06 -07:00
Peter Steinberger
4ed76a7ddb refactor(acp): use SDK protocol contracts 2026-07-14 00:56:11 -07:00
Peter Steinberger
b0104bd2cd refactor(tui): centralize pending submission lifecycle (#107242)
* refactor(tui): centralize pending submit state

* fix(tui): keep submit state dependency leaf
2026-07-14 00:54:00 -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
a951cd2df2 chore(docs-i18n): generalize max reasoning note 2026-07-14 03:51:18 -04:00
Peter Steinberger
4dff4e95b1 refactor(node-host): trim internal exports (#107270) 2026-07-14 00:49:54 -07:00
Peter Steinberger
1d4188138e fix(docs-i18n): centralize translation safeguards 2026-07-14 03:47:37 -04:00
Peter Steinberger
489690fa16 fix(process): apply undefined env removals (#107258)
Co-authored-by: Pavan Kumar Gondhi <pavangondhi@gmail.com>
2026-07-14 00:43:30 -07:00
Peter Steinberger
4974750614 refactor(memory): use Chalk theme builders directly 2026-07-14 00:36:04 -07:00
Peter Steinberger
41c0c150b5 refactor(config): use Zod strict object builders 2026-07-14 00:29:58 -07:00
Peter Steinberger
9bf994f399 refactor(cron): trust Croner run results 2026-07-14 00:22:14 -07:00
Peter Steinberger
63f497a428 fix(build): refresh cached CLI help per build 2026-07-14 00:21:36 -07:00
Michael Appel
18ec9ce8f7 fix: block workspace dotenv endpoint overrides [AI] (#103914)
* fix: block workspace dotenv endpoint overrides

* docs: clarify workspace endpoint env sources

* style: format dotenv suffix blocklist

---------

Co-authored-by: Pavan Kumar Gondhi <pavangondhi@gmail.com>
2026-07-14 12:51:15 +05:30
Peter Steinberger
ced9a4ae22 refactor(zalouser): trim internal exports (#107247) 2026-07-14 00:20:48 -07:00
Peter Steinberger
644d4c3d23 fix: explain and control native session discovery (#107162)
* fix: make native session discovery configurable

* refactor: split native session discovery helpers

* chore: keep release notes in PR body

* fix: refresh generated session protocol models

* test(ui): avoid shared lazy-element mock race
2026-07-14 00:18:18 -07:00
ml12580
ad17f451d8 fix(skills): globally-installed ClawHub skills falsely show as not tracked [AI-assisted] (#106479)
* fix(skills): link globally-installed ClawHub skills via managed lockfile

buildWorkspaceSkillStatus read the ClawHub lockfile only from the workspace
dir, so globally-installed skills (source "openclaw-managed", tracked in the
managed lockfile at <dirname(managedSkillsDir)>/.clawhub/lock.json) were
falsely reported as "not tracked by the workspace ClawHub lockfile". Resolve
openclaw-managed skills against the managed lockfile and managed parent dir
so the link status and expected-install-dir check match. Workspace-local
skills are unchanged.

Closes #105530

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

* fix(skills): make ClawHub lockfile diagnostics scope-aware

resolveClawHubSkillStatusLinkSync hardcoded "workspace ClawHub lockfile" in
its invalid-path diagnostics, so a globally-managed skill (checked against
the managed lockfile) still got a misleading "workspace" troubleshooting
message. Add an optional lockfileScope ("workspace" | "managed") and use it
in the diagnostics; buildSkillStatus passes "managed" for openclaw-managed
skills. Extends the managed missing-entry regression test to assert the
managed diagnostic.

Addresses ClawSweeper [P2] review finding on #106479.

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

* fix(skills): relabel managed-lockfile diagnostics from status.ts

Compute the managed-lockfile diagnostic relabel in status.ts instead of
threading a scope parameter through clawhub.ts. clawhub.ts is an oversized
legacy module under the check:loc ratchet ('oversized legacy files may not
grow'), so the prior +8 net lines tripped checks-fast-loc-ratchet. Behavior
is unchanged: globally-managed skills still surface 'managed ClawHub
lockfile' diagnostics.

* fix(skills): strengthen managed ClawHub status linkage

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-14 00:16:55 -07:00
Peter Steinberger
69a578034f test: isolate provider auth parity suite (#107167) 2026-07-14 00:16:49 -07:00
Peter Steinberger
84500db379 refactor(plugin-sdk): isolate HTML entity runtime 2026-07-14 00:16:37 -07:00
Michael Appel
99ca3599d6 fix: block cloud sdk workspace env controls (#103918)
Co-authored-by: Pavan Kumar Gondhi <pavangondhi@gmail.com>
2026-07-14 12:46:26 +05:30
Peter Steinberger
a418bf9bef test: parallelize dev tooling CLI probes (#107232) 2026-07-14 00:11:22 -07:00
Peter Steinberger
e91d0fc8b7 refactor(tui): remove dead exports (#107241) 2026-07-14 00:07:41 -07:00
Peter Steinberger
5a7184e3e3 fix(ui): remove duplicate New Session rows (#107198)
* fix(ui): simplify agent switcher rows

* chore: keep release changelog owner-only

* test(ui): isolate lazy MCP preview module

* style(ui): format lazy preview isolation
2026-07-14 00:05:15 -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
b58a75d726 refactor(html): share entity decoding 2026-07-14 00:00:05 -07:00
Peter Steinberger
ab95871dd5 refactor(tlon): remove dead exports (#107233) 2026-07-13 23:59:46 -07:00
Peter Steinberger
69eb20871d chore(codex): update Codex CLI to 0.144.4 (#107208)
* chore(codex): update Codex CLI to 0.144.4

* fix(codex): validate interrupt params through request map
2026-07-13 23:58:19 -07:00
Peter Steinberger
25a0f270ea test: isolate queued CLI progress ordering (#107212) 2026-07-13 23:57:49 -07:00
Peter Steinberger
b34bba8e57 refactor(channels): migrate the remaining nine group-policy walkers onto the scope tree (#107181)
* refactor(channels): migrate irc, nextcloud-talk, zalouser, slack, and matrix group policy onto the scope tree

* fix(irc): drop unused tree binding in group match

* fix(zalouser): keep wildcard lookup opt-in for explicit-only candidates

* fix(zalouser): adapter opts into the wildcard fallback candidate

* refactor(channels): migrate feishu, msteams, and discord group policy onto the scope tree and drop the core discord duplicate

* fix(msteams): restore the cross-team scan fallback for policy-less matched teams

* fix(feishu): keep the adapter's zod-typed group config for the scope tree

* revert(core): keep the discord require-mention fallback until stage 3 makes it provably redundant

* chore(matrix): drop the now-unused channel entry match re-export

* refactor(telegram): migrate group policy onto the scope tree

* test(telegram): keep the bot token fixture off secret-scanner patterns

* test(telegram): use a computed key for the bot token fixture

* test(telegram): assemble the bot token fixture indirectly for scanner and lint
2026-07-13 23:56:35 -07:00
krissding
e588f2c0ce fix(extra-params): preserve resolved cacheRetention against undefined own-property clobber (#106069)
* fix(extra-params): preserve resolved cacheRetention when options carries undefined own-property

When the proxy transport emits cacheRetention as an own property set to
undefined, JS spread semantics clobber the resolved cacheRetention value
from per-model params. Re-assert the resolved value after the spread so
it takes precedence over an undefined own-property in the caller's options.

Fixes #106014

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

* test(agents): strengthen cache retention precedence proof

* refactor(agents): keep cache retention merge compact

* style(agents): format cache retention matrix

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-13 23:54:56 -07:00
Peter Steinberger
e0b52a9618 feat: resume OpenCode and Pi sessions in terminal (#107200)
* feat: resume OpenCode and Pi sessions in terminal

* refactor: keep Pi session commands internal
2026-07-13 23:54:40 -07:00
Peter Steinberger
75cd0efb04 refactor(line): remove dead exports (#107231) 2026-07-13 23:54:12 -07:00
openclaw-release-bot
b3239a5f0f chore(release): update appcast for 2026.7.1 2026-07-14 06:53:20 +00:00
Peter Steinberger
1dd78aee42 docs: document catalog terminal relay (#107204)
* fix(protocol): regenerate terminal protocol artifacts

* fix(protocol): regenerate terminal protocol artifacts

* fix(protocol): regenerate terminal protocol artifacts
2026-07-13 23:50:08 -07:00
Peter Steinberger
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
Peter Steinberger
a2b4c4e17d refactor(signal): trim dead exports (#107217) 2026-07-13 23:43:46 -07:00
Peter Steinberger
6625ea92f0 refactor(codex): evaluate startup deadlines first 2026-07-13 23:40:39 -07:00
Peter Steinberger
c953d8ec41 fix(codex): gate startup phases before deadlines 2026-07-13 23:40:39 -07:00
Peter Steinberger
ec72fda21c refactor(scripts): use dependency metadata parsers 2026-07-13 23:33:30 -07:00
Peter Steinberger
3c82249ab9 test: accelerate session concurrency coverage (#107186) 2026-07-13 23:32:53 -07:00
Peter Steinberger
c44b854e8e refactor(ui): use task-list token contract 2026-07-13 23:29:14 -07:00
Peter Steinberger
cbb5e97dd4 refactor(whatsapp): trim internal exports (#107206) 2026-07-13 23:23:11 -07:00
Peter Steinberger
21382b3755 refactor(qqbot): use silk-wasm buffer inputs 2026-07-13 23:19:54 -07:00
Peter Steinberger
63c48f881f fix(protocol): refresh generated clients (#107177) 2026-07-13 23:18:55 -07:00
Peter Steinberger
4d56176e5f build(android): verify Gradle distribution checksum (#107194) 2026-07-13 23:18:54 -07:00
Peter Steinberger
d9d3d4b9e3 refactor(matrix): use fake-indexeddb prototype 2026-07-13 23:11:49 -07:00
Peter Steinberger
834810b3d6 refactor(imessage): trim internal exports (#107196)
* refactor(imessage): trim internal exports

* test(imessage): type inbound dispatch mock
2026-07-13 23:05:24 -07:00
ruizcrp
40cf6c51b3 feat(workboard): add manual card movement surfaces (#96554)
Adds consistent manual Workboard movement across CLI, slash commands, and agent tools while preserving operator authority and agent claim isolation.

Co-authored-by: Ross I4JU <ross@i4ju.ch>
2026-07-13 23:01:06 -07:00
Peter Steinberger
d3ac854e31 refactor(agents): extract attempt execution phases 2026-07-13 22:54:42 -07:00
Peter Steinberger
83512e1986 refactor(matrix): use native media types 2026-07-13 22:54:26 -07:00
Peter Steinberger
304beb22e1 refactor(concurrency): use p-map skip results 2026-07-13 22:43:26 -07:00