feat(runtime): run tag-15 and tag-19 Control budgets
Docs Deploy / Build and Deploy MkDocs (push) Successful in 36s
Docs Deploy / Build and Deploy MkDocs (push) Successful in 36s
This commit is contained in:
5 files changed
+1143
-30
No files matched your search
@@ -358,10 +358,18 @@ API `distribute_loaded_mission_control_provider_amount` переносит
|
||||
`+0x10` получает фактическую разницу amount. После распределения обязателен
|
||||
`0x11130(root, true)`.
|
||||
|
||||
Оба API работают только с CPU-проекцией и не подключены к GPU/window path или
|
||||
игровому Control clock. Gate `+0x618` изначально выключен; событие `7` задаёт его
|
||||
по правилу `gate = (arg == 2)` и вызывает `0x2dc20`, только если gate изменился.
|
||||
События Control в Rust пока не исполняются.
|
||||
Три API работают только с CPU-проекцией и не подключены к GPU/window path или
|
||||
игровому Control clock. Отдельный
|
||||
`advance_loaded_mission_control_budget` переносит `0x2d340` для factory
|
||||
callbacks `15/19` и current descriptor tags `15/19` (категории `0/1`); ставки сохраняются
|
||||
в текущих полях `+0x5dc/+0x5e0`. Он выполняется транзакционно, а неизвестный
|
||||
callback, provider или диапазон числа возвращает ошибку без частичного
|
||||
изменения. Тест с нулевым знаменателем генератора подтверждает откат после уже
|
||||
выполненного изменения потребителем. Пустая таблица всё равно записывает в оба поля отрицательный ноль;
|
||||
неактивный callback не требует provider lookup. Gate `+0x618` изначально
|
||||
выключен; событие `7` задаёт его по правилу `gate = (arg == 2)` и вызывает
|
||||
`0x2dc20`, только если gate изменился. События Control в Rust пока не
|
||||
исполняются, поэтому ресурсный шаг вызывается явно и не подключён к часам.
|
||||
Capacity aggregate выведен при подтверждённых единичных множителях Unit DAT;
|
||||
изменение масштабов `0x9ee0`/`0x9f90` не реализовано. Из-за округления `+0x590`
|
||||
может стать больше сохранённого `+0x58c`; распределение сохраняет этот signed
|
||||
@@ -394,8 +402,8 @@ Rust query обращается к загруженному объекту и п
|
||||
текущего descriptor tag `26` с factory tag `26`; другие активные typed tags и
|
||||
factory paths остаются явными границами. Запрос читает текущее type-1 значение.
|
||||
Licensed `min_l_n1.dat` подтверждает изменение `0xe00` и Behavior `0x1002` с
|
||||
`1.0` до `0.5` после явного уменьшения количества вдвое; это ещё не
|
||||
автоматический бюджетный цикл.
|
||||
`1.0` до `0.5` после явного уменьшения количества вдвое; чтение получает
|
||||
текущее значение provider, который также меняет явный бюджетный шаг.
|
||||
Native oracle проверил изолированные пути распределения, обновления класса `4`,
|
||||
стадийную арифметику `0x11220`, обход дочерних provider-строк `0x11130` на
|
||||
interleaved parents `[-1, 0, 0, 1, 3]` с callback-порядком `1, 3, 4, 2` и
|
||||
@@ -406,15 +414,28 @@ visibility transition `0x11920` с исходными AniMesh callbacks. Отд
|
||||
в этом векторе подставлен mock-ом. Отдельный вектор с исходным генератором
|
||||
tag `19` (`0x22980`, `0x229a0`, `0x22a60`) проверяет полную и ограниченную
|
||||
rate, изменение provider и собственного множителя генератора; отрицательные
|
||||
параметры и нулевой знаменатель не проверены. Эти сценарии
|
||||
используют синтетические NDP/Node38-строки; они подтверждают локальные переходы
|
||||
и порядок вызовов, но не полную загрузку или выполнение Control на миссии. Вызовы
|
||||
`0x11220` используют `updateEffects = false`, что исключает ветвь Control FX и
|
||||
параметры и нулевой знаменатель не проверены. Native-векторы бюджетного шага
|
||||
подтверждают текущие ставки `+0x5dc/+0x5e0`, включая значения `0.2`/`0.4` у
|
||||
потребителя tag 15, пустой результат `-0.0` и невырожденную пару исходных
|
||||
устройств tag 19/tag 15 при `dt = 0.375`; Rust-тест повторяет поля этой пары
|
||||
на синтетической таблице. Реализация принимает только описанные factory и
|
||||
category tags; остальные callbacks и состояния остаются явными ошибками.
|
||||
Лицензированный `min_l_n1.dat` содержит исходные factory/current tags
|
||||
`[19, 19, 9, 15, 12, 12, 13, 13, 26, 25, 21]`. Публичный API оставляет всю
|
||||
таблицу без изменений при не конечном интервале и при первом неподдержанном
|
||||
current tag `9`; полный бюджетный проход для этой реальной таблицы поэтому не
|
||||
проверен. Успешные бюджетные native-векторы используют синтетические
|
||||
NDP/Node38-строки и подтверждают локальные переходы и порядок вызовов, а не
|
||||
полный Control tick на миссии. Прямые oracle-вызовы `0x11220` для одиночной
|
||||
строки используют `updateEffects = false`, что исключает ветвь Control FX и
|
||||
`0x11af0`; в отдельном сценарии класса `9` `0xfca0` возвращается сразу после
|
||||
смены видимости, поэтому связанное с ним движение не проверено. Хотя у строки
|
||||
Control выставлен flag `0x102`, слово флагов ANI `+0x14` и производные байты
|
||||
`+0x111..+0x113` изначально равны нулю. Вызовы AniMesh `0x93c0` и `0xa2a0` обновляют производную геометрию и
|
||||
видимость, это отдельная непроверенная граница, а не FX callbacks. Бюджетная
|
||||
видимость, это отдельная непроверенная граница, а не FX callbacks. Распределение
|
||||
и бюджетный шаг вызывают обязательный `0x11130(root, true)`, но их проверенные
|
||||
векторы имеют одну строку без смены стадии; они не доказывают исполнение FX или
|
||||
`0x11af0`. Бюджетная
|
||||
часть активного `0xbcf0` исполнена на синтетическом хосте класса `10`:
|
||||
при периоде `500` и нулевом RNG проверены пропуск до deadline и на равенстве
|
||||
`437.5`, затем ресурсный `dt = 0.5` при времени `500`. На том же ограниченном
|
||||
|
||||
Reference in new issue
Block a user