docs: Windows host compat is a categorical constraint (B8 cancelled)
User requirement (non-negotiable): the project must stay first-class compatible with a Windows host permanently — Phase B adds Linux *alongside* Windows, never replacing/degrading it. - implementation-plan-A-B §2: categorical-constraint banner; B8 decommissioning cancelled (kept only as historical record); master checklist B8 row updated. - PhaseB-user-checklist: Passo 9 (B8) cancelled -> dual-host kept; Passo 8 no longer a decommission gate; tracking table + closing note updated. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -99,8 +99,8 @@ A4; cambiano solo path/env vars in Fase B).
|
||||
- [ ] [B6] Rsync incrementale finale `F:\CI\Artifacts\` → `/var/lib/ci/artifacts/`
|
||||
- [ ] [B6] Trigger smoke workflow + `build-ns7zip.yml` matrix da host Linux PASS
|
||||
- [ ] [B7] Eseguire burn-in 4 job concorrenti × 10 round su template Windows e Linux con tempi entro ±20% baseline
|
||||
- [ ] [B8] Backup finale di `F:\CI\` su archivio
|
||||
- [ ] [B8] Lasciare host Windows spento ma reinstallato per ≥1 mese come rollback
|
||||
- [ ] [B8] (Facoltativo) Backup periodico di `F:\CI\`
|
||||
- [x] [B8] ~~Decommissioning host Windows~~ **ANNULLATO** — vincolo categorico: host Windows supportato in permanenza (dual-host), non dismesso
|
||||
- [ ] [X1] Aggiornare `lint.yml` per girare ruff + mypy + pytest oltre a PSSA
|
||||
- [ ] [X2] Aggiungere observability: log strutturato `logging` + journald handler in Fase B
|
||||
- [ ] [X3] Documentare gestione credenziali headless (DPAPI machine scope su Win, vault `age` su Linux)
|
||||
@@ -384,6 +384,16 @@ qualche caller esterno non ancora migrato emerge.
|
||||
|
||||
## 2. Fase B — Migrazione host Linux Mint
|
||||
|
||||
> **VINCOLO CATEGORICO (non negoziabile): compatibilità host Windows
|
||||
> permanente.** Fase B **aggiunge** il supporto host Linux **accanto**
|
||||
> a Windows — non lo sostituisce né lo degrada. Windows host resta un
|
||||
> target di **prima classe** e supportato, NON solo rollback. In
|
||||
> concreto: **B8 NON va eseguito come rimozione reale** (l'host Windows
|
||||
> resta operativo/usabile); nessun assunto Linux-only nel codice
|
||||
> condiviso; la rimozione shim (B5) deve lasciare un modo Windows-nativo
|
||||
> di invocare la CLI Python; ogni modifica Fase B deve dichiarare
|
||||
> l'impatto su host Windows e preferire parità dual-host.
|
||||
>
|
||||
> **Parallelizzazione**: B1 può iniziare durante A3/A4 (setup hardware
|
||||
> indipendente dal codice). B2, B3 possono iniziare appena B1 è done e
|
||||
> A5 è done. B4–B6 sono **strettamente sequenziali** dopo "A done".
|
||||
@@ -697,20 +707,23 @@ fallisce, rollback a Windows (vedi B6 rollback).
|
||||
- [ ] Tempi documentati
|
||||
- [ ] Nessuna VM orfana
|
||||
|
||||
### B8 — Decommissioning host Windows (opzionale)
|
||||
### B8 — ~~Decommissioning host Windows~~ — ANNULLATO (vincolo categorico)
|
||||
|
||||
**Obiettivo**: dopo ≥1 settimana di stabilità, dismettere host Windows.
|
||||
> **B8 NON va eseguito.** Vincolo categorico: l'host Windows resta
|
||||
> supportato di prima classe in modo permanente (non solo rollback).
|
||||
> Niente dismissione, niente riallocazione hardware che rimuova la
|
||||
> capacità di girare su host Windows. Questo step resta solo come
|
||||
> record storico del piano originale.
|
||||
|
||||
**Input / dipendenze**: B7 done + ≥1 settimana di esercizio Linux
|
||||
senza incidenti.
|
||||
**Obiettivo (annullato)**: ~~dopo ≥1 settimana di stabilità, dismettere
|
||||
host Windows.~~ → Host Windows mantenuto operativo a regime.
|
||||
|
||||
**Attività**:
|
||||
**Attività (NON eseguire la dismissione; resta solo, se utile):**
|
||||
|
||||
- [ ] Backup finale di `F:\CI\` su archivio esterno (`tar` + checksum)
|
||||
- [ ] Spegnimento runner Windows (`Stop-Service actions-runner`, runner già fermo da B6)
|
||||
- [ ] Lasciare host Windows installato ma spento per ≥1 mese come rollback
|
||||
- [ ] Documentare procedura di riaccensione in `docs/RUNBOOK.md`
|
||||
- [ ] Dopo 1 mese: riallocare hardware se non ci sono stati rollback
|
||||
- [ ] (Facoltativo) Backup periodico di `F:\CI\` su archivio esterno
|
||||
- [ ] Host Windows **resta installato e utilizzabile** (run dual-host)
|
||||
- [ ] Documentare in `docs/RUNBOOK.md` come usare entrambi gli host
|
||||
- [ ] ~~Riallocare hardware~~ — NON applicabile (Windows host permanente)
|
||||
|
||||
**Hook futuri Fase C**: nessuno.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user