Diagrams and a table of contents for the README - #26
Merged
Conversation
The file had grown to 493 lines with zero diagrams, and the density is not
evenly spread: `## Environment` alone is 154 lines, 31% of the file, because
it absorbed the whole Windows producer topology.
Four diagrams, each replacing something a reader currently has to assemble
from prose:
1. Producer/consumer orientation at the top. The store is the seam:
everything above it is vendor-specific and box-specific, everything below
it is identical everywhere.
2. The tier model, which was previously spread across three sections. Read
the arrows as "can be computed from" and the asymmetry is immediate: one
arrow into each equity tier, TWO into propadj. That single picture is the
reason futures grew a tier component in the store path and the reason the
producer writes both tiers or fails the symbol.
3. The nightly producer topology, showing the thing the prose states but
does not make obvious: where the retry lives differs per task. Futures
retry via a repeating trigger because the gate defers cheaply; equities
retry inside the wrapper because they have no cheap defer to fall
through to.
4. The finals gate as a loop, with the counterintuitive conclusion called
out: a healthy night ENDS on a non-zero exit, so Last Result is not a
health signal.
Plus a worked roll (HE April to June 2025, real stored values) showing what
each tier does to the same event:
unadj 85.43 -> 95.12 +9.70 +11.35%
backadj 76.00 -> 77.80 +1.80 +2.37%
propadj 77.24 -> 78.73 +1.49 +1.93%
The unadj row is an eleven percent overnight move nobody made. Both adjusted
rows remove it and differ in HOW: backadj subtracts the spread and keeps the
point move honest, propadj divides it out and keeps the percentage honest.
Measured over HE's full history and stated in the section: the three tiers
disagree only on the 2.7% of bars that are roll days. On the other 97.3%,
propadj's percent returns are IDENTICAL to as-traded (to 6e-8, float32
storage precision) while backadj's are off by a median of 0.894 percentage
points per day.
A table of contents up top, since 610 lines is past the point where scrolling
to find a section is reasonable.
Mermaid labels deliberately avoid `<b>`/`<i>` and CLI flag text: the former
depend on htmlLabels being enabled, and a `--` pair inside a label can
confuse the lexer. Only `<br/>` is used.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The README had grown to 493 lines with zero diagrams, and the density is not evenly spread:
## Environmentalone is 154 lines, 31% of the file, because it absorbed the whole Windows producer topology.Four diagrams
Each replaces something a reader currently has to assemble from prose.
propadj. That one picture is the reason futures grew a tier component in the store path, and the reason the producer writes both tiers or fails the symbol.A worked roll
Real stored values, HE April to June 2025:
The
unadjrow is an eleven percent overnight move nobody made. Both adjusted rows remove it and differ in how:backadjsubtracts the spread and keeps the point move honest,propadjdivides it out and keeps the percentage honest.Newly measured over HE's full history and stated in the section: the three tiers disagree only on the 2.7% of bars that are roll days. On the other 97.3%,
propadjpercent returns are identical to as-traded (to 6e-8, float32 storage precision), whilebackadjis off by a median 0.894 percentage points per day.Also
A table of contents, since 610 lines is past the point where scrolling to find a section is reasonable.
Mermaid safety
Labels deliberately avoid
<b>/<i>and CLI flag text: the former depend onhtmlLabelsbeing enabled, and a--pair inside a label can confuse the lexer. Only<br/>is used.Verified on the pushed branch that GitHub classifies all four blocks as
data-type="mermaid"and creates renderer iframes for them. I could not confirm the final visual render, because the browser pane I have available does not display GitHub reliably. Worth a quick eyeball before merge.Not done
The structural fix is still available and is probably the bigger win:
docs/LINUX_SCHEDULING.mdalready exists, so Windows scheduling sitting inline in the README is the inconsistency. Extracting it todocs/WINDOWS_SCHEDULING.mdwould cut roughly 120 lines from the README and match a convention the repo already has. Left alone here because it moves content rather than adding to it.🤖 Generated with Claude Code