بنقرة واحدة
review-ps
Self-review PowerShell code against the project's PS7 conventions before reporting work as done.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Self-review PowerShell code against the project's PS7 conventions before reporting work as done.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Pattern playbook for adding bridge methods to the taxonomy-editor dual-build architecture. Self-certify against this pattern to skip TL design review.
Pattern playbook for adding fault injection tests using FaultHarness. Self-certify against this pattern to skip TL design review.
Pattern playbook for adding REST endpoints to the taxonomy-editor server. Self-certify against this pattern to skip TL design review.
Self-review TypeScript/Electron code against the project's TypeScript Stack Code Review Guide. Run before reporting work as done.
Self-review Python code against the project's Python Packages Code Review Guide. Run before reporting work as done.
| name | review-ps |
| description | Self-review PowerShell code against the project's PS7 conventions before reporting work as done. |
Run this checklist against all changed .ps1 / .psm1 files before reporting work as done.
Set-StrictMode -Version Latest is set (or inherited from caller)$obj.PSObject.Properties['prop'] guardsWhere-Object pipelines wrapped in @() before .Count.Count on raw ConvertFrom-Json arrays — wrap in @()if/else assignmentsAITriad.psm1 Export-ModuleMember AND AITriad.psd1 FunctionsToExportTest-ModuleManifest -Path scripts/AITriad/AITriad.psd1 passesNew-ActionableError with Goal, Problem, Location, NextStepsthrow "message" — always throw (New-ActionableError ...)$ErrorActionPreference = 'Stop' in cmdlets that need itGet-Verb to check)Public/, helpers in Private/[CmdletBinding()] on all public functionsSupportsShouldProcess for any function that modifies dataPrompts/*.prompt, loaded via Get-Prompt — not inline[ValidateScript({ Test-AIModelId $_ })]Resolve-AIApiKey uses -ExplicitKey and -Backend (not -ApiKey/-Model)gemini-3.1-flash-liteGet-TaxonomyDir, Get-SourcesDir, etc. — no hardcoded Join-PathNew-Slug[PSCustomObject] for reusable return typesAITriad.psm1 when used by multiple commands$null = or [void]Write-Host for user-facing output, not Write-Output (which pollutes pipeline)Write-Progress with -Id to avoid conflictsForEach-Object -Parallel blocks explicitly Import-Module needed modulesConcurrentBag, ConcurrentDictionary) for shared state[System.Threading.Interlocked]::Increment for countersInvoke-Pester ./tests/ passes (373+ tests, 0 failures)Invoke-Pester ./tests/ -Output Minimal
Test-ModuleManifest -Path ./scripts/AITriad/AITriad.psd1
Both must pass before reporting complete.