CultLib/scripts
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens 37967e8b9b Probe the host's timeout at 15, 200 and 7300 ms, and stress the tolerance
Soul's sixth pass (N2): with probes at 150, 200 and 5000 ms, `min(t,5000)`,
`min(t,4990)`, `t*11/10` and `t+70` survived both targets, `max(t,220)`
survived linux-x64, and `max(t,250)` and `t+80` died by 22 and 2 ms. "5000 is
above any plausible ceiling" was wrong: 5000 is a round ceiling.

- A 15 ms probe, asked ten times with the fastest checked against 30 ms. It
  is the only place a floor or an added constant shows. Scheduler delay only
  adds, so noise has to delay all ten attempts to fail the bridge.
- The long probe is 7300 ms, which is not a round number.
- A single poll gets 60 ms plus a sixteenth of the timeout.
- Each timed scenario prints its worst overshoot per probe.
- Three harness entries: a round clamp `min(t,5000)`, a floor
  `max(t,100)` and an offset `t+100`.

Stressed with two busy threads per logical CPU (16 on 8), five rounds of
every timed scenario on both targets. At normal priority, Windows put a
single poll up to 127 ms late and the fastest of ten 15 ms attempts up to
87 ms late, and a 45 ms tolerance failed the unmutated bridge in four rounds
of five. The timed scenarios therefore raise their own process to
HIGH_PRIORITY_CLASS on win32-x64, which needs no privilege. With that, the
worst single-poll overshoot was 15 ms on win32-x64 and 41 ms on linux-x64,
at normal priority there. The fastest 15 ms attempt was 0 ms late on both.

The limit in source is measured, not asserted. Each boundary mutant was
compiled in and run on both targets:
- `t+25` survived and `t+40` died;
- `max(t,40)` survived and `max(t,50)` died, on linux-x64 by 5 ms;
- `t*106/100` survived and `t*108/100` died;
- `min(t,7285)` survived and `min(t,7275)` died.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-22 01:59:37 +02:00
..
build-quic-native.ps1 Correct stale Schannel/40,448-byte claims, ship OpenSSL's license notice 2026-09-17 19:49:14 +02:00
build-quic-native.sh Give the bridge a Linux build the deploy host's own distribution can produce 2026-09-16 21:04:14 +02:00
build-unity-package.ps1 Write and enforce the semver policy, per operator ruling on 1.0.60 2026-09-17 22:03:22 +02:00
check-changelog-semver.mjs Write and enforce the semver policy, per operator ruling on 1.0.60 2026-09-17 22:03:22 +02:00
check-changelog-semver.test.mjs Write and enforce the semver policy, per operator ruling on 1.0.60 2026-09-17 22:03:22 +02:00
measure-reactive-document-performance.mjs Measure reactive performance across runtimes 2026-08-18 03:08:01 +02:00
measure-reactive-document-performance.ps1 Split the Python runtime into cultcache-py, cultnet-py, cultmesh-py 2026-09-10 13:10:47 +02:00
mutate-cultmesh.mjs Probe the host's timeout at 15, 200 and 7300 ms, and stress the tolerance 2026-09-22 01:59:37 +02:00
pack-nuget.ps1 Delete the CultCache MessagePack source generator 2026-09-13 23:38:08 +02:00
quic-native-linux-dev.Dockerfile Offer the container line to both shells, and name the short-path requirement 2026-09-17 02:44:47 +02:00
run-typescript-workspaces.mjs Run the TypeScript workspaces by the name cultcache-ts actually has 2026-09-16 20:19:49 +02:00
sign-cultmesh-authority-vectors.mjs Pin the TypeScript-signed direction of the authority parity check 2026-09-16 16:27:06 +02:00
test-typescript-package-closure.mjs Let the verse catalog schema say what the reference emits 2026-09-10 13:55:46 +02:00
verify-caching-unity-release.ps1 Write and enforce the semver policy, per operator ruling on 1.0.60 2026-09-17 22:03:22 +02:00
verify-eve-browser-network.mjs Let the browser sample read the provider's advertisement 2026-09-10 13:55:46 +02:00
verify-eve-getting-started.ps1 Ship authenticated remote transports in Unity package 2026-08-18 20:23:27 +02:00
verify-eve-two-runtime-sample.ps1 Retain native clients across provider routes 2026-08-18 03:34:59 +02:00
verify-reactive-document-scaling.ps1 Split the Python runtime into cultcache-py, cultnet-py, cultmesh-py 2026-09-10 13:10:47 +02:00
write-cultmesh-realtime-frame-vectors.mjs Encode a CultMesh realtime frame in TypeScript 2026-09-16 19:20:41 +02:00