[2026-10-23] eagle: personal/projects/virfield.md

This commit is contained in:
Alexey Martemyanov committed 2026-10-23 13:38:01 +06:00
1 parent 86ed4048f0
commit 92c5368256
1 file changed
+3 -1
+3 -1
View File
@@ -73,6 +73,8 @@ Cold boot двух node VM на htpc выявил дополнительные
Production пока v2.1.1: локальные Tart leases заняты, один до 2026-10-24. Установленный daemon подписан Team ID `E3R68ED529`. Доступный личный сертификат `Apple Development: mallexxx@gmail.com (D46EWG5VWN)` после сборки дал тот же Team ID и designated requirement, что у установленного binary; первоначальный вывод об отсутствии identity был ошибочным. Кандидат собран и подписан, но не установлен: online backup старый daemon отклонил с `backup_failed` (требует idle manager и resolved jobs), а два действующих Tart leases заняты, один до 2026-10-24. Для production upgrade нужно дождаться завершения leases, затем выполнить контролируемый restart, проверить фактический Full Disk Access и fresh lease acceptance на Monterey, Sonoma, Sequoia. Обязательный backup перед обновлением из инструкции удалён; пустые каталоги backup удалены 2026-10-23. Screen Recording/Downloads TCC для конкретных приложений остаётся за системным согласием пользователя.
**SIP-off исправление в исходниках, 2026-10-23:** коммит `4e913d5` меняет default нового образа на SIP-disabled, запрещает создание/сборку/перенос/публикацию и выдачу SIP-on VM, помечает старые SIP-on образы недоступными и проверяет фактический `csrutil status` на клоне до `ready`. Полный `make check` и web UI тесты прошли. Проверенная production конфигурация всё ещё содержит `monterey-xcode-13.4.1` с SIP-on; два активных Monterey leases нельзя менять на месте. Исправление ещё не установлено на production и не проверено на всех реальных машинах; нужен новый SIP-off Monterey source/golden и приёмка после завершения leases.
## Цель: самостоятельный инстанс на поддерживаемом оборудовании
**Статус 2026-10-23: не реализовано и не принято.** Каждый разработчик устанавливает **свой** Virfield со своими config, state, token, образами и MCP. Общий командный сервер, общий operator token и RBAC между разработчиками не входят в эту цель. «Одна кнопка» означает единый установщик или мастер, который определяет возможности машины, выполняет доступные шаги и показывает только неизбежные системные подтверждения. Не обещать запуск на оборудовании, где macOS VM технически недоступна; показывать конкретное ограничение до установки.
@@ -84,7 +86,7 @@ Production пока v2.1.1: локальные Tart leases заняты, оди
3. Клиенту без virfield CLI приходится вручную создавать SSH-ключ, pinned known_hosts и config. Локальная установка должна создавать и хранить их сама; приватный ключ остаётся на машине владельца.
4. В продуктовой справке и docs использовалось собственное имя узла htpc (удалено из checkout 2026-10-23; выпуск ещё не собран). Runtime не проверял строку htpc, но node startup deadline 45 минут и desktop deadline 5 минут выбраны по замеру одного нашего cold boot. Кроме того, стандартные VM-рецепты и init предполагают гостевой admin с домашним каталогом /Users/admin. Это контракт конкретного профиля образа, а не путь аккаунта владельца на хосте; мастер должен выбирать совместимый профиль и проверять его, а бюджеты и требования к гостю не выводить из нашего оборудования.
5. Xcode UI readiness gate и исправления холодного node startup есть в checkout, но ещё не приняты на установленном release-кандидате на свежих поддерживаемых конфигурациях. Работающий бинарник сообщает vcs.revision=2c64888 и vcs.modified=true; перед распространением нужен воспроизводимый clean release.
6. Нарушен критерий приёмки: SIP должен быть отключён на каждой VM Virfield. Сейчас default security и developer-v1 допускают SIP-on; Monterey developer-v1 уже наблюдался с SIP-on. Требуется запретить создание и выдачу SIP-on VM, выбрать/построить SIP-off источники для всех поддерживаемых профилей, пересоздать и квалифицировать существующие SIP-on goldens без изменения активных leases, проверить SIP-off на каждом подготовленном клоне. Отдельно подтвердить Screen Recording/Accessibility/TCC и native XCUITest: SIP-off сам по себе не доказывает готовность UI.
6. Нарушен критерий приёмки: SIP должен быть отключён на каждой VM Virfield. Установленная production v2.1.1 ещё содержит Monterey developer-v1 с SIP-on; исходники уже запрещают новые SIP-on образы и leases коммитом `4e913d5`. Требуется выбрать/построить SIP-off источник Monterey, пересоздать и квалифицировать старый golden без изменения активных leases, затем установить исправление и проверить SIP-off на каждом подготовленном клоне. Отдельно подтвердить Screen Recording/Accessibility/TCC и native XCUITest: SIP-off сам по себе не доказывает готовность UI.
7. Web UI, HTTP API и MCP имеют разные наборы операций. Для одного собственного инстанса допустим owner token; ранее предложенный общий командный RBAC не является блокером этой цели. Требуется полный поддерживаемый локальный цикл через web UI и MCP, включая ясную диагностику и безопасные повторы.
### Порядок исправления и критерии