# Software Architecture **Domain:** Software Engineering / Systems Design **Doc Type:** Canonical Concept Node **Maturity:** Foundational **Related:** [[wiki/Structure|Structure]], [[wiki/Capability-Oriented Architecture|Capability-Oriented Architecture]], [[wiki/Host Adapter|Host Adapter]] --- ## Definition **Software architecture is the arrangement of responsibilities, boundaries, representations, and interfaces that determines how a system can change without losing its identity.** It is expressed in what remains canonical, what may be generated, where effects occur, and which contracts implementations must preserve. ## Project Context The recovered systems favor small loaders, explicit directories, reusable capabilities, file-native records, generated distributions, and replaceable runtime adapters. The recurring objective is maximum utilization with minimum dependency: preserve the durable thought while allowing hosts, languages, interfaces, and delivery surfaces to change. ## Key Insight **Architecture is not the stack. It is the pattern of invariants that survives when the stack changes.** ## See Also [[projects/X and XApps - Drop the Folder and It Runs|X and XApps]], [[wiki/Portable Contract|Portable Contract]], [[wiki/Filesystem as Source of Truth|Filesystem as Source of Truth]], [[wiki/Technical Terms|Technical Terms]]