writeonce/docs/stories/runtime-v2
shoney.arickathil 7f7a601e2f docs(rv2-aead): brainstorm runtime-v2 8 (AEAD ciphers) to ready
- a second consumer (rv2 9 TLS phase A) reshaped the forks since the draft
- locked: BOTH AES-GCM (128/256, TLS-mandatory per RFC 8446) AND
  ChaCha20-Poly1305 (RFC 8439, easy constant-time, cookie default)
- AES constant-time via AES-NI/ARMv8 hardware + bitsliced software fallback
  (compiler intrinsics, zero external dep)
- caller-supplied nonce (TLS builds its own per-record nonce); random-nonce
  is a cookie WRAPPER (phase D) not the primitive. shape:
  seal(key,nonce,aad,pt)->Bytes / open->?Bytes; AES variant by key length
- raw key + length check; hand-rolled (matches rv2 9); ids from 111
- phases A ChaCha -> B hardware AES-GCM -> C software AES -> D cookie wrapper
  -> E gate (RFC 8439 + NIST GCM vectors, ASan, reference cross-check)
- risk/test: constant-time mandatory, KAT-gated, reused-nonce documented
- retires the stale "TLS proxy-terminated" OOS line (rv2 9 overturned it)

(cherry picked from commit c8a5a31c39a5d14952056cd0af1b8c1e42d4ed2d)
2026-09-15 01:15:31 +02:00
..
00-story.md docs: jarvis track, runtime-v2 7/8/9, lang-41 fix design, fiber scope-gap 2026-09-15 01:15:31 +02:00
01-streaming-subprocess.md docs(rt2): close out runtime-v2 1-5 2026-09-15 01:15:30 +02:00
02-pty.md docs(rt2): close out runtime-v2 1-5 2026-09-15 01:15:30 +02:00
03-signals-as-events.md docs(rt2): close out runtime-v2 1-5 2026-09-15 01:15:30 +02:00
04-termios.md docs(rt2): close out runtime-v2 1-5 2026-09-15 01:15:30 +02:00
05-fd-passing.md docs(rt2): close out runtime-v2 1-5 2026-09-15 01:15:30 +02:00
06-term-size-width.md feat(rt2): term.size + term.width — the wmux ladder's last runtime asks 2026-09-15 01:15:30 +02:00
07-observability.md docs: jarvis track, runtime-v2 7/8/9, lang-41 fix design, fiber scope-gap 2026-09-15 01:15:31 +02:00
08-symmetric-cipher.md docs(rv2-aead): brainstorm runtime-v2 8 (AEAD ciphers) to ready 2026-09-15 01:15:31 +02:00
09-in-process-tls.md docs(rv2-tls): brainstorm runtime-v2 9 (in-process TLS) to ready — hand-rolled 2026-09-15 01:15:31 +02:00