Repository: ember-cli/eslint-plugin-ember
Pull request #759 (2020-04-05 15:58:01)

Update each rule doc to mention what config enables the rule
Matches the eslint plugin rule docs (example: https://eslint.org/docs/rules/no-extra-semi).

This makes it easier to gain a complete picture of the rule by looking at its rule doc (without depending on the overall README.md).

And adds a test to ensure the docs are correct.

Follow-up to #715 which added an autofixable notice to the doc for each autofixable rule.


Patch:
diff --git a/docs/rules/_TEMPLATE_.md b/docs/rules/_TEMPLATE_.md
index f530ead7..1ee16829 100644
--- a/docs/rules/_TEMPLATE_.md
+++ b/docs/rules/_TEMPLATE_.md
@@ -1,5 +1,7 @@
 # TODO: rule-name-goes-here
 
+(TODO: only include this line if the rule is recommended) :white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 (TODO: only include this line if the rule is fixable) :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
 
 TODO: context about the problem goes here
diff --git a/docs/rules/avoid-leaking-state-in-ember-objects.md b/docs/rules/avoid-leaking-state-in-ember-objects.md
index 9f6d616c..d294321b 100644
--- a/docs/rules/avoid-leaking-state-in-ember-objects.md
+++ b/docs/rules/avoid-leaking-state-in-ember-objects.md
@@ -1,5 +1,7 @@
 # avoid-leaking-state-in-ember-objects
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Don't use arrays and objects as default properties. More info here: <https://dockyard.com/blog/2015/09/18/ember-best-practices-avoid-leaking-state-into-factories>
 
 ## Examples
diff --git a/docs/rules/avoid-using-needs-in-controllers.md b/docs/rules/avoid-using-needs-in-controllers.md
index 28c3a4a7..04920299 100644
--- a/docs/rules/avoid-using-needs-in-controllers.md
+++ b/docs/rules/avoid-using-needs-in-controllers.md
@@ -1,5 +1,7 @@
 # avoid-using-needs-in-controllers
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Avoid using `needs` to load other controllers. Inject the required controller instead. `needs` was deprecated in ember 1.x and removed in 2.0.
 
 ## Examples
diff --git a/docs/rules/classic-decorator-hooks.md b/docs/rules/classic-decorator-hooks.md
index de336020..b32ac6e1 100644
--- a/docs/rules/classic-decorator-hooks.md
+++ b/docs/rules/classic-decorator-hooks.md
@@ -1,5 +1,7 @@
 # classic-decorator-hooks
 
+:car: The `"extends": "plugin:ember/octane"` property in a configuration file enables this rule.
+
 Use the correct lifecycle hooks in classic and non-classic classes. Classic
 classes should use `init`, and non-classic classes should use `constructor`.
 Additionally, non-classic classes may not use `destroy`.
diff --git a/docs/rules/classic-decorator-no-classic-methods.md b/docs/rules/classic-decorator-no-classic-methods.md
index 16431a3a..c8be84f3 100644
--- a/docs/rules/classic-decorator-no-classic-methods.md
+++ b/docs/rules/classic-decorator-no-classic-methods.md
@@ -1,5 +1,7 @@
 # classic-decorator-no-classic-methods
 
+:car: The `"extends": "plugin:ember/octane"` property in a configuration file enables this rule.
+
 Disallows the use of the following classic API methods within a class:
 
 - `get`
diff --git a/docs/rules/closure-actions.md b/docs/rules/closure-actions.md
index 0e853db9..b6b9431c 100644
--- a/docs/rules/closure-actions.md
+++ b/docs/rules/closure-actions.md
@@ -1,5 +1,7 @@
 # closure-actions
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Always use closure actions (according to DDAU convention). Exception: only when you need bubbling.
 
 ## Examples
diff --git a/docs/rules/jquery-ember-run.md b/docs/rules/jquery-ember-run.md
index 6805659f..dc0d8d7e 100644
--- a/docs/rules/jquery-ember-run.md
+++ b/docs/rules/jquery-ember-run.md
@@ -1,5 +1,7 @@
 # jquery-ember-run
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Don’t use jQuery without the Ember Run Loop.
 
 Using plain jQuery invokes actions out of the Ember Run Loop. In order to have a control on all operations in Ember, it's good practice to trigger actions in run loop.
diff --git a/docs/rules/new-module-imports.md b/docs/rules/new-module-imports.md
index 23eb38bf..6112605f 100644
--- a/docs/rules/new-module-imports.md
+++ b/docs/rules/new-module-imports.md
@@ -1,5 +1,7 @@
 # new-module-imports
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Use "New Module Imports" from Ember RFC #176.
 
 [RFC #176](https://github.com/emberjs/rfcs/pull/176) introduced as new public
diff --git a/docs/rules/no-actions-hash.md b/docs/rules/no-actions-hash.md
index 94aae19c..c3b8ae4c 100644
--- a/docs/rules/no-actions-hash.md
+++ b/docs/rules/no-actions-hash.md
@@ -1,5 +1,7 @@
 # no-actions-hash
 
+:car: The `"extends": "plugin:ember/octane"` property in a configuration file enables this rule.
+
 Disallows the actions hash in components and controllers.
 
 Ember Octane includes a rethink of event handling in Ember. The `actions` hash and `{{action}}` modifier and helper are no longer needed. To provide the correct context to functions (binding), you should now use the `@action` decorator. In templates, the `{{on}}` modifier can be used to set up event handlers and the `{{fn}}` helper can be used for partial application.
diff --git a/docs/rules/no-arrow-function-computed-properties.md b/docs/rules/no-arrow-function-computed-properties.md
index 1d522d8b..3a5dc632 100644
--- a/docs/rules/no-arrow-function-computed-properties.md
+++ b/docs/rules/no-arrow-function-computed-properties.md
@@ -1,5 +1,7 @@
 # no-arrow-function-computed-properties
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Arrow functions should not be used in computed properties because they are unable to access other properties (using `this.property`) of the same object. Accidental usage can thus lead to bugs.
 
 ## Rule Details
diff --git a/docs/rules/no-attrs-in-components.md b/docs/rules/no-attrs-in-components.md
index bd6952c9..9b3b55c7 100644
--- a/docs/rules/no-attrs-in-components.md
+++ b/docs/rules/no-attrs-in-components.md
@@ -1,5 +1,7 @@
 # no-attrs-in-components
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Do not use `this.attrs`.
 
 In the run-up to Ember 2.0, several blog articles were written about using `this.attrs` but this feature has never been documented as a public API. Typically people use `attrs` to denote properties and methods as having been "passed" in to a component and bare names as properties local to the component. This is useful and some iteration of Ember will have this built into the programming model, but for now we should not use `attrs`.
diff --git a/docs/rules/no-attrs-snapshot.md b/docs/rules/no-attrs-snapshot.md
index 355aabdb..1efeecd4 100644
--- a/docs/rules/no-attrs-snapshot.md
+++ b/docs/rules/no-attrs-snapshot.md
@@ -1,5 +1,7 @@
 # no-attrs-snapshot
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Disallow use of attrs snapshot in `didReceiveAttrs` and `didUpdateAttrs`.
 
 Do not use the arguments (attrs) that are passed in `didReceiveAttrs` and `didUpdateAttrs`. Using the arguments (attrs) in these hooks can result in performance degradation in your application.
diff --git a/docs/rules/no-capital-letters-in-routes.md b/docs/rules/no-capital-letters-in-routes.md
index 95272b51..c2848a19 100644
--- a/docs/rules/no-capital-letters-in-routes.md
+++ b/docs/rules/no-capital-letters-in-routes.md
@@ -1,5 +1,7 @@
 # no-capital-letters-in-routes
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Raise an error when there is a route with upper-cased letters in router.js.
 
 When you accidentally uppercase any of your routes or create upper-cased route using ember-cli the application will crash without any clear information what's wrong. This rule makes it more obvious, so you don't have to think about it any more.
diff --git a/docs/rules/no-classic-classes.md b/docs/rules/no-classic-classes.md
index 371d686b..f0fb8a0e 100644
--- a/docs/rules/no-classic-classes.md
+++ b/docs/rules/no-classic-classes.md
@@ -1,5 +1,7 @@
 # no-classic-classes
 
+:car: The `"extends": "plugin:ember/octane"` property in a configuration file enables this rule.
+
 Disallow "classic" classes in favor of native JS classes.
 
 Ember now allows you to use native JS classes to extend the built-in classes provided by Ember. This pattern is preferred in favor of using the "classic" style of classes that Ember has provided since before JS classes were available to use.
diff --git a/docs/rules/no-classic-components.md b/docs/rules/no-classic-components.md
index 5739901d..2ef9c9b4 100644
--- a/docs/rules/no-classic-components.md
+++ b/docs/rules/no-classic-components.md
@@ -1,5 +1,7 @@
 # no-classic-components
 
+:car: The `"extends": "plugin:ember/octane"` property in a configuration file enables this rule.
+
 This rule aims to enforce Glimmer components instead of classic ones. We should migrate to Glimmer components because
 they have few advantages:
 
diff --git a/docs/rules/no-component-lifecycle-hooks.md b/docs/rules/no-component-lifecycle-hooks.md
index 9f87ef8e..de652d9b 100644
--- a/docs/rules/no-component-lifecycle-hooks.md
+++ b/docs/rules/no-component-lifecycle-hooks.md
@@ -1,5 +1,7 @@
 # no-component-lifecycle-hooks
 
+:car: The `"extends": "plugin:ember/octane"` property in a configuration file enables this rule.
+
 Disallow usage of "classic" ember component lifecycle hooks.
 
 ## Rule Details
diff --git a/docs/rules/no-computed-properties-in-native-classes.md b/docs/rules/no-computed-properties-in-native-classes.md
index 307b943c..10c0a504 100644
--- a/docs/rules/no-computed-properties-in-native-classes.md
+++ b/docs/rules/no-computed-properties-in-native-classes.md
@@ -1,5 +1,7 @@
 # no-computed-properties-in-native-classes
 
+:car: The `"extends": "plugin:ember/octane"` property in a configuration file enables this rule.
+
 Since the beginning of Ember's existence, Computed Properties (CPs) have been used to accomplish reactivity in the framework. With Ember Octane, new features were introduced including Glimmer components, native JavaScript classes and Tracked Properties. With Ember Octane's new programming model, CPs are no longer needed. If using native JavaScript classes, Tracked Properties should be used instead as they give us the same benefit of CPs but with less boilerplate and more flexibility.
 
 ## Rule Details
diff --git a/docs/rules/no-deeply-nested-dependent-keys-with-each.md b/docs/rules/no-deeply-nested-dependent-keys-with-each.md
index 684070f5..e327d9a7 100644
--- a/docs/rules/no-deeply-nested-dependent-keys-with-each.md
+++ b/docs/rules/no-deeply-nested-dependent-keys-with-each.md
@@ -1,5 +1,7 @@
 # no-deeply-nested-dependent-keys-with-each
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Disallows usage of deeply-nested computed property dependent keys with `@each`.
 
 For performance / complexity reasons, Ember does not allow deeply-nested computed property dependent keys with `@each`. At runtime, it will show a warning about this:
diff --git a/docs/rules/no-duplicate-dependent-keys.md b/docs/rules/no-duplicate-dependent-keys.md
index 49f6cb79..f3343ccc 100644
--- a/docs/rules/no-duplicate-dependent-keys.md
+++ b/docs/rules/no-duplicate-dependent-keys.md
@@ -1,5 +1,7 @@
 # no-duplicate-dependent-keys
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Disallow repeating dependent keys.
 
 ## Rule Details
diff --git a/docs/rules/no-ember-super-in-es-classes.md b/docs/rules/no-ember-super-in-es-classes.md
index 85031080..3c258807 100644
--- a/docs/rules/no-ember-super-in-es-classes.md
+++ b/docs/rules/no-ember-super-in-es-classes.md
@@ -1,5 +1,7 @@
 # no-ember-super-in-es-classes
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
 
 `this._super` is not allowed in ES class methods.
diff --git a/docs/rules/no-function-prototype-extensions.md b/docs/rules/no-function-prototype-extensions.md
index 75225273..b16c1902 100644
--- a/docs/rules/no-function-prototype-extensions.md
+++ b/docs/rules/no-function-prototype-extensions.md
@@ -1,5 +1,7 @@
 # no-function-prototype-extensions
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Do not use Ember's `function` prototype extensions.
 
 Use computed property syntax, observer syntax or module hooks instead of `.property()`, `.observes()` or `.on()` in Ember modules.
diff --git a/docs/rules/no-get-with-default.md b/docs/rules/no-get-with-default.md
index c1e7f834..5bc635c3 100644
--- a/docs/rules/no-get-with-default.md
+++ b/docs/rules/no-get-with-default.md
@@ -1,5 +1,7 @@
 # no-get-with-default
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
 
 This rule attempts to catch and prevent the use of `getWithDefault`.
diff --git a/docs/rules/no-get.md b/docs/rules/no-get.md
index 99ac1b4c..2426b421 100644
--- a/docs/rules/no-get.md
+++ b/docs/rules/no-get.md
@@ -1,5 +1,7 @@
 # no-get
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
 
 Starting in Ember 3.1, native ES5 getters are available, which eliminates much of the need to use `get` / `getProperties` on Ember objects.
diff --git a/docs/rules/no-global-jquery.md b/docs/rules/no-global-jquery.md
index ffed7fcf..8c13bc9c 100644
--- a/docs/rules/no-global-jquery.md
+++ b/docs/rules/no-global-jquery.md
@@ -1,5 +1,7 @@
 # no-global-jquery
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Do not use global `$` or `jQuery`.
 
 ## Rule Details
diff --git a/docs/rules/no-incorrect-calls-with-inline-anonymous-functions.md b/docs/rules/no-incorrect-calls-with-inline-anonymous-functions.md
index 5dba1b56..a4940128 100644
--- a/docs/rules/no-incorrect-calls-with-inline-anonymous-functions.md
+++ b/docs/rules/no-incorrect-calls-with-inline-anonymous-functions.md
@@ -1,5 +1,7 @@
 # no-incorrect-calls-with-inline-anonymous-functions
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 The following functions keep track of the function references they have been passed:
 
 - `debounce`
diff --git a/docs/rules/no-incorrect-computed-macros.md b/docs/rules/no-incorrect-computed-macros.md
index 7476a1f3..69e32009 100644
--- a/docs/rules/no-incorrect-computed-macros.md
+++ b/docs/rules/no-incorrect-computed-macros.md
@@ -1,5 +1,7 @@
 # no-incorrect-computed-macros
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
 
 This rule attempts to find incorrect usages of computed property macros, such as calling them with the incorrect number of arguments.
diff --git a/docs/rules/no-invalid-debug-function-arguments.md b/docs/rules/no-invalid-debug-function-arguments.md
index 77a684e1..30b9afe4 100644
--- a/docs/rules/no-invalid-debug-function-arguments.md
+++ b/docs/rules/no-invalid-debug-function-arguments.md
@@ -1,5 +1,7 @@
 # no-invalid-debug-function-arguments
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Catch usages of Ember&#39;s `assert()` / `warn()` / `deprecate()` functions that have the arguments passed in the wrong order.
 
 This rule aims to catch a common mistake when using Ember's debug functions:
diff --git a/docs/rules/no-invalid-dependent-keys.md b/docs/rules/no-invalid-dependent-keys.md
index 94372f5c..b4a1fd25 100644
--- a/docs/rules/no-invalid-dependent-keys.md
+++ b/docs/rules/no-invalid-dependent-keys.md
@@ -1,5 +1,7 @@
 # no-invalid-dependent-keys
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
 
 Dependent keys used for computed properties have to be valid.
diff --git a/docs/rules/no-jquery.md b/docs/rules/no-jquery.md
index 5ab19be2..89c0371b 100644
--- a/docs/rules/no-jquery.md
+++ b/docs/rules/no-jquery.md
@@ -1,5 +1,7 @@
 # no-jquery
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 This rule attempts to catch and prevent any usage of jQuery.
 
 ## Rule Details
diff --git a/docs/rules/no-mixins.md b/docs/rules/no-mixins.md
index f90016f9..233aa30f 100644
--- a/docs/rules/no-mixins.md
+++ b/docs/rules/no-mixins.md
@@ -1,5 +1,7 @@
 # no-mixins
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Using mixins to share code appears easy at first. But they add significant complexity as a project grows. Furthermore, the [Octane programming model](https://guides.emberjs.com/release/upgrading/current-edition/) eliminates the need to use them in favor of native class semantics and other primitives.
 
 For practical strategies on removing mixins see [this discourse thread](https://discuss.emberjs.com/t/best-way-to-replace-mixins/17395/2).
diff --git a/docs/rules/no-new-mixins.md b/docs/rules/no-new-mixins.md
index 525c2e50..d645fd01 100644
--- a/docs/rules/no-new-mixins.md
+++ b/docs/rules/no-new-mixins.md
@@ -1,5 +1,7 @@
 # no-new-mixins
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Using mixins to share code appears easy at first. But they add significant complexity as a project grows. Furthermore, the [Octane programming model](https://guides.emberjs.com/release/upgrading/current-edition/) eliminates the need to use them in favor of native class semantics and other primitives.
 
 For practical strategies on removing mixins see [this discourse thread](https://discuss.emberjs.com/t/best-way-to-replace-mixins/17395/2).
diff --git a/docs/rules/no-observers.md b/docs/rules/no-observers.md
index 5fe66514..4f7ca508 100644
--- a/docs/rules/no-observers.md
+++ b/docs/rules/no-observers.md
@@ -1,5 +1,7 @@
 # no-observers
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 You should avoid observers for the following reasons:
 
 * Observers deal with data changes contrary to Ember's Data Down, Actions Up (DDAU) convention.
diff --git a/docs/rules/no-old-shims.md b/docs/rules/no-old-shims.md
index 69012a3c..5f263ed0 100644
--- a/docs/rules/no-old-shims.md
+++ b/docs/rules/no-old-shims.md
@@ -1,5 +1,7 @@
 # no-old-shims
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
 
 Don't use import paths from `ember-cli-shims`.
diff --git a/docs/rules/no-on-calls-in-components.md b/docs/rules/no-on-calls-in-components.md
index 9295d229..c0d54828 100644
--- a/docs/rules/no-on-calls-in-components.md
+++ b/docs/rules/no-on-calls-in-components.md
@@ -1,5 +1,7 @@
 # no-on-calls-in-components
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Prevents using `.on()` in favour of component's lifecycle hooks.
 
 The order of execution for `on()` is not deterministic.
diff --git a/docs/rules/no-private-routing-service.md b/docs/rules/no-private-routing-service.md
index 2c8f3a4e..fbb25917 100644
--- a/docs/rules/no-private-routing-service.md
+++ b/docs/rules/no-private-routing-service.md
@@ -1,5 +1,7 @@
 # no-private-routing-service
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Disallow the use of the private `-routing` service.
 
 There has been a public `router` service since Ember 2.16 and using the private routing service should be unnecessary.
diff --git a/docs/rules/no-side-effects.md b/docs/rules/no-side-effects.md
index 42af1656..3d7b5d25 100644
--- a/docs/rules/no-side-effects.md
+++ b/docs/rules/no-side-effects.md
@@ -1,5 +1,7 @@
 # no-side-effects
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Don't introduce side-effects in computed properties.
 
 When using computed properties do not introduce side effects. It will make reasoning about the origin of the change much harder.
diff --git a/docs/rules/no-unnecessary-route-path-option.md b/docs/rules/no-unnecessary-route-path-option.md
index d52a852e..032cc6ea 100644
--- a/docs/rules/no-unnecessary-route-path-option.md
+++ b/docs/rules/no-unnecessary-route-path-option.md
@@ -1,5 +1,7 @@
 # no-unnecessary-route-path-option
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
 
 Disallow unnecessary route `path` option.
diff --git a/docs/rules/no-volatile-computed-properties.md b/docs/rules/no-volatile-computed-properties.md
index 6f544ee3..9da2c9e4 100644
--- a/docs/rules/no-volatile-computed-properties.md
+++ b/docs/rules/no-volatile-computed-properties.md
@@ -1,5 +1,7 @@
 # no-volatile-computed-properties
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Volatile computed properties are deprecated as of Ember 3.9.
 
 ## Rule Details
diff --git a/docs/rules/require-computed-macros.md b/docs/rules/require-computed-macros.md
index 57d6f52a..7dd61df7 100644
--- a/docs/rules/require-computed-macros.md
+++ b/docs/rules/require-computed-macros.md
@@ -1,5 +1,7 @@
 # require-computed-macros
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
 
 It is preferred to use Ember's computed property macros as opposed to manually writing out logic in a computed property function. Reasons include:
diff --git a/docs/rules/require-computed-property-dependencies.md b/docs/rules/require-computed-property-dependencies.md
index fb92db28..dac46b9f 100644
--- a/docs/rules/require-computed-property-dependencies.md
+++ b/docs/rules/require-computed-property-dependencies.md
@@ -1,5 +1,7 @@
 # require-computed-property-dependencies
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
 
 Computed properties should have their property dependencies listed out so that they can recompute upon changes.
diff --git a/docs/rules/require-return-from-computed.md b/docs/rules/require-return-from-computed.md
index cb0b6c5c..c234a7dd 100644
--- a/docs/rules/require-return-from-computed.md
+++ b/docs/rules/require-return-from-computed.md
@@ -1,5 +1,7 @@
 # require-return-from-computed
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Always return a value from a computed property function.
 
 ## Examples
diff --git a/docs/rules/require-super-in-init.md b/docs/rules/require-super-in-init.md
index bc60a436..777a13dd 100644
--- a/docs/rules/require-super-in-init.md
+++ b/docs/rules/require-super-in-init.md
@@ -1,5 +1,7 @@
 # require-super-in-init
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Call `_super` in init lifecycle hooks.
 
 When overriding the `init` lifecycle hook inside Ember Components, Controllers, Routes or Mixins, it is necessary to include a call to `_super`.
diff --git a/docs/rules/require-tagless-components.md b/docs/rules/require-tagless-components.md
index c09681f6..7e4bc8f4 100644
--- a/docs/rules/require-tagless-components.md
+++ b/docs/rules/require-tagless-components.md
@@ -1,5 +1,7 @@
 # require-tagless-components
 
+:car: The `"extends": "plugin:ember/octane"` property in a configuration file enables this rule.
+
 Disallows using the wrapper element of a component.
 
 Ember allows you to disable the wrapper element on a component (turning it into a "tagless" component). This is now the preferred style and the _only_ style allowed with Glimmer components.
diff --git a/docs/rules/routes-segments-snake-case.md b/docs/rules/routes-segments-snake-case.md
index 0f8370ab..f2948cd5 100644
--- a/docs/rules/routes-segments-snake-case.md
+++ b/docs/rules/routes-segments-snake-case.md
@@ -1,5 +1,7 @@
 # routes-segments-snake-case
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Dynamic segments in routes should use _snake case_, so Ember doesn't have to do extra serialization in order to resolve promises.
 
 ## Examples
diff --git a/docs/rules/use-brace-expansion.md b/docs/rules/use-brace-expansion.md
index 6742b03a..97aac14b 100644
--- a/docs/rules/use-brace-expansion.md
+++ b/docs/rules/use-brace-expansion.md
@@ -1,5 +1,7 @@
 # use-brace-expansion
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 This allows much less redundancy and is easier to read.
 
 Note that **the dependent keys must be together (without space)** for the brace expansion to work.
diff --git a/docs/rules/use-ember-data-rfc-395-imports.md b/docs/rules/use-ember-data-rfc-395-imports.md
index 0f7a85f7..7a1c2e53 100644
--- a/docs/rules/use-ember-data-rfc-395-imports.md
+++ b/docs/rules/use-ember-data-rfc-395-imports.md
@@ -1,5 +1,7 @@
 # use-ember-data-rfc-395-imports
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 :wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.
 
 Use &#34;Ember Data Packages&#34; from Ember RFC #395.


Test patch:
diff --git a/docs/rules/no-ember-testing-in-module-scope.md b/docs/rules/no-ember-testing-in-module-scope.md
index d97dc12a..361aaf64 100644
--- a/docs/rules/no-ember-testing-in-module-scope.md
+++ b/docs/rules/no-ember-testing-in-module-scope.md
@@ -1,5 +1,7 @@
 # no-ember-testing-in-module-scope
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 `Ember.testing` is not allowed in modules scope.
 
 Since ember-cli-qunit@4.1.0 / ember-qunit@3.0.0, `Ember.testing` is only set to
diff --git a/docs/rules/no-legacy-test-waiters.md b/docs/rules/no-legacy-test-waiters.md
index 3082e3e3..74e17fee 100644
--- a/docs/rules/no-legacy-test-waiters.md
+++ b/docs/rules/no-legacy-test-waiters.md
@@ -1,5 +1,7 @@
 # no-legacy-test-waiters
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Prevents the use of the legacy test waiter APIs.
 
 ## Rule Details
diff --git a/docs/rules/no-pause-test.md b/docs/rules/no-pause-test.md
index 8b5eb8b9..7f94ee65 100644
--- a/docs/rules/no-pause-test.md
+++ b/docs/rules/no-pause-test.md
@@ -1,5 +1,7 @@
 # no-pause-test
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Disallow use of `pauseTest` helper in tests.
 
 When `pauseTest()` is committed and run in CI it can cause runners to hang which is undesirable.
diff --git a/docs/rules/no-restricted-resolver-tests.md b/docs/rules/no-restricted-resolver-tests.md
index 98515746..71b74077 100644
--- a/docs/rules/no-restricted-resolver-tests.md
+++ b/docs/rules/no-restricted-resolver-tests.md
@@ -1,5 +1,7 @@
 # no-restricted-resolver-tests
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Don't use constructs or configuration that use the restricted resolver in tests.
 
 [RFC-0229](https://github.com/emberjs/rfcs/blob/master/text/0229-deprecate-testing-restricted-resolver.md)
diff --git a/docs/rules/no-test-and-then.md b/docs/rules/no-test-and-then.md
index aaa0b97d..b10e8058 100644
--- a/docs/rules/no-test-and-then.md
+++ b/docs/rules/no-test-and-then.md
@@ -1,5 +1,7 @@
 # no-test-and-then
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Use `await` instead of `andThen` test wait helper.
 
 It's no longer necessary to use the `andThen` test wait helper now that the cleaner [async/await](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/async_function) syntax is available.
diff --git a/docs/rules/no-test-import-export.md b/docs/rules/no-test-import-export.md
index 9b1dadbd..b4c84ca1 100644
--- a/docs/rules/no-test-import-export.md
+++ b/docs/rules/no-test-import-export.md
@@ -1,5 +1,7 @@
 # no-test-import-export
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 No importing of test files.
 
 **TL;DR** Do not import from a test file (a file ending in "-test.js") in another test file. Doing so will cause the module and tests from the imported file to be executed again. Similarly, test files should not have any exports.
diff --git a/docs/rules/no-test-module-for.md b/docs/rules/no-test-module-for.md
index bfe093cc..922710fb 100644
--- a/docs/rules/no-test-module-for.md
+++ b/docs/rules/no-test-module-for.md
@@ -1,5 +1,7 @@
 # no-test-module-for
 
+:white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.
+
 Use `module` instead of `moduleFor`.
 
 `moduleForComponent`, `moduleFor`, `moduleForAcceptance`, etc have been deprecated and there are codemods to help migrate.
diff --git a/tests/rule-setup.js b/tests/rule-setup.js
index 501cbcb6..7b63869b 100644
--- a/tests/rule-setup.js
+++ b/tests/rule-setup.js
@@ -57,7 +57,12 @@ describe('rules setup is correct', function () {
     );
   });
 
-  it('should have the right contents (title, examples, fixable notice) for each rule documentation file', function () {
+  it('should have the right contents (title, examples, notices) for each rule documentation file', function () {
+    const CONFIG_MSG_RECOMMENDED =
+      ':white_check_mark: The `"extends": "plugin:ember/recommended"` property in a configuration file enables this rule.';
+    const CONFIG_MSG_OCTANE =
+      ':car: The `"extends": "plugin:ember/octane"` property in a configuration file enables this rule.';
+
     const FIXABLE_MSG =
       ':wrench: The `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) can automatically fix some of the problems reported by this rule.';
 
@@ -74,6 +79,18 @@ describe('rules setup is correct', function () {
       } else {
         expect(file).not.toContain(FIXABLE_MSG);
       }
+
+      if (rule.meta.docs.recommended) {
+        expect(file).toContain(CONFIG_MSG_RECOMMENDED);
+      } else {
+        expect(file).not.toContain(CONFIG_MSG_RECOMMENDED);
+      }
+
+      if (rule.meta.docs.octane) {
+        expect(file).toContain(CONFIG_MSG_OCTANE);
+      } else {
+        expect(file).not.toContain(CONFIG_MSG_OCTANE);
+      }
     });
   });