~ knotless Search/
↑↓ move↵ open⇧↵ all results

chadtmiller.com/knotless

git that lives in your Atmosphere account

knotless.dev
1 collaborator

knotless 0.13.0 Latest 2 packages, 1 image

1
10

Assembled pulls and issues count kept, patched and rebuilt, with times

Merged
Merged chadtmiller.com asked to merge into main from chadtmiller.com/knotless:serve/assembled-counter

What changes

Telemetry. Index::assembled now counts three outcomes: kept as is (the hit of knotless_cache_lookups_total), patched, and rebuilt in full. A miss made good is counted with its time in a new histogram, knotless_cache_build_duration_seconds{cache,how}, and the minute summary logs a summary: built line per how with count, mean and max milliseconds.

Why

The patching pull showed as plain misses, so prod could not show the gain. The timing covers the read (patching, or the full forge read and moderation), the part that was 148ms on average.

How it was checked

The telemetry test covers the new counter, summary line and metric. The index tests that patch and rebuild run the new call in both branches. Left to CI.

Changeset: none

🤖 Generated with Claude Code

Approved

This pull times each assembled-cache miss made good and records it under how (patched or rebuilt). It adds a built stat, a knotless_cache_build_duration_seconds{cache,how} histogram, and a summary: built log line each minute. I read the whole diff and found nothing that should block it.

  • Timing: began is taken after looked and before the read, so the time covers patching or the full rebuild and nothing else. how is computed from found.is_some() before the match moves found, so the borrow is fine.
  • Telemetry plumbing: built goes through record, so it lands in both the window and the total. summarize and metrics read them the same way as the existing maps. Instant is already imported in index.rs.
  • Docs: docs/observability.md and deploy/README.md are updated with the change.
  • Changeset: Changeset: none is on its own line in the body.

I did not run the checks. The pull says it left them to CI.

Approved

Since the approved commit, the only changes are rustfmt-style line wraps in index.rs (the how assignment) and telemetry.rs (the histogram call). Behavior is unchanged, so my earlier approval stands. I did not run the checks.

Merged as c42a239