## What changed - TypeScript schema fixture generation now goes through in-memory tree helpers rather than a heavier on-disk generation path. - The comparison logic normalizes generated banner and path differences that are not semantically relevant to the exported schema. - TypeScript and JSON fixture coverage are split into separate tests, and the expensive schema-export tests are serialized in `nextest`. ## Why this fixes the flake - The original fixture coverage mixed several heavy codegen paths into one monolithic test and then compared generated output that included incidental banner/path differences. - On Windows CI, that combination created both runtime pressure and output variance unrelated to the schema shapes we actually care about. - Splitting the coverage isolates failures by format, in-memory generation reduces filesystem churn, normalization strips generator noise, and serializing the heavy tests removes parallel resource contention. ## Scope - Production helper change plus test changes.
29 lines
1.2 KiB
TOML
29 lines
1.2 KiB
TOML
[profile.default]
|
|
# Do not increase, fix your test instead
|
|
slow-timeout = { period = "15s", terminate-after = 2 }
|
|
|
|
[test-groups.app_server_protocol_codegen]
|
|
max-threads = 1
|
|
|
|
[test-groups.app_server_integration]
|
|
max-threads = 1
|
|
|
|
|
|
[[profile.default.overrides]]
|
|
# Do not add new tests here
|
|
filter = 'test(rmcp_client) | test(humanlike_typing_1000_chars_appears_live_no_placeholder)'
|
|
slow-timeout = { period = "1m", terminate-after = 4 }
|
|
|
|
[[profile.default.overrides]]
|
|
filter = 'test(approval_matrix_covers_all_modes)'
|
|
slow-timeout = { period = "30s", terminate-after = 2 }
|
|
|
|
[[profile.default.overrides]]
|
|
filter = 'package(codex-app-server-protocol) & (test(typescript_schema_fixtures_match_generated) | test(json_schema_fixtures_match_generated) | test(generate_ts_with_experimental_api_retains_experimental_entries) | test(generated_ts_optional_nullable_fields_only_in_params) | test(generate_json_filters_experimental_fields_and_methods))'
|
|
test-group = 'app_server_protocol_codegen'
|
|
|
|
[[profile.default.overrides]]
|
|
# These integration tests spawn a fresh app-server subprocess per case.
|
|
# Keep the library unit tests parallel.
|
|
filter = 'package(codex-app-server) & kind(test)'
|
|
test-group = 'app_server_integration'
|