You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Implemented on milestone/m7-ssdt-parity (commit f3a7639). New public IPgRule contract + RulePackLoader (discovers rules from assemblies or DLL paths via an isolated AssemblyLoadContext that shares PgProj.Core so the contract type unifies and the pack's private deps resolve next to it). .pgproj.analysis.json gains a rulePacks array; AnalysisSetup.Resolve two-passes so pack rule ids are configurable in the rules block / via --rule like built-ins; ExternalRules.Run applies enable/severity by id. Wired into analyze (human/json/sarif) + the build/publish/validate gate. Doc: docs/ANALYSIS_RULES.md. 7 unit tests (discovery, isolated path-load, config disable/severity, sidecar parse, end-to-end resolve); full suite 25,042 pass / 0 fail, LSP 16 pass.
EP-ANALYSIS+ (#67) now has only #81 (grow the built-in rule set) remaining — open-ended.
Activity
feat(analyze): external rule packs — IPgRule + RulePackLoader + ruleP…
ilijevicdenis commentedon Jun 7, 2026
Implemented on
milestone/m7-ssdt-parity(commitf3a7639). New publicIPgRulecontract +RulePackLoader(discovers rules from assemblies or DLL paths via an isolatedAssemblyLoadContextthat sharesPgProj.Coreso the contract type unifies and the pack's private deps resolve next to it)..pgproj.analysis.jsongains arulePacksarray;AnalysisSetup.Resolvetwo-passes so pack rule ids are configurable in therulesblock / via--rulelike built-ins;ExternalRules.Runapplies enable/severity by id. Wired intoanalyze(human/json/sarif) + the build/publish/validate gate. Doc:docs/ANALYSIS_RULES.md. 7 unit tests (discovery, isolated path-load, config disable/severity, sidecar parse, end-to-end resolve); full suite 25,042 pass / 0 fail, LSP 16 pass.EP-ANALYSIS+ (#67) now has only #81 (grow the built-in rule set) remaining — open-ended.