proposal, design (D-1…D-13), спеки primary-files, osv-result-mapping, documents-api (новые), recognition-job-exchange, data-model (MODIFIED), audit-trail (ADDED), tasks (13 задач). Issue: RSHB/arm-core#14 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
1.6 KiB
1.6 KiB
Spec Delta: audit-trail
ADDED Requirements
Requirement: События файлов и документов
Загрузка, автозамена, удаление файла и подтверждение документа SHALL писать audit_event через сервис аудита:
| Действие | action |
section |
object_type |
user_id |
|---|---|---|---|---|
| файл принят | FILE_UPLOAD |
PRIMARY_DOCUMENTS |
stored_file |
инициатор |
| прежний файл заменён новым (автозамена после маппинга) | FILE_REPLACE |
PRIMARY_DOCUMENTS |
stored_file (заменённый) |
NULL (система; инициатор загрузки — в description) |
| файл удалён | FILE_DELETE |
PRIMARY_DOCUMENTS |
stored_file |
инициатор |
| документ подтверждён | DOCUMENT_CONFIRM |
PRIMARY_DOCUMENTS |
document |
инициатор |
FILE_REPLACE SHALL содержать в after_value новый file_id, в description — перечень заменённых документов и
confirmed=true, если среди них был CONFIRMED. Смена статусов задания и файла в обмене и в цикле маппинга
audit_event не пишет (ASSUMPTION(OQ-55)).
Scenario: Загрузка двух файлов
- WHEN принято два файла одним запросом
- THEN два события
FILE_UPLOADсobject_idкаждого файла иafter_value(original_name,content_hash,job_id)