docs(runbook): record Windows host pre-migration baseline

Phase A benchmark data (2026-05-17): VM lifecycle avg 60.6s boot,
smoke job avg 27s Win / 49s Linux, 100% success rate (12/12 burn-in).
B7 reference thresholds: Win ≤32s, Linux ≤59s.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Simone
2026-05-18 21:14:08 +02:00
parent aadab2d49b
commit 89299b91c7
2 changed files with 44 additions and 4 deletions
+40
View File
@@ -198,6 +198,46 @@ Estimated time: 2-4 hours including Windows Update.
--- ---
## Windows host baseline
**Data**: 2026-05-17 (Phase A closure — commit `36913ab6`)
**Hardware**: Intel i9-10900X, 64 GB RAM, NVMe SSD
**Versioni**:
- `ci_orchestrator`: v2.0.0-phaseA (SHA `b4ca7f3`), Python 3.13.3
- `act_runner`: v1.0.2
**Benchmark infra — VM lifecycle** (`Measure-CIBenchmark.ps1`, 4 iter, template Windows):
| Phase | iter 1 | iter 2 | iter 3 | iter 4 | **media** |
| --------- | ------ | ------ | ------ | ------ | --------- |
| Clone (s) | 0.63 | 0.63 | 0.62 | 0.61 | **0.62** |
| Start (s) | 1.75 | 1.89 | 1.72 | 1.72 | **1.77** |
| IP (s) | 66.57 | 20.21 | 85.07 | 60.97 | **58.2** |
| WinRM (s) | 0.01 | 0.01 | 0.01 | 0.01 | **0.01** |
| Destroy(s)| 4.81 | 6.39 | 4.50 | 4.20 | **4.98** |
| Boot tot | 68.96 | 22.74 | 87.42 | 63.31 | **60.6** |
> Fase IP (2085 s) = costo dominante e variabile (detect IP via VMware Tools). Normale, non bloccante.
**Tempo medio per job** (smoke `self-test.yml`, Gitea Actions, Passo 6 Phase A):
| Template | Transport | Wall time |
| -------------- | --------------------- | --------- |
| WinBuild2025 | in-guest git clone | 26 s |
| WinBuild2025 | host-side clone + zip | 28 s |
| LinuxBuild2404 | in-guest git clone | 51 s |
| LinuxBuild2404 | host-side clone + zip | 46 s |
| **media Win** | | **27 s** |
| **media Linux**| | **49 s** |
**Success rate**: 100 % — burn-in 12/12 (3 round × 4 job concorrenti, Passo 7 Phase A).
> Questi valori sono il baseline di riferimento per il criterio B7 ("tempo medio entro ±20% baseline Windows"). Margini: Win ≤ 32 s, Linux ≤ 59 s.
---
## Quick Reference ## Quick Reference
| Symptom | First command | | Symptom | First command |
@@ -20,21 +20,21 @@ codice Python) né in [PhaseB-user-checklist.md](PhaseB-user-checklist.md)
Senza un baseline registrato, il confronto richiesto da B7 ("tempo Senza un baseline registrato, il confronto richiesto da B7 ("tempo
medio entro ±20% baseline Windows") è impossibile. medio entro ±20% baseline Windows") è impossibile.
- [ ] Eseguire benchmark sull'host Windows (post Fase A, runner Python attivo): - [x] Eseguire benchmark sull'host Windows (post Fase A, runner Python attivo):
```powershell ```powershell
cd <path-locale-repo> cd <path-locale-repo>
.\scripts\Measure-CIBenchmark.ps1 | Tee-Object -FilePath "baseline-windows-$(Get-Date -Format 'yyyyMMdd').txt" .\scripts\Measure-CIBenchmark.ps1 | Tee-Object -FilePath "baseline-windows-$(Get-Date -Format 'yyyyMMdd').txt"
``` ```
- [ ] Annotare in `docs/RUNBOOK.md` (sezione nuova "Windows host baseline"): - [x] Annotare in `docs/RUNBOOK.md` (sezione nuova "Windows host baseline"):
- Data - Data
- Tempo medio per job (Windows e Linux template) - Tempo medio per job (Windows e Linux template)
- Success rate - Success rate
- Versione `act_runner` e `ci_orchestrator` (output di `python -m ci_orchestrator --version` se disponibile, altrimenti SHA del commit) - Versione `act_runner` e `ci_orchestrator` (output di `python -m ci_orchestrator --version` se disponibile, altrimenti SHA del commit)
- Hardware: i9-10900X, 64 GB RAM, NVMe SSD (da `AGENTS.md`) - Hardware: i9-10900X, 64 GB RAM, NVMe SSD (da `AGENTS.md`)
- [ ] Committare: - [x] Committare:
```powershell ```powershell
git add docs/RUNBOOK.md git add docs/RUNBOOK.md
@@ -197,7 +197,7 @@ Questi non sono comandi, ma checkpoint prima di iniziare B1 e B6.
| Sezione | Descrizione | Stato | | Sezione | Descrizione | Stato |
| ------- | ---------------------------------------------- | ----- | | ------- | ---------------------------------------------- | ----- |
| 1 | Baseline benchmark salvato in `docs/RUNBOOK.md` | [ ] | | 1 | Baseline benchmark salvato in `docs/RUNBOOK.md` | [x] |
| 2.1 | Chiavi SSH presenti | [ ] | | 2.1 | Chiavi SSH presenti | [ ] |
| 2.2 | Password `BuildVMGuest` recuperata | [ ] | | 2.2 | Password `BuildVMGuest` recuperata | [ ] |
| 2.3 | Gitea PAT generato per `ci-runner-linux` | [ ] | | 2.3 | Gitea PAT generato per `ci-runner-linux` | [ ] |