Browse
Traits
Behavioural qualities that recur across specifications. A trait describes how something behaves, not where it lives.
- Explicit23 Inputs, component lists, and paths are declared rather than discovered from ambient state.
- Thin13 A minimal layer of wiring that composes behaviour defined elsewhere.
- Reproducible11 The same committed inputs produce the same output wherever they run.
- Colocated10 Lives beside the thing it describes or configures, not in a distant central location.
- Ordered10 Order is explicit and visible, usually through numeric prefixes or a declared sequence.
- Portable9 Behaves the same locally, in the development container, and on a CI runner.
- Composable8 Built from smaller parts that register themselves, rather than from a central list that must be edited.
- Declarative7 Describes what should exist, and leaves how to bring it about to the tool that reads it.
- Idempotent7 Safe to run again. Repeating it converges on the same state rather than duplicating work.
- Disposable5 Generated, recreatable, and safe to delete. Never the source of truth.
- Layered5 Separates a reusable layer from a repository-specific layer, with a clear rule for what goes where.
- Managed5 Distributed as a standard file to every repository and overwritten on update. Change it at the source.
- Self-documenting4 Its documentation is derived from the thing itself, so the two cannot drift.
- Fast3 Runs often enough that it must stay quick and non-blocking.
- Offline-safe3 Keeps networked preparation separate, so validation can run without network access.