Skip to content

ORLEANS0019: Removed grain interface is not retired

PropertyValue
CategoryVersioning
SeverityWarning
Code fixAvailable

An active interface declaration in OrleansContracts.txt does not match any compiled grain interface.

The deletion or identity-changing rename is not recorded as intentional, and the old interface identity can later be reused accidentally.

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.

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