FlopForgeЛаборатория стратегических данных по техасскому холдему
РусскийRU

ИНЖЕНЕРНЫЕ ЗАМЕЧАНИЯ

Разработка локального инструмента анализа покера на Rust/WASM

Local-first означает не просто «скомпилировано в WebAssembly». Для этого требуются явные домены выполнения, ограниченная память, отмена, изоляция устаревших результатов и надежная граница между кэшированными байтами и отображаемыми выводами.

Нет аккаунтаДоказательства, опубликованные редакторомВводы остаются локальными
Инженерное делоОпубликовано FlopForgeРедакционный метод

Rust владеет математическими контрактами и контрактами правил.

Кодирование карт, допустимое состояние руки, порядок оценки, точное перечисление, построение дерева игры, CFR/DCFR, идентичность контрольной точки и проверка воспроизведения относятся к типизированному базовому коду, а не к дублированной логике пользовательского интерфейса.

Браузер должен отображать и управлять этими контрактами, а не молча изобретать второй покерный движок.

Работники изолируют долго выполняющиеся задачи

Воспроизведение правил должно оставаться отзывчивым, пока активен точный расчет эквити или стратегии. Отдельное владение запросом не позволяет старой задаче обновлять вновь отредактированную конфигурацию.

Фатальные ошибки Worker должны немедленно отклонять все ожидающие вызовы; завершение и отмена должны создавать одно ограниченное терминальное состояние.

Локальный кэш не является автоматическим доказательством

IndexedDB может хранить контрольную точку и снимок, но пользовательский интерфейс не должен доверять тексту localStorage как квалифицированной рекомендации. Для восстановления требуется проверка личности, проверка хеша и воспроизведение соответствующего сеанса Rust/WASM.

Поврежденные записи должны быть удалены, чтобы правильное решение могло восстановить тот же ключ, в то время как результат просто более низкого качества не должен ошибочно классифицироваться как повреждение.

Статические редакционные страницы позволяют экономить масштабы

Руководства, примеры раздач, каналы, поисковые индексы и социальные метаданные генерируются во время сборки и используются в виде статических файлов. Им не требуется база данных сообщества или серверный решатель.

Только маршруты приложений загружают более тяжелые пакеты Worker и WASM; Страницы контента остаются быстрыми и независимыми для сканирования.

ПРОДОЛЖИТЬ ВО ФЛОПФОРЖЕ

Изучите методологию продукта

Прочтите заявленную область вычислений, правила доказательства, границы кэша и неподтвержденные выводы.
Читать методологию

FAQ

Вопросы, которые эта страница не должна скрывать

Почему бы не запустить решатель на сервере?

Выполнение в браузере позволяет избежать затрат на удаленные вычисления и сохраняет введенные вручную данные локально, но требует строгого бюджета памяти и производительности.

Зачем использовать несколько воркеров?

Один Worker сериализует быстрые операции с правилами после длительной работы по эквити или решателю. Отдельные домены защищают основной путь взаимодействия.

Могут ли статические страницы оставаться интерактивными?

Да. Небольшие калькуляторы и поиск могут работать как локальный JavaScript без базы данных, системы учетных записей или серверного API.