Peter Steinberger
fdb7848a7c
chore: remove stale codex test conversion
2026-05-26 17:40:44 +01:00
Peter Steinberger
ead847f606
fix: ignore other codex thread completions
2026-05-26 17:16:17 +01:00
Vincent Koc
5ef812293b
fix(codex): bridge cli api-key auth into app-server
2026-05-26 17:19:50 +02:00
Peter Steinberger
30e59b4090
test: speed up slow CI regressions
2026-05-26 13:13:19 +01:00
Peter Steinberger
4c8e9da033
test(codex): widen app-server wait timeout type
2026-05-26 10:42:30 +01:00
Vincent Koc
3f6b63aa1d
fix(codex): preserve sandbox bootstrap path style
2026-05-26 10:21:47 +02:00
Peter Steinberger
3548cff14b
refactor: migrate validators to TypeBox ( #86639 )
...
* refactor: migrate validators to typebox
* fix: preserve json schema resource refs
* chore: clean schema preflight recursion
* refactor: remove lobster ajv shim
* fix: support schema array refs
* fix: validate schema dependencies
* fix: preserve schema contract checks
* fix: support same-document schema refs
* fix: preserve untyped map defaults
* fix: preserve schema default semantics
* test: avoid thenable schema literals
* test: build conditional schema key
* fix: defer resource id refs to typebox
* fix: reject invalid schema enum metadata
* fix: preserve default branch semantics
* fix: resolve schema resource refs
* fix: narrow conditional default fallback
* fix: preserve uri format validation
* fix: preserve validator compatibility
* test: avoid ajv cache lint violation
* fix: preserve typebox validation diagnostics
* fix: validate defaulted conditional schemas
* fix: normalize mcp draft schemas
* fix: preserve tuple schema defaults
* fix: resolve relative schema refs
* fix: scope typebox format semantics
* fix: align conditional format defaults
* fix: decode schema pointer refs
* fix: filter grouped secretref diagnostics
* fix: preserve default conditional compatibility
* fix: preserve nullable schema compatibility
* fix: settle defaults before conditionals
* fix: preserve default validation invariants
* fix: validate dynamic schema refs
* fix: reject malformed nullable schemas
2026-05-26 08:45:28 +01:00
Peter Steinberger
083377adb8
test(codex): wait for diagnostic event locally
2026-05-26 06:53:40 +01:00
Peter Steinberger
11b1b7c888
test(codex): complete diagnostic turn explicitly
2026-05-26 06:32:54 +01:00
Peter Steinberger
bee8ad34a0
test(codex): avoid app-server diagnostic notification race
2026-05-26 04:17:16 +01:00
Peter Steinberger
609d70d35e
fix(release): stabilize beta validation after rebase
2026-05-26 03:30:54 +01:00
Peter Steinberger
93015982d3
fix(release): stabilize beta validation after main rebase
2026-05-26 03:06:26 +01:00
Alex Knight
f824e1596a
Add OpenTelemetry LLM content spans ( #86191 )
...
* feat: add otel llm content spans
* fix: gate otel tool definitions separately
* fix(diagnostics): sanitize tool_call parts and truncate oversized OTEL content attributes
* fix: keep otel content truncation parseable
* fix: simplify codex model diagnostics
* fix(diagnostics): align opt-in GenAI span shape
* test(codex): align resume params after rebase
* fix(diagnostics): keep model content off shared event bus
* test(diagnostics): keep extension tests on sdk boundary
---------
Co-authored-by: Alex Knight <15041791+amknight@users.noreply.github.com >
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-05-26 02:24:02 +01:00
Peter Steinberger
e049105891
fix(release): stabilize beta validation tests
2026-05-26 02:17:54 +01:00
Peter Steinberger
d00d0a21c2
chore: bump OpenClaw to 2026.5.26
2026-05-26 01:26:00 +01:00
Dmitry Golubev
0f35ec29d3
fix(codex): disable native thread personality ( #85891 ) (thanks @lastguru-net)
...
Behavior addressed: Native Codex app-server threads now disable Codex's built-in personality on thread/start, thread/resume, turn/start, bound conversation turns, and /btw side-thread forks so OpenClaw agent workspace identity stays authoritative.
Real environment tested: Local OpenClaw source checkout plus GitHub CI on PR #85891 .
Exact steps or command run after this patch: pnpm test extensions/codex/src/app-server/thread-lifecycle.test.ts extensions/codex/src/app-server/side-question.test.ts extensions/codex/src/conversation-binding.test.ts extensions/codex/src/app-server/schema-normalization-runtime-contract.test.ts; pnpm check:docs; pnpm prompt:snapshots:check; OPENCLAW_ADDITIONAL_BOUNDARY_SHARD=1/4 OPENCLAW_ADDITIONAL_BOUNDARY_CONCURRENCY=4 node scripts/run-additional-boundary-checks.mjs.
Evidence after fix: Focused Codex test shard passed 4 files / 79 tests; docs check passed; prompt snapshots are current; CI passed all code/quality checks, with only Real behavior proof failing as unrelated proof-bot gating for this non-channel change.
Observed result after fix: App-server request snapshots and unit tests include personality: "none" on native Codex start/resume/turn/fork paths.
What was not tested: A live Codex app-server model run was not executed.
Co-authored-by: Beru <beru@lastguru.lv >
2026-05-25 23:15:03 +01:00
Earl Co
7b30291cc4
fix(codex): honor yolo app-server approval policy
2026-05-25 23:06:54 +01:00
Vincent Koc
f6a49a4e8a
test(qa-lab): add runtime confidence reports
2026-05-25 22:00:21 +01:00
Peter Steinberger
cda7c30150
build: refresh dependency pins ( #86628 )
...
* build: refresh dependencies
* build: align pi fallback version
2026-05-25 21:55:46 +01:00
Peter Steinberger
009b18c1f4
fix(codex): allow env api-key app-server bootstrap
2026-05-25 21:21:01 +01:00
Peter Steinberger
77d9ac30bb
refactor: reuse shared coercion helpers ( #86419 )
...
* refactor: share talk event metric extraction
* refactor: reuse shared coercion helpers
* refactor: reuse shared primitive guards
* refactor: reuse shared record guard
* refactor: reuse shared primitive helpers
* refactor: reuse shared string guards
* refactor: reuse shared non-empty string guard
* refactor: share plugin primitive coercion helpers
* refactor: reuse plugin coercion helpers
* refactor: reuse plugin coercion helpers in more plugins
* refactor: reuse channel coercion helpers
* refactor: reuse monitor coercion helpers
* refactor: reuse provider coercion helpers
* refactor: reuse core coercion helpers
* refactor: reuse runtime coercion helpers
* refactor: reuse helper coercion in codex paths
* refactor: reuse helper coercion in runtime paths
* refactor: reuse codex app-server coercion helpers
* refactor: reuse codex record helpers
* refactor: reuse migration and qa record helpers
* refactor: reuse feishu and core helper guards
* refactor: reuse browser and policy coercion helpers
* refactor: reuse memory wiki record helper
* refactor: share boolean coercion helpers
* refactor: reuse finite number coercion
* refactor: reuse trimmed string list helpers
* refactor: reuse string list normalization
* refactor: reuse remaining string list helpers
* refactor: reuse string entry normalizer
* refactor: share sorted string helpers
* refactor: share string list normalization
* test: preserve command registry browser imports
* refactor: reuse trimmed list helpers
* refactor: reuse string dedupe helpers
* refactor: reuse local dedupe helpers
* refactor: reuse more string dedupe helpers
* refactor: reuse command string dedupe helpers
* refactor: dedupe memory path lists with helper
* refactor: expose string dedupe helpers to plugins
* refactor: reuse core string dedupe helpers
* refactor: reuse shared unique value helpers
* refactor: reuse unique helpers in agent utilities
* refactor: reuse unique helpers in config plumbing
* refactor: reuse unique helpers in extensions
* refactor: reuse unique helpers in core utilities
* refactor: reuse unique helpers in qa plugins
* refactor: reuse unique helpers in memory plugins
* refactor: reuse unique helpers in channel plugins
* refactor: reuse unique helpers in core tails
* refactor: reuse unique helper in comfy workflow
* refactor: reuse unique helpers in test utilities
* refactor: expose unique value helper to plugins
* refactor: reuse unique helpers for numeric lists
* refactor: replace index dedupe filters
* refactor: reuse string entry normalization
* refactor: reuse string normalization in plugin helpers
* refactor: reuse string normalization in extension helpers
* refactor: reuse string normalization in channel parsers
* refactor: reuse string normalization in memory search
* refactor: reuse string normalization in provider parsers
* refactor: reuse string normalization in qa helpers
* refactor: reuse string normalization in infra parsers
* refactor: reuse string normalization in messaging parsers
* refactor: reuse string normalization in core parsers
* refactor: reuse string normalization in extension parsers
* refactor: reuse string normalization in remaining parsers
* refactor: reuse string normalization in final parser spots
* refactor: reuse string normalization in qa media helpers
* refactor: reuse normalization in provider and media lists
* refactor: reuse normalization for remaining set filters
* refactor: reuse normalization in policy allowlists
* refactor: reuse normalization in session and owner lists
* refactor: centralize primitive string lists
* refactor: reuse lowercase entry helpers
* refactor: reuse sorted string helpers
* refactor: reuse unique trimmed helpers
* refactor: reuse string normalization helpers
* refactor: reuse catalog string helpers
* refactor: reuse remaining string helpers
* refactor: simplify remaining list normalization
* refactor: reuse codex auth order normalization
* chore: refresh plugin sdk api baseline
* fix: make shared string sorting deterministic
* chore: refresh plugin sdk api baseline
* fix: align host env security ordering
2026-05-25 21:20:41 +01:00
Peter Steinberger
9b9d8970b0
fix(codex): recover stale preflight bindings ( #86602 )
...
Fixes #86211 .
Recreates the focused recovery from #86216 with maintainer-side tests.
Co-authored-by: Paul Frederiksen <paul@paulfrederiksen.com >
2026-05-25 19:37:49 +01:00
Jason (Json)
35dcd42c9d
fix: suppress async media incomplete-turn errors ( #85933 )
...
* fix: suppress async media incomplete-turn errors
* fix: mark async media starts as side effects
* fix: preserve async markers in codex dynamic tool progress
* fix: carry async codex tool metadata into attempts
* fix: preserve async codex metadata across snapshots
* fix: suppress async media incomplete-turn errors (#85933 ) (thanks @fuller-stack-dev)
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-05-25 09:17:30 +01:00
FullerStackDev
0a98c2d626
address migrate auth review comments
2026-05-25 09:16:37 +01:00
FullerStackDev
50e6cb0828
fix migrate auth lint
2026-05-25 09:16:37 +01:00
FullerStackDev
f036bac144
migrate auth credentials
2026-05-25 09:16:37 +01:00
clawsweeper[bot]
b962110637
fix(codex): preserve source reply mode for active runs ( #86325 )
...
Summary:
- This PR forwards Codex app-server source reply delivery mode into active run handling, adds a focused regression test, and adds a changelog entry.
- PR surface: Source +1, Tests +38, Docs +1. Total +40 across 3 files.
- Reproducibility: yes. Source inspection shows the shared active-run queue rejects `message_tool_only` replies when the active handle lacks that mode, and current main's Codex app-server handle omits it.
Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(codex): preserve source reply mode for active runs
Validation:
- ClawSweeper review passed for head d8fac59d8f .
- Required merge gates passed before the squash merge.
Prepared head SHA: d8fac59d8f
Review: https://github.com/openclaw/openclaw/pull/86325#issuecomment-4531516197
Co-authored-by: Fermin Quant <ferminquant@hotmail.com >
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com>
Approved-by: takhoffman
Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com >
2026-05-25 06:00:47 +00:00
Alex Knight
c3c8a65373
fix codex usage-limit recovery copy ( #86305 )
2026-05-25 15:53:40 +10:00
pashpashpash
dd47e479ae
Fail Codex compaction at the Codex boundary ( #85958 )
2026-05-24 22:12:34 -07:00
Val Alexander
119a01c829
fix(webchat): stabilize live transcript run state
...
Stabilize WebChat transcript/run-state truth for Codex and selected-session observers.
Summary:
- Mirror Codex inbound prompts at turn start without duplicating suppressed persisted prompts.
- Deliver hidden external-channel live chat/tool/agent updates only to exact selected-session subscribers.
- Repair Control UI selected-session subscription state, alias-aware run adoption, and accumulated stream dedupe.
- Add focused Codex, gateway/session-event, and Control UI regression coverage.
Verification:
- Current-head CI: 101 green, 0 pending; stale canceled entries are superseded automation from prior force-pushed heads.
- Local focused Vitest shards passed: Codex app-server 2 files / 233 tests, gateway/session 4 files / 116 tests, UI 7 files / 238 tests.
- `node scripts/run-tsgo.mjs -p test/tsconfig/tsconfig.core.test.json --incremental --tsBuildInfoFile .artifacts/tsgo-cache/core-test.tsbuildinfo`
- `node --import tsx scripts/check-no-extension-test-core-imports.ts`
- `git diff --check origin/main..HEAD`
Closes #83528 .
Closes #82611 .
Refs #83949 .
2026-05-24 23:07:29 -05:00
Peter Steinberger
d9af23fb5a
fix(codex): log app-server approval promotion trigger
2026-05-25 01:26:37 +01:00
Peter Steinberger
3679151c2c
test(release): stabilize plugin prerelease checks
2026-05-24 11:40:48 +01:00
Peter Steinberger
783290f7ed
test(codex): match sandbox exec-server yolo policy
2026-05-24 11:01:15 +01:00
Peter Steinberger
558c1bc39a
test(codex): avoid full sandbox exec-server turn run
2026-05-24 10:36:44 +01:00
Peter Steinberger
a4ef3a2c9a
test(codex): type thread start mock params
2026-05-24 08:53:29 +01:00
Peter Steinberger
11bf6424ca
test(codex): avoid full sandbox run in thread-start test
2026-05-24 08:40:58 +01:00
Peter Steinberger
c14a0c6d63
test(codex): complete sandbox turn inline
2026-05-24 08:19:01 +01:00
Peter Steinberger
eeb5f12293
fix(plugins): fail stalled runtime operations
2026-05-24 03:55:49 +01:00
Kaspre
96959ec3d7
fix(codex): defer native-hook-relay unregister to avoid cleanup race
...
Keep successful Codex native hook relays alive through a bounded grace window so late hook callbacks still reach OpenClaw enforcement, while interrupted, aborted, timed-out, and failed turns unregister immediately.\n\nCo-authored-by: Kaspre <kaspre@gmail.com >
2026-05-24 03:53:00 +01:00
Shakker
f5b415f138
fix: bound Codex post-reasoning source reply waits
2026-05-24 03:37:43 +01:00
Shakker
c93dda9423
fix: keep long Codex source replies alive
2026-05-24 03:37:43 +01:00
Dmitry Golubev
7b3be04582
fix(codex): ensure codex subagent bootstrap parity with pi subagents - only inject AGENTS.md and TOOLS.md ( #85811 )
...
* fix: limit Codex native subagent bootstrap context
* fix: preserve Codex turn instructions accounting
* fix: split Codex workspace instruction renderers
* fix(codex): keep persona files turn-scoped
---------
Co-authored-by: Beru <beru@lastguru.lv >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-05-24 02:48:03 +01:00
Peter Steinberger
0cba872e38
chore: bump version to 2026.5.24
2026-05-24 02:40:16 +01:00
Peter Steinberger
1b68dbe95a
test: isolate Codex replay timeout outcome
2026-05-23 23:06:41 +01:00
Peter Steinberger
32a80d9954
test: isolate Codex hook channel context
2026-05-23 22:55:52 +01:00
Peter Steinberger
f6204d081f
test: isolate Codex duplicate terminal diagnostics
2026-05-23 22:45:19 +01:00
Peter Steinberger
fa5c8345f3
test: isolate Codex terminal diagnostic fallback
2026-05-23 22:34:39 +01:00
Peter Steinberger
a705a9c911
test: drain Codex app-server attempts
2026-05-23 22:24:25 +01:00
Peter Steinberger
cd102efb70
test: isolate Codex native item release guard
2026-05-23 22:13:22 +01:00
Peter Steinberger
6a3781dd7f
test: isolate Codex terminal batch scheduler
2026-05-23 21:57:34 +01:00