diff --git a/TODO.md b/TODO.md index 147f687..10d9eb0 100644 --- a/TODO.md +++ b/TODO.md @@ -34,16 +34,16 @@ _Last updated: 2026-05-10 (post Sprint 7: §1.6/§3.2 done, test plan created)_ | [ ] | §3 Performance & throughput | 3 | 2 | 3.1/3.2/3.6 done; 3.3/3.5 backlog; 3.4 deferred | | [x] | §4 Osservabilità & manutenzione | 3 | 0 | 4.1/4.3/4.4 done (4.2 Prometheus, 4.5 Dashboard rimossi) | | [x] | §5 Qualità codice & test | 5 | 0 | 5.1/5.2/5.3/5.4/5.5 done | -| [ ] | §6 Scalabilità & estensioni | 0 | 6 | Linux VM, composite action, toolchain Tier-1 | +| [ ] | §6 Scalabilità & estensioni | 1 | 5 | 6.6 (Git+7-Zip) done; 6.1 (Linux), 6.2-6.5 (estensioni) TODO | | [ ] | §7 Refactor Deploy ↔ Setup | 4 | 1 | 7.1/7.2/7.3/7.4 done; 7.5 (rinomina) opzionale | | [ ] | In-VM Git Clone (§3.3) | 0 | 4 | dipende da §6.6 (Git+7-Zip nel template) | | [ ] | Linux Build VM (§6.1) | 0 | 4 | bozza in `docs/LINUX-TEMPLATE-SETUP.md` | **Prossimi passi consigliati** (vedi anche "Suggerimento di sequencing" in fondo): 1. **Test Plan** — eseguire `docs/TEST-PLAN-v1.3-to-HEAD.md` (25+ Pester tests, e2e validation) -2. **§6.6** — Toolchain Tier-1 in template (Git, 7-Zip, PowerShell 7, NSIS, CMake, Node.js, etc.) -3. **§3.3** — In-VM Git clone (`-UseGitClone` flag, dipende §6.6) -4. **§3.4** — Pre-warm pool di cloni (P3, solo se profilo dimostra bottleneck) +2. **§3.3** — In-VM Git clone (`-UseGitClone` flag, §6.6 Git+7-Zip ora in template) +3. **§6.6 expansion** — Toolchain Tier-2 (PowerShell 7, NSIS, CMake, Node.js, WiX, gh, Sysinternals, vcpkg) +4. **§3.4** — Pre-warm pool di cloni (P3, solo se profilo dimostra bottleneck) — deferred 5. **Security** — Rifiori se condizioni cambiano; vedi sezione "Deferred (Home Lab)" --- @@ -492,20 +492,26 @@ runs-on: ${{ matrix.target }}-build Per chiavi di firma (Authenticode, GPG), usare i Gitea secrets nel workflow e passarli a `Invoke-CIJob.ps1` come param + env, mai loggati. Stesso modello di §1.5 per il PAT. -### 6.6 [P2] [ ] Toolchain Tier-1 in Setup-WinBuild2025 +### 6.6 [P2] [~] Toolchain Tier-1 in Setup-WinBuild2025 File: [template/Setup-WinBuild2025.ps1](template/Setup-WinBuild2025.ps1). +**Status**: Git + 7-Zip implemented (Step 11, 2026-05-10); Tier-2 (8 tools) pending. + **Motivazione**: toolchain attuale (`.NET SDK`, `Python`, `VS Build Tools`) copre solo C#/Python/MSBuild. Aggiungere tools generici-CI riduce il bisogno di installazione ad-hoc nei workflow e abilita build più ampi senza toccare il template. -Tool da aggiungere come step `Setup-WinBuild2025` (ognuno con `Assert-Step`): +### Tier-1 (implementato) +- [x] **Git for Windows** (v2.47.0.windows.1) — Step 11, self-clone in VM +- [x] **7-Zip** (24.07) — Step 11, universal compression + fallback §3.2 + +### Tier-2 (backlog) — tool da aggiungere come ulteriori step `Setup-WinBuild2025` (ognuno con `Assert-Step`): | Tool | Versione | Razionale | | ------------------- | ----------------------- | -------------------------------------------------------------- | -| **Git for Windows** | latest LTS | Self-clone in VM (alt a host-zip-transfer), submodule fetch | -| **7-Zip** | latest | Universale unpack/zip; molti installer e workflow ne dipendono | -| **PowerShell 7.x** | latest LTS | Più veloce di 5.1, parallel pipelines, operatori moderni | +| **Git for Windows** | 2.47.0.windows.1 | [x] Self-clone in VM (alt a host-zip-transfer), submodule fetch | +| **7-Zip** | 24.07 | [x] Universale unpack/zip; molti installer e workflow ne dipendono | +| **PowerShell 7.x** | latest LTS | [ ] Più veloce di 5.1, parallel pipelines, operatori moderni | | **NSIS** | latest | Test build installer (es. `nsis-plugin-nsinnounp`) | | **CMake** | latest | Build system cross-platform per progetti C/C++ nativi | | **Node.js LTS** | latest LTS | Frontend/Electron pipelines, JS toolchain (npm) |