Publish the design documents as docs/design/ - #103
Merged
Conversation
Eight documents covering runtime architecture, the four API contract surfaces, the data model, the security model, contract boundaries, observability, nonfunctional requirements, and operations, plus an index. These were written against the real code and had been kept local. The reasoning is what a contributor needs and the code alone does not carry: which surfaces cannot be changed in lockstep with their consumers, what survives a crash, what each security control actually buys, and where the project is currently weak. They keep their candor. Every gap they name now has a tracking issue (#92, #95-#102), so each admission arrives with a fix path rather than standing as an unactionable weakness. README.md and CONTRIBUTING.md link the set; CONTRIBUTING.md asks that changes to routing, adapters, or either HTTP surface update the matching document in the same PR.
Jason-Vaughan
enabled auto-merge (squash)
August 16, 2026 21:15
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.
What
Publishes eight design documents as
docs/design/, linked fromREADME.mdandCONTRIBUTING.md:architecture.mdapi-contract.mddata-model.mdsecurity-model.mdboundaries.mdobservability.mdnonfunctional-requirements.mdoperations.mdCONTRIBUTING.mdgains a parity line: changes to routing, adapters, or either HTTP surface shouldupdate the matching document in the same PR.
Why
This reasoning existed but was kept local, so the repo showed what the router does and never why
it is shaped that way. That is exactly the material someone needs to evaluate whether to depend on
TangleBrain, or to find somewhere to start contributing.
The documents keep their candor. They name the project's weaknesses plainly — that the bind
address is the entire access control story, that
budget_usd_monthis a declaration rather than anenforcement, that no test guards the loopback bind. Every gap they name now has a tracking issue, so
each admission arrives with a fix path instead of standing as an unactionable weakness:
key_reffile permissions unchecked (good first issue)usage.jsonlgrowth and cache-tier placement--rosterhelp text misstates the default (good first issue)Filed alongside them, from designing a multi-backend coordination setup:
--modelsilently strips an orchestrator's delegate tool (good first issue)Test plan
make test— 495 tests, green (17 skipped, the opt-in live suite).docs/design/resolves to an existing file.credential-shaped strings — clean.