Installation Concept
Learn how an AutoCore installation defines identity, initialization, configuration scope, and operational isolation.
An installation is the product and data boundary represented by one AutoCore database and its configured application services. It is the unit in which edition identity, initialization state, primary-market settings, legal configuration, payment configuration, and operational controls are interpreted.
Why the concept exists
The installation model prevents setup state from being inferred from scattered environment variables. The database persists whether setup is uninitialized, in progress, or initialized, and the setup flow can resume a stored market draft without treating an interrupted request as a successful installation.
Installation identity
The current source models one singleton installation row per database. It has an installation status and links to a normalized primary market. The edition is resolved from the explicit AUTOCORE_EDITION environment value and setup cannot change that edition.
| Installation state | Meaning |
|---|---|
uninitialized | Clean-install state; setup has not been completed. |
in_progress | A resumable setup draft exists. |
initialized | Ordinary setup completion is terminal; repeated completion is rejected. |
Text alternative: installation begins uninitialized, passes explicit preflight, validates configuration, initializes schema and ownership, and records verification. A blocked gate stops before mutation.
First administrator
Setup completes by creating or confirming the first administrator and writing an audit event. Passwords and password hashes are not returned or logged. When an existing administrator confirms setup, the authenticated identity must match the user being confirmed.
Installation-scoped settings
The installation owns or anchors:
- Edition identity and initialization state.
- One primary market for the Commercial 1.0 boundary.
- Locale, currency, timezone, and distance-unit interpretation.
- Legal-entity and policy configuration.
- Payment-provider configuration and readiness state.
- Operational dependencies and secret references supplied by the operator.
Ownership and change risk
Installation state is authoritative in PostgreSQL. Environment validation supplies the explicit edition and deployment invariants, while the persisted installation row records initialization and its relationship to the primary market. A setting is not installation-scoped merely because it is easy to place in an environment file: the source must define who owns it and how it is validated.
| Boundary | Examples | Change consequence |
|---|---|---|
| Installation | edition identity, primary market, legal profile, payment configuration | May affect every request and every record; review as a data migration concern. |
| Edition | brand, bundled locale, market defaults, namespaces, disabled providers | Must remain explicit and isolated from other editions. |
| Market | country, city, locale, currency, timezone, distance unit, capabilities | Changes presentation, validation, search, legal, and payment assumptions. |
| External service | database, Redis, Meilisearch, storage, email, payment credentials | Requires operator configuration and readiness verification. |
The detailed installation procedure, preflight commands, and recovery steps are deliberately reserved for the next documentation phase.
Installation versus deployment host
An installation is a logical product/data boundary. A deployment host is the machine or runtime environment that runs the services and dependencies. One host can run more than one isolated installation only when routing, data stores, volumes, secrets, ports, and service names are deliberately isolated; the installation concept does not by itself create that host-level isolation.
Market changes after production data exists
Changing the primary market after listings, users, policies, media, or financial data exist is not a cosmetic edit. Treat it as a migration and release decision; verify data, legal, currency, unit, search, and operational consequences before applying it.
What this concept does not mean
Installation-scoped does not mean “safe to change without a backup.” It also does not mean that external services, credentials, legal policy text, or provider agreements are bundled with the application.