Commit Graph

614 Commits

Author SHA1 Message Date
Gio Della-Libera
0b708a2574 OC Path: restore YAML support (#81436)
* OC Path: restore YAML support
* fix(oc-path): guard yaml writes and empty sequences
* fix(oc-path): guard yaml insertion keys
* fix(oc-path): guard yaml object key
* fix(oc-path): classify yaml root insertions
* style(oc-path): format yaml branch after rebase
* fix(oc-path): reject malformed yaml edits
* docs(oc-path): clarify yaml file support
* fix(ci): refresh yaml branch after rebase
* fix(ci): clean shared blockers for yaml path PR
* fix(changelog): keep yaml path note scoped
* fix(ci): preserve current shared contracts


---------

Co-authored-by: Gio Della-Libera <giodl73@gmail.com
2026-05-16 07:52:08 -07:00
Jesse Merhi
6921d9072e Adopt Proxyline for managed proxy routing
Route managed HTTP/WebSocket/fetch interception through Proxyline 0.3.0, preserving Gateway loopback bypass behavior and root undici hardening.

Co-authored-by: jesse-merhi <79823012+jesse-merhi@users.noreply.github.com>
2026-05-15 22:51:36 +01:00
Peter Steinberger
f06e9f6358 fix(release): keep TypeScript compiler external 2026-05-15 12:32:33 +01:00
Peter Steinberger
764cfd5552 feat: add bundled admin HTTP RPC plugin 2026-05-15 11:44:58 +01:00
Peter Steinberger
4a188e7ca5 chore: update dependencies 2026-05-15 07:28:28 +01:00
Peter Steinberger
0db0979365 fix: harden code mode runtime 2026-05-15 04:16:07 +01:00
Peter Steinberger
0844e771a8 feat: add generic code mode runtime 2026-05-15 04:16:07 +01:00
Peter Steinberger
59be6d6390 build(deps): route node proxy helpers through proxyline 2026-05-14 18:27:23 +01:00
Peter Steinberger
7edcfabf51 fix(build): keep slack dependencies extension-owned 2026-05-14 08:49:00 +01:00
Peter Steinberger
e7ae306aa1 refactor(auth): use fs-safe stale lock recovery 2026-05-14 08:49:00 +01:00
Peter Steinberger
81b239dc98 build: externalize slack openshell vertex plugins 2026-05-14 07:46:58 +01:00
Peter Steinberger
5479b6b32c build(deps): consume fs-safe 0.2.3 2026-05-14 07:31:40 +01:00
Peter Steinberger
36755e4057 [codex] externalize amazon bedrock providers (#81687)
* build: externalize amazon bedrock providers

* build: skip external plugins in root dist graph

* test: update managed npm override expectation

* build: mark amazon providers external-only
2026-05-14 07:27:40 +01:00
이민재
72f50dd127 fix(slack): normalize read timestamp bounds (#81338)
* fix(slack): normalize read timestamp bounds

* fix(slack): document read timestamp bounds fix

* fix(slack): simplify timestamp bounds validation

---------

Co-authored-by: honor2030 <19909783+honor2030@users.noreply.github.com>
Co-authored-by: Altay <altay@hey.com>
2026-05-14 01:52:55 +03:00
Peter Steinberger
25dd30d656 build(whatsapp): keep audio decoder dependency 2026-05-13 23:48:05 +01:00
dwc1997
cffae53b43 fix(security): classify broad Windows SIDs as world principals
Carry Windows ACL world-principal classification through @openclaw/fs-safe@0.2.2 so Anonymous Logon, Guests, Interactive, Network, and Local SID/principal variants are treated as world-equivalent in filesystem audit findings.

Also add regression coverage, changelog coverage, a narrow lint cleanup, and a UI test isolation fix needed by the current CI shard.

Co-authored-by: dwc <118101032587@njust.edu.cn>
2026-05-13 15:19:02 -05:00
Peter Steinberger
ec998d1e95 fix: clean current dependency checks 2026-05-13 15:00:07 +01:00
Peter Steinberger
27e5d49fe5 build(whatsapp): keep audio deps external 2026-05-13 11:21:17 +01:00
Peter Steinberger
85f9276624 build(whatsapp): externalize whatsapp plugin 2026-05-13 11:21:17 +01:00
pashpashpash
36b9da5c91 Keep Codex media tools backed by auth profiles (#81059)
* fix(codex): pass auth profiles to dynamic tools

* fix: bump protobufjs past advisory range
2026-05-13 01:46:21 +09:00
Peter Steinberger
f6d787cc5c build: hard-pin dependency specs 2026-05-12 07:10:13 +01:00
Peter Steinberger
f55491b208 chore: update dependencies 2026-05-12 06:31:48 +01:00
Peter Steinberger
71c8d2405d build: forward-port release packaging fixes 2026-05-12 06:21:10 +01:00
Peter Steinberger
f12f123f43 fix: keep workspace file status on Windows 2026-05-11 08:58:52 +01:00
Peter Steinberger
cad34c1aa3 build: declare unrun for tsdown 2026-05-11 03:59:32 +01:00
Peter Steinberger
15cf49222f build: refresh deps and route testbox through crabbox 2026-05-11 03:41:00 +01:00
Altay
3855e7b0ac build(pnpm): upgrade workspace to pnpm 11 2026-05-11 00:48:14 +01:00
Peter Steinberger
8f0f12ce53 fix: declare slack typebox runtime dependency 2026-05-10 15:21:43 +01:00
Peter Steinberger
fcc042559f build(deps): refresh workspace dependencies 2026-05-10 14:00:08 +01:00
Peter Steinberger
9a7778d8aa fix: declare extension runtime deps 2026-05-10 12:37:10 +01:00
Hua Yang
dff4a04c1f feat(signal): support container REST API
Adds container REST/WebSocket support for bbernhard/signal-cli-rest-api Signal deployments.

Closes #10240.

Thanks @Hua688.

Verification:
- pnpm exec oxfmt --check --threads=1 docs/channels/signal.md
- pnpm lint:extensions
- pnpm test extensions/signal
- pnpm tsgo:extensions && pnpm tsgo:test:extensions
- pnpm config:docs:check
- git diff --check
- CI checks on PR head 1d0a536ecd
- Crabbox/Testbox live Docker smoke tbx_01kr7h07shhcafxjc0ezfh946w / run 25614453516
2026-05-09 23:13:55 -04:00
Peter Steinberger
0496063264 build(deps): refresh workspace dependency pins 2026-05-10 02:14:40 +01:00
Shakker
9b629758fe test: align clickclack package contracts 2026-05-09 15:38:50 +01:00
Peter Steinberger
e5e1b7b834 feat: add clickclack channel extension 2026-05-09 15:29:27 +01:00
Peter Steinberger
4883a0e6c4 chore: update workspace dependencies 2026-05-09 10:58:36 +01:00
Peter Steinberger
beaecbcad4 refactor: use PI Codex Responses transport (#79726)
Routes explicit OpenAI Codex Responses runs through PI's native WebSocket-capable transport and removes the custom OpenClaw WebSocket implementation.
2026-05-09 05:40:30 -04:00
Gio Della-Libera
ac9418d206 refactor(oc-path): drop YAGNI grammar features
Removes four path-syntax features that added complexity without
enough real-world use:

- **Quoted-segment escape sequences**: kept quoted segments themselves
  (still needed for keys with `/` or `.`) but dropped `\"` and `\`
  escapes. Quoted content is now byte-literal, refused if it contains
  `"` or `\`. Simplifies scanBracketAware (drops the `escaped` state),
  unquoteSeg (no decode loop), quoteSeg (no escape encoding).

- **CSS-style predicate operators**: removed `*=` (substring), `^=`
  (prefix), `$=` (suffix). Predicate set is now `=`, `!=`, and the
  numeric `<` / `<=` / `>` / `>=`. Lint rules needing substring
  matching can use `findOcPaths(*)` + JS filter.

- **`$first` positional**: alias for index 0 (or first-declared key).
  Use the literal `0` instead.

- **`-N` negative index**: rarely useful beyond `-1`, which is already
  covered by `$last`. The "negative numeric key on object" case
  (Telegram supergroup IDs) still works — non-indexable containers
  fall through to literal-key lookup.

Behavior loss: zero in observed real workspace files. Tests for the
dropped features removed (15 tests).

Net: -22 LoC src + 15 fewer tests. Total package: 10,570 → 10,275 LoC.
2026-05-09 01:48:35 -04:00
Peter Steinberger
e3b33a26cd refactor: move oc-path into plugin 2026-05-09 01:48:35 -04:00
Shakker
5d335dd603 fix: pin fast-uri audit dependency 2026-05-08 23:19:34 +01:00
pashpashpash
fb106fb9ae fix codex harness service tiers (#79152) 2026-05-08 12:10:41 +09:00
pashpashpash
3f217964d1 Defer Codex dynamic tools behind search
Defer OpenClaw Codex dynamic tools behind Codex tool_search, keep required turn-control tools direct, pin the managed Codex harness to 0.129.0-alpha.15, and document the real behavior/token impact from the live dev-agent watch.
2026-05-07 16:40:37 -07:00
Peter Steinberger
6a4069dead fix: share plugin runtime helpers
Consolidate shared plugin runtime MIME/schema helpers, preserve canonical runtime behavior, and guard QQBot STT fetches.
2026-05-08 00:28:43 +01:00
Vincent Koc
c97998ce21 chore(channels): remove bluebubbles bundled surface 2026-05-07 12:52:48 -07:00
Peter Steinberger
955b025697 feat: add native sqlite Kysely dialect
Add an owned Kysely dialect for native node:sqlite, raise the Node 22 floor to 22.16+ for StatementSync.columns(), and cover select/returning/stale insert id behavior.
2026-05-07 13:07:03 +01:00
Peter Steinberger
113761ab57 build: update fs-safe dependency 2026-05-07 12:15:51 +01:00
Vincent Koc
b165c0d10a fix(ci): restore main validation 2026-05-07 03:39:26 -07:00
Peter Steinberger
330ba1fa31 refactor: move canvas to plugin surfaces 2026-05-07 09:07:18 +01:00
Peter Steinberger
4721ca8e45 chore: update Bedrock provider lockfile 2026-05-07 07:57:48 +01:00
Peter Steinberger
252a76d25c refactor: stage external output writes through fs-safe 2026-05-07 06:05:24 +01:00
Sarah Fortune
7d5d01b4f9 chore(deps): bump @openclaw/fs-safe pin to 3412e03 (#78670)
Pulls in 26 commits since the previous pin (3c50873):

- fix(workspace): add packages field so pnpm prepare succeeds
  (openclaw/fs-safe#10) — unblocks fresh installs that were failing
  with ERR_PNPM_INVALID_WORKSPACE_CONFIGURATION during the prepare step
  pnpm runs inside the github-hosted dep tarball.
- Filesystem boundary-guard hardening: centralized boundary primitives,
  guarded fallback handles, prune/trash race fixes, durable queue id
  validation, archive staged-merge fixes, public path mode preservation.
- json: avoid copy fallback symlink writes.
- temp: keep helpers in private dirs; preserve workspace leaf filename
  contract.

Verification:
- corepack pnpm install — clean install, no prepare error.
- pnpm openclaw setup — wrote ~/.openclaw/openclaw.json, workspace, and
  sessions dirs.
- pnpm test src/infra/{fs-safe,boundary-file-read,fs-safe-defaults,
  fs-safe-import-boundary}.test.ts — 37/37 passed.
2026-05-06 19:47:14 -07:00