AI Instructions for AtlassianPS.Configuration

Canonical AI guidance for this repository. CLAUDE.md, GEMINI.md, .github/copilot-instructions.md, .github/instructions/*.instructions.md, and .cursor/rules/*.mdc must stay aligned with this file.

Non-Negotiable Rules

  1. Ship complete vertical slices: code, tests, docs, and changelog updates move together.
  2. Use the right test loop: during iteration, run targeted Invoke-Pester for affected tests when possible (for example Invoke-Pester -Path 'Tests/Functions/Get-Configuration.Unit.Tests.ps1').
  3. Do not finish on a red build: run Invoke-Build -Task Build, Test at minimum before completion.
  4. Preserve persisted configuration compatibility: do not break existing Configuration.psd1 data.
  5. Use existing wrappers/helpers: no ad-hoc config persistence or direct command bypasses.
  6. Validate behavior changes with tests: update or add tests under Tests/.

AI Tool Compatibility

Tool Entry point Canonical references
GitHub Copilot .github/copilot-instructions.md AGENTS.md, .github/ai-context/powershell-rules.md
GitHub Copilot (file rules) .github/instructions/configuration-compatibility.instructions.md .github/ai-context/powershell-rules.md
Cursor .cursor/rules/atlassianps-configuration.mdc AGENTS.md, .github/ai-context/powershell-rules.md
Claude Code CLAUDE.md AGENTS.md, .github/ai-context/powershell-rules.md
Gemini/Antigravity GEMINI.md AGENTS.md, .github/ai-context/powershell-rules.md

Repository Surfaces

Configuration Schema and Compatibility Requirements

Wrapper and Helper Requirements

Validation Commands (run from repo root)

./Tools/setup.ps1
Invoke-Build -Task Lint
Invoke-Build -Task Build, Test

Recommended focused loop while iterating:

Invoke-Pester -Path 'Tests/Functions/Get-Configuration.Unit.Tests.ps1'

CI/CD References