Title: determinism violation prints only a 2,000-character prefix, hiding the first difference · Issue #81 · TanStack/oracles · GitHub
Open Graph Title: determinism violation prints only a 2,000-character prefix, hiding the first difference · Issue #81 · TanStack/oracles
X Title: determinism violation prints only a 2,000-character prefix, hiding the first difference · Issue #81 · TanStack/oracles
Description: Summary When two runs of a constructed history record different observations, the determinism violation prints the observation's text only as a prefix. The first 2,000 characters are identical, and the output stops there, so the differen...
Open Graph Description: Summary When two runs of a constructed history record different observations, the determinism violation prints the observation's text only as a prefix. The first 2,000 characters are identical, and...
X Description: Summary When two runs of a constructed history record different observations, the determinism violation prints the observation's text only as a prefix. The first 2,000 characters are identical,...
Opengraph URL: https://github.com/TanStack/oracles/issues/81
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"determinism violation prints only a 2,000-character prefix, hiding the first difference","articleBody":"## Summary\n\nWhen two runs of a constructed history record different observations, the determinism violation prints the\nobservation's text only as a prefix. The first 2,000 characters are identical, and the output stops there, so the\ndifference is not shown. A diagnosis then needs a local patch to see where the two traces diverge.\n\nThe violation should print the first differing offset in each recorded text, with context on both sides, and the\nobservation's kinds and lengths, so the failure can be read without a patch.\n\n## Example\n\n`tests/gap-report-oracle.property.test.mjs`, test \"constructed history: an edit that changed the cold result after a\nhang replaced the only context\" (run with `-t`), at commit `11105c5` on `fix/gap-cli-retention` (#61):\n\n```\nError: oracle-gaps.report: two runs of \"constructed history: an edit that changed the cold result after a hang replaced\nthe only context\" recorded different traces at observation 0 (\"cli\").\nFirst run: cli {\"lead\":[...\nSecond run: cli {\"lead\":[...\n```\n\nBoth texts are the same for 1,996 characters, and the framework cuts them at 2,000. The difference is not visible.\n\nLog: `/tmp/oom/h2h-control.log` (on the reporting machine). Replay: `vitest --run --config oracle-gaps/vitest.config.mjs\ngap-report-oracle -t \"an edit that changed the cold result after a hang replaced the only context\"`.\n\n## Why it matters\n\nThe determinism check is how a timing dependency is caught. A check that cannot say what differed cannot tell whether\nthe difference is a wall-clock cut, a reordering, or a different gap, so the failure cannot be classified.\n\n## Expected\n\n- The first differing offset in each text, with about 200 characters of context on each side.\n- The observation's kind and the lengths of the two texts.\n- Nothing cut before the offset.\n\n## Limits\n\nThis is a diagnostic issue. It doesn't say whether the underlying nondeterminism is a bug (the wall-clock cut issue may\nbe the cause, tracked separately).\n","author":{"url":"https://github.com/KyleAMathews","@type":"Person","name":"KyleAMathews"},"datePublished":"2026-11-14T17:58:31Z","url":"https://github.com/TanStack/oracles/issues/81"}
| react-profiling | 0 |
| react-import-map | react,react-dom,react-dom/client,react-dom/profiling,react-is,react-reconciler,react/compiler-runtime,react/jsx-dev-runtime,react/jsx-runtime,scheduler@d5750093facf |
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:5c8cb17b-f0e0-a060-fcd2-544834c13d35 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | C798:11970D:1AD1371:24A209A:6AF9ACA1 |
| html-safe-nonce | c253457df7dd95611fba78f6aff658725423caa70b2c1d3dff2be527cb797eb6 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDNzk4OjExOTcwRDoxQUQxMzcxOjI0QTIwOUE6NkFGOUFDQTEiLCJ2aXNpdG9yX2lkIjoiNzE3MjM0NjMxNjY2NjI4NTIxNyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | e8aaef840407a05474aeac18b9d2de0613b5083989cd38ef6465a59eb84ae255 |
| hovercard-subject-tag | issue:6393906664 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/TanStack/oracles/81/issue_layout |
| twitter:image | https://opengraph.githubassets.com/bec18e3b8da6b8e54fdb841e9b5f6649c0b37279bb5c9f9f95b323f31d9880f6/TanStack/oracles/issues/81 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/bec18e3b8da6b8e54fdb841e9b5f6649c0b37279bb5c9f9f95b323f31d9880f6/TanStack/oracles/issues/81 |
| og:image:alt | Summary When two runs of a constructed history record different observations, the determinism violation prints the observation's text only as a prefix. The first 2,000 characters are identical, and... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | KyleAMathews |
| hostname | github.com |
| expected-hostname | github.com |
| None | 612d3e6ffd693e7ea8d9fcf452370995872baef31d825b1fedef704cd3d24ac7 |
| turbo-cache-control | no-preview |
| go-import | github.com/TanStack/oracles git https://github.com/TanStack/oracles.git |
| octolytics-dimension-user_id | 72518640 |
| octolytics-dimension-user_login | TanStack |
| octolytics-dimension-repository_id | 1443546044 |
| octolytics-dimension-repository_nwo | TanStack/oracles |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 1443546044 |
| octolytics-dimension-repository_network_root_nwo | TanStack/oracles |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 072e34035c13c31543fba9f025cbbbda4210dae4 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
| react-app-name | issues |
Links:
Viewport: width=device-width