arm-resource-invalid-envelope-property
@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-propertyCheck for invalid resource envelope properties.
Resource envelope properties must originate from the Azure.ResourceManager namespace. Custom properties that are not part of the standard ARM resource envelope should be placed in the resource-specific property bag instead.
Impact
Section titled “Impact”- Area: API
Defining non-standard top-level envelope properties violates the RPC contract.
LintDiff Equivalent
Section titled “LintDiff Equivalent”This rule corresponds to the LintDiff rule BodyTopLevelProperties.
❌ Incorrect
Section titled “❌ Incorrect”@armProviderNamespacenamespace MyService;
model FooResource is TrackedResource<{}> { ...ResourceNameParameter<FooResource>; disallowed?: string; // not valid in the resource envelope}✅ Correct
Section titled “✅ Correct”@armProviderNamespacenamespace MyService;
model FooResource is TrackedResource<{}> { ...ResourceNameParameter<FooResource>; ...ManagedServiceIdentityProperty;}Suppression
Section titled “Suppression”Suppress only when required to match an existing API; otherwise use the standard property mix-ins.