# BEDS — Back End Data System ## Developer Wiki Welcome to the BEDS developer wiki. This is a living document. It grows with the codebase and should be updated whenever a design decision is made, a pattern is established, or a component is implemented. If you are reading this as a new contributor, start here and read in order. The origin story is not fluff — it explains *why* BEDS is built the way it is, and understanding the *why* is the difference between extending the framework correctly and breaking it subtly. --- ## Table of Contents ### Foundation - [Origin Story](01-origin-story.md) — Where BEDS came from and why it was built - [Architecture Overview](02-architecture.md) — The full system design and its principles - [The Four Nodes](03-nodes.md) — appServer, admin, segundo, tercero — roles and responsibilities ### Operations - [IPL — Initial Program Load](04-ipl.md) — The bootstrap sequence, step by step, and why order matters - [Configuration System](05-configuration.md) — Layered TOML, environment files, topology options ### Messaging - [Queue Topology](06-queue-topology.md) — AMQP exchanges, queues, routing keys, and the broker model - [Broker Calls](07-broker-calls.md) — Every broker event type documented ### Data - [Template System](08-template-system.md) — REC and REL templates, the TLA convention, schema-as-contract - [Event Lineage](09-event-lineage.md) — Compound event IDs, parent/child relationships, depth tracking ### Reference - [Glossary](glossary.md) — Terms, abbreviations, and conventions used throughout BEDS --- ## Contributing to This Wiki - Write for the programmer who inherits this code after a two-week handoff with no knowledge transfer - Document decisions, not just mechanics — *why* matters more than *what* - Dated history entries belong in source code comments, not here — the wiki covers concepts, not changelogs - When you change the system, update the wiki in the same commit