# Canonical Core Contract

## Module
Identity: `core_modules.code`
Active state: `core_modules.active`
Version: `core_modules.current_version`
Version metadata: `release_channel`, `package_hash`, `min_php_version`, `min_core_version`, `status`, `release_notes`.

## Permission
Module association: `core_permissions.module_code`.

## RBAC
`core_users -> core_user_roles -> core_roles -> core_role_permissions -> core_permissions`.

No `core_user_role_assignments` or `core_role_assignment_scopes` table is introduced.

## Authentication
Uses the existing auth tables. Session tokens are stored as SHA-256 hashes.

## Standalone
`standalone_capable`, `core_standalone_packages`, and `core_standalone_package_modules` remain the foundation.

## Licensing
Existing plan/product/license/module/activation/event tables remain canonical.

## Safety
M3.2.4 does not modify SIP or Asset business tables and contains no database migration.
