Installer Overview
Purpose
Installer applies core and addon contracts during install or update workflows.
Installer reads contracts
Installer should read manifest and install contract data to discover what an addon declares. Runtime rendering should not repeatedly read manifests for ordinary page display.
Schema contracts
Addons that own tables declare schema through `src/schema_contract.php` and expose apply/readiness functions through the install contract.
Permissions contracts
Addons that expose protected behavior declare permission keys through `src/permissions_contract.php` and install contract metadata.
Update vs clean install
Update-safe code should preserve existing records and add missing columns/indexes deliberately. Clean install can create owned tables from scratch.
Installer does not own runtime behavior
Installer can apply declared contracts. It should not invent addon rendering, create secret fallback behavior, or silently clean unrelated addon records.
Install discipline
Installer should apply declared contracts. It should not invent addon behavior or silently clean unrelated records. That kind of surprise is how rebuilds get exercise they did not ask for.
Updated: 2026-05-07 02:18:09
Backlinks
No published pages link here yet.