[2026-10-14] eagle: personal/projects/archive/virfield-checkpoints-through-2026-10-08.md personal/projects/virfield.md personal/tech/legacy-xctest-runner.md work/wiki/apple-browsers/ci-pipeline.md work/wiki/apple-browsers/vm-ui-testing.md

This commit is contained in:
Alexey Martemyanov committed 2026-10-14 16:06:09 +06:00
1 parent 78dbaf975b
commit a69f95ba59
5 files changed
+228 -166

No files matched your search

+10 -5
View File
@@ -1,10 +1,15 @@
---
source: ~/DuckDuckGo/apple-browsers.git/main/.github/workflows/
confidence: 1.0
confidence: 1
namespace: work
last_updated: 2026-04-28
virfield_updated: 2026-09-30
tags: [ci, github-actions, xcodebuild, testing, build]
last_updated: '2026-04-28T00:00:00.000Z'
virfield_updated: '2026-10-14'
tags:
- ci
- github-actions
- xcodebuild
- testing
- build
---
# CI Pipeline — macOS Browser
@@ -124,7 +129,7 @@ set -o pipefail && xcodebuild test-without-building \
**Option B — Via a Virfield VM lease:**
Virfield v2 provides a prepared VM, scoped SSH and lifecycle cleanup. Build/test
Virfield's current Tart deployment provides a prepared VM, scoped SSH and lifecycle cleanup. Build/test
execution and result collection belong to Runner/Executor, using the VM's local
disk. See [[work/wiki/apple-browsers/vm-ui-testing]] for the current flow and
[[personal/projects/virfield]] for the release and installation reference.
+13 -6
View File
@@ -1,13 +1,18 @@
---
source: https://github.com/mallexxx/virfield/tree/v2.0.0
confidence: 1.0
source: 'https://github.com/mallexxx/virfield/tree/main'
confidence: 1
namespace: work
last_updated: 2026-10-01
tags: [ui-testing, vm, virfield, xcode]
last_updated: '2026-10-14'
tags:
- ui-testing
- vm
- virfield
- xcode
virfield_updated: '2026-10-14'
---
# VM UI Testing — Virfield
Host manager — Virfield v2 на Go. Опубликованный релиз, установленный кандидат, проверенная матрица OS/Xcode и незакрытые release gates различаются; их актуальный статус — только в [[personal/projects/virfield]]. Эта заметка описывает границу UI-test integration; установка, API/MCP и команды поддерживаются в [Operations](https://github.com/mallexxx/virfield/blob/main/docs/OPERATIONS.md).
Host manager — Virfield на Go; текущий runtime — Tart + SSH nodes. Опубликованный релиз, установленный кандидат, проверенная матрица OS/Xcode и незакрытые release gates различаются; их актуальный статус — только в [[personal/projects/virfield]]. Эта заметка описывает границу UI-test integration; установка, API/MCP и команды поддерживаются в [Operations](https://github.com/mallexxx/virfield/blob/main/docs/OPERATIONS.md).
## Поток UI-теста
@@ -16,11 +21,13 @@ Host manager — Virfield v2 на Go. Опубликованный релиз,
3. Выгрузить `.xcresult`, логи и screenshots до освобождения lease.
4. Вызвать `vm_release` и проверить завершение cleanup; expiry также запускает cleanup. Освобождение lease удаляет disposable VM.
Для physical-host lease workspace — `~/virfield/leases/<vm>/workspace`; release не сбрасывает shared account и не убивает его процессы. VM lease disposable, host lease — нет.
Virfield управляет VM и соединением, а не выполняет XCUITest workflow через MCP. Протокол Runner/Broker и полный автоматический UI-test flow требуют отдельной интеграционной приёмки. Гостевые Peekaboo/tools устанавливаются full image profile, но host MCP не экспортирует их UI-команды.
## Ограничения
- Максимум две macOS VM с учётом внешних VM и reservations; `capacity_exhausted` — повод поставить run в очередь Broker.
- Локальный Tart pool: максимум две macOS VM в текущем deployment с учётом внешних VM и reservations; удалённые ноды имеют отдельные slots; `capacity_exhausted` — повод поставить run в очередь Broker.
- Успешный acquire означает принятый job, не готовность гостя. Использовать lease только после `ready`.
- Recipe не монтирует host shared folders. Build workspace находится в VM; личные host SSH keys и provider credentials не запекаются в golden.
- Full UI-test profile `uitest-27-v1` проверен на macOS 27 build `26A428` и требует Xcode 27+. Кандидат поддерживает выбор версий через каталог; реально принятые сочетания перечислены в карточке Virfield и Verification. Совместимость с конкретной веткой apple-browsers проверяется отдельно.