diff --git a/packages/rulesets/generated/spectral/az-arm.js b/packages/rulesets/generated/spectral/az-arm.js index 890e6c6b4..f4a47a603 100644 --- a/packages/rulesets/generated/spectral/az-arm.js +++ b/packages/rulesets/generated/spectral/az-arm.js @@ -3159,7 +3159,7 @@ const ruleset = { message: "{{description}}", disableForTypeSpec: true, disableForTypeSpecReason: "Covered by TSP's '@azure-tools/typespec-azure-resource-manager/no-record' rule.", - resolved: true, + resolved: false, formats: [oas2], given: "$.definitions..[?(@property !== 'tags' && @property !== 'delegatedResources' && @property !== 'userAssignedIdentities' && @ && @.additionalProperties)]", then: { diff --git a/packages/rulesets/package.json b/packages/rulesets/package.json index c141b5bbe..ba96f1b78 100644 --- a/packages/rulesets/package.json +++ b/packages/rulesets/package.json @@ -1,6 +1,6 @@ { "name": "@microsoft.azure/openapi-validator-rulesets", - "version": "2.0.6", + "version": "2.0.7", "description": "Azure OpenAPI Validator", "main": "dist/index.js", "scripts": { diff --git a/packages/rulesets/src/spectral/az-arm.ts b/packages/rulesets/src/spectral/az-arm.ts index 1fefae6aa..0a1a2239a 100644 --- a/packages/rulesets/src/spectral/az-arm.ts +++ b/packages/rulesets/src/spectral/az-arm.ts @@ -299,7 +299,8 @@ const ruleset: any = { message: "{{description}}", disableForTypeSpec: true, disableForTypeSpecReason: "Covered by TSP's '@azure-tools/typespec-azure-resource-manager/no-record' rule.", - resolved: true, + // Only report errors at the source, not from inside $refs (the resolved document) + resolved: false, formats: [oas2], // In some cases, variable "@" will be "null" when evaluating the expression, so it must be checked before dereferencing given: diff --git a/packages/rulesets/src/spectral/test/avoid-additional-properties.test.ts b/packages/rulesets/src/spectral/test/avoid-additional-properties.test.ts index d213d0bbe..5be6f5372 100644 --- a/packages/rulesets/src/spectral/test/avoid-additional-properties.test.ts +++ b/packages/rulesets/src/spectral/test/avoid-additional-properties.test.ts @@ -143,6 +143,12 @@ test("AvoidAdditionalProperties should find errors", () => { }, required: ["type"], }, + ThisRef: { + description: "Ensure error is NOT raised from inside $refs (rule sets resolved:false)", + properties: { + $ref: "#/definitions/This", + }, + }, }, } return linter.run(oasDoc).then((results) => {