{"id":41037,"library":"eslint-plugin-rv-lint-rules","title":"RV Lint Rules","description":"Custom ESLint plugin enforcing project-specific coding standards for RV backend. Version 0.0.4, peer dependency on eslint >=8.0.0. Key differentiator: provides an @AuthorizedFor annotation rule to ensure resolver methods have required role/permission decorators. Limited in scope compared to broader lint plugins, tailored for specific project conventions.","status":"active","version":"0.0.4","language":"javascript","source_language":"en","source_url":null,"tags":["javascript","eslint","eslintplugin","eslint-plugin"],"install":[{"cmd":"npm install eslint-plugin-rv-lint-rules","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-plugin-rv-lint-rules","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-plugin-rv-lint-rules","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Peer dependency required for ESLint plugin to function","package":"eslint","optional":false}],"imports":[{"note":"ESM import; CommonJS require may work depending on project config","wrong":"const plugin = require('rv-lint-rules')","symbol":"plugin","correct":"import plugin from 'rv-lint-rules'"},{"note":"If using .eslintrc.js, CommonJS module.exports is typical, but ESM also possible","wrong":"import config from 'rv-lint-rules'","symbol":"config","correct":"const config = require('rv-lint-rules'); module.exports = config;"},{"note":"Rule names must be prefixed with 'rv-lint-rules/'","wrong":"rules: { 'authorized-for-decorator-required': 'error' }","symbol":"rules","correct":"rules: { 'rv-lint-rules/authorized-for-decorator-required': 'error' }"}],"quickstart":{"code":"// .eslintrc.cjs\nmodule.exports = {\n  extends: ['rv-lint-rules'],\n  rules: {\n    'rv-lint-rules/authorized-for-decorator-required': 'error',\n  },\n};\n\n// Or for .eslintrc.json\n{\n  \"extends\": [\"rv-lint-rules\"],\n  \"rules\": {\n    \"rv-lint-rules/authorized-for-decorator-required\": \"error\"\n  }\n}","lang":"javascript","description":"Shows how to configure ESLint to use the plugin and enable the custom rule."},"warnings":[{"fix":"Ensure files are recognized as resolvers (e.g., by filename pattern).","message":"Rule 'authorized-for-decorator-required' only applies to resolver methods; may not fire for non-resolver files.","severity":"gotcha","affected_versions":"0.0.4"},{"fix":"Verify package is installed as 'rv-lint-rules' and extends string matches exactly.","message":"Configuration via extends may not load rules if plugin name mismatch occurs.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Manually add rule to 'rules' section in ESLint config.","message":"Plugin only provides one rule currently; extending the plugin does not enable rules automatically.","severity":"gotcha","affected_versions":"0.0.4"}],"env_vars":null,"search_vec":"'0.0.4':17 '8.0.0':22 'annot':28 'authorizedfor':27 'backend':15 'broader':43 'code':11 'compar':41 'convent':50 'custom':4 'decor':37 'depend':19 'differenti':24 'enforc':7 'ensur':31 'eslint':5,21,52,55 'eslint-plugin':54 'eslintplugin':53 'javascript':51 'key':23 'limit':38 'lint':2,44 'method':33 'peer':18 'plugin':6,45,56 'project':9,49 'project-specif':8 'provid':25 'requir':35 'resolv':32 'role/permission':36 'rule':3,29 'rv':1,14 'scope':40 'specif':10,48 'standard':12 'tailor':46 'version':16","created_at":"2026-06-04T18:50:28.539981+00:00","updated_at":"2026-06-04T18:50:28.539981+00:00","problems":[{"fix":"Run 'npm install --save-dev rv-lint-rules' and verify package.json.","cause":"Plugin not installed or name mismatch in extends.","error":"Error: Failed to load plugin 'rv-lint-rules'"},{"fix":"Add 'extends: [\"rv-lint-rules\"]' and 'rules: { \"rv-lint-rules/authorized-for-decorator-required\": \"error\" }'.","cause":"Rule not enabled or plugin not configured correctly.","error":"ESLint couldn't find the rule 'rv-lint-rules/authorized-for-decorator-required'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":null,"github":null,"docs":null,"changelog":null,"pypi":null,"npm":"eslint-plugin-rv-lint-rules","openapi_spec":null,"status_page":null,"smithery":null,"categories":["testing"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-04","next_check":"2026-09-02","install_tag":null}}