nixbot

builds

succeeded x86_64-linux.cljs build #4 · raw · ·

1this derivation will be built:2  /nix/store/97if72xlcmwx8ysfwn0a3l6pm998xxpr-llx-cljs-tests-0.0.1.drv3building '/nix/store/97if72xlcmwx8ysfwn0a3l6pm998xxpr-llx-cljs-tests-0.0.1.drv'4llx-cljs-tests-0.0.1> Running phase: unpackPhase5llx-cljs-tests-0.0.1> unpacking source archive /nix/store/iq5syfgykc4vv7b46la7ff4pcp80v9gw-source6llx-cljs-tests-0.0.1> source root is source7llx-cljs-tests-0.0.1> Running phase: patchPhase8llx-cljs-tests-0.0.1> Executing npmConfigHook9llx-cljs-tests-0.0.1> Configuring npm10llx-cljs-tests-0.0.1> Validating consistency between /build/source/package-lock.json and /nix/store/pi7aas1jmgm5q9bgvpx2zmckk7wc15sp-npm-deps/package-lock.json11llx-cljs-tests-0.0.1> Setting npm_config_cache to /nix/store/pi7aas1jmgm5q9bgvpx2zmckk7wc15sp-npm-deps12llx-cljs-tests-0.0.1> Installing dependencies13llx-cljs-tests-0.0.1> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.14llx-cljs-tests-0.0.1> npm warn Unknown env config "platform". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.15llx-cljs-tests-0.0.1> npm warn Unknown env config "arch". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.16llx-cljs-tests-0.0.1> 17llx-cljs-tests-0.0.1> added 64 packages, and audited 65 packages in 955ms18llx-cljs-tests-0.0.1> 19llx-cljs-tests-0.0.1> 10 packages are looking for funding20llx-cljs-tests-0.0.1>   run `npm fund` for details21llx-cljs-tests-0.0.1> 22llx-cljs-tests-0.0.1> found 0 vulnerabilities23llx-cljs-tests-0.0.1> patching script interpreter paths in node_modules24llx-cljs-tests-0.0.1> node_modules/JSONStream/bin.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/5a8ysg1jnj8jmzzyfcfw7rvpvnp5rfpa-nodejs-24.15.0/bin/node"25llx-cljs-tests-0.0.1> node_modules/@cljs-oss/module-deps/bin/cmd.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/5a8ysg1jnj8jmzzyfcfw7rvpvnp5rfpa-nodejs-24.15.0/bin/node"26llx-cljs-tests-0.0.1> node_modules/which/bin/which.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/5a8ysg1jnj8jmzzyfcfw7rvpvnp5rfpa-nodejs-24.15.0/bin/node"27llx-cljs-tests-0.0.1> node_modules/loose-envify/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/5a8ysg1jnj8jmzzyfcfw7rvpvnp5rfpa-nodejs-24.15.0/bin/node"28llx-cljs-tests-0.0.1> node_modules/shadow-cljs/cli/runner.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/5a8ysg1jnj8jmzzyfcfw7rvpvnp5rfpa-nodejs-24.15.0/bin/node"29llx-cljs-tests-0.0.1> node_modules/resolve/bin/resolve: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/5a8ysg1jnj8jmzzyfcfw7rvpvnp5rfpa-nodejs-24.15.0/bin/node"30llx-cljs-tests-0.0.1> node_modules/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/5a8ysg1jnj8jmzzyfcfw7rvpvnp5rfpa-nodejs-24.15.0/bin/node"31llx-cljs-tests-0.0.1> npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.32llx-cljs-tests-0.0.1> npm warn Unknown env config "platform". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.33llx-cljs-tests-0.0.1> npm warn Unknown env config "arch". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options.34llx-cljs-tests-0.0.1> rebuilt dependencies successfully35llx-cljs-tests-0.0.1> patching script interpreter paths in node_modules36llx-cljs-tests-0.0.1> Finished npmConfigHook37llx-cljs-tests-0.0.1> Running phase: updateAutotoolsGnuConfigScriptsPhase38llx-cljs-tests-0.0.1> Running phase: configurePhase39llx-cljs-tests-0.0.1> no configure script, doing nothing40llx-cljs-tests-0.0.1> Running phase: buildPhase41llx-cljs-tests-0.0.1> Picked up JAVA_TOOL_OPTIONS: -Duser.home=/build/tmp.1zKcYTCmXJ42llx-cljs-tests-0.0.1> Picked up JAVA_TOOL_OPTIONS: -Duser.home=/build/tmp.1zKcYTCmXJ43llx-cljs-tests-0.0.1> Picked up JAVA_TOOL_OPTIONS: -Duser.home=/build/tmp.1zKcYTCmXJ44llx-cljs-tests-0.0.1> Picked up JAVA_TOOL_OPTIONS: -Duser.home=/build/tmp.1zKcYTCmXJ45llx-cljs-tests-0.0.1> [2026-06-11 08:00:36.019 - WARNING] failed to inspect resource "jar:file:/build/tmp.1zKcYTCmXJ/.m2/repository/com/clojure-goes-fast/clj-async-profiler/1.7.0/clj-async-profiler-1.7.0.jar!/flamegraph-rendering/script.js", it will not be available.46llx-cljs-tests-0.0.1> [:kaocha-test] Compiling ...47llx-cljs-tests-0.0.1> WARNING: A terminally deprecated method in sun.misc.Unsafe has been called48llx-cljs-tests-0.0.1> WARNING: sun.misc.Unsafe::arrayBaseOffset has been called by com.google.javascript.jscomp.jarjar.com.google.protobuf.UnsafeUtil$MemoryAccessor (file:/build/tmp.1zKcYTCmXJ/.m2/repository/com/google/javascript/closure-compiler/v20250407/closure-compiler-v20250407.jar)49llx-cljs-tests-0.0.1> WARNING: Please consider reporting this to the maintainers of class com.google.javascript.jscomp.jarjar.com.google.protobuf.UnsafeUtil$MemoryAccessor50llx-cljs-tests-0.0.1> WARNING: sun.misc.Unsafe::arrayBaseOffset will be removed in a future release51llx-cljs-tests-0.0.1> GUARDRAILS IS ENABLED. RUNTIME PERFORMANCE WILL BE AFFECTED.52llx-cljs-tests-0.0.1> Mode: :runtime  config: {:throw? true, :guardrails/use-stderr? true}53llx-cljs-tests-0.0.1> Guardrails was enabled because the CLJS Compiler config enabled it54llx-cljs-tests-0.0.1> [:kaocha-test] Build completed. (306 files, 305 compiled, 0 warnings, 29.56s)55llx-cljs-tests-0.0.1> --- cljs (cljs2) ---------------------------56llx-cljs-tests-0.0.1> node-lunch-dare (Node.js 24.15.0 on Linux 64-bit)57llx-cljs-tests-0.0.1> ol.llx.ai.adapters.google-generative-ai-test58llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/open-stream-non-2xx-throws-structured-error59llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/reasoning-config-disables-thinking-by-default-for-gemini-3-pro60llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/reasoning-config-gemini-25-pro-budget-differs-from-flash61llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/adapter-registers-tool-call-id-normalizer-with-model-id-gate62llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/google-normalizer-matches-upstream-issue-1022-test-id-under-gate63llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/build-request-tool-result-image-forwarding-by-model-capability64llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/build-request-uses-custom-thinking-budgets65llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/reasoning-config-gemini-3-pro-clamps-low-effort66llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/build-request-sanitizes-unpaired-surrogates-in-user-and-system67llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/build-request-gemini-3-preserves-unsigned-tool-calls-with-sentinel68llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/finalize-throws-on-unknown-stop-reason69llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/stream-error-normalization-contract70llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/build-request-preserves-valid-emoji-surrogate-pairs71llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/map-stop-reason-fail-fast-on-unknown72llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/reasoning-config-gemini-3-pro-uses-level73llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/thought-signature-alone-is-not-thinking74llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/reasoning-config-disables-thinking-by-default-for-gemini-375llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/reasoning-config-disables-thinking-by-default-for-gemini-2576llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/finalize-calculates-usage-costs77llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/reasoning-config-gemini-3-flash-uses-level78llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/build-request-emits-provider-payload-trove-signal79llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/decode-event-stream-usage-calculates-costs80llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/decode-event-tool-call-missing-args-defaults-to-empty-map81llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/decode-event-stream-contract82llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/build-request-converts-canonical-context-to-google-payload83llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.google-generative-ai-test/reasoning-config-omitted-when-model-not-reasoning84llx-cljs-tests-0.0.1> 85llx-cljs-tests-0.0.1> ol.llx.ai.utils.unicode-test86llx-cljs-tests-0.0.1>   ol.llx.ai.utils.unicode-test/truncate-limits-string-length87llx-cljs-tests-0.0.1>   ol.llx.ai.utils.unicode-test/sanitize-payload-deep-walks-data-structures88llx-cljs-tests-0.0.1>   ol.llx.ai.utils.unicode-test/sanitize-surrogates-handles-surrogate-edge-cases89llx-cljs-tests-0.0.1> 90llx-cljs-tests-0.0.1> ol.llx.ai.adapters.openai-completions-test91llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-zai-disables-thinking-when-no-reasoning92llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/normalize-tool-call-id-mistral-avoids-collision-for-distinct-source-ids93llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/decode-event-tracks-thinking-signature94llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/convert-message-restores-thinking-field-from-signature95llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/normalize-tool-call-id-matches-upstream-issue-1022-test-id96llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/decode-event-stream-falls-back-to-choice-usage97llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-tool-choice-sentinel-strings-pass-through98llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/decode-event-maps-provider-finish-reason-errors99llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/response->assistant-message-maps-provider-finish-reason-errors100llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-qwen-thinking-format-sends-enable-thinking101llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/normalize-tool-call-id-pipe-ids-use-call-segment-sanitize-and-truncate102llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/decode-event-extracts-reasoning-details-to-tool-call-signature103llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-zai-thinking-format-sends-thinking-object104llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-omits-reasoning-effort-when-model-lacks-reasoning105llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-emits-provider-payload-trove-signal106llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/response->assistant-message-falls-back-to-choice-usage107llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/decode-event-emits-thinking-events-for-reasoning-content108llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/decode-event-thinking-to-text-transition109llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/normalize-tool-call-id-mistral-shape110llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-sanitizes-unpaired-surrogates-in-tool-result-text111llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/normalize-tool-call-id-openai-non-pipe-ids-are-truncated-only112llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-openai-compatible-omits-auth-and-respects-compat-overrides113llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/decode-event-stream-contract114llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-reads-provider-specific-env-api-key115llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-batches-tool-result-images-for-openai-completions116llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/normalize-tool-call-id-openai-compatible-non-pipe-ids-are-unchanged117llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/convert-message-reconstructs-reasoning-details-from-tool-signatures118llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-includes-reasoning-effort-for-reasoning-model119llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-missing-api-key-message-includes-env-var-name120llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/response->assistant-message-calculates-usage-costs121llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-forwards-tools-and-tool-choice-with-compat-token-field122llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-preserves-valid-emoji-surrogate-pairs123llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/build-request-sanitizes-unpaired-surrogates-in-user-text124llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-completions-test/decode-event-stream-usage-calculates-costs125llx-cljs-tests-0.0.1> 126llx-cljs-tests-0.0.1> ol.llx.ai.oauth-test127llx-cljs-tests-0.0.1>   ol.llx.ai.oauth-test/get-oauth-api-key-behavior128llx-cljs-tests-0.0.1>   ol.llx.ai.oauth-test/oauth-provider-registry-operations129llx-cljs-tests-0.0.1>   ol.llx.ai.oauth-test/refresh-oauth-token-dispatch130llx-cljs-tests-0.0.1> 131llx-cljs-tests-0.0.1> ol.llx.ai.guardrails-contract-test132llx-cljs-tests-0.0.1>   ol.llx.ai.guardrails-contract-test/guardrails-enforces-boundary-shapes133llx-cljs-tests-0.0.1> 134llx-cljs-tests-0.0.1> ol.llx.agent-test135llx-cljs-tests-0.0.1>   ol.llx.agent-test/tool-signal-and-event-schema-tightening-test136llx-cljs-tests-0.0.1>   ol.llx.agent-test/set-schema-config-ignores-nil-fields-test137llx-cljs-tests-0.0.1>   ol.llx.agent-test/create-agent-default-convert-to-llm-test138llx-cljs-tests-0.0.1>   ol.llx.agent-test/create-agent-requires-env-contract-test139llx-cljs-tests-0.0.1>   ol.llx.agent-test/effect-execute-tool-tool-call-schema-test140llx-cljs-tests-0.0.1>   ol.llx.agent-test/create-agent-rejects-missing-custom-schema-registration-test141llx-cljs-tests-0.0.1>   ol.llx.agent-test/subscribe-unsubscribe-test142llx-cljs-tests-0.0.1>   ol.llx.agent-test/rehydrate-agent-uses-snapshot-test143llx-cljs-tests-0.0.1>   ol.llx.agent-test/prompt-validates-messages-test144llx-cljs-tests-0.0.1>   ol.llx.agent-test/tool-call-schema-contract-test145llx-cljs-tests-0.0.1>   ol.llx.agent-test/create-agent-ignores-initial-state-option-test146llx-cljs-tests-0.0.1>   ol.llx.agent-test/tool-schema-tightening-on-commands-and-state-test147llx-cljs-tests-0.0.1>   ol.llx.agent-test/set-schema-config-clears-user-additions-without-removing-canonical-schemas-test148llx-cljs-tests-0.0.1>   ol.llx.agent-test/command-wrappers-dispatch-through-driver-run-test149llx-cljs-tests-0.0.1>   ol.llx.agent-test/rehydrate-agent-custom-message-validation-test150llx-cljs-tests-0.0.1>   ol.llx.agent-test/tool-and-pending-tool-call-schema-test151llx-cljs-tests-0.0.1>   ol.llx.agent-test/create-agent-initializes-state-test152llx-cljs-tests-0.0.1>   ol.llx.agent-test/custom-message-schemas-validate-message-and-messages-test153llx-cljs-tests-0.0.1>   ol.llx.agent-test/set-model-validates-model-shape-test154llx-cljs-tests-0.0.1>   ol.llx.agent-test/custom-message-public-api-validation-test155llx-cljs-tests-0.0.1>   ol.llx.agent-test/custom-message-schema-may-reference-provided-schemas-test156llx-cljs-tests-0.0.1>   ol.llx.agent-test/set-schema-config-updates-custom-message-validation-on-live-agent-test157llx-cljs-tests-0.0.1> 158llx-cljs-tests-0.0.1> ol.llx.ai.adapters.anthropic-messages-test159llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-sanitizes-unpaired-surrogates-in-user-and-system160llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/finalize-throws-on-unknown-stop-reason161llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-enables-adaptive-thinking-for-opus-4-6162llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-uses-custom-thinking-budgets163llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/finalize-calculates-usage-costs164llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-omits-temperature-when-thinking-is-enabled165llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/decode-event-stream-contract166llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-converts-canonical-context-to-anthropic-payload167llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/finalize-maps-anthropic-stop-reasons168llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/image-only-content-does-not-inject-placeholder-text169llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-replays-redacted-thinking-as-anthropic-redacted-block170llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/normalize-tool-call-id-sanitizes-and-truncates171llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-emits-provider-payload-trove-signal172llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/decode-event-stream-usage-calculates-costs173llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-enables-adaptive-thinking-for-sonnet-4-6174llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-clamps-sonnet-4-6-xhigh-to-high175llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-omits-thinking-when-model-not-reasoning176llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-disables-thinking-when-no-reasoning-opts177llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/decode-event-redacted-thinking-round-trips-to-canonical-content178llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-enables-budget-thinking-for-older-reasoning-model179llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.anthropic-messages-test/build-request-preserves-valid-emoji-surrogate-pairs180llx-cljs-tests-0.0.1> 181llx-cljs-tests-0.0.1> ol.llx.ai.client.stream-test182llx-cljs-tests-0.0.1>   ol.llx.ai.client.stream-test/runtime-run-stream-input-requires-runtime-hooks183llx-cljs-tests-0.0.1>   ol.llx.ai.client.stream-test/run-stream-calls-cancel-when-output-channel-preclosed184llx-cljs-tests-0.0.1>   ol.llx.ai.client.stream-test/run-stream-emits-start-and-done-events185llx-cljs-tests-0.0.1> 186llx-cljs-tests-0.0.1> ol.llx.ai.adapters.common-test187llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.common-test/parse-json-safe-returns-decoded-or-empty-map188llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.common-test/trim-trailing-slash-removes-single-trailing-slash189llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.common-test/parse-json-lenient-falls-back-to-decode190llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.common-test/empty-usage-shape-is-canonical191llx-cljs-tests-0.0.1> 192llx-cljs-tests-0.0.1> ol.llx.ai.client.node-test193llx-cljs-tests-0.0.1>   ol.llx.ai.client.node-test/default-env-exposes-cljs-node-runtime-hooks194llx-cljs-tests-0.0.1>   ol.llx.ai.client.node-test/complete-path-uses-node-fetch195llx-cljs-tests-0.0.1>   ol.llx.ai.client.node-test/stream-failure-emits-terminal-error-event196llx-cljs-tests-0.0.1>   ol.llx.ai.client.node-test/stream-path-decodes-sse-across-chunk-boundaries197llx-cljs-tests-0.0.1>   ol.llx.ai.client.node-test/closing-stream-channel-aborts-upstream-request198llx-cljs-tests-0.0.1> 199llx-cljs-tests-0.0.1> ol.llx.ai.utils.rate-limit-test200llx-cljs-tests-0.0.1>   ol.llx.ai.utils.rate-limit-test/rate-limited-detection201llx-cljs-tests-0.0.1> 202llx-cljs-tests-0.0.1> ol.llx.ai.models-test203llx-cljs-tests-0.0.1>   ol.llx.ai.models-test/model-registry-and-lookup204llx-cljs-tests-0.0.1>   ol.llx.ai.models-test/model-utility-functions205llx-cljs-tests-0.0.1> 206llx-cljs-tests-0.0.1> ol.llx.agent.fx-test207llx-cljs-tests-0.0.1>   ol.llx.agent.fx-test/fx-execute-tool-uses-updated-schema-config-from-live-agent-test208llx-cljs-tests-0.0.1>   ol.llx.agent.fx-test/fx-execute-tool-uses-active-schema-registry-for-input-coercion-test209llx-cljs-tests-0.0.1>   ol.llx.agent.fx-test/fx-call-llm-uses-default-stream-fn-when-not-provided-test210llx-cljs-tests-0.0.1>   ol.llx.agent.fx-test/fx-call-llm-emits-llm-error-on-hook-failure-test211llx-cljs-tests-0.0.1>   ol.llx.agent.fx-test/fx-call-llm-emits-llm-error-on-non-canonical-event-type-test212llx-cljs-tests-0.0.1>   ol.llx.agent.fx-test/fx-call-llm-runs-hooks-and-maps-events-test213llx-cljs-tests-0.0.1>   ol.llx.agent.fx-test/execute-fx-validates-effect-shape-test214llx-cljs-tests-0.0.1> 215llx-cljs-tests-0.0.1> ol.llx.ai.utils.tool-validation-test216llx-cljs-tests-0.0.1>   ol.llx.ai.utils.tool-validation-test/validate-tool-call217llx-cljs-tests-0.0.1> 218llx-cljs-tests-0.0.1> ol.llx.ai.errors-test219llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/http-status-429-with-quota-body-returns-quota-exceeded220llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/retry-delay-uses-linear-backoff-for-connection-errors221llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/timeout-error-is-recoverable222llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/retry-delay-uses-exponential-backoff-for-rate-limit-without-header223llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/retry-loop-async-fails-when-server-retry-delay-exceeds-cap224llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/should-retry-respects-max-retries225llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/rate-limit-error-has-correct-type-and-recoverable226llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/content-filter-is-not-recoverable227llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/should-retry-rejects-client-errors228llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/server-error-is-recoverable229llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/retry-loop-async-emits-retry-scheduled-trove-signal230llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/http-status->error-maps-common-codes231llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/should-retry-allows-transient-errors232llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/extract-retry-after-from-message-returns-nil-when-missing233llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/http-status-429-with-quota-and-retry-after-returns-rate-limit234llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/extract-retry-after-from-message-parses-seconds235llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/retry-loop-async-retries-transient-and-succeeds236llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/retry-after-ms-takes-priority237llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/retry-delay-exceeded-is-not-recoverable238llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/extracts-retry-after-seconds-header239llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/extracts-x-ratelimit-reset-after-header240llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/http-status-unknown-5xx-returns-recoverable-provider-error241llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/returns-nil-when-no-header242llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/authentication-error-is-not-recoverable243llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/predicates-match-error-categories244llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/retry-delay-adds-jitter-for-server-errors245llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/caps-at-max-seconds246llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/retry-loop-async-does-not-retry-client-errors247llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/retry-delay-uses-server-retry-after-for-rate-limit248llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/http-status-unknown-4xx-returns-non-recoverable-provider-error249llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/provider-error-with-custom-recoverability250llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/retry-loop-async-exhausts-retries-and-throws251llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/model-not-found-is-not-recoverable252llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/retry-loop-async-succeeds-on-first-attempt253llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/extracts-retry-after-ms-header254llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/quota-exceeded-is-not-recoverable255llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/http-status-429-without-quota-returns-rate-limit256llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/invalid-request-is-not-recoverable257llx-cljs-tests-0.0.1>   ol.llx.ai.errors-test/connection-error-is-recoverable258llx-cljs-tests-0.0.1> 259llx-cljs-tests-0.0.1> ol.llx.ai.schema-test260llx-cljs-tests-0.0.1>   ol.llx.ai.schema-test/context-schema261llx-cljs-tests-0.0.1>   ol.llx.ai.schema-test/event-schemas262llx-cljs-tests-0.0.1>   ol.llx.ai.schema-test/options-schema-allows-provider-specific-option-keys263llx-cljs-tests-0.0.1>   ol.llx.ai.schema-test/config-schema264llx-cljs-tests-0.0.1>   ol.llx.ai.schema-test/model-schema265llx-cljs-tests-0.0.1>   ol.llx.ai.schema-test/schema-registry-rebuilds-when-component-schemas-change266llx-cljs-tests-0.0.1>   ol.llx.ai.schema-test/runtime-boundary-schemas267llx-cljs-tests-0.0.1>   ol.llx.ai.schema-test/adapter-and-env-schema268llx-cljs-tests-0.0.1>   ol.llx.ai.schema-test/oauth-schema-contracts269llx-cljs-tests-0.0.1>   ol.llx.ai.schema-test/options-schema270llx-cljs-tests-0.0.1>   ol.llx.ai.schema-test/message-schemas271llx-cljs-tests-0.0.1>   ol.llx.ai.schema-test/usage-schema272llx-cljs-tests-0.0.1> 273llx-cljs-tests-0.0.1> ol.llx.ai.adapters.openai-codex-responses-test274llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-codex-responses-test/build-request-shapes-codex-url-and-headers275llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-codex-responses-test/build-request-strips-codex-unsupported-payload-fields276llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-codex-responses-test/build-request-disables-reasoning-when-no-reasoning-opts277llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-codex-responses-test/build-request-prefers-explicit-api-key-over-env278llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-codex-responses-test/build-request-rejects-token-missing-account-id279llx-cljs-tests-0.0.1> 280llx-cljs-tests-0.0.1> ol.llx.ai.registry-test281llx-cljs-tests-0.0.1>   ol.llx.ai.registry-test/registry-patterns282llx-cljs-tests-0.0.1>   ol.llx.ai.registry-test/registry-operations283llx-cljs-tests-0.0.1> 284llx-cljs-tests-0.0.1> ol.llx.ai.adapters.openai-responses-test285llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/normalize-tool-call-id-preserves-same-provider-item-ids286llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/decode-event-reasoning-summary-part-done-requires-summary-part287llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/build-request-sanitizes-unpaired-surrogates-in-user-text288llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/decode-event-response-failed-includes-provider-error-details289llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/cache-retention-mapping290llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/normalize-tool-call-id-hashes-foreign-item-ids291llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/decode-event-stream-contract292llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/normalize-tool-call-id-trims-trailing-underscores-and-enforces-fc-prefix293llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/finalize-throws-on-unknown-stop-reason294llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/build-request-preserves-valid-emoji-surrogate-pairs295llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/build-request-disables-reasoning-when-no-reasoning-opts296llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/normalize-tool-call-id-normalizes-pipe-ids-and-preserves-pairing297llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/stream-error-normalization-contract298llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/decode-event-message-output-item-done-encodes-versioned-text-signature299llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/build-request-emits-provider-payload-trove-signal300llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/finalize-maps-responses-status-to-canonical-stop-reason301llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/build-request-converts-context-to-openai-responses-input302llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/normalize-tool-call-id-gates-by-provider-allowlist303llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/normalize-tool-call-id-matches-upstream-issue-1022-test-id304llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/finalize-calculates-tier-adjusted-cost-when-usage-present305llx-cljs-tests-0.0.1>   ol.llx.ai.adapters.openai-responses-test/build-request-replays-versioned-text-signature-metadata306llx-cljs-tests-0.0.1> 307llx-cljs-tests-0.0.1> ol.llx.ai.client-test308llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-returns-deferred309llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/stream-close-delegates-to-runtime-cancel-fn310llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-simple-wrapper-normalizes-options311llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-simple-wrapper-normalizes-openai-responses-reasoning-to-effort312llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/stream-returns-csp-channel313llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-transforms-context-before-build-request314llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/opts-registry-overrides-env-registry315llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-surfaces-unknown-openai-completions-stop-reason-as-error-message316llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/unified-opts->request-opts-rejects-provider-shape-in-unified-opts317llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-retries-on-transient-error318llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-allows-xhigh-for-supported-model319llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-rejects-unsupported-xhigh-with-structured-error320llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-emits-lifecycle-trove-signals321llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-rejects-malformed-adapter-finalize-result322llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-emits-error-lifecycle-trove-signals323llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/stream-rejects-unsupported-xhigh-with-structured-error324llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-retries-without-thread-sleep-hook325llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/unified-opts->request-opts-normalizes-unified-shape326llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-does-not-retry-on-client-error327llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/stream-simple-wrapper-normalizes-options328llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/stream-retries-open-stream-on-transient-error329llx-cljs-tests-0.0.1>   ol.llx.ai.client-test/complete-openai-completions-non-2xx330llx-cljs-tests-0.0.1> 331llx-cljs-tests-0.0.1> ol.llx.agent.loop-test332llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/initial-state-has-expected-shape-test333llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/agent-end-emitted-on-error-to-idle-test334llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-append-message-test335llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-continue-empty-queues-test336llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/idle-transition-invalid-signal-test337llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/route-from-idle-test338llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-follow-up-test339llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/streaming-transition-llm-done-with-follow-up-queue-starts-next-turn-test340llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/streaming-transition-llm-done-with-tools-test341llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-continue-with-follow-up-all-mode-test342llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/streaming-transition-llm-chunk-test343llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/route-from-streaming-test344llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-set-system-prompt-test345llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-steer-test346llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/streaming-transition-abort-test347llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/tool-executing-transition-tool-result-last-tool-test348llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-set-model-test349llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-continue-with-follow-up-one-at-a-time-test350llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-set-schema-config-test351llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-clear-messages-test352llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/streaming-transition-llm-done-prefers-steering-over-follow-up-test353llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/streaming-transition-llm-start-test354llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/streaming-transition-llm-done-with-steering-queue-starts-next-turn-test355llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/tool-executing-transition-tool-result-with-steering-all-mode-dequeues-all-test356llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-abort-when-idle-test357llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/tool-executing-transition-abort-test358llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/tool-executing-transition-tool-error-with-remaining-test359llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-continue-with-steering-one-at-a-time-test360llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-clear-all-queues-test361llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-set-follow-up-mode-test362llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/agent-end-not-emitted-when-staying-idle-test363llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-set-tools-test364llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/closed-transition-is-terminal-test365llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/idle-transition-continue-start-test366llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-replace-messages-test367llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-continue-steering-before-follow-up-test368llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/tool-executing-transition-tool-result-with-remaining-test369llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-clear-follow-up-queue-test370llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/step-abort-from-streaming-to-idle-test371llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/tool-executing-transition-tool-error-with-steering-interrupts-remaining-tools-test372llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/step-prompt-when-streaming-is-rejected-test373llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/agent-end-not-emitted-on-streaming-to-tool-executing-test374llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/step-full-happy-path-test375llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/step-signal-llm-done-no-tools-to-idle-test376llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-continue-when-not-idle-test377llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/step-prompt-from-idle-to-streaming-test378llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-prompt-from-idle-test379llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/tool-executing-transition-tool-update-test380llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-set-thinking-level-test381llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/agent-end-emitted-on-streaming-to-idle-test382llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-abort-when-streaming-test383llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/streaming-transition-unknown-signal-test384llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/step-signal-llm-done-with-tools-test385llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/streaming-transition-llm-done-no-tools-test386llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/streaming-transition-llm-error-test387llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-continue-with-steering-all-mode-test388llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-reset-test389llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/step-abort-from-tool-executing-to-idle-test390llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-prompt-when-not-idle-test391llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/tool-executing-transition-tool-error-last-tool-test392llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-set-steering-mode-test393llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/idle-transition-prompt-start-test394llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/command-predicate-test395llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/tool-executing-transition-tool-result-with-steering-interrupts-remaining-tools-test396llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/handle-command-clear-steering-queue-test397llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/tool-executing-transition-unknown-signal-test398llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/route-from-tool-executing-test399llx-cljs-tests-0.0.1>   ol.llx.agent.loop-test/step-tool-loop-test400llx-cljs-tests-0.0.1> 401llx-cljs-tests-0.0.1> ol.llx.ai.transform-messages-test402llx-cljs-tests-0.0.1>   ol.llx.ai.transform-messages-test/tool-call-id-normalization-avoids-collision-for-mistral403llx-cljs-tests-0.0.1>   ol.llx.ai.transform-messages-test/google-gated-normalization-rewrites-assistant-and-tool-result-ids404llx-cljs-tests-0.0.1>   ol.llx.ai.transform-messages-test/does-not-duplicate-existing-synthetic-tool-result405llx-cljs-tests-0.0.1>   ol.llx.ai.transform-messages-test/cross-model-replay-converts-thinking-and-drops-signatures406llx-cljs-tests-0.0.1>   ol.llx.ai.transform-messages-test/missing-tool-results-get-synthetic-error-message407llx-cljs-tests-0.0.1>   ol.llx.ai.transform-messages-test/user-interruption-inserts-only-missing-tool-results408llx-cljs-tests-0.0.1>   ol.llx.ai.transform-messages-test/tool-call-id-normalization-propagates-to-tool-result409llx-cljs-tests-0.0.1>   ol.llx.ai.transform-messages-test/same-model-replay-preserves-thinking-and-signatures410llx-cljs-tests-0.0.1>   ol.llx.ai.transform-messages-test/synthetic-tool-result-uses-real-time-when-clock-missing411llx-cljs-tests-0.0.1>   ol.llx.ai.transform-messages-test/skipped-assistant-turns-with-error-or-aborted-stop-reasons412llx-cljs-tests-0.0.1>   ol.llx.ai.transform-messages-test/fixture-for-aborted-reasoning-skips-aborted-turn413llx-cljs-tests-0.0.1> 414llx-cljs-tests-0.0.1> ol.llx.ai.utils.overflow-test415llx-cljs-tests-0.0.1>   ol.llx.ai.utils.overflow-test/context-overflow-detection416llx-cljs-tests-0.0.1> 417llx-cljs-tests-0.0.1> 418llx-cljs-tests-0.0.1> 314 tests, 1415 assertions, 0 failures.419llx-cljs-tests-0.0.1> buildPhase completed in 1 minutes 34 seconds420llx-cljs-tests-0.0.1> Running phase: installPhase421llx-cljs-tests-0.0.1> Running phase: fixupPhase422llx-cljs-tests-0.0.1> shrinking RPATHs of ELF executables and libraries in /nix/store/6r1alsmnvjryyg09wqr2ya9xiwqyiyjv-llx-cljs-tests-0.0.1423llx-cljs-tests-0.0.1> checking for references to /build/ in /nix/store/6r1alsmnvjryyg09wqr2ya9xiwqyiyjv-llx-cljs-tests-0.0.1...424llx-cljs-tests-0.0.1> patching script interpreter paths in /nix/store/6r1alsmnvjryyg09wqr2ya9xiwqyiyjv-llx-cljs-tests-0.0.1425426post-build step Upload to Mali Attic: ok427⚙️ Pushing 1 paths to "private" on "mali" (0 already cached, 0 in upstream)...428✅ 6r1alsmnvjryyg09wqr2ya9xiwqyiyjv-llx-cljs-tests-0.0.1 (deduplicated)