Skip to content

Walk & Test: add 0.25s and 0.5s round intervals - #9

Merged
TechLuddite merged 1 commit into
mainfrom
claude/walk-test-section-22hq2i
Aug 23, 2026
Merged

Walk & Test: add 0.25s and 0.5s round intervals#9
TechLuddite merged 1 commit into
mainfrom
claude/walk-test-section-22hq2i

Conversation

@TechLuddite

Copy link
Copy Markdown
Owner

Adds 0.25s and 0.5s to the round-interval dropdown. Both were measured before being offered rather than assumed to work.

The browser sustains it

At a 250 ms gap the loop settles at 0.306 s per round, and the number does not move as the walk deepens:

Window Rounds Per round Request rate
0-15s 49 0.306 s 32.7 req/s
15-30s 49 0.306 s 32.7 req/s
30-60s 97 0.309 s 32.3 req/s
60-90s 97 0.309 s 32.3 req/s
90-120s 97 0.309 s 32.3 req/s

389 rounds, 3,890 samples. Sort stayed responsive at 159 ms and opening a new spot at 280 ms with that many samples behind them. The saved record came to 95 KB after truncation.

The concern going in was that per-round aggregation rescans every sample, so cost would grow with walk length. At these depths it does not, and the measurement says so rather than an optimisation nobody needed.

It holds because the loop awaits a whole round before starting the interval timer, so the setting is a gap between rounds rather than a fixed cadence. Requests cannot pile up, and a slow link stretches the gap instead.

What it is not is polite

Sustained, a quarter-second gap is up to about 2,000 requests to each of ten third parties over ten minutes. Selecting either sub-second option now raises a notice saying so, which also names the failure mode that matters for reading the result: a destination whose bot protection starts refusing appears as a dead card when it is really a rate limit.

SUB_SECOND_INTERVAL_MS carries the threshold and the reasoning, and a test pins exactly which choices it flags — safe for the browser and polite to other people's servers are separate questions, and the notice is about the second one.

Also

The disclosure list and the README privacy table carry the revised request volume; the previous figures predated anything faster than one second.

Verification

  • npm run check green: 314 tests, 1 new.
  • Offline regression re-run: still zero occurrences of "N ms" anywhere on the page.
  • Notice confirmed rendering at 0.25s in Chromium; estimate rounds to the nearest hundred and errs high, since understating a cost you are warning about is the wrong direction.

Generated by Claude Code

Both were measured before being offered rather than assumed to work.

The browser sustains it. At a 250 ms gap the loop settles at 0.306 s per
round, and the number does not move as the walk deepens: 0.306 s over
the first fifteen seconds, 0.309 s two minutes and 3,890 samples later.
Sort stayed responsive at 159 ms and opening a new spot at 280 ms with
that many samples behind them. The concern going in was that the
per-round aggregation rescans every sample, so cost would grow with walk
length; at these depths it does not, and the measurement says so rather
than an optimisation nobody needed.

It holds because the loop awaits a whole round before starting the
interval timer, so the setting is a gap between rounds rather than a
fixed cadence. Requests cannot pile up, and a slow link stretches the
gap instead.

What it is not is polite. Sustained, a quarter-second gap is up to about
2,000 requests to each of ten third parties over ten minutes, so
selecting either sub-second option raises a notice saying so. It also
names the failure mode that matters for reading the result: a
destination whose bot protection starts refusing appears as a dead card
when it is really a rate limit. SUB_SECOND_INTERVAL_MS carries the
threshold and the reasoning, and a test pins which choices it flags.

The disclosure list and the README privacy table carry the revised
request volume, since the previous figures predated anything faster than
one second.
@TechLuddite
TechLuddite merged commit 37918f1 into main Aug 23, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant