diff --git a/web/spec/index.html b/web/spec/index.html
index eb4cef9..8cc0b8c 100644
--- a/web/spec/index.html
+++ b/web/spec/index.html
@@ -520,8 +520,8 @@
Specifikace & anotace
@@ -599,9 +599,10 @@
7-Zip (7zip.7zip) | OK |
Adobe Acrobat Reader 64-bit (Adobe.Acrobat.Reader.64-bit) | OK |
OpenVPN Connect (OpenVPNTechnologies.OpenVPNConnect) | OK |
- | Atera Agent install | Invoke-WebRequest + msiexec /i /qn |
- | Adobe PDF default: .pdf -> AcroRd32 po instalaci | OK – UCPD stop/start kolem zápisu asociace |
- | UCPD.sys (kernel driver, od Feb 2024) blokuje UserChoice | Reseno: Stop-Service ucpd → HKCR zapis → Start-Service ucpd |
+ | Atera Agent install | Invoke-WebRequest + msiexec /i /qb – /qb umozni zobrazeni MFA okna |
+ | Adobe PDF default: .pdf -> AcroRd32 po instalaci | OK – UCPD stop/start kolem zapisu asociace |
+ | UCPD.sys (kernel driver, od Feb 2024) blokuje UserChoice | Stop-Service ucpd + 2s sleep + overeni zastaveni pred HKCR zapisem |
+ | Winget parallel joby: timeout 600s + kill zavislych | Wait-Job -Timeout 600; po vyprseni Kill + Remove zavislych jobu |
| Winget cesta explicitne predavana do parallel jobu | Opraveno – Start-Job nezdedi PATH; winget.exe fullpath preda jako argument. Exit 3010 (success+reboot) nyni vyhodnocen jako OK. |
@@ -728,7 +729,7 @@
| OA3 BIOS/UEFI klic – kontrola embedded key | WMI: SoftwareLicensingService.OA3xOriginalProductKey |
Klic z config.json (activation.productKey) | OK – priorita nad OA3 a GVLK |
- | Fallback na GVLK (KMS client key) dle edice OS | OK |
+ | Fallback na GVLK (KMS client key) dle EditionID | Registry EditionID (nelokalizovany) misto Win32_OperatingSystem.Caption |
Volitelny KMS server (activation.kmsServer) | OK |
| Preskocit pokud jiz aktivovano | OK |
| Typ klice: MAK vs KMS vs retail? | Zavisi na klientovi – otevrena otazka |
@@ -821,13 +822,13 @@
| Instalace NuGet providera + PSWindowsUpdate modulu ze PSGallery | Install-PackageProvider + Install-Module PSWindowsUpdate -Force |
| Prvni pruchod aktualizaci (bez rebootu) | Install-WindowsUpdate -AcceptAll -IgnoreReboot |
- | X9-WindowsUpdate scheduled task – pokracovani po restartu | Bezi pri kazdem logonu jako SYSTEM; po pruchodu bez novych update se task sam smaze |
+ | Reboot cyklus (exit 9) – pokracovani pres xetup resume | Exit 9 = reboot needed; xetup ulozi stav, nastavi autologon + X9-Resume task, restartuje |
| Automaticky restart po skonceni deploymetu (GUI odpocet) | xetup.exe zobrazi 60s odpocet + tlacitka "Restartovat ted" / "Zrusit restart" |
- Windows Update typicky vyzaduje vice restartovacich kolu. Prvni pruchod probehne behem deploymetu,
- dalsi kola zaridti scheduled task, ktery se po dokonceni sam odregistruje.
- Pozor: Prvni restart spusti jak Windows Update task, tak Dell firmware staging (krok 11).
+ Windows Update typicky vyzaduje vice restartovacich kolu. Kazdy pruchod skonci exit 9 (dalsi updaty) nebo exit 0 (hotovo).
+ xetup resume cyklus automaticky opakuje az do uplne aktualizace. Max 5 rebootu na krok (ochrana proti smycce).
+ Pozor: Prvni restart spusti jak Windows Update, tak Dell firmware staging (krok 11).
@@ -888,7 +895,9 @@
Struktura: cmd/xetup/,
internal/config/,
internal/gui/,
internal/runner/
Go zavislosti: github.com/lxn/walk (Win32 GUI), golang.org/x/sys
Build: CGO_ENABLED=1 CC=x86_64-w64-mingw32-gcc GOOS=windows GOARCH=amd64 go build -ldflags="-s -w -H windowsgui" ./cmd/xetup/
- CI (Forgejo Actions) sestavi a publikuje automaticky pri kazdem push na main.
+ CI (Forgejo Actions) sestavi a publikuje automaticky pri kazdem push na main.
+
Spolehlivost (v0.6): Watchdog zabiji zavisle skripty po 30 min ticha. Reboot-loop ochrana omezi opakovani kazdeho kroku na 5 restartu.
+ State file se zapisuje atomicky (tmp+rename). E-mail report se zkusi 3x s backoff a vzdy ulozi lokalni HTML kopii.