Внесены правки в документацию
This commit is contained in:
@@ -836,6 +836,14 @@ file_policy:
|
||||
|
||||
JSON Schema задаёт типы/ranges и cross-field constraints: `heartbeat_sec < lease_sec < execution_deadline_sec`, scan/pipeline timeout не больше execution deadline, TTL/retention положительны, `max_signature_age_hours` не превышает `720` часов (30 дней). `enabled_mime_types` — непустое уникальное подмножество detector manifest; `max_size_bytes` и последующие format overrides не превышают hard limits manifest. Referenced rules/detector artifacts обязаны быть доступны и пройти hash/signature verification до activation.
|
||||
|
||||
Seed/Schema/reference manifests являются immutable artifacts image. Любое их
|
||||
изменение выпускает новый `MESSAGE_SAFETY_IMAGE` digest и новую монотонную
|
||||
config version; config-admin сверяет artifact hashes с запущенным digest до
|
||||
activation. Image-only rollback после активации несовместимой schema запрещён:
|
||||
сначала создаётся новая совместимая config version (retired row повторно не
|
||||
активируется), затем выбирается совместимый image. Rollback window хранит
|
||||
только совместимые пары image digest + config schema/version.
|
||||
|
||||
### 15.2. Env и secrets Message Safety на ВМ2
|
||||
|
||||
```text
|
||||
@@ -855,7 +863,7 @@ Runtime secrets `MESSAGE_SAFETY_DATABASE_URL`, `MESSAGE_SAFETY_REDIS_URL`, `MESS
|
||||
|
||||
### 15.3. Emergency mode
|
||||
|
||||
`MESSAGE_SAFETY_MOCK_ENABLED`, `MESSAGE_SAFETY_MOCK_TEXT_FREE`, `MESSAGE_SAFETY_MOCK_FILE_FREE` читаются только из root-owned `/etc/han-chat/message-safety-mode.env`, не из repository `.env` и не из БД. Startup отклоняет placeholders, insecure production defaults, отсутствующий/невалидный active config и комбинацию `MOCK=false` при любом `*_FREE=true`.
|
||||
`MESSAGE_SAFETY_MOCK_ENABLED`, `MESSAGE_SAFETY_MOCK_TEXT_FREE`, `MESSAGE_SAFETY_MOCK_FILE_FREE` читаются только из read-only `/etc/han-chat/message-safety-mode.env` с host contract `root:han-message-safety 0640`, dedicated GID `10001`, совпадающим с primary GID контейнера; не из repository `.env` и не из БД. Bootstrap создаёт/проверяет группу до первого `up`. Отсутствие группы, mismatch GID, отрицательный read-test от container UID/GID либо доступ постороннего UID блокируют rollout. Startup отклоняет placeholders, insecure production defaults, отсутствующий/невалидный active config и комбинацию `MOCK=false` при любом `*_FREE=true`.
|
||||
|
||||
### 15.4. Performance acceptance MVP
|
||||
|
||||
|
||||
Reference in New Issue
Block a user