Repository navigation
docs(eventing): an executive summary of the phases and architecture - #954
Conversation
The agentdocs set is twelve documents and ~10.6k lines, written for whoever picks up the implementation next. There was no entry point for the other audience: someone deciding whether to fund, demo, or depend on this. Adds eventing/docs/EXECUTIVE_SUMMARY.md — what the component is, what each phase decided and why, what is built as opposed to designed, and the KubeCon commitment with its gaps. Figures are quoted from the document that measured them and named inline rather than restated, so a reader can check them. Two statuses are called out because they are easy to misread: Phase 3's `multi` mode routes per tenant but does not yet authorize the reader, and signing is implemented but has never run end to end on a cluster. Assisted-By: Claude Code Signed-off-by: Mariusz Sabath <mrsabath@gmail.com>
A reader who lands in agentdocs/ should be able to find the one document written for the other audience. Assisted-By: Claude Code Signed-off-by: Mariusz Sabath <mrsabath@gmail.com>
aslom
left a comment
There was a problem hiding this comment.
Docs-only, and the right document to be missing: twelve agentdocs/ files at ~10,626 lines (I counted them at d71dd99a) with no entry point for a reader who will not open the code. The structure is good, the ASCII flow is the clearest one-screen summary of the component in the repo, and the decision to cite figures inline rather than restate them is what makes this maintainable.
I spot-checked every quoted figure against the document named inline. Almost all of them hold exactly:
- wake latency 1.0–5.0 s / 2.2–4.3 s, scale-to-zero 30–31 s, image pull 5.1 s cold / 454 ms–2.45 s warm, Ed25519 222 ms / 227 ms, group of 100 in 1m02s with 0 failed — all
IMPLEMENTATION_REPORT1.md§3, verbatim - Gap A's
group.initial.rebalance.delay.ms=3000, Gap B's resume-by-path fix, Gap C's 24 hretention.msunder 7-day offset retention — allDESIGN_PHASE1.md§16 (and §16 is where the gaps live, despite the heading reading "Demo flow") - all eight Q&E questions resolved, Q&E-2 and Q&E-8 characterised correctly
- the 300 s
sha256(token)cache, failures-not-cached,401/403, empty-list-denies-everyone —DESIGN_PHASE2.md§2.3–§2.4 and §5 - the §3.6 Tier A boundary quote is exact, including the instruction to say the second sentence out loud
- 12 → ~300 pod ceiling,
claude 2.1.270's 75 sPreToolUseblock,--permission-prompt-toolnot existing, plan mode never attempting the call - all five relative links out of the summary resolve, and the new index link resolves back
Approving — this is a net improvement to the doc set as it stands, and nothing below blocks it.
Two items are worth a follow-up before the page gets pointed at widely, both small and both textual:
The multi-mode framing is the one IMPLEMENTATION_REPORT3.md §5 explicitly asks you not to use. The summary says it "routes but does not yet authorize". IR3 says multi consumes no responses at all until T6, and then names the misreading: "This is a more useful warning than 'not yet isolated', which implies a working-but-unisolated mode." Given this PR calls that status out deliberately, it is worth landing it the way the source wants.
The 429/300 s observation is cited to the wrong document. It is KUBECON_NA_2026.md §2.3, not IMPLEMENTATION_REPORT1.md §7. IR1 §7 records a different accident. A reader who follows the citation — which this document invites them to do — finds nothing, and that is expensive for the one figure attached to "the best idea in the component".
Three smaller notes inline: the ~900 test figure is the one number with no named source, and KUBECON_NA_2026.md §2 specifically says not to quote it bare; §4 points at open issues in §5 that §5 does not list; and the Phase 4 measurement is on a CLI version the repo no longer pins.
None of this is a factual error about the system — the findings are about citation and framing. That is worth getting right here precisely because the document's value is that a reader can check it, but it is follow-up work, not a reason to hold the merge. Worth noting the PR body's issue check is also more current than KUBECON_NA_2026.md §2.5, which still lists #885–#889 as "all still open"; leaving that document alone was the right call, but its staleness is now visible through this page.
Seven findings from the review on #954. None was a factual error about the system; all were about citation and framing, which matter here because the document's value is that a reader can check it. The two that would have cost a reader most: - The 429/300 s observation was cited to IMPLEMENTATION_REPORT1.md §7, which records a different accident and contains no such figure. It is KUBECON_NA_2026.md §2.3. This is the one figure attached to "the best idea in the component", so it is the one a skeptical reader spot-checks. - `multi` mode was described as "routes but does not yet authorize", which is the working-but-unisolated reading IMPLEMENTATION_REPORT3.md §5 was explicitly written to head off. Until T6 no response is consumed at all, so the previous §6 condition also understated the blocker. The rest: the bare ~900 test figure becomes the collected count with its environment, per KUBECON_NA_2026.md §2's own instruction, and is narrowed back to the two issues its source attaches it to; the dangling "open issues in §5" pointer now names #885; the Phase 4 measurement notes it is not reconfirmed on the pinned CLI version; and the Phase 3 row credits T13 and T22. Also adds the summary to eventing/README.md's detail-docs table, which is where a reader who will not open the code actually lands. That table was missing Phases 2-4, IMPLEMENTATION_REPORT3.md and KUBECON_NA_2026.md independently of this PR, so those rows are added too. Assisted-By: Claude (Anthropic AI) <noreply@anthropic.com> Signed-off-by: Mariusz Sabath <mrsabath@gmail.com>
|
All seven addressed in f5b8c61. Thanks for spot-checking every figure against its named source — that is the one thing this document needs done to it, and it caught the two that mattered.
Two notes on judgement calls: The README table grew more than the one row you asked for. Adding the summary while leaving out the documents it cites would have made that table misleading in a new way, so Phases 2-4,
|
Phase / scope
agentdocsindex. No code, no manifests, no tests.agentdocs/is explicitly "long-form design and build records … written to be read by whoever picks this up next". This is for the other audience — someone deciding whether to fund, demo, or depend on the component — and mixing an exec-audience page into the implementer set would make the index say something false about what it holds.Adds
eventing/docs/EXECUTIVE_SUMMARY.md. Theagentdocsset is twelve documents and~10.6k lines, and there was no entry point for a reader who will not open the code.
What it says
Six sections: what the component is; the five phases at a glance; what each phase
decided and why; what is built as opposed to designed; the KubeCon commitment with
its gaps; and an assessment with the decisions still outstanding.
Every figure is quoted from the document that measured it, with that document named
inline, so a reader can check it rather than take it on trust. Nothing is restated as
though this page were the source.
Two statuses called out deliberately
Both are easy to misread from the phase documents alone, and both would be
embarrassing to get wrong in front of someone evaluating this:
multimode routes, but does not yet authorize. It gives each tenantits own store and topics; it does not check that a reader is the owner. The summary
says not to enable or demo it until owner-scoped reads and transcript auth land.
the RFC's own vectors, but the signed path has never run end to end on a cluster, and
🐛 eventing: response-signature enforcement is advisory — rejected events still end batches and overwrite verified answers #885 means enforcement is currently advisory.
On the KubeCon section
§5 reflects the beat-by-beat status in
KUBECON_NA_2026.md, with the open-issue statere-checked against the tracker on 2026-10-09. Worth noting for whoever picks up the
talk work: #888, #889 and #891 have closed since that document was assessed on
2026-10-05, so its "all still open" list now overstates the remaining work. #885 and
#887 are still open. I have not edited that document here — it is a living file with
its own lifecycle and a separate owner's call on how to re-cut the MVP.
Per the same document's own rule, §5 and §4 are marked as expiring; §§1-3 do not.
Checks
back into it (verified in-tree).