Skip to content

feat: sync unattend engine to bf13991 — drop WDAC, add PE image/dism options, v0.1.4-alpha polish - #28

Merged
kYaRick merged 7 commits into
mainfrom
kya-unattend-sync
Jun 1, 2026
Merged

feat: sync unattend engine to bf13991 — drop WDAC, add PE image/dism options, v0.1.4-alpha polish#28
kYaRick merged 7 commits into
mainfrom
kya-unattend-sync

Conversation

@kYaRick

@kYaRick kYaRick commented Jun 1, 2026

Copy link
Copy Markdown
Owner

📝 Summary

Re-syncs the vendored cschneegans/unattend-generator engine to upstream bf13991
(2026-05-22) and adapts the app to its reworked API, plus a round of UX polish and a
version bump to v0.1.4-alpha.

Engine / generator:

  • Vendored sync of srcs/Preflight.Unattend/ to upstream bf13991 (mechanical
    re-copy; csproj customizations preserved, NOTICE records the SHA).
  • WDAC removed end-to-end — upstream dropped WDAC support, so the model, Advanced
    section, mapper, registry entry, resx strings and docs are gone.
  • Disk/PE adapter rewritten onto upstream's new IPESettings: partitioning, install
    image and the dism step now nest under Configuration.PESettings. MapDisk
    MapPe (Interactive → DefaultPESettings, AutoWipe/CustomScript → GeneratePESettings).
  • New PE options wired that were previously stubs: install-image "Ask during
    setup"
    mode + "Skip image integrity check" toggle, Compact OS, Disable Defender,
    8.3-name + pause toggles. Dropped the now-unsupported "recovery inside Windows
    partition" option and the install-partition index.

UX / polish:

  • Header pins flush to the viewport top on scroll (removes a dark band + content leak
    that the old gap-cloak strip caused over the ambient glow).
  • Restored the wizard step progress wave (S-curve track + plane on offset-path)
    after it had been flattened to a plain line.
  • Docs/landing/guide layout, scroll, theme and view-transition JS refinements.
  • Delta-package support in the release workflow.

🏷️ Type of change

  • feat - new feature
  • 🐛 fix - bug fix
  • 📚 docs - documentation
  • ♻️ refactor - code change, no new feature / no fix
  • 🚀 perf - performance improvement
  • 🧪 test - add or fix tests
  • 🧹 chore - tooling, config, CI, deps

💬 Notes for reviewers

  • Vendored tree policy: behavior changes live in Preflight.App/Services adapters,
    never in srcs/Preflight.Unattend/. The sync was a mechanical copy; AssemblyName= UnattendGenerator is load-bearing (Bloatware.json $type) and was preserved.
  • WDAC was removed deliberately (follows upstream), not deprecated — old configs with
    a Wdac key still import (deserializer skips unknown members; the importer's try/catch
    degrades a stale removed-enum value to a warning rather than crashing).
  • New PE options (image selection, dism integrity, Compact OS, Defender) only take effect
    when the disk is managed (auto-wipe / custom script) — inherent to the upstream PE design.
  • Test Disk_AutoWipe_* was rewritten: the engine now emits a PE .cmd diskpart script
    instead of <DiskConfiguration>/<InstallTo>. Added coverage for /Index:, /Name:
    and the /CheckIntegrity toggle.
  • This branch also folds in some unrelated UI/JS polish and the delta-package release
    change; reviewers may want to skim those commits separately.
  • Verification: dotnet build Preflight.slnx clean (0 warnings), 35/35 tests pass.

kYaRick added 6 commits June 1, 2026 13:39
- Updated Optimizations.cs to streamline the disabling of Windows Defender by removing unnecessary checks and scripts.
- Removed Wdac.cs and associated resources as they are no longer needed.
- Deleted DisableDefender.vbs and known-writeable-folders.txt as part of the cleanup.
- Simplified ProductKey.cs by removing unused interfaces and logic related to installation settings.
- Adjusted autounattend.xml to remove obsolete ImageInstall section.
- Enhanced UnattendXmlBuilderTests to cover new disk handling and source image selection scenarios.
- Added a filter for a glow effect on the SVG trail in index.html to enhance visual appeal.
- Refactored scroll.js to improve scroll detection and smooth scrolling behavior, ensuring the "go-top" button works correctly with inner scrollable elements.
- Updated theme.js to remove unnecessary animations on page transitions, relying on the native View Transitions API for smoother navigation.
- Implemented a click interceptor in view-transitions.js to manage internal navigation with a crossfade effect, improving user experience during SPA transitions.
@kYaRick kYaRick self-assigned this Jun 1, 2026
@kYaRick
kYaRick merged commit 7722569 into main Jun 1, 2026
2 checks passed
@kYaRick
kYaRick deleted the kya-unattend-sync branch July 3, 2026 09:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant