fix: stabilize OpenClawKit contract and chat tests#100243
Merged
Merged
Conversation
steipete
force-pushed
the
codex/fix-openclawkit-test-flakes
branch
from
July 5, 2026 08:54
bc0819b to
c23d535
Compare
Contributor
Author
|
Land-ready at exact head Local proof:
Hosted exact-head proof: CI run 28735667026 passed, including |
Contributor
|
Codex review: stale review; fresh review needed. Summary Next step |
steipete
force-pushed
the
codex/fix-openclawkit-test-flakes
branch
from
July 5, 2026 09:04
0f06ca1 to
b7711ae
Compare
Contributor
Author
|
Merged via squash.
|
github-actions Bot
pushed a commit
to Desicool/openclaw
that referenced
this pull request
Jul 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What Problem This Solves
Resolves deterministic failure in the Swift Talk provider-selection contract suite after the shared fixture semantics changed, plus timing-sensitive
ChatViewModelTestsfailures under parallel suite load.Why This Change Was Made
The Swift fixture consumer now treats
payloadValidas schema validity, matching the TypeScript contract instead of equating it with provider selection. Chat view-model tests are serialized and use observable async barriers instead of fixed sleeps or incomplete hook-local completion signals.AI-assisted; implementation and final diff reviewed with Codex autoreview.
User Impact
No runtime behavior change. OpenClawKit contract and chat tests now produce deterministic results on macOS under suite load.
Evidence
cd apps/shared/OpenClawKit && swift test --filter TalkConfigContractTests --quiet— 2 tests passed.cd apps/shared/OpenClawKit && swift test --filter ChatViewModelTests --quiet— 105 tests passed.cd apps/shared/OpenClawKit && swift test --skip-build --skip DeviceIdentityStoreTests --quiet— 243 tests in 28 suites passed; excluded independently pre-existing global-state race.swiftformat --lint ... --config config/swiftformat— 0/2 touched files require formatting.origin/main(five existing line/data warnings plus existing file/type size errors in the 5.5k-line test file).git diff --check— clean.