docs: audit, status-stamp, and index all module plans

Audited all 143 plan files across the 10 plans/ folders. Each plan now
carries a Status header (shipped | in-progress | queued | abandoned)
backed by codebase evidence, and every folder has a README.md index
grouping plans by status.

Shipped plans were moved into a per-folder plans/archive/ (via git mv,
history preserved) so each plans/ folder surfaces only live work:

  shipped (archived): 122   in-progress: 8   queued: 7   abandoned: 4

docs/plans/ is the frozen legacy folder; its plans were stamped and
indexed in place (48 of 52 archived) but it remains closed to new plans.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016hpUivtmq4pgzqRbY6MYrA
This commit is contained in:
Claude
2026-06-30 15:35:38 +00:00
parent dc47296a5f
commit 6579b5f656
152 changed files with 748 additions and 6 deletions
+8
View File
@@ -0,0 +1,8 @@
# quic interop plans
_Audited 2026-06-30. 1 plan: 1 shipped (archived), 0 in-progress, 0 queued, 0 abandoned._
## Archived (shipped)
| Plan | Summary |
| ---- | ------- |
| [archive/2026-05-06-interop-runner.md](archive/2026-05-06-interop-runner.md) | `:quic-interop` quic-interop-runner endpoint (InteropClient + HTTP/3 + HTTP/0.9 clients + qlog); phases 06 landed and validated across aioquic/picoquic/quic-go/quinn. |
@@ -1,5 +1,8 @@
# quic-interop-runner endpoint — Phase 0 scaffolding
> **Status:** shipped — the `:quic-interop` module exists (InteropClient, Http3GetClient, HqInteropGetClient, QlogWriter) and phases 06 landed, validated across aioquic/picoquic/quic-go/quinn; a few testcases (v2, server role) remain explicitly unsupported.
> _Audited 2026-06-30._
Date: 2026-05-06
## Why
@@ -1,5 +1,8 @@
# Congestion control for `:quic` — implementation plan
> **Status:** abandoned — parked indefinitely; no `CongestionController` exists in code, and the one real concern was instead solved by the smaller `SendBuffer.bestEffort` drop-lost-ranges fix that shipped.
> _Audited 2026-06-30._
**Status:** **parked indefinitely 2026-05-05.** After drafting this
plan we concluded the audio-rooms workload doesn't actually need CC —
see [Why](#why-and-why-this-is-honestly-low-priority) below. The one
+15
View File
@@ -0,0 +1,15 @@
# quic plans
_Audited 2026-06-30. 4 plans: 3 shipped (archived), 0 in-progress, 0 queued, 1 abandoned._
## Abandoned
| Plan | Summary |
| ---- | ------- |
| [2026-05-05-congestion-control.md](2026-05-05-congestion-control.md) | NewReno congestion control parked indefinitely — no `CongestionController` in code; the real concern was solved by the smaller `SendBuffer.bestEffort` fix instead. |
## Archived (shipped)
| Plan | Summary |
| ---- | ------- |
| [archive/2026-04-26-quic-stack-status.md](archive/2026-04-26-quic-stack-status.md) | Living status doc for the shipped pure-Kotlin QUIC v1 + HTTP/3 + WebTransport stack; records all resolved RFC-audit gaps. |
| [archive/2026-05-04-control-frame-retransmit.md](archive/2026-05-04-control-frame-retransmit.md) | RFC 9002 per-frame retransmit (RecoveryToken/SentPacket/loss-detection/PTO) plus STREAM/CRYPTO/RESET_STREAM follow-ups and SendBuffer retain-until-ACK. |
| [archive/2026-05-08-lock-split-design.md](archive/2026-05-08-lock-split-design.md) | Phase-1 split of the single `QuicConnection.lock` into `streamsLock`/`lifecycleLock`/per-level locks; phase 2 writer split deferred. |
@@ -1,5 +1,8 @@
# QUIC + WebTransport stack — current state
> **Status:** shipped — living status doc recording the completed pure-Kotlin QUIC/HTTP3/WebTransport stack (~17k LOC, 81 test files, interop-verified); all 🔴/🟡 RFC-audit items resolved.
> _Audited 2026-06-30._
Living status doc for `:quic`. First written 2026-04-26 as the post-implementation
snapshot of the [pure-kotlin QUIC + WebTransport
plan](../../docs/plans/2026-04-22-pure-kotlin-quic-webtransport-plan.md);
@@ -1,5 +1,8 @@
# Control-frame retransmit for `:quic` — implementation plan
> **Status:** shipped — RFC 9002 retransmit (RecoveryToken, SentPacket, loss detection, PTO) plus follow-up STREAM/CRYPTO/RESET_STREAM retransmit all landed; SendBuffer retain-until-ACK verified in code.
> _Audited 2026-06-30._
**Status:** **shipped 2026-05-05** on branch `claude/fix-nest-audio-display-3chAG`.
Steps 19 landed as planned; the deferred follow-ups (STREAM data, CRYPTO,
RESET_STREAM / STOP_SENDING / NEW_CONNECTION_ID) all shipped on top, plus an
@@ -1,5 +1,8 @@
# QuicConnection Lock Split — Design Note
> **Status:** shipped — phase 1 domain locks (`streamsLock`, `lifecycleLock`, per-`LevelState` locking) are present and used throughout `QuicConnection`; phase 2 writer split remains a deferred follow-up.
> _Audited 2026-06-30._
Date: 2026-05-08
## Problem