Files
hq/00-META/principles.md
jschoubben e95b7f8ea0 Answer develop's questions against a short list of principles, so a detail needs no design batch
The operator, 2026-11-11 about 21:30 CET: a living list of principles; the lead answers each question against it
and does not register every detail. Adds 00-META/principles.md, the lead-answers file G-20 with A-1, and lets the
developer take a lead answer from it.

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
2026-11-11 21:30:52 +01:00

1.9 KiB

status, updated
status updated
canonical 2026-11-11

The principles

A short, living list. Every question met while building is tested against these principles and answered by the lead in one line; only a question no principle settles goes to the operator or to a decision record. A detail that a principle settles is not written down as a design line or a record. The list changes when the operator says so: add, sharpen or drop a principle in a pull request to this file.

  1. NATS-native. Every interaction between modules is an event, or a call over the bus where an answer is needed. A module keeps its data in the bus's own storage, and reads another module's data only by asking it, through its verbs or its tools.
  2. The mesh owns the truth. State lives in the mesh and is written onto the nodes from there. Nothing is changed by hand on a node.
  3. Failure is loud. Nothing reports success when it did nothing, and nothing fails silently. When in doubt, fail.
  4. A module is steered by its tools. Everything a module holds can be read, everything it does can be started by hand, and everything that goes wrong can be recovered, all through its tools.
  5. Everything ships the same way. The mesh's own parts go through the same build, check and delivery as any app.
  6. Nothing is exposed publicly. No data leaves the mesh unasked: no secret in a record, a log or a public repository, no service reachable from outside unless it is meant to be. Inside the mesh, every agent and module is trusted; who may do what is not a question to ask.
  7. The simplest thing that works. Prefer what already exists. No new mechanism unless it is needed, and fewer parts over more.
  8. One word per thing, from the glossary.

How it is checked: the one code review of a milestone checks the code against these principles and the design's shape; an answer to a develop question names the principle that settles it.