docs(adr): nine retrospective architecture decision records (1/5) - #15
Open
sqr00t wants to merge 1 commit into
Open
docs(adr): nine retrospective architecture decision records (1/5)#15sqr00t wants to merge 1 commit into
sqr00t wants to merge 1 commit into
Conversation
sqr00t
force-pushed
the
docs/adr-records
branch
from
August 18, 2026 17:16
33c16eb to
810e215
Compare
This was referenced Aug 18, 2026
sqr00t
force-pushed
the
docs/adr-records
branch
from
August 18, 2026 17:37
810e215 to
c10502b
Compare
Reconstructed from git history, issues and pull requests. Index grouped by theme, with themes ordered chronologically; numbering ascends with decision date so the two orderings coincide.
sqr00t
force-pushed
the
docs/adr-records
branch
from
August 18, 2026 18:09
c10502b to
99a18ad
Compare
sqr00t
marked this pull request as ready for review
August 18, 2026 18:12
This was referenced Aug 19, 2026
Open
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.
Closes #11.
Adds nine ADRs under
docs/adr/, plus an index — ten files in total. ADRs 0001–0008 areretrospective, reconstructed from git history, issues and pull requests; 0009 records an open
question rather than a decision taken. No code changes — documentation only.
What is here
bw's C++ rather than reimplement or shell out to Rshim.hppand keep the model sources unchangedPHYS_RTOL = 1e-4, Brownian pinned by seed onlyunset UV_INDEXlocallyThe index in
docs/adr/README.mdgroups these by theme, and the themes are ordered by date, soreading top to bottom also reads chronologically. Numbering ascends with decision date, so the two
orderings coincide without renaming anything — the README states this as the rule for new ADRs.
What to check when reviewing
The Consequences sections are the load-bearing part, and they are meant to be uncomfortable. Please
push back if any of these overstates or understates the cost:
those files, so a repo-wide
clang-format --style=Googlecan never pass over themstd::normal_distributionis not portable across standard librariesEvery claim cites a commit sha or a
file:line. If a citation does not resolve, that is a bug in theADR — please flag it.
ADR 0007 is marked
accepted (unmerged)because the fix it documents is on #10, not yet onmain.The index's status legend explains that case.
One known follow-up: ADR 0007 describes the
cppformat job as it stood in July 2026 —non-blocking, with
clang-formatrun repo-wide. #21 changes that job and #22 records the new policyas ADR 0010, which corrects the description here. Reviewing this PR on its own terms is still right:
0007 documents the decision as it was taken.
Stack
This is the third of six PRs in the chain, and the first of the four docs PRs. It is based on
cpp/format-blocking(#21), not onmain. Merge bottom-up.The docs work is split into four PRs because the parts have genuinely different reviewers and
different failure modes: the ADRs need someone who was there, the runbooks need someone who will
follow them, the roadmap needs whoever sets priorities, and the entry documents need a reader who
does not know the repo.