TechCare.psd1

@{
    RootModule           = 'TechCare.psm1'
    ModuleVersion        = '0.1.0'
    GUID                 = '3f7a1c92-5b64-4d18-9e2a-7c0d4b6a8f31'
    Author               = 'Eduard Arbona'
    CompanyName          = 'Eduard Arbona'
    Copyright            = '(c) 2026 Eduard Arbona. Licencia MIT.'
    Description          = 'Maintenance, repair, safe optimization and security review of Windows 10/11 for support technicians. Preview by default: nothing is changed without -Apply. Produces an HTML/JSON/TXT report per run. No telemetry, no required dependencies.'
    PowerShellVersion    = '5.1'
    CompatiblePSEditions = @('Desktop', 'Core')
    ProcessorArchitecture = 'None'

    FunctionsToExport = @(
        'Get-TechCareDiagnostics',
        'Get-TechCarePerformance',
        'Get-TechCareProfile',
        'Get-TechCareSecurity',
        'Invoke-TechCare',
        'Invoke-TechCareCleanup',
        'Invoke-TechCareRepair',
        'Invoke-TechCareUpdate',
        'New-TechCareReport',
        'Test-TechCarePrerequisite'
    )
    CmdletsToExport   = @()
    VariablesToExport = @()
    AliasesToExport   = @()

    PrivateData = @{
        PSData = @{
            Tags = @(
                'Maintenance', 'Repair', 'Security', 'Windows', 'Windows10', 'Windows11',
                'Winget', 'DISM', 'Technician', 'Diagnostics', 'Cleanup', 'Helpdesk',
                'PSEdition_Desktop', 'PSEdition_Core'
            )
            LicenseUri   = 'https://github.com/earbona23/TechCare/blob/main/LICENSE'
            ProjectUri   = 'https://github.com/earbona23/TechCare'
            IconUri      = 'https://raw.githubusercontent.com/earbona23/TechCare/main/assets/icon.png'
            ReleaseNotes = @'
0.1.0 - First public release.

Added
- Invoke-TechCare orchestrator with the Basic, Standard and Full presets.
- Modules Diagnose, Repair, Update, Cleanup, Performance, Security and Report,
  executed in a fixed order; a failing module never stops the run.
- Preview by default: without -Apply every module runs under -WhatIf, so nothing
  on the machine is modified. -Apply requires an elevated session.
- Restore point before applying, and a warning when the machine is joined to a
  domain, to Microsoft Entra ID or enrolled in Intune.
- Self-contained HTML report plus machine-readable JSON and a plain-text log.
- Platform guard: the package installs on Linux and macOS, but every module that
  touches a Windows API stops with an explicit message instead of raw errors.

Known limitations
- No reboot is ever triggered; reboots are reported as a recommendation.
- Invoke-TechCareRepair has no timeout: DISM and sfc run to completion.
- Windows Update is driven through the COM API, so it does not honour a WSUS
  target that is scoped by Group Policy to approved updates only.
'@

        }
    }
}