aboutsummaryrefslogtreecommitdiff
path: root/docs/appendices/knowledge-boundaries.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/appendices/knowledge-boundaries.md')
-rw-r--r--docs/appendices/knowledge-boundaries.md26
1 files changed, 18 insertions, 8 deletions
diff --git a/docs/appendices/knowledge-boundaries.md b/docs/appendices/knowledge-boundaries.md
index 626469f..2f93502 100644
--- a/docs/appendices/knowledge-boundaries.md
+++ b/docs/appendices/knowledge-boundaries.md
@@ -361,7 +361,7 @@ API `distribute_loaded_mission_control_provider_amount` переносит
Три API работают только с CPU-проекцией и не подключены к GPU/window path или
игровому Control clock. Отдельный
`advance_loaded_mission_control_budget` переносит `0x2d340` для фабричных
-callbacks `9`, `15`, `19` и общей default-пары; category lookup использует
+callbacks `9`, `15`, `19`, `26` и общей default-пары; category lookup использует
текущий descriptor tag из подтверждённого префикса `0..=34`. Ставки сохраняются
в `+0x5dc/+0x5e0`. Шаг выполняется транзакционно, а неподдержанный
специализированный callback, provider или диапазон числа возвращает ошибку без частичного
@@ -417,20 +417,30 @@ visibility transition `0x11920` с исходными AniMesh callbacks. ОтдÐ
в этом векторе подставлен mock-ом. Отдельный вектор с исходным генератором
tag `19` (`0x22980`, `0x229a0`, `0x22a60`) проверяет полную и ограниченную
rate, изменение provider и собственного множителя генератора; отрицательные
-параметры и нулевой знаменатель не проверены. Native-векторы бюджетного шага
+параметры и нулевой знаменатель не проверены. Новый оригинальный вектор
+`0x2d340` смешивает tag `19` и tag `26`: supply `0.125` покрывает половину
+demand `0.25`, итоговые множители равны `0.6875` и `0.5`, а выходы —
+`0x80000000` и `0x3e800000`. Тот же oracle подтверждает tag-26 selector `0x500`,
+общий reader `0x21d50` и сохранение поля `+0xa4` при `INTO`. Rust-тест
+повторяет бюджетную пару и разрешает tag `26` в projection INTO guard, оставляя
+теги `1`, `17` и `30` явными границами. Native-векторы бюджетного шага
подтверждают текущие ставки `+0x5dc/+0x5e0`, включая значения `0.2`/`0.4` у
потребителя tag 15, пустой результат `-0.0` и невырожденную пару исходных
устройств tag 19/tag 15 при `dt = 0.375`; Rust-тест повторяет поля этой пары
на синтетической таблице. Rust переносит class-9 rate/update и шестизначную
-adjustment `0x25a90`, общую default callback-пару `0x21860/0x21890`, а также
-category map только для current descriptor tags `0..=34`. Специализированные
-factory callbacks вне этого набора остаются явными ошибками.
+adjustment `0x25a90`, tag-26 rate/update и setter selector `0x500`, общую
+default callback-пару `0x21860/0x21890`, а также category map только для current
+descriptor tags `0..=34`. Остальные ещё не описанные специализированные
+callbacks остаются явными ошибками.
Лицензированный `min_l_n1.dat` содержит исходные factory/current tags
`[19, 19, 9, 15, 12, 12, 13, 13, 26, 25, 21]`. Публичный API оставляет всю
таблицу без изменений при не конечном интервале. Для конечного интервала
-предварительная проверка распознаёт категории, но находит неподдержанный
-factory tag `26` и отклоняет вызов до вычисления ставок и обновлений; полный
-бюджетный проход для этой реальной таблицы поэтому не проверен. Успешные бюджетные native-векторы используют синтетические
+ignored Rust-тест проходит budget по всем 11 строкам без фильтра. При `dt = 0.5`
+обе output rates равны `0x3c23d70a`, первые два множителя tag `19` равны
+`0x3f7fd70a`, остальные множители остаются `1.0`, а добавка tag `26` остаётся
+нулевой. Эта проверка подтверждает только CPU-проекцию реальной таблицы; она
+не запускает native полный mission tick и не подключает Control clock.
+Успешные бюджетные native-векторы используют синтетические
NDP/Node38-строки и подтверждают локальные переходы и порядок вызовов, а не
полный Control tick на миссии. Прямые oracle-вызовы `0x11220` для одиночной
строки используют `updateEffects = false`, что исключает ветвь Control FX и