Commit Graph

14071 Commits

Author SHA1 Message Date
fishking 6c04ce3092 fix(reasoning): guard model default reasoning when thinking active
- Add hasAgentReasoningDefault to reasoningExplicitlySet check
  This prevents model default from overriding agent's explicit "off"
- Restore !thinkingActive guard for model default fallback
  Prevents redundant Reasoning: output alongside internal thinking

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-25 09:54:12 +05:30
fishking b91374eb0d fix(reasoning): apply reasoningDefault independently of thinking level
The reasoningDefault was incorrectly skipped when thinking was active.
Thinking controls reasoning depth while reasoning controls visibility -
they should be independent settings.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-25 09:54:12 +05:30
Tak Hoffman f48571bec6
fix: prefer freshest duplicate rows in session loads 2026-03-24 22:36:50 -05:00
Tak Hoffman 40f820ff7f
fix: prefer freshest duplicate session rows in reads 2026-03-24 22:28:50 -05:00
Tak Hoffman 0c35ac4423
fix: prefer freshest transcript session owners 2026-03-24 21:58:53 -05:00
Tak Hoffman 3c46e0307a
fix: prefer deterministic transcript session keys 2026-03-24 21:30:54 -05:00
Tak Hoffman 7a7e4cd4c4
fix: prefer deterministic session usage targets 2026-03-24 21:21:57 -05:00
Tak Hoffman df58b4f5fb
fix: prefer deterministic session id resume targets 2026-03-24 21:18:40 -05:00
Tak Hoffman 9c7823350b
feat: add /tools runtime availability view (#54088)
* test(memory): lock qmd status counts regression

* feat: make /tools show what the agent can use right now

* fix: sync web ui slash commands with the shared registry

* feat: add profile and unavailable counts to /tools

* refine: keep /tools focused on available tools

* fix: resolve /tools review regressions

* fix: honor model compat in /tools inventory

* fix: sync generated protocol models for /tools

* fix: restore canonical slash command names

* fix: avoid ci lint drift in google helper exports

* perf: stop computing unused /tools unavailable counts

* docs: clarify /tools runtime behavior
2026-03-24 21:09:51 -05:00
Tak Hoffman fb04801ed7
fix: enforce sandbox visibility for session_status ids 2026-03-24 21:05:25 -05:00
Tak Hoffman 2c1d16e261
fix: drop spawned visibility list caps 2026-03-24 20:52:05 -05:00
Tak Hoffman 6651511e90
fix: verify exact spawned session visibility 2026-03-24 20:39:00 -05:00
Tak Hoffman 57fd0a9b23
fix: enforce spawned session visibility in key resolve 2026-03-24 20:26:29 -05:00
Tak Hoffman 154e14f18f
fix: resolve exact session ids without fuzzy limits 2026-03-24 20:26:29 -05:00
Vincent Koc 2069e124a9 chore(agents): normalize pi embedded runner imports 2026-03-24 18:06:24 -07:00
Vincent Koc d10669629d feat(gateway): make openai compatibility agent-first 2026-03-24 18:06:24 -07:00
Vincent Koc 8d87e85705 test(browser): stabilize default browser detection mocks 2026-03-24 18:02:47 -07:00
Tak Hoffman 1b5b23d2b1
fix: prefer current parents in session rows 2026-03-24 20:00:17 -05:00
Tak Hoffman 475983a364
fix: prefer current subagent owners in session rows 2026-03-24 19:54:07 -05:00
Tak Hoffman ad818bda84
fix: ignore moved child rows in spawnedBy session filters 2026-03-24 19:47:36 -05:00
Tak Hoffman 6eaff70b55
fix: ignore moved child rows in subagent announces 2026-03-24 19:47:36 -05:00
Tak Hoffman 16d2e68610
fix: ignore stale store ownership in session child lists 2026-03-24 19:47:36 -05:00
Tak Hoffman e6db1dde45
fix: hide moved subagents from stale command targets 2026-03-24 19:15:47 -05:00
Peter Steinberger f6205de73a
refactor: split feishu helpers and tests 2026-03-24 17:12:25 -07:00
Peter Steinberger 5cdb50abe6
refactor: unify Google Generative AI normalization 2026-03-24 17:09:11 -07:00
Devin Robison 56eeec4099
fix: require operator.admin for mutating internal /allowlist commands (#54097) 2026-03-24 18:05:59 -06:00
Peter Steinberger 561acd1675
test: tighten shared card schema coverage 2026-03-24 17:04:07 -07:00
Tak Hoffman 639706f298
fix: ignore moved child rows in subagent status 2026-03-24 18:57:42 -05:00
Peter Steinberger d4fda79ff7 fix: add merged message tool schema guardrail (#53715) (thanks @lndyzwdxhs) 2026-03-24 16:53:56 -07:00
grassylcao ca578a9183 fix: mark card field as optional in message tool schema
The `createMessageToolCardSchema()` helper returned a bare `Type.Object()`
which TypeBox treats as required when merged into the parent tool schema via
`Type.Object({ card: ... })`. This caused schema validation to reject
media-only sends on Feishu and MSTeams with "must have required property
card", even though the implementation correctly treats card as optional.

Wrap the return value in `Type.Optional()` so the card field is excluded
from the JSON Schema `required` array. Fixes the catch-22 where omitting
card fails validation and including an empty card triggers the runtime
"does not support card with media" guard.

Closes #53697

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 16:53:56 -07:00
Vincent Koc eaad4ad1be
feat(gateway): add missing OpenAI-compatible endpoints (models and embeddings) (#53992)
* feat(gateway): add OpenAI-compatible models and embeddings

* docs(gateway): clarify model list and agent routing

* Update index.md

* fix(gateway): harden embeddings HTTP provider selection

* fix(gateway): validate compat model overrides

* fix(gateway): harden embeddings and response continuity

* fix(gateway): restore compat model id handling
2026-03-24 16:53:51 -07:00
Peter Steinberger 0709224ce3 fix: tighten gateway compose port parsing (#44083) (thanks @bebule) 2026-03-24 16:51:36 -07:00
Kwanghee Park (hugh.k) ac7ca52090 Gateway: harden Compose-style gateway port parsing 2026-03-24 16:51:36 -07:00
Kwanghee Park (hugh.k) b665749e9f Gateway: parse Compose-style gateway port env values 2026-03-24 16:51:36 -07:00
Tak Hoffman e48a0b80a8
fix: ignore moved subagent children on stale parents 2026-03-24 18:46:37 -05:00
Peter Steinberger 33e9e485b8
refactor: clarify docker setup cli phases 2026-03-24 16:46:12 -07:00
Peter Steinberger 1ba436b372 test: speed up media and image-generation suites 2026-03-24 23:45:33 +00:00
Peter Steinberger 1a7914521b test: speed up infra and shared suites 2026-03-24 23:45:33 +00:00
Peter Steinberger c9f4dd3c1b test: speed up browser control suites 2026-03-24 23:45:33 +00:00
Aria 63b0036248 fix: normalize baseUrl for custom Google Generative AI providers
Custom providers using `api: "google-generative-ai"` (e.g. a paid
Google tier) resolved in the model picker but failed at runtime with
HTTP 404 because the base URL lacked the required `/v1beta` path
segment and provider normalization was gated on the provider key
being exactly `"google"`.

Two targeted fixes, both keyed on the semantic `api` field rather
than provider name strings:

1. `models-config.providers.ts` — change the normalization gate from
   `normalizedKey === "google"` to
   `normalizedProvider?.api === "google-generative-ai"` and add
   `normalizeGoogleBaseUrl()` to ensure the canonical `/v1beta` suffix.

2. `pi-embedded-runner/model.ts` — apply
   `normalizeGoogleGenerativeAiBaseUrl()` in three resolution paths
   (`applyConfiguredProviderOverrides`, `buildInlineProviderModels`,
   fallback model construction) so the base URL is corrected at
   runtime regardless of how the model was discovered.

No changes to name-only call sites (`model-selection`,
`live-model-filter`, `model-forward-compat`); those paths are not
required for custom provider resolution and broadening their provider
checks would incorrectly capture unrelated providers like
`google-antigravity`.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-24 16:42:56 -07:00
김채완 d21ecd7642 Tests: match any pre-start openclaw-cli run 2026-03-24 16:35:42 -07:00
김채완 3ce09bd071 Tests: reset docker setup log before isolated assert 2026-03-24 16:35:42 -07:00
김채완 81be4b45a6 Docker: seed localhost control UI origin 2026-03-24 16:35:42 -07:00
김채완 dbb806d257 Docker: avoid setup CLI namespace loop 2026-03-24 16:35:42 -07:00
Peter Steinberger 6f6468027a refactor: dedupe test and runtime seams 2026-03-24 23:33:30 +00:00
Tak Hoffman 369119b6b5
fix: ignore stale parent rows in session child lists 2026-03-24 18:29:03 -05:00
Devin Robison 1d7cb6fc03
fix: close sandbox media root bypass for mediaUrl/fileUrl aliases (#54034)
* fix: close sandbox media root bypass for mediaUrl/fileUrl aliases

* Address Greptile feedback

* Fix windows test case failure
2026-03-24 17:28:53 -06:00
Tak Hoffman 907b5254f6
fix: ignore stale rows in subagent kill cascade 2026-03-24 18:12:48 -05:00
Tak Hoffman 1fd684329d
fix: ignore stale rows in fast abort 2026-03-24 17:52:28 -05:00
Tak Hoffman a03bbca4df
fix: cascade bulk subagent kills past stale rows 2026-03-24 17:43:21 -05:00