164 lines
10 KiB
Markdown
164 lines
10 KiB
Markdown
|
||
# Changelog
|
||
|
||
## [2.3.1] - 2026-08-26
|
||
### Added
|
||
- A real runtime-log write/read roundtrip to the WMI-free installer self-test and a durable startup verification record naming the active daily file.
|
||
- Regression coverage for startup fallback, append-time failover without record loss and total storage failure diagnostics.
|
||
- A dedicated PROD storage-validation runbook in Markdown and plain text.
|
||
|
||
### Changed
|
||
- Runtime logging now verifies actual writes and uses the deterministic fallback order ProgramData, LocalAppData, executable-local `Logs`, then Temp.
|
||
- **Log Folder** opens the currently verified path; fallback and total failure diagnostics include attempted paths and exceptions in the Operation Log grid.
|
||
|
||
### Fixed
|
||
- Successful directory creation can no longer be mistaken for working file logging when the subsequent append is denied.
|
||
- Runtime append failures are no longer swallowed silently; the failed record is retried on the next local candidate and a durable/visible warning is emitted.
|
||
|
||
## [2.3.0] - 2026-08-26
|
||
### Added
|
||
- Process-local, assembly-identity-checked resolution and preflight for ScheduledTask `scheduler:` receive locations, including automatic BizTalk/adapter directory and registry discovery plus an explicit configuration override.
|
||
- Persistent Operation Log grid restoration from retained plain and GZip-compressed daily logs.
|
||
- **Log Folder** action and a dedicated PROD validation/support runbook in Markdown and plain text.
|
||
- Regression coverage for Scheduler plan metadata, assembly identity rejection, restart persistence, compression, 30-day retention and detailed exception diagnostics.
|
||
|
||
### Changed
|
||
- Runtime logs now retain 30 calendar days and compress completed daily files instead of deleting everything older than five days.
|
||
- Grid, result JSON and file logs now preserve exception type, HRESULT, inner exceptions, Fusion loader details and stack traces for support analysis.
|
||
|
||
### Fixed
|
||
- ScheduledTask 7.0.2 receive locations can resolve `Microsoft.BizTalk.Scheduler.dll` from the installed BizTalk environment before WMI `Enable`/`Disable`, without requiring the management tool to mutate the GAC.
|
||
|
||
## [2.2.4] - 2026-08-24
|
||
### Fixed
|
||
- Permission, Windows Script Host, validation and rollback errors affecting the optional all-users desktop shortcut no longer abort installation, update or uninstallation.
|
||
- Failure to capture or restore the optional desktop shortcut can no longer prevent restoration of mandatory registry, Start menu and uninstaller state.
|
||
|
||
### Changed
|
||
- The all-users desktop shortcut is now opt-in and unchecked by default.
|
||
- Optional desktop warnings are visible in the setup UI and durable log, while completion remains successful with an explicit warning result.
|
||
|
||
### Added
|
||
- Failure-injection coverage proving that both an optional shortcut exception and a failing warning sink remain non-fatal.
|
||
- Dedicated operator and maintainer documentation for the optional Windows-integration boundary.
|
||
|
||
## [2.2.3] - 2026-08-24
|
||
### Fixed
|
||
- A persistent Windows/EDR denial of the final staging-directory rename no longer aborts activation after an existing installation has already been atomically moved to its backup.
|
||
- The SHA-256-verified copy fallback now covers both first installation and update activation, while refusing to overwrite an existing target or an update without a completed backup.
|
||
|
||
### Added
|
||
- Regression coverage for successful update copy fallback and complete restoration of the previous version when the post-copy target self-test fails.
|
||
- PROD incident analysis and a plain-text operator handoff for the observed 2.1.2 `SETUP-ACTIVATION` failure.
|
||
|
||
## [2.2.2] - 2026-08-19
|
||
### Fixed
|
||
- A failure in the optional GUI log sink can no longer escape step-level error handling or stop later independent shutdown/restore steps.
|
||
|
||
### Added
|
||
- Failure-injection coverage for multiple consecutive unexpected exception types and a permanently failing log-display sink.
|
||
|
||
## [2.2.1] - 2026-08-19
|
||
### Added
|
||
- WMI-free **Validate State** preflight with snapshot metadata, server matching and artifact counts.
|
||
- Direct **State...** file selection for a preserved recovery snapshot.
|
||
- Automatic timestamped JSON/CSV/HTML target/actual diff after a real Emergency Restore.
|
||
- Regression coverage proving that a `before.json` created by version 2.1.3 remains a valid Emergency Restore source.
|
||
|
||
### Changed
|
||
- Emergency-recovery documentation now provides a dedicated operator runbook for the ACC restart and explicitly distinguishes dry-run evidence from real execution evidence.
|
||
|
||
## [2.2.0] - 2026-08-19
|
||
### Added
|
||
- State-aware **Emergency Restore** from an existing `before.json` without overwriting the recovery source.
|
||
- Enterprise Single Sign-On (`ENTSSO`) startup as the first emergency-recovery prerequisite.
|
||
- Durable per-step `shutdown-result.json`, `restore-result.json` and timestamped emergency result reports.
|
||
- Regression coverage for the ACC `Microsoft.BizTalk.Scheduler` failure, best-effort continuation, already-satisfied states, emergency ordering and global cross-application ordering.
|
||
|
||
### Changed
|
||
- Shutdown and restore continue with remaining independent steps after an isolated WMI or adapter failure and finish with an explicit operator-review result.
|
||
- Runtime operations skip artifacts that already match the requested target state, making recovery from partial shutdowns idempotent.
|
||
- Post-operation snapshots are attempted and diagnosed independently after partial execution failures.
|
||
- Shutdown order is now global across all applications: receive locations, orchestrations, send ports, then host instances.
|
||
- Restore order is now global across all applications: host instances, send ports, orchestrations, then receive locations.
|
||
|
||
### Fixed
|
||
- An ACC shutdown no longer aborts every later step when `RV_PMP_Trigger_Schedule` fails validation because `Microsoft.BizTalk.Scheduler` or a dependency cannot be loaded.
|
||
- A partial shutdown no longer prevents recovery evidence from being written after the first failed step.
|
||
- Host-instance steps no longer treat the short name and FQDN of the same target server as different machines.
|
||
|
||
## [2.1.3] - 2026-08-11
|
||
### Added
|
||
- Bounded retry/backoff diagnostics for transient `Directory.Move` locks caused by the Windows loader, antivirus or endpoint protection.
|
||
- A SHA-256-verified copy activation fallback limited to first-time installations with no existing active version.
|
||
- Regression coverage for transient recovery, permanent new-install fallback and permanent update denial without mutation.
|
||
- ACC incident analysis and an AI maintainer handoff document.
|
||
|
||
### Changed
|
||
- Install, update, rollback and uninstall directory moves now use eight bounded attempts over at most 19.75 seconds.
|
||
- Setup completion logs record the activation method and preservation state of both backup and staging directories.
|
||
- Product and setup version advanced to 2.1.3.
|
||
|
||
## [2.1.2] - 2026-08-11
|
||
### Added
|
||
- Complete XML documentation for types and methods across application, setup, packager and regression projects, including parameters, generic type parameters and return values.
|
||
- Focused German inline comments for non-obvious BizTalk ordering, WMI compatibility, persistence, security and installer transaction decisions.
|
||
- XML documentation output in every Release project configuration for compiler-side validation.
|
||
|
||
### Changed
|
||
- README, technical documentation and installation/build guidance now describe the source-documentation standard and generated XML developer artifacts.
|
||
|
||
## [2.1.1] - 2026-08-11
|
||
### Added
|
||
- Stable setup/uninstall phase codes, environment and file metadata, complete self-test output, exception chains with HRESULT/stacktrace, and per-step rollback diagnostics.
|
||
- Installer-log fallback from ProgramData to Temp plus a setup button for opening diagnostic logs.
|
||
- Post-write verification of shortcuts, uninstall executable and essential uninstall-registry values.
|
||
- Regression coverage for pre-mutation rollback wording, diagnostic context, log fallback and UI-report isolation.
|
||
|
||
### Changed
|
||
- Pre-mutation failures now explicitly report that no rollback was required; completed rollbacks are only reported as successful when every restoration step succeeded.
|
||
- Self-test timeout handling is bounded after termination is requested and records kill/capture status.
|
||
- Technical installer acceptance is explicitly separated from BizTalk WMI/environment validation.
|
||
- Setup and uninstall preserve undeletable backup/quarantine data and record a successful completion with a cleanup warning.
|
||
|
||
## [2.1.0] - 2026-08-11
|
||
### Added
|
||
- Transactional Windows setup/updater with SHA-256 payload manifest, isolated staging, pre/post activation self-tests, rollback, shortcuts and uninstall registration.
|
||
- Certutil-compatible installer ZIP as Base64 TXT plus separate ZIP SHA-256 file.
|
||
- WMI-free application self-test and regression test project covering persistence, diffs, restore safety, CSV hardening and installer rollback.
|
||
- UAC manifest and single-instance protection for the management application.
|
||
|
||
### Changed
|
||
- Snapshot and plan JSON writes now replace files atomically and keep BOM-tolerant reads.
|
||
- Snapshot diffs identify artifacts by application and name.
|
||
- Restore planning rejects snapshots from a different target server.
|
||
- Real shutdown/restore requires confirmation of the fully prepared and saved plan.
|
||
- Runtime logs are written to `%ProgramData%\BizTalkPlatformManagementTool\Logs` with executable-directory fallback.
|
||
- WMI query objects and WMI method output objects are disposed deterministically.
|
||
- CSV exports neutralize formula-like cell prefixes.
|
||
|
||
## [Unreleased] - 2026-04-27
|
||
### Changed
|
||
- Projekt auf `BizTalkPlatformManagementTool` umbenannt.
|
||
- Solution, Projektdatei, Namespace, Assemblyname und Standard-Ausgabepfad angepasst.
|
||
- Dokumentation aktualisiert und `Installation.md` ergänzt.
|
||
|
||
## [1.3.0] - 2026-02-02
|
||
### Added
|
||
- HTML Report mit farblicher Kennzeichnung (grün/rot)
|
||
- Farbige Statusausgabe auf STDOUT
|
||
- Remote‑Server Parameter (-Server) und Ausgabeverzeichnis (-OutDir)
|
||
- Verbesserte Diff‑Erkennung (neu/entfernt)
|
||
|
||
## [1.2.0] - 2026-02-02
|
||
### Added
|
||
- Remote‑fähige Snapshot‑Funktion, Logging (Konsole + Datei)
|
||
|
||
## [1.1.0] - 2026-02-02
|
||
### Added
|
||
- Textuelle Diff‑Ausgabe auf STDOUT + HTML Report
|
||
|
||
## [1.0.0] - 2026-02-02
|
||
### Added
|
||
- Grundfunktion: Snapshot & Diff (Receive Locations, Send Ports, Orchestrations)
|