ORLEANS0019: Removed grain interface is not retired
| Property | Value |
|---|---|
| Category | Versioning |
| Severity | Warning |
| Code fix | Available |
An active interface declaration in OrleansContracts.txt does not match any compiled grain interface.
Impact
Section titled “Impact”The deletion or identity-changing rename is not recorded as intentional, and the old interface identity can later be reused accidentally.
How to fix
Section titled “How to fix”Restore the interface if its removal was accidental. Otherwise apply Mark as RETIRED in OrleansContracts.txt. Preserve retired declarations as contract history.
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”Suppression is appropriate only when the manifest intentionally contains contracts owned by another compilation. Prefer one manifest per project so ownership remains explicit.
[*.cs]dotnet_diagnostic.ORLEANS0019.severity = none