test(runtime): verify native Control provider updates
Docs Deploy / Build and Deploy MkDocs (push) Successful in 33s

This commit is contained in:
Valentin Popov committed 2026-10-23 12:32:49 +04:00
1 parent 7c909ea67b
commit ce8e65c8ae
4 files changed
+312 -26

No files matched your search

+14 -11
View File
@@ -326,20 +326,23 @@ sidecar недоступен, запрос `0xe00` сообщает это от
Rust query обращается к загруженному объекту и поддерживает `0xe00` только для
текущего descriptor tag `26` с factory tag `26`; другие активные typed tags и
factory paths остаются явными границами. Этот запрос возвращает начальный
снимок provider amount: Native `FUN_10010f30` (RVA `0x10f30`) изменяет и
ограничивает количество, а связанные callbacks переносят его между строками;
этот переход в Rust ещё не реализован.
снимок provider amount; дальнейшее изменение строк в Rust не реализовано.
Native oracle проверил изолированные пути распределения, обновления класса `4`
и начальную ветвь таймера. Активную clock-ветвь не запускали; внешний источник
времени и порядок вызовов остаются незакрытыми. Источник контактного коэффициента
прослежен статически, но не исполнен; синтетические provider-строки не имеют
родителей, а родительская логика и lifecycle истощения не проверены. Подробные
векторы и статические границы приведены в
[техническом подразделе о provider-состоянии Control](script-vm.md#изменение-provider-состояния-control).
Отдельный API `advance_loaded_mission_resources` принимает явное время очереди
и обновляет представленные поля `CurrentOre`, строк распределителя и Control
selector `1`. Его граница — статические снимки профиля и provider-значений:
динамическое распространение Control amount, смена профилей, special
object-state gate и жизненный цикл созданных/удалённых объектов здесь не
моделируются. Если обязательный запрос позднего объекта не поддержан,
транзакция возвращает ошибку и не применяет подготовленные изменения. API не
подключён к игровому циклу; AutoDemo-тест подтверждает связь настоящих профилей
с этим шагом, но не полный паритет миссии. Отдельный aggregate getter Behavior
RVA `0xa490` в oracle не исполнен.
selector `1`. API не подключён к игровому циклу и не обновляет Control amount,
профили, special object-state gate или жизненный цикл объектов. Если обязательный
запрос позднего объекта не поддержан, транзакция возвращает ошибку без применения
подготовленных изменений. AutoDemo-тест подтверждает связь настоящих профилей с
этим шагом, но не полный паритет миссии; отдельный aggregate getter Behavior RVA
`0xa490` в oracle не исполнен.
Behavior selectors `0x1002` и `0x1005` используют значения выбранного
профиля из `behpsp.res`, разобранного до создания нового мира. `0x1002` складывает