mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-02-18 00:17:39 +01:00
After merging 44 parallel feature branches into pulse/v6, ~33 test packages broke due to interface changes, new validation requirements, and cross-branch conflicts. This commit fixes all failures to restore 82/82 packages passing. Production fixes: - notifications: call normalizeEmailConfig in SetEmailConfig, fix CancelByAlertIDs missing completed_at/next_retry_at, fix performCleanup FK constraint (delete audit rows first), fix Stop() deadlock (release mutex before waiting on cleanupDone) - relay: store startupErr in Client struct, preserve nil LicenseTokenFunc/TokenValidator instead of replacing with stubs, trim license token in register - agentexec: add RequestID length validation before agent lookup, add shutdown case to ReadFile select - discovery: skip invalid subnet tokens instead of rejecting all - sensors: return error on invalid thermal fallback value - monitoring: wire in sanitizeSSHCommandError for SSH errors - hostagent: use readProcMDStat in listArrayDevices/getRebuildSpeed - mock: fix disableMockMode double-unlock (use stopUpdateLoop) - models: preserve non-nil empty slices in state snapshots Test fixes: - Add ?org_id=default to websocket test URLs (tenant isolation) - Update test expectations for tightened org token access - Fix SAML route inventory (prefix-based bypass, not exact match) - Update error message expectations for wrapped errors - Fix nil pointer in NVMe SMART test (value→pointer type change) - Fix PulseURL in hostagent tests (loopback required for HTTP) - Remove duplicate/conflicting test files from parallel branches - Reconcile contradictory buffer capacity test expectations