Peter Steinberger
817ca75cba
test: move command status and health suites out of e2e
2026-02-22 11:07:46 +00:00
Vignesh Natarajan
a4c107ee11
chore(test): harden models status mock restoration
2026-02-22 00:53:23 -08:00
Peter Steinberger
ccc00d874c
test(core): reduce mock reset overhead in targeted suites
2026-02-22 08:40:29 +00:00
Peter Steinberger
649e910465
test(models): use lightweight clears in shared config setup
2026-02-22 07:35:55 +00:00
Peter Steinberger
8e6a7a6343
refactor(models): reuse list format helpers in scan
2026-02-18 23:09:09 +00:00
Peter Steinberger
8369913c7a
refactor(models): reuse validated config snapshot loader
2026-02-18 22:49:39 +00:00
Peter Steinberger
288015a9fc
refactor(auth): share api key masking utility
2026-02-18 17:13:35 +00:00
Peter Steinberger
b8b43175c5
style: align formatting with oxfmt 0.33
2026-02-18 01:34:35 +00:00
Peter Steinberger
31f9be126c
style: run oxfmt and fix gate failures
2026-02-18 01:29:02 +00:00
Seb Slight
f44e3b2a34
revert: fix models set catalog validation ( #19194 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 7e3b2ff7afe052097c4414fc64d7e66191e8fcc3
Co-authored-by: sebslight <19554889+sebslight@users.noreply.github.com >
Co-authored-by: sebslight <19554889+sebslight@users.noreply.github.com >
Reviewed-by: @sebslight
2026-02-17 09:43:41 -05:00
cpojer
d0cb8c19b2
chore: wtf.
2026-02-17 13:36:48 +09:00
Sebastian
ed11e93cf2
chore(format)
2026-02-16 23:20:16 -05:00
cpojer
7bc783cb03
chore: Fix types in tests 16/N.
2026-02-17 12:00:29 +09:00
cpojer
4b8f53979e
chore: Fix type errors from reverts.
2026-02-17 11:22:49 +09:00
Sebastian
4ca75bed56
fix(models): sync auth-profiles before availability checks
2026-02-16 21:00:59 -05:00
cpojer
90ef2d6bdf
chore: Update formatting.
2026-02-17 09:18:40 +09:00
Peter Steinberger
9f0fc74d10
refactor(model): share normalized provider map lookups
2026-02-16 23:00:32 +00:00
Mitsuyuki Osabe
afd354c482
fix: add catalog validation to models set command
...
`models set` accepts any syntactically valid model ID without checking
the catalog, allowing typos to silently persist in config and fail at
runtime. It also unconditionally adds an empty `{}` entry to
`agents.defaults.models`, bypassing any provider routing constraints.
This commit:
- Validates the model ID against the catalog (skipped when catalog is
empty during initial setup)
- Warns when a new entry is added with empty config (no provider routing)
Closes openclaw/openclaw#17183
✍️ Author: Claude Code with @carrotRakko (AI-written, human-approved)
2026-02-16 23:54:52 +01:00
Peter Steinberger
2d8edf85ad
refactor(test): share onboarding and model auth test helpers
2026-02-16 16:48:55 +00:00
Peter Steinberger
cb46ea037f
refactor(models): dedupe set default model updates
2026-02-16 00:43:15 +00:00
Peter Steinberger
38f430e133
perf(models): lazy-load heavy deps in models list
2026-02-15 19:29:27 +00:00
Peter Steinberger
99fda7b920
refactor(models): share fallback command logic
2026-02-15 19:00:27 +00:00
Peter Steinberger
cbf6ee3a64
refactor(models): share primary/fallback merge
2026-02-15 17:13:09 +00:00
Peter Steinberger
d238483337
refactor(models): dedupe auth order context
2026-02-15 16:32:12 +00:00
Peter Steinberger
910e1e52dd
fix(models): type fallback key helper
2026-02-15 16:25:00 +00:00
Peter Steinberger
d4c7b0505f
refactor(models): dedupe fallback key parsing
2026-02-15 16:25:00 +00:00
Peter Steinberger
261e2c131e
refactor(commands): dedupe model scan sorting
2026-02-15 06:44:34 +00:00
Bin Deng
4734f99108
Fix: Add type safety to models status command ( #16395 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 1554137ae34b8183a924d48e3894e9d60c4e2dde
Co-authored-by: BinHPdev <219093083+BinHPdev@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-14 14:07:38 -05:00
AI-Reviewer-QS
28431b84cc
fix(gateway): prune expired entries instead of clearing all hook auth failure state ( #15848 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 188a40e8a35112b9ea2df23dd0a940b9be1eac1d
Co-authored-by: AI-Reviewer-QS <255312808+AI-Reviewer-QS@users.noreply.github.com >
Co-authored-by: steipete <58493+steipete@users.noreply.github.com >
Reviewed-by: @steipete
2026-02-14 01:46:12 +01:00
Peter Steinberger
e7c3c27fd0
perf(test): trim browser and models suite overhead
2026-02-14 00:38:55 +00:00
Shadril Hassan Shifat
1c928e493d
fix(hooks): replace console logging with proper subsystem logging in loader (openclaw#11029) thanks @shadril238
...
Verified:
- pnpm build
- pnpm check
- pnpm test
Co-authored-by: shadril238 <63901551+shadril238@users.noreply.github.com >
Co-authored-by: Tak Hoffman <781889+Takhoffman@users.noreply.github.com >
2026-02-13 18:21:11 -06:00
Peter Steinberger
cf2524b8b9
refactor(models): share auth helpers and forward-compat list fallbacks
2026-02-14 01:07:35 +01:00
Vincent Koc
a0cbf9002d
fix(models): antigravity opus 4.6 availability follow-up ( #12845 )
...
* fix(models): antigravity opus 4.6 availability follow-up
* chore(format): apply updated oxfmt config to models files
* fix(models): retain zai glm-5 forward-compat fallback after extraction
* chore(format): apply updated oxfmt config
* fix(models): fail fast on unknown auth login provider
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-02-14 00:54:46 +01:00
Mariano Belinky
86e4fe0a7a
Auth: land codex oauth onboarding flow ( #15406 )
2026-02-13 17:18:49 +00:00
loiie45e
2e04630105
openai-codex: add gpt-5.3-codex-spark forward-compat model ( #15174 )
...
Merged via maintainer flow after rebase + local gates.
Prepared head SHA: 6cac87cbf97e5f627085787fe5f565778fa223bf
Co-authored-by: loiie45e <15420100+loiie45e@users.noreply.github.com >
Co-authored-by: mbelinky <2406260+mbelinky@users.noreply.github.com >
2026-02-13 15:21:07 +00:00
Peter Steinberger
9131b22a28
test: migrate suites to e2e coverage layout
2026-02-13 14:28:22 +00:00
loiie45e
07faab6ac3
openai-codex: bridge OAuth profiles into pi auth.json for model discovery ( #15184 )
2026-02-13 11:39:37 +00:00
Marcus Castro
ec44e262be
fix(security): prevent String(undefined) coercion in credential inputs ( #12287 )
...
* fix(security): prevent String(undefined) coercion in credential inputs
When a prompter returns undefined (due to cancel, timeout, or bug),
String(undefined).trim() produces the literal string "undefined" instead
of "". This truthy string prevents secure fallbacks from triggering,
allowing predictable credential values (e.g., gateway password = "undefined").
Fix all 8 occurrences by using String(value ?? "").trim(), which correctly
yields "" for null/undefined inputs and triggers downstream validation or
fallback logic.
Fixes #8054
* fix(security): also fix String(undefined) in api-provider credential inputs
Address codex review feedback: 4 additional occurrences of the unsafe
String(variable).trim() pattern in auth-choice.apply.api-providers.ts
(Cloudflare Account ID, Gateway ID, synthetic API key inputs + validators).
* fix(test): strengthen password coercion test per review feedback
* fix(security): harden credential prompt coercion
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-02-13 04:25:05 +01:00
Yida-Dev
4216449405
fix: guard resolveUserPath against undefined input ( #10176 )
...
* fix: guard resolveUserPath against undefined input
When subagent spawner omits workspaceDir, resolveUserPath receives
undefined and crashes on .trim(). Add a falsy guard that falls back
to process.cwd(), matching the behavior callers already expect.
Closes #10089
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* fix: harden runner workspace fallback (#10176 ) (thanks @Yida-Dev)
* fix: harden workspace fallback scoping (#10176 ) (thanks @Yida-Dev)
* refactor: centralize workspace fallback classification and redaction (#10176 ) (thanks @Yida-Dev)
* test: remove explicit any from utils mock (#10176 ) (thanks @Yida-Dev)
* security: reject malformed agent session keys for workspace resolution (#10176 ) (thanks @Yida-Dev)
---------
Co-authored-by: Yida-Dev <reyifeijun@gmail.com >
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
Co-authored-by: Gustavo Madeira Santana <gumadeiras@gmail.com >
2026-02-06 13:16:58 -05:00
Peter Steinberger
5b0851ebd8
feat: add cloudflare ai gateway provider
2026-02-04 04:10:13 -08:00
cpojer
f06dd8df06
chore: Enable "experimentalSortImports" in Oxfmt and reformat all imorts.
2026-02-01 10:03:47 +09:00
cpojer
5ceff756e1
chore: Enable "curly" rule to avoid single-statement if confusion/errors.
2026-01-31 16:19:20 +09:00
cpojer
15792b153f
chore: Enable more lint rules, disable some that trigger a lot. Will clean up later.
2026-01-31 16:04:04 +09:00
Peter Steinberger
08ed62852a
chore: update deps and pi model discovery
2026-01-31 06:45:57 +01:00
Mario Zechner
c0a6e675a3
Agents: update pi dependencies to 0.50.7
2026-01-31 04:20:12 +01:00
Gustavo Madeira Santana
f24e3cdae5
fix: local updates for PR #4780
...
Co-authored-by: jlowin <jlowin@users.noreply.github.com >
2026-01-30 15:47:05 -05:00
Jeremiah Lowin
dd4715a2c4
CLI: add --agent flag to models status
2026-01-30 15:47:05 -05:00
Peter Steinberger
9a7160786a
refactor: rename to openclaw
2026-01-30 03:16:21 +01:00
Peter Steinberger
6d16a658e5
refactor: rename clawdbot to moltbot with legacy compat
2026-01-27 12:21:02 +00:00
Peter Steinberger
526303d9a2
refactor(auth)!: remove external CLI OAuth reuse
2026-01-26 19:05:00 +00:00