ORLEANS0024: Removed grain class is not retired
| Property | Value |
|---|---|
| Category | Versioning |
| Severity | Warning |
| Code fix | Available |
An active class declaration in OrleansContracts.txt does not match any compiled concrete grain class.
Impact
Section titled “Impact”The removal or identity-changing rename is not recorded, and the old grain identity can later be reused accidentally.
How to fix
Section titled “How to fix”Restore the class if its removal was accidental. Otherwise apply Mark grain class as RETIRED in OrleansContracts.txt and preserve the declaration.
Apply Regenerate OrleansContracts.txt to rebuild the complete project manifest and retire every declaration absent from source. Run regeneration separately for each contract project and review the generated diff using the contract compatibility guidance.
Suppress the diagnostic
Section titled “Suppress the diagnostic”Suppress only when the manifest intentionally includes classes owned by another compilation. Prefer separate project manifests.
[*.cs]dotnet_diagnostic.ORLEANS0024.severity = none