Skip to content

Instantly share code, notes, and snippets.

⏺ Numbers in hand:
- iai/callgrind bench: can't run on this M1 β€” no valgrind on Apple
Silicon (gungraun-runner/valgrind absent). So the instruction
counts in the doc are inherently the AMD/Linux machine's; this M1
can only give wall time.
- M1 wall (v5_rotate_wall, criterion): 10.55 ms [10.52–10.59], tight.
Was 11.63 β†’ βˆ’8.8% on M1.
- AMD (doc, callgrind): βˆ’30.3% instructions, βˆ’47% RAM hits, βˆ’30% est.
cycles.
@sayrer
sayrer / mlkem4.md
Created June 24, 2026 23:48
MLKEM issues

Grammar and Spell Check: draft-ietf-tls-mlkem-08

Spelling / Grammar

  1. Doubled "and and" β€” In both the meta-description and the Abstract: "as NamedGroups and and registers IANA values" should read "and registers". This appears twice (meta-description and section-abstract-1).

  2. Reference inconsistency (Β§4.2.8) β€” The Introduction cites key_share Section 4.2.8 of RFC8446bis, while Section 4 and Section 4.2 cite Section 4.2.7 / 4.2.8 of plain RFC8446. Inconsistent reference target.

Reference / Citation Bugs

@sayrer
sayrer / mlkem.md
Created June 24, 2026 23:46
run a check
@sayrer
sayrer / benchmarks.md
Last active May 31, 2026 01:17
benchmarks.md

⏺ Results in. Cross-package, so benchstat can't auto-pair them, but the numbers speak clearly:

Lazy DFA vs NFA-only: same workload, different branches

BenchmarkLazyDFAHotPath β€” 50 shellstyle patterns, ~55 events, cache warmed:

  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”
  β”‚        Branch         β”‚        sec/op         β”‚ B/op β”‚ allocs β”‚
  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€
@sayrer
sayrer / gist:c8db94534e00a8519727fc9ad528a359
Created April 29, 2026 17:53
tell Claude to set up Jenkins on Mac and Linux
❯ let's make a plan to install Jenkins and set up one Mac and one Linux VM as agents
Listed 1 directory (ctrl+o to expand)
⏺ Here's a proposed plan. A few choices need your input before we commit to specifics β€” I've marked them with ?.
Decisions to lock first
how hard is it to set up Jenkins on a mac, and run Linux and Windows VMs alongside them as agents10:02 AMClaude responded: The Jenkins controller part is genuinely easy β€” brew install jenkins-lts, get it running as a launchd service, plug your auth in, done in an afternoon.Assessed Jenkins setup difficulty across Mac hardware configurations and VM agentsAssessed Jenkins setup difficulty across Mac hardware configurations and VM agentsThe Jenkins controller part is genuinely easy β€” brew install jenkins-lts, get it running as a launchd service, plug your auth in, done in an afternoon. The friction is all in the agents, and how bad it gets depends mostly on the Windows side.
Linux agent: trivial. UTM (free, works fine on Apple Silicon) or Parallels, headless Ubuntu Server, OpenJDK 17, then add it as an agent over SSH from the Jenkins UI. SSH is the right transport β€” Jenkins manages the agent process for you, you don't have to maintain a separate launch agent on the Linux side. Realistically a few hours including
@sayrer
sayrer / api_change.diff
Created April 27, 2026 17:23
Little r-tree fix
131 - for hit in self.rtree.locate_in_envelope_intersecting(&envelope) {
132 - if self.trees[hit.data].contains(point) {
133 - f(hit.data);
134 - }
135 - }
131 + // Internal-iteration variant of `locate_in_envelope_intersecting`
132 + // walks the R-tree on the call stack instead of pushing children onto
133 +
@sayrer
sayrer / txt
Last active April 22, 2026 21:32
Siracusa's assertion failure
Reading the stack bottom-up: AppKit is in terminate: β†’ _deallocHardCore:, which
walks the global NSHashTable of windows and releases each one. During one of
those releases, -[NSWindow dealloc] hit an NSAssert (that's what frames 0–3
are β€” __assert_rtn β†’ abort β†’ pthread_kill). So this isn't a random segfault or
an over-release into freed memory; it's AppKit's own invariant check firing
inside the window teardown path on app quit. The single most useful missing
piece is the assertion text itself. __assert_rtn writes the failing expression
and file:line to stderr right before abort(), and the full .crash / .ips file
usually has it in the Application Specific Information block near the top. Grab
that β€” it turns this from "something's wrong during quit" into a one-line
@sayrer
sayrer / clay-review.md
Created April 8, 2026 02:18
Clay issues

Bug Report: Clay Compiler (jckarter/clay)

Bugs found via static analysis of the Clay compiler (~38K lines of C++). All bugs are in publicly available code at https://github.com/jckarter/clay.


Bug 1 β€” errno not cleared before strtol/strtod family calls

File: literals.cpp, parseIntLiteral() and parseFloatLiteral()
Severity: Medium

@sayrer
sayrer / icu4x_calendar.md
Created March 26, 2026 21:43
icu4x calendars

OK, I've done a much more thorough examination. Let me report the bugs I found in the code as it stands in this commit, across the files it touches. Some are pre-existing but live in the same functions.


Bug 1: valid_month ignored when fields.month is provided (ECMA + Constrain path)

File: calendar_arithmetic.rs:438-481

When from_fields is called in ECMA mode with Overflow::Constrain and no explicit year, and the