iFacto.AICodeReview.psd1

@{
    # Script module or binary module file associated with this manifest.
    RootModule = 'iFacto.AICodeReview.psm1'
    
    # Version number of this module.
    ModuleVersion = '0.1.4'
    
    # ID used to uniquely identify this module
    GUID = '7e4b8c5d-3a2f-4e9b-8c1d-5f6a7b8c9d0e'
    
    # Author of this module
    Author = 'waldo'
    
    # Company or vendor of this module
    CompanyName = 'Dynex bv'
    
    # Copyright statement for this module
    Copyright = '(c) 2026 Dynex bv. All rights reserved.'
    
    # Description of the functionality provided by this module
    Description = 'AI-powered code review system for Business Central (AL) development in Azure DevOps pipelines. Model-agnostic design supports Azure AI Foundry, Claude, OpenAI, GitHub Models, and more. Provides automated PR reviews with actionable feedback as Azure DevOps warnings/errors.'
    
    # Minimum version of the PowerShell engine required by this module
    PowerShellVersion = '7.0'
    
    # Modules that must be imported into the global environment prior to importing this module
    RequiredModules = @()
    
    # Assemblies that must be loaded prior to importing this module
    RequiredAssemblies = @()
    
    # Script files (.ps1) that are run in the caller's environment prior to importing this module.
    ScriptsToProcess = @()
    
    # Type files (.ps1xml) to be loaded when importing this module
    TypesToProcess = @()
    
    # Format files (.ps1xml) to be loaded when importing this module
    FormatsToProcess = @()
    
    # Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export.
    FunctionsToExport = @(
        'Invoke-AICodeReview',
        'Get-ChangedALFiles',
        'ConvertTo-ADOLogFormat',
        'Test-AICodeReview'
    )
    
    # Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export.
    CmdletsToExport = @()
    
    # Variables to export from this module
    VariablesToExport = @()
    
    # Aliases to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no aliases to export.
    AliasesToExport = @()
    
    # Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell.
    PrivateData = @{
        PSData = @{
            # Tags applied to this module. These help with module discovery in online galleries.
            Tags = @(
                'AL',
                'BusinessCentral',
                'CodeReview',
                'AI',
                'AzureDevOps',
                'Claude',
                'OpenAI',
                'GPT',
                'DevOps',
                'CICD',
                'PullRequest',
                'StaticAnalysis',
                'Azure'
            )
            
            # A URL to the license for this module.
            # LicenseUri = ''
            
            # A URL to the main website for this project.
            # ProjectUri = ''
            
            # A URL to an icon representing this module.
            # IconUri = ''
            
            # ReleaseNotes of this module
            ReleaseNotes = @'
# Release Notes - v0.1.0
 
## Initial Release
 
### Features
- Model-agnostic AI code review (supports Azure AI Foundry, Claude, OpenAI, GitHub Models)
- Native git diff extraction for changed AL files
- Azure DevOps logging command integration
- Configurable severity levels (error, warning, info)
- Retry logic for transient API failures
- Multi-tier JSON response parsing with fallback
- Local test harness for development
 
### Supported Providers
- Azure AI Foundry (unified model catalog)
- Azure OpenAI Service
- Anthropic Claude API
- OpenAI API (direct)
- GitHub Models (free tier)
 
### Configuration
- JSON-based model configuration
- Markdown-based review rules
- Customer override support
- Environment variable-based API keys
 
### Testing
- Pester unit tests for all public functions
- Integration tests with mocked responses
- Test harness for local development
 
For full documentation, see the DevOps Templates repository.
'@

            
            # Prerelease string of this module
            # Prerelease = 'alpha'
            
            # Flag to indicate whether the module requires explicit user acceptance for install/update/save
            # RequireLicenseAcceptance = $false
            
            # External dependent modules of this module
            # ExternalModuleDependencies = @()
        }
    }
    
    # HelpInfo URI of this module
    # HelpInfoURI = ''
    
    # Default prefix for commands exported from this module. Override the default prefix using Import-Module -Prefix.
    # DefaultCommandPrefix = ''
}