Thin Windows shell access and bundle quiet validation

This commit is contained in:
2026-06-17 09:41:51 +02:00
parent 6d906f6288
commit 10a3c0498e
8 changed files with 104 additions and 50 deletions

View File

@@ -58,17 +58,24 @@ dependencies until each platform triplet is proven.
These commands are the current local baseline.
Prefer the quiet wrapper for Codex checkpoint validation because it captures
full logs in `out/logs/quiet-validation`, emits only per-step summaries, and
keeps known warning/noise filters in
`scripts/automation/quiet-validation-ignore.txt`:
Prefer the bundled quiet wrapper for checkpoint validation. It captures full
logs in `out/logs/quiet-validation`, writes one run summary JSON there, applies
the filters in `scripts/automation/quiet-validation-ignore.txt`, and can fold
the Windows, platform-build, and Apple remote steps into one compact result:
```powershell
powershell -ExecutionPolicy Bypass -File scripts\automation\quiet-validate.ps1 -BuildTargets PanoPainter,pano_cli -TestRegex "pp_app_core|pano_cli_plan"
powershell -ExecutionPolicy Bypass -File scripts\automation\quiet-validate.ps1 -BuildTargets pp_app_core_app_dialog_tests,pp_ui_core_overlay_lifetime_tests -TestRegex "pp_(app_core_app_dialog|ui_core_(node_lifetime|overlay_lifetime))"
powershell -ExecutionPolicy Bypass -File scripts\automation\quiet-validate.ps1 -BuildTargets ALL_BUILD -IncludePlatformBuild -IncludeAppleRemote
powershell -ExecutionPolicy Bypass -File scripts\automation\quiet-validate.ps1 -BuildTargets PanoPainter,pano_cli -TestRegex "pp_app_core|pano_cli_plan" -IncludePlatformBuild
powershell -ExecutionPolicy Bypass -File scripts\automation\quiet-validate.ps1 -BuildTargets PanoPainter,pano_cli -TestRegex "pp_app_core|pano_cli_plan" -IncludePlatformBuild -IncludeAppleRemote
```
Use the standalone quiet helpers only when you need to isolate those gates from
the bundled run. `platform-build.ps1 -Quiet` writes per-preset logs under
`out/logs/platform-build`. `apple-remote-build.ps1 -Quiet` writes the local SSH
session log under `out/logs/apple-remote-build` and reports the remote
`out/logs/apple-platform-build-*.log` path in its JSON output.
```powershell
cmake --preset windows-msvc-default
cmake --build --preset windows-msvc-default --config Debug --target PanoPainter
@@ -160,18 +167,22 @@ Known local toolchain state:
`ssh://git@git.omar.synology.me:3022/omar/panopainter.git`, Homebrew
CMake/Ninja/Git, and full Xcode selected per command with
`DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer`. The repeatable
Windows-side command is:
Windows-side bundled quiet command is:
```powershell
powershell -ExecutionPolicy Bypass -File scripts\automation\apple-remote-build.ps1 -Presets macos,ios-simulator,ios-device
powershell -ExecutionPolicy Bypass -File scripts\automation\quiet-validate.ps1 -BuildTargets PanoPainter,pano_cli -TestRegex "pp_app_core|pano_cli_plan" -IncludeAppleRemote
```
For Apple-only isolation, run
`scripts/automation/apple-remote-build.ps1 -Quiet -Presets macos,ios-simulator,ios-device`.
The wrapper updates `~/Dev/panopainter`, initializes the source submodules
required by the headless CMake matrix, and delegates to
`scripts/automation/platform-build.sh`. macOS, iOS simulator, and iOS device
currently validate shared component/test/tool targets only; signed Apple app
bundles remain tracked by DEBT-0011 and the iOS compile-only signing shortcut
is tracked by DEBT-0059.
required by the headless CMake matrix, delegates to
`scripts/automation/platform-build.sh`, stores the local SSH transcript under
`out/logs/apple-remote-build`, and reports the remote Apple platform-build
log path in its JSON output. macOS, iOS simulator, and iOS device currently
validate shared component/test/tool targets only; signed Apple app bundles
remain tracked by DEBT-0011 and the iOS compile-only signing shortcut is
tracked by DEBT-0059.
- Android standard arm64/x64, Quest arm64, and Focus/Wave arm64 headless
configure/build pass through root CMake and the `platform-build` automation
wrapper defaults for `pp_foundation`, `pp_assets`,

View File

@@ -70,14 +70,16 @@ What is already real:
- `pp_app_core`
Latest slice:
- `scripts/automation/platform-build.ps1` now supports a quiet mode that writes
per-preset configure/build logs and emits only a compact JSON summary.
- `scripts/automation/apple-remote-build.ps1` now supports a quiet mode that
writes the SSH session to a local log, preserves the remote platform-build
log path, and emits only a compact JSON summary.
- `scripts/automation/quiet-validate.ps1` can now bundle quiet platform and
Apple remote validation into the same summary artifact through
`-IncludePlatformBuild` and `-IncludeAppleRemote`.
- `scripts/automation/quiet-validate.ps1` is now the bundled checkpoint path
for Windows build/test plus optional platform and Apple remote validation,
with one compact JSON summary under `out/logs/quiet-validation`.
- `scripts/automation/platform-build.ps1` quiet mode now writes per-preset
configure/build logs and compact JSON output so Android/headless sweeps can
plug into the bundled quiet wrapper without flooding the console.
- `scripts/automation/apple-remote-build.ps1` quiet mode now writes the local
SSH session log, reports the remote `platform-build.sh` log path, and emits
compact JSON output so the bundled quiet wrapper can include the Apple gate
in the same checkpoint run.
What is still carrying too much live ownership:

View File

@@ -78,15 +78,18 @@ Completed, blocked, and superseded task history moved to
the queue is now ordered by code movement instead.
Current slice:
- `scripts/automation/quiet-validate.ps1` now owns the recommended quiet
checkpoint path and can bundle Windows build/test, Android/platform sweeps,
and Apple remote compile gates into one compact JSON summary with
`-IncludePlatformBuild` and `-IncludeAppleRemote`.
- `scripts/automation/platform-build.ps1` now supports `-Quiet`, per-preset log
capture, and compact JSON-only output so Android/headless platform sweeps no
longer flood the console during checkpoint validation.
- `scripts/automation/apple-remote-build.ps1` now supports `-Quiet`, local log
capture for the SSH session, remote log path reporting, and JSON-only output
so Apple remote compile gates no longer stream large tails by default.
- `scripts/automation/quiet-validate.ps1` now accepts
`-IncludePlatformBuild` and `-IncludeAppleRemote` so the existing quiet
wrapper can own the full Windows, Android/platform, and Apple summary path.
capture, and compact JSON-only output so standalone Android/headless sweeps
still have a targeted quiet path when they need to be isolated from the
bundled wrapper.
- `scripts/automation/apple-remote-build.ps1` now supports `-Quiet`, local SSH
session log capture, remote log path reporting, and JSON-only output so the
standalone Apple gate can still be run directly when the bundled wrapper is
too broad.
## Active Bundles