[2026-10-23] eagle: Hack Days Oct-2026.md personal/projects/virfield.md
This commit is contained in:
1 parent
a5b35d04f4
commit
b041284ce2
2 files changed
+9
-10
No files matched your search
@@ -2,18 +2,17 @@
|
||||
|
||||
Hey everyone, I'm Alex.
|
||||
|
||||
We've grown quite a bit, so there's a good chance some of you have no idea who am I.
|
||||
There‘s so many new faces, I'm pretty sure some of you have no idea who I am.
|
||||
|
||||
Which is fine. Sometimes I'm not entirely sure myself.
|
||||
|
||||
I work on our macOS browser. And for these Hack Days, I thought I'd make it a little bit greater Again.
|
||||
I work on our macOS browser. And I thought I'd make it greater again.
|
||||
|
||||
Again?
|
||||
|
||||
**[Pause]**
|
||||
|
||||
They say Jesus was a simple hacker. Took a little water…
|
||||
Turned it into wine… accepted some Cookies…
|
||||
They say Jesus was a hacker. Turned water into wine. Accepted some cookies.
|
||||
Pretty impressive for a Hack Days project!
|
||||
|
||||
**[Start the screen sharing with https://infiniteslop.ai/ open]**
|
||||
|
||||
Executable → Regular
+6
-6
@@ -79,13 +79,13 @@ macOS make check/build/Staticcheck прошли; настоящий read-only vo
|
||||
|
||||
## Текущая работа 2026-10-23: UI readiness
|
||||
|
||||
Локальный `main` содержит коммиты `fd980dd`, `c7d75e7`, `1126997`, `6203177`, `5f605d8`, `7b5c124`; рабочее дерево чистое. Полный `make check` с race-тестами прошёл. Кэш Xcode на Mac очищен с 41 до 19 ГБ: удалены две распакованные копии после сверки исходных XIP, четыре XIP сохранены. Новый код повторяет очистку после использования архива и при старте daemon; установленная production версия пока не обновлена. Для Xcode-образов и новых disposable workers добавлены настройка unattended Automation Mode и настоящий 1/1 XCUITest gate; компактный MCP status и путь pinned SSH без CLI документированы. На действующем Monterey lease native UI fixture прошёл 1/1, а `automationmodetool` сообщил `DOES NOT REQUIRE user authentication`. Это проверка текущей VM, не доказательство работы ещё не установленного нового daemon.
|
||||
Локальный `main` содержит коммиты `fd980dd`, `c7d75e7`, `1126997`, `6203177`, `5f605d8`, `7b5c124`, `4e913d5`, `5800007`; рабочее дерево чистое. Полный `make check` с race-тестами прошёл. Кэш Xcode на Mac очищен с 41 до 19 ГБ: распакованные копии удалены после сверки XIP, четыре XIP сохранены; код повторяет очистку. Для новых Xcode-образов и disposable workers действуют настройка unattended Automation Mode и native XCUITest gate 1/1; установленный daemon проверен на свежем Monterey образе и аренде. Остальные физические node-хосты требуют отдельного повторного сквозного прогона.
|
||||
|
||||
Cold boot двух node VM на htpc выявил дополнительные ошибки старой установленной версии. Sonoma `lease-1e935304d66b68d41c7850a89f79d0ae`: SSH появился примерно через 17 минут, Finder стабилизировался позже двухминутного desktop timeout; job `needs_attention/lease_ssh_failed`. Sequoia `lease-1140ca109abe50cf3c095ae5c24a496b`: раннее чтение модели ошибочно дало `guest_identity_failed`; последующий pinned SSH подтвердил `iMacPro1,1`, macOS 15.8.1/24H32. Исправления увеличивают бюджет только node-lease до 45 минут, ожидание его desktop до пяти минут и повторяют временно неудавшееся read-only чтение модели. На обеих VM прочитанная политика требует аутентификации для Automation Mode. Sequoia lease удалён через journal API после подтверждения владельца: cleanup job `job-e055b9c977d2d35c6d6d7239b82429e9` succeeded, lease `released`, контейнер отсутствует. Sonoma lease сохранён до отдельного подтверждения; повторный прогон нового кода ещё не выполнен.
|
||||
Cold boot двух node VM на htpc выявил ошибки прежней установленной версии: Sonoma `lease-1e935304d66b68d41c7850a89f79d0ae` получил SSH примерно через 17 минут, Finder стабилизировался позже двухминутного desktop timeout; Sequoia `lease-1140ca109abe50cf3c095ae5c24a496b` дал временную ошибку чтения модели. Код увеличил бюджет node-lease до 45 минут, desktop до пяти минут и повторяет временно неудавшееся чтение модели. Обе VM требовали аутентификации Automation Mode. Sequoia lease удалён после подтверждения владельца; прежние временные leases позднее освобождены. Повторный прогон на этих node-хостах ещё не зафиксирован.
|
||||
|
||||
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 для конкретных приложений остаётся за системным согласием пользователя.
|
||||
Production 2026-10-23 обновлён clean-сборкой коммита `5800007`, подписанной доступным Apple Development сертификатом с прежним Team ID `E3R68ED529`; backup не создавался. Демон перезапущен и обслуживает действующие аренды. Старые временные leases освобождены. Full Disk Access после переподписи и свежие прогоны на всех физических node-хостах ещё требуют отдельной приёмки; 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.
|
||||
**SIP-off исправление внедрено, 2026-10-23:** коммит `4e913d5` делает SIP-disabled обязательным для новых образов и аренд, блокирует SIP-on источники и проверяет фактический `csrutil status` клона до `ready`. Для Monterey 12.7.6/21H1320 подготовлена чистая SIP-off Tart-основа, опубликована в приватном GHCR и закреплена digest `sha256:3733c94473dd603e048b64000db273a63fd0c8e5520d674cede1be9dad78cfee` в production config. Встроенный `image-create` собрал golden `monterey-xcode-13.4.1-sip-off` с Xcode 13.4.1/13F100; квалификация после reboot подтвердила SIP off, unattended Automation Mode и native XCUITest 1/1. Свежая арендованная VM `lease-b88068aa62098d8c02a659f2ab5593f7` повторила `csrutil status: disabled`, `DOES NOT REQUIRE user authentication`, Xcode 13.4.1 и XCUITest 1/1; её cleanup succeeded. Старый SIP-on golden удалён через `image-delete`, запись старого шаблона удалена из production config. Временные импорт и клонированные VM очищены. Для остальных VM/хостов сквозная повторная приёмка ещё не зафиксирована.
|
||||
|
||||
## Цель: самостоятельный инстанс на поддерживаемом оборудовании
|
||||
|
||||
@@ -97,8 +97,8 @@ Production пока v2.1.1: локальные Tart leases заняты, оди
|
||||
2. Linux node VM требует вручную установить qcow2 bootstrap и OpenCore, настроить SSH, Podman/KVM/TUN, admin/sudo и профили. Автоматический путь от чистого поддерживаемого Linux-хоста до готового golden отсутствует.
|
||||
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. Установленная 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.
|
||||
5. Monterey на установленном clean release `5800007` проверен через встроенный image-create, квалификацию образа и свежую аренду с native XCUITest 1/1. Холодный node startup и UI readiness на свежих Sonoma/Sequoia Intel и остальных поддерживаемых конфигурациях остаются пунктом приёмки; для независимой установки нужен воспроизводимый релизный пакет.
|
||||
6. SIP-off критерий для Monterey закрыт: новый digest-pinned источник, golden и fresh lease проверены после reboot, старый SIP-on golden и шаблон удалены. Общее требование «SIP отключён на каждой VM» закреплено в коде, но не проверено сквозным прогоном на каждом node-хосте. Screen Recording/Accessibility/TCC конкретных workload отдельно не подтверждены; SIP-off сам по себе не доказывает их доступность.
|
||||
7. Web UI, HTTP API и MCP имеют разные наборы операций. Для одного собственного инстанса допустим owner token; ранее предложенный общий командный RBAC не является блокером этой цели. Требуется полный поддерживаемый локальный цикл через web UI и MCP, включая ясную диагностику и безопасные повторы.
|
||||
|
||||
### Порядок исправления и критерии
|
||||
|
||||
Reference in new issue
Block a user