Commit Graph

10886 Commits

Author SHA1 Message Date
Peter Steinberger 9c5acb7ea3 chore: release 2026.5.17 2026-05-16 10:11:41 +01:00
Josh Avant e57b137aef fix(codex): enforce native tool policy (#82496)
* fix(codex): enforce native tool policy

* docs: add changelog for codex native policy fix

* fix(codex): satisfy native hook relay lint
2026-05-16 03:02:28 -05:00
Gio Della-Libera 9aec9200f1 fix(agents): honor OPENCLAW_WORKSPACE_DIR fallback (#81447)
Co-authored-by: Gio Della-Libera <giodl@microsoft.com>
2026-05-15 22:32:02 -07:00
Gio Della-Libera c8bec51869 OC Path: add dry-run diff output (#81437)
* OC Path: add dry-run diff output

* fix(oc-path): require dry-run for diff output

* fix(oc-path): show final newline diff

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* fix(oc-path): show line-ending-only dry-run diffs

---------

Co-authored-by: Gio Della-Libera <giodl@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-05-15 21:54:06 -07:00
Josh Lehman 80ca48418a feat(codex): bind context-engine projections to codex threads (#82351)
* feat(codex): bind context-engine projections to codex threads

* fix: harden Codex context-engine projection

* fix: remove unused Codex projection helper

* fix(codex): adopt compacted context-engine transcripts
2026-05-15 20:59:38 -07:00
Brad 372a8e4d22 Add wait mode for manual cron runs (#81929)
Adds wait mode for manual cron runs, exact run-id lookup for cron run logs, protocol/Swift schema support, and docs/changelog coverage.
2026-05-15 20:17:48 -07:00
Peter Steinberger cf7c46dff6 docs(codex): clarify raw tool output watchdog 2026-05-16 03:06:39 +01:00
Peter Steinberger 8bc927b294 docs: clarify xai oauth coverage 2026-05-16 03:02:07 +01:00
Peter Steinberger af2b313194 feat: add xai grok oauth 2026-05-16 03:02:07 +01:00
Vincent Koc a70c90a52b test(plugins): cover malformed npm package metadata 2026-05-16 09:29:40 +08:00
Vincent Koc f553dad560 Reapply "chore(release): set 2026.5.16 version"
This reverts commit 73aab6abd8.
2026-05-16 08:59:33 +08:00
Vincent Koc 73aab6abd8 Revert "chore(release): set 2026.5.16 version"
This reverts commit b7e8f6da6a.
2026-05-16 08:20:19 +08:00
Peter Steinberger b08e0da25b fix: clarify provider timeout ceiling 2026-05-16 01:08:07 +01:00
Josh Avant 64b94daf92 Fix gateway auth logout aborting active runs (#82346)
* fix gateway auth logout aborts active runs

* docs changelog for auth logout abort fix

* test fix auth logout typecheck

* test fix auth profile mock shape
2026-05-15 18:36:49 -05: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 b7e8f6da6a chore(release): set 2026.5.16 version 2026-05-15 22:06:19 +01:00
Peter Steinberger 2e5a86adfe fix: finish room event gating 2026-05-15 21:47:46 +01:00
Peter Steinberger d4b98f0dc9 fix: gate ambient room event turns 2026-05-15 21:47:46 +01:00
Ayaan Zaidi 61f3a4d71d fix(telegram): keep room events quiet 2026-05-15 21:47:46 +01:00
Ayaan Zaidi c2e659472a docs(channels): describe room events 2026-05-15 21:47:46 +01:00
Peter Steinberger 445ed9b0b4 fix(auto-reply): clean up no-reply migration paths 2026-05-15 21:29:39 +01:00
Peter Steinberger f0ceb3c5aa fix(auto-reply): restrict no-reply to automatic groups 2026-05-15 21:29:39 +01:00
Peter Steinberger 628c753f3b docs: document wildcard runtime policy 2026-05-15 20:50:49 +01:00
Sergio Cadavid 472523360d fix(codex): scope user MCP servers by agent (#82180) 2026-05-15 20:17:16 +01:00
Peter Steinberger 66f89540c2 fix(gateway): raise lifecycle hook timeout defaults
Raise bounded gateway lifecycle hook wait budgets to 5 seconds for shutdown and 10 seconds for pre-restart, keeping the fix to defaults only instead of adding config surface.

Includes regression coverage, hook docs, changelog credit for @bryanbaer, and replaces #82186 with the narrower maintainer fix.
2026-05-15 19:53:58 +01:00
Peter Steinberger 6ca9de1e0a refactor: deprecate legacy reply history helpers (#82236) 2026-05-15 18:44:04 +01:00
Peter Steinberger e51d27d2ac chore(release): refresh plugin SDK API baseline 2026-05-15 18:00:31 +01:00
Peter Steinberger 4e6c85d930 refactor: route remaining channel history through window (#82220) 2026-05-15 17:27:00 +01:00
Peter Steinberger 9ee93e8ea7 docs: document channel turn guardrails
Document the channel-turn media/history guardrails and add a focused regression test for migrated message paths.
2026-05-15 16:27:34 +01:00
Peter Steinberger 369917ff79 fix: surface cron model override diagnostics 2026-05-15 16:04:49 +01:00
Peter Steinberger 9393be2e4b chore(release): refresh generated release baselines 2026-05-15 15:57:01 +01:00
Peter Steinberger 4780e69352 fix(line): acknowledge webhooks before agent processing 2026-05-15 15:49:36 +01:00
Peter Steinberger 40789da1ef fix(wizard): narrow setup i18n SDK surface 2026-05-15 15:33:27 +01:00
MrBrain d8ae3ec4c8 feat(wizard): add cli i18n catalog 2026-05-15 15:33:27 +01:00
Peter Steinberger 41810a462e fix(discord): suppress link embeds by default
* fix(discord): suppress link embeds by default

* fix(discord): handle missing stream config
2026-05-15 15:22:54 +01:00
Peter Steinberger 1b87ba8ca5 docs(codex): document native compaction behavior 2026-05-15 15:17:12 +01:00
Peter Steinberger 1e31bd2ac2 fix(codex): time out silent app-server turns 2026-05-15 14:46:33 +01:00
Peter Steinberger 6de8563827 refactor: centralize channel history window 2026-05-15 13:56:17 +01:00
Peter Steinberger 2ea0c6c929 docs(slack): align unfurl default docs (#82123) 2026-05-15 13:25:52 +01:00
Kibi cb695b0986 fix(slack): default unfurl_links to false for outbound messages
Slack link unfurls (inline message previews) are enabled by default
when unfurl_links is not explicitly set in chat.postMessage. This means
bot messages containing Slack message links or URLs automatically expand
into rich preview cards, which can be noisy in channels.

Default unfurl_links to false so outbound messages don't show inline
link previews unless the operator explicitly opts in via:

  channels.slack.unfurlLinks: true

unfurlMedia remains opt-in (only sent when explicitly configured).
2026-05-15 13:25:52 +01:00
Peter Steinberger d89732efca fix(slack): route plugin modal submissions
Co-authored-by: shannon0430 <258282406+shannon0430@users.noreply.github.com>

Co-authored-by: Vincent Koc <25068+vincentkoc@users.noreply.github.com>

Co-authored-by: Jin Kim <198280395+jink-ucla@users.noreply.github.com>
2026-05-15 13:18:55 +01:00
Peter Steinberger b3d9bef38d [codex] Fix Codex OAuth refresh fallback (#82117)
* fix: fall back to Codex CLI OAuth after refresh failure

* fix: support Codex CLI fallback for named profiles
2026-05-15 12:32:00 +01:00
Ayaan Zaidi f1b92c8885 fix(mantis): publish evidence to r2 (#81845)
* fix(mantis): publish evidence to r2

* ci(mantis): pass r2 artifact credentials

* ci(mantis): pin artifact bucket config

* fix(mantis): link raw evidence index
2026-05-15 16:23:53 +05:30
Peter Steinberger cd91bd9a1e docs: document admin HTTP RPC plugin 2026-05-15 11:44:58 +01:00
Kaspre 44840007d4 fix(agents): scope custom provider baseUrl SSRF trust by origin (#80751)
* fix(agents): scope provider SSRF trust by origin

* fix(provider): preserve explicit private-network deny

* docs(provider): document exact-origin SSRF trust

* test(provider): cover exact-origin SSRF edges

* docs(provider): align local model private-origin guidance

* refactor(ssrf): keep policy merging in infra

* test(ssrf): cover exact-origin trust through guard

* test(ssrf): block sibling private-origin redirects

* fix(provider): keep loopback trust origin-scoped

* fix(provider): block metadata origin trust

* fix(ssrf): keep metadata rebinding blocked

* fix(ssrf): block cloud metadata origins

* fix(ssrf): block ipv6 metadata origins

* fix(ssrf): block embedded metadata origins

* test(ssrf): cover embedded link-local metadata

* test(provider): cover custom anthropic proxy classification

* test(provider): widen transport policy mock

* test(plugin-sdk): assert metadata-IP allowedOrigins entries are rejected

Plugin authors can construct an SsrFPolicy that lists any well-formed
http(s) origin in allowedOrigins. The abuse-resistance lives one layer
deeper, in resolvePinnedHostnameWithPolicy's metadata/link-local block.
Add an SDK-level smoke test asserting that contract directly:

- AWS/Alibaba IMDS IPv4 literals, GCP metadata canonical hostname,
  IPv6 ULA metadata literal, and non-metadata link-local IPv4 entries
  build a policy via ssrfPolicyFromHttpBaseUrlAllowedOrigin and are
  then rejected at resolvePinnedHostnameWithPolicy.
- DNS rebinding from a trusted private DNS origin to a metadata IP is
  rejected even when the request hostname is origin-trusted.

This would fail if the SDK helper or resolveSsrFPolicyForUrl ever
short-circuited past the metadata block.

* chore(docs): regenerate baselines after upstream rebase

upstream/main moved between rebases; the merged source state for the
PR's `src/config/schema.help.ts` change and the upstream plugin-sdk
surface changes both produce different hashes than the committed
baselines, so `config:docs:check` and `plugin-sdk:api:check` would fail.

Regenerated via `pnpm config:docs:gen` + `pnpm plugin-sdk:api:gen` on
Crabbox; both baselines verified with their respective `--check`
generators.

* test(plugin-sdk): assert SSRF blocked error class

* fix(lint): satisfy exact-origin PR lint rules

* docs: clarify custom provider origin trust

* chore(docs): refresh plugin sdk api baseline

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-05-15 11:00:29 +01:00
Peter Steinberger 582f834269 test(sdk): refresh command facts API baseline 2026-05-15 10:38:43 +01:00
Peter Steinberger 3b1497789c refactor(channels): derive command turns from turn facts 2026-05-15 10:38:43 +01:00
Peter Steinberger e30be460e1 fix: shorten stalled Codex recovery window 2026-05-15 10:19:37 +01:00
Val Alexander 930852af29 feat(agents): support per-agent bootstrap profiles
Summary:\n- Add optional per-agent bootstrap profile overrides for contextInjection, bootstrapMaxChars, and bootstrapTotalMaxChars.\n- Resolve per-agent bootstrap profile settings before agents.defaults and thread the resolved session agent through embedded, compact, CLI, and /context diagnostic paths.\n- Update schema/help/docs/changelog plus focused runtime, schema, and /context regression coverage.\n\nVerification:\n- Local focused auto-reply tests and formatter checks passed.\n- Local pnpm check:changed passed before landing follow-ups.\n- Local Node 24 pnpm check:test-types passed after merging latest main into the PR branch.\n- GitHub PR state CLEAN at 0ff12062840f42daf2666c5fabb127c3f7631669.\n- ClawSweeper re-review completed successfully with no actionable repair finding.\n\nFixes #69966.
2026-05-15 02:42:21 -05:00
Peter Steinberger b24a6d2cbd fix(control-ui): rotate service worker cache per build (#82050) 2026-05-15 07:59:29 +01:00