Referenced by31
Labels88

Referencing ideas

IdeaStatusTagsSummaryKatz
checkdone`reqlan check` should run perform the following checks: - ensure all rq [reference] point to real nodes, unless rq ignored with [comment_reference_ignore]. - this tests rqcomments point to real parts of the namespace, that code references exist, and that rq references exists. - report unresolved imports: [check_unresolved_imports]. - report a comment reference with invalid syntax: [code_comment_syntax_errors]. - report a qualified reference whose file is not on disk: [check_qualified_missing_file]. - report a qualified reference whose `.rq` file does not declare the idea: [check_qualified_missing_idea]. - it should really just be a wrapper of the [index] and return the issues ( as a pipe, terminal output, or json ). Issue order: [check_order_by_target]. Sparse wildcards: [check_wildcard_sparse] via flags [check_wildcard_zero] and [check_wildcard_one]. Path globs: [check_glob_patterns]. Skip missing targets: [check_skip_targets] [check_skip_gitignored_targets]. CLI: ["../cli/cli_package.rq".commands]. MCP: ["../extension/agent/skills-and-mcp.rq".mcp_check]. CI: [check_meta_implementation]. Site demo: ["../site/site.rq".broken_links_showcase].1.000
check_glob_patternsdone[check] accepts more than one `--glob` pattern. Repeat `--glob` for each pattern. A file is in the recursive scan when it matches any glob. One `--glob` selects the same files as one path glob. A reference target that matches no glob is still checked. That target must resolve. [check] does not walk a directory that matches no glob. A positional path can name a file outside the globs. [check] checks that file. A positional path that is a directory outside the globs is not walked. An empty `--glob` value is an error. API: `AnalysisApi.check({ pathGlobs, paths })`. CLI: ["../cli/cli_package.rq".commands]. MCP: ["../extension/agent/skills-and-mcp.rq".mcp_check]. Related: [check]0.308
check_order_by_targetdone[check] returns issues ordered by the missing [reference] target, not by the source file. Rows that share the same missing idea, comment target, file path, or import target stay together so you can see every site that points at one missing thing. Inside a target group, order by kind, then source file, then line. JSON and pipe keep a flat list in that order. Terminal output uses one heading per missing target. Related: [check] ["../cli/cli_package.rq".commands]0.370
check_qualified_missing_filedoneA qualified [reference] names a file and an idea. Example: `["../../../../my/non-existentfile.ts".term]`. [check] reports an error when that file is not on disk. The issue kind is `file_reference`. The label is the resolved file path. A qualified reference to a file that exists is not this error. A same-file idea reference is not this error. The editor already underlines this target. Related: [check] [check_qualified_missing_idea] ["../language/syntax.rq".reference_file] ["../extension/language/syntax/features-syntax-highlighting.rq".unresolved_reference_diagnostics]0.211
check_qualified_missing_ideadoneA qualified [reference] names a file and an idea. Example: `["../extension/index-host/graph-analysers.rq".not_an_idea]`. The same rule applies to a namespace alias: `[alias.idea]` ( [import_namespace] ). [check] reports an error when that file is an `.rq` file, the file does not declare the idea, and the file does not bind that name as an import alias. The issue kind is `references`. The label is the missing idea name. A path with no extension means `.rq` first ( [implicit_file_extension] ). A qualified reference to an idea that the `.rq` file declares is not this error. A qualified reference to an import alias bound in that file is not this error. A namespace import binds its `as` name. A from-import or qualified import binds its `as` name, or the idea name when `as` is absent. A from-import of an import alias stays [check_unresolved_imports]. The alias is not an idea. A qualified reference to a code file is not this error. That form uses [check_qualified_missing_file]. A missing file stays [check_qualified_missing_file]. [check] does not also report a missing idea for that file. [comment_reference_ignore] suppresses this error. Related: [check] [check_qualified_missing_file] ["../language/syntax.rq".reference_qualified]0.278
check_skip_gitignored_targetsdone[check] omits a file [reference] issue when Git ignore rules ignore the missing target. The analyser function `check_references` takes `skip_gitignored_targets` ( default false ). Match uses the workspace ["../../.gitignore"] and nested `.gitignore` files on the target path. Match uses the resolved path from the workspace root, not the authored path in the source file. Idea references, comment references, and missing imported idea names stay in the issue list. Missing import paths follow the same skip as file references ( [check_unresolved_imports] ). Use this when a referenced file is build output or editor config that git does not store. Examples: `.cursor/` for ["../extension/agent/chat-participant.rq".mcp], and `packages/extension/media/webviews/` for ["../extension/host/onboarding/page-thanks-for-installing.rq".installation_event]. CLI: `--skip-gitignored-targets` ( ["../cli/cli_package.rq".commands] ). API: `AnalysisApi.check({ skipGitignoredTargets })`. CI: ["../../.github/workflows/ci.yml"] and ["../../azure-pipelines.yml"] pass `--skip-gitignored-targets` because a CI checkout does not contain gitignored files ( [check_meta_implementation] ). Related: [check] [check_skip_targets] [check_unresolved_imports] [check_meta_implementation]0.445
check_skip_targetsdone[check] omits an issue when the missing [reference] target matches a skip glob. The analyser function `check_references` takes `skip_targets`: a list of globs. Match uses the same path glob rules as `--glob`. Match is against the issue `label` ( the missing target ), not the source file. An empty skip glob has no effect. Use this when a referenced file is not in git and you name the skip glob. For all Git ignore rules, use [check_skip_gitignored_targets]. CLI: repeatable `--skip-target <glob>` ( ["../cli/cli_package.rq".commands] ). API: `AnalysisApi.check({ skipTargets })`. Related: [check] [check_skip_gitignored_targets] [check_meta_implementation]0.445
check_unresolved_importsdone[check] reports an error when an import does not resolve. A missing import path is an error. A named imported idea that is not in the target file is an error. Do not report imported idea names when the path is missing. An existing folder is a valid import path ( [import_folder_targets] ). A remote URL is not a missing path. Import paths with no extension mean `.rq` first ( [implicit_file_extension] ). Ignore a site with [comment_reference_ignore]. Issue kind is `import`. The `label` is the missing path or the missing idea name. Forms: [import_from], [import_namespace], [import_qualified]. Editor underline: [import_does_not_exist_error]. [check_skip_targets] matches that label. [check_skip_gitignored_targets] omits a missing import path that Git ignore rules ignore. Related: [check] [check_order_by_target] [import_does_not_exist_error]0.425
check_wildcard_onedone`check_references` flag `wildcard_one` ( default `warn` ) controls a ["../reference_types.rq".wildcard_reference] that matches exactly 1 idea. 1 match means the pattern is too narrow — use a concrete [reference] instead. `warn` — emit the row with severity `warning` and match count 1. `error` — emit the row with severity `error` and match count 1. `off` — omit the row. CLI: `--wildcard-one <warn|error|off>` ( ["../cli/cli_package.rq".commands] ). API: `AnalysisApi.check({ wildcardOne })`. Related: [check] [check_wildcard_sparse] [check_wildcard_zero] ["../language/imports.rq".wildcard_references]0.507
check_wildcard_sparsedoneA ["../reference_types.rq".wildcard_reference] is for many matches. [check] recounts each wildcard against the full idea catalog, not the stored edges, so files that the indexer visited first still get the true match count. How 0 - match and 1 - match rows are handled is controlled by [check_wildcard_zero] and [check_wildcard_one] ( both default `warn` ). Ignore a site with [comment_reference_ignore]. The language server already warns when a wildcard matches nothing ( ["../language/imports.rq".wildcard_references] ); it also warns when the match count is 1. Related: [check] ["../language/imports.rq".wildcard_references]0.417
check_wildcard_zerodone`check_references` flag `wildcard_zero` ( default `warn` ) controls a ["../reference_types.rq".wildcard_reference] that matches 0 ideas. 0 matches means the pattern hits nothing. `warn` — emit the row with severity `warning` and match count 0. `error` — emit the row with severity `error` and match count 0. `off` — omit the row. CLI: `--wildcard-zero <warn|error|off>` ( ["../cli/cli_package.rq".commands] ). API: `AnalysisApi.check({ wildcardZero })`. Related: [check] [check_wildcard_sparse] [check_wildcard_one]0.507
code_comment_syntax_errorsdoneA comment reference uses `rq:[idea]` or `rq:["path".idea]`. A path string uses double quotes or single quotes. A qualified reference may use dotted idea names after the path. Line comments use `//` and `#`. The same forms apply in every comment span that the indexer reads. [check] reads each comment reference in a non- `.rq` source file. A comment reference with invalid syntax is a syntax error. [check] reports the syntax error. The issue kind is `comment_syntax`. The issue label is the error reason and the comment reference text. The issue severity is `error`. A valid comment reference stays a ["../language/syntax.rq".comment_reference] site. An unresolved valid target stays a `comment_link` issue. A source file that contains only a syntax error stays in the code index. [comment_reference_ignore] suppresses the syntax error on the next line. Related: [check] ["../extension/language/comment-references/functional-code-comment-references.rq".references_in_functional_code_comments]0.174
analysis_scope`@reqlan/analytical` — shared index + analysis API. Hosts: CLI, [extension], MCP. Native rewrite: [rust_port.analytical_rust_port]. [parse] [index] [search] [export] [analysers] [runtime]0.087
test_referencesdoneThe indexer lists broken references in a [index] base. A broken reference is an unresolved idea or wildcard reference. You can give an optional path glob so that the list covers only a subset of the base. You can optionally include unresolved [comment_reference] sites. The function is in the core analysis module. The CLI exposes it on [commands] ( `analyse --broken-refs` ). Related: [analysers] [runtime] [indexer.index_code_files] ["../language/syntax.rq".comment_reference_resolution_error]0.201
configuration_import_roots`importRoots` is an optional array of alias-to-directory mappings in `.reqlan/config.json`. Each mapping has: - `alias` ( required non-empty string ): prefix before `/` in aliased import paths. - `root` ( optional non-empty string ): directory for that alias. A relative `root` resolves against the base root ( the parent of `.reqlan` ), not against the `.reqlan` directory. An absolute path or `file://` URI is used as that alias' import-root directory directly. When `root` is omitted for a mapping, that alias uses the workspace folder that contains the `.rq` file. When `importRoots` is omitted, empty, or has no valid entries, the default is one mapping with alias `importRootAlias` from ["../../../packages/analytical/src/core/defaults.json"] and no explicit root. When several aliases could match a path, the longest alias wins. Invalid or unreadable JSON, and a non-array `importRoots` value, fall back to defaults ( or no loaded config for discovery, then defaults at resolve time ). Language path forms and `@/` shorthand: ["../../language/imports.rq".import_paths] and ["../../language/imports.rq".configuration_import_root_alias]. Comment references in source files use the same mappings: ["../language/comment-references/functional-code-comment-references.rq".comment_reference_import_root_alias]. Schema: [configuration_schema_file]. Applying file discovery: [configuration_location]. Editor completion of aliased import paths: ["../language/syntax/features-syntax.rq".code_completion].0.167
configuration_locationAn optional `.reqlan/config.json` may appear under a base's `.reqlan` directory. For a given `.rq` file, the applying base is the nearest ancestor directory that owns a `.reqlan` folder. The applying config is that base's `.reqlan/config.json` when present. If the owning base has no `config.json`, or no owning base is found, defaults from [configuration_import_roots] apply. A child base does not inherit a parent base's config.0.190
import_does_not_exist_errorImports show an underline error when the target file or folder does not exist. Imports also show an underline error when a named imported idea does not exist in the target file. An existing folder is not an error: [import_folder_targets]. CI: ["../../../core_analysis/check.rq".check_unresolved_imports]. [general_errors]0.151
remote_importsReqlan files should support importing requirements from remote urls. Remote import syntax should follow import " https://company.com/reqs/style.rq" as styleguide. The extension should resolve, cache, and validate remote imports. Barrel imports should be recommended for token efficiency when many symbols are needed from one remote file.0.040
file_reference_errorsdoneIf a [file_reference] is not found, is broken, or cannot be resolved, the language server must show an underline. Do not show the underline when [comment_reference_ignore] ( `//rq-ignore-error` ) is on the line before. Missing files: error underline, no document link. Do not underline examples inside [inline_code] or ["../../../language/syntax.rq".code_snippets]. Empty files and files with parse errors: warning underline; the document link stays. Import-root aliases such as `@/` resolve the same way as ["../../../core_analysis/check.rq".check] and ["../../../language/imports.rq".configuration_import_root_alias]. Related: [general_errors], [comment_reference_resolution_error], [inline_code], ["./features-imports.rq".import_does_not_exist_error], ["../syntax/features-syntax.rq".file_references].0.092
general_errorserror messages should be deliberate and developer friendly. recommendations should be offerred where appropriate.0.083
definitionThe indexer should live in the [core_analysis] module. On-disk schema: [sqlite_schema.ideas_index_sqlite] and [diagnostics_schema.diagnostics_sqlite]. Layout and WAL sidecars: [sidecars.reqlan_directory_layout]. Consumers: [consumers.index_consumers] ( extends [consumption] ). Sequencing and triggers: [sequencing.index_sequencing] ( extends [triggers] ). Cache reuse opportunities: [cache_reuse.index_cache_reuse].0.040
indexThe ideas graph indexer: parse `.rq` with the native engine, extract ideas / edges, persist to rusqlite SQLite. Same-file `[ideaset.member]` edges target the member leaf ( ["../language/syntax.rq".references_to_subidea] ). Wildcard path + idea fan-out: [wildcard_reference_edges] ( ["../language/imports.rq".wildcard_references] ). Ideas Summary graph can hide those edges via [ideas_summary_doc] / ["../extension/workspace-summary/ideas_summary/graphical_graph.rq".wildcard_refs_toggle]. Soft mtime sync skips unchanged files. `extract_version` in the ideas index meta is the extract-rule generation. When that number does not match the engine, sync rebuilds so stale edges do not remain ( ["../language/syntax.rq".inline_code] ). Owned by [ownership]; consumed per [consumption].0.587
configuration_import_root_aliasAn import path may start with an alias string, then `/`, then a relative path under that alias's import-root directory. Default alias string: `@`, written as `@/` plus a path relative to the import root. Default import-root directory: the workspace folder that contains the `.rq` file ( not the document directory ). The path after `/` is joined to that alias's import-root directory; the alias itself must be followed by `/` ( e. g. `@reqs` is not aliased ). Alias strings and import-root directories are configured as [configuration.configuration_import_roots] in the applying `.reqlan/config.json` from [configuration.configuration_location]. A configured relative `root` resolves against the base root ( parent of `.reqlan` ); an omitted `root` keeps the workspace-folder default. When several configured aliases could match a path, the longest alias wins. Related path forms: [import_paths], ["../extension/language/comment-references/functional-code-comment-references.rq".comment_reference_import_root_alias]. Completion: ["../extension/language/syntax/features-syntax.rq".code_completion]. File references and the language server use the same locate rule as ["../core_analysis/check.rq".check]: load `importRoots` from the applying `.reqlan/config.json` for the source file ( [configuration.configuration_location] ), then `resolve_rq_path` and join the workspace when the result is relative — including paths with spaces such as `["@/my file.ts"]`.0.296
import_keywordsThe keywords import, from, and as are reserved for import statements. Import keywords may also appear as ordinary words in idea body text when not at statement start.0.047
code_snippetsIdea bodies and block attribute values may embed fenced code blocks delimited by triple backticks. An opening fence is three backticks as the first non-whitespace characters on a line, optionally followed by a language tag such as python or rq. A closing fence is three backticks as the first non-whitespace characters on a line. Three backticks in the middle of a line are prose. They do not open a fence. Everything between the fences is literal opaque text — it is not parsed as reqlan syntax. Keywords, imports, attributes, braces, and quotes inside a fence are inert for the parser and may be shown as examples without parse errors. Fenced blocks may span multiple lines and preserve their inner content verbatim. Brace-depth tracking must skip fence interiors so example braces cannot desync surrounding structure ( [no_name_idea_safe_warning] ). Related: ["../core_analysis/rust_port.rq".comment_span_align].0.113
comment_reference_ignoredoneComment reference ignore syntax uses `//rq-ignore-error`. Comment reference ignore suppresses diagnostics on the immediately following line. The language server and the CLI use the same core scanner [rq_ignore].0.511
file_suffixReqlan requirement documents use the. rq file suffix.0.052
inline_codedoneSingle-backtick spans ( `…` ) are opaque `INLINE_CODE`. They may show example syntax such as a quoted path plus idea. The grammar does not parse bracket or file references inside the span. Check and the language server must not report those examples as unresolved ["../reference_types.rq".file_reference] or idea refs. Related: [code_snippets], ["../core_analysis/rust_port.rq".comment_span_align].0.165
reference_fileReferences may target arbitrary files, not only. rq files. File reference syntax uses a bracketed quoted path. A relative path resolves from the document directory. When that path climbs with `..` and the file is not there, the same path is tried from each ancestor directory up to the workspace folder. The document-directory file wins when it exists. Line or line-range references append `L#n` or `L#n-m` after the path inside the brackets. Test-name references append `:` and the test title after the path ( for example `./app.test.ts:lists items` ). The first `:` after the path starts the title; later `:` characters stay in the title ( `e2e: …` ). `://` and a Windows drive `C:` / `C:/` are part of the path, not a test suffix. Symbol references append a dot-separated symbol path after the quoted file path. Quoted body text is not a file reference: ["../reference_types.rq".reference_edgecase].0.266
idea_referencedoneIdea-to-idea ["./ontology.rq".reference]: bracket `[name]` / `[ideaset.name]` targets a local, imported, or same-file idea. Syntax: ["./language/syntax.rq".reference_brackets], ["./language/syntax.rq".same_file_reference], ["./language/syntax.rq".reference_qualified], ["./language/syntax.rq".reference_embedding], ["./language/syntax.rq".references_to_subidea]. Index edge kind `references` on [analytical_types] / [rust_index_types]. Extract: [idea_extractor], [rust_extract]. A `[ideaset.member]` form records the edge on the member leaf, not on the ideaset container. An attribute uses the same brackets. See ["./language/syntax.rq".attribute_namespacing]. Wikilink surface for the same edge kind: [link_reference]. Fan-out across files: [wildcard_reference].0.125
url_referencedoneA bracket reference whose target is an absolute URL with a scheme and `://`. Example: [https://reqlan.com/]. Syntax: ["./language/syntax.rq".reference_url]. Index edge kind `url_reference` on [analytical_types] / [rust_index_types]. Extract: [idea_extractor], [rust_extract]. [check] does not treat a URL reference as a missing idea or a missing file. Unbracketed URLs in body prose stay text, not this kind. Related: [file_reference], [link_reference].0.075

Reference labels

"../../../../crates/reqlan-index/tests/broken_references.rs:check_accepts_import_root_alias_file_refs", "../../../../crates/reqlan-index/tests/broken_references.rs:check_honours_import_roots_from_applying_config", "../../../../crates/reqlan-index/tests/broken_references.rs:check_reports_missing_import_path", "../../../../crates/reqlan-index/tests/broken_references.rs:check_reports_missing_imported_idea", "../../../crates/reqlan-index/tests/broken_references.rs:check_honours_import_roots_from_applying_config", "../../crates/reqlan-index/tests/broken_references.rs:check_accepts_folder_and_implicit_extension_imports", "../../crates/reqlan-index/tests/broken_references.rs:check_accepts_import_root_alias_file_refs", "../../crates/reqlan-index/tests/broken_references.rs:check_accepts_qualified_reference_when_the_file_exists", "../../crates/reqlan-index/tests/broken_references.rs:check_accepts_resolved_imports", "../../crates/reqlan-index/tests/broken_references.rs:check_accepts_test_names_that_contain_colons_from_nested_rq", "../../crates/reqlan-index/tests/broken_references.rs:check_honours_import_roots_from_applying_config", "../../crates/reqlan-index/tests/broken_references.rs:check_includes_an_explicit_file_outside_the_globs", "../../crates/reqlan-index/tests/broken_references.rs:check_orders_issues_by_missing_target", "../../crates/reqlan-index/tests/broken_references.rs:check_rejects_an_empty_path_glob", "../../crates/reqlan-index/tests/broken_references.rs:check_reports_a_malformed_comment_reference", "../../crates/reqlan-index/tests/broken_references.rs:check_reports_missing_file_refs_and_skips_existing", "../../crates/reqlan-index/tests/broken_references.rs:check_reports_missing_import_path", "../../crates/reqlan-index/tests/broken_references.rs:check_reports_missing_imported_idea", "../../crates/reqlan-index/tests/broken_references.rs:check_reports_namespace_qualified_reference_to_a_missing_idea", "../../crates/reqlan-index/tests/broken_references.rs:check_reports_qualified_reference_to_a_missing_file", "../../crates/reqlan-index/tests/broken_references.rs:check_reports_qualified_reference_to_a_missing_idea", "../../crates/reqlan-index/tests/broken_references.rs:check_skips_comment_syntax_on_rq_ignore_error", "../../crates/reqlan-index/tests/broken_references.rs:check_skips_file_refs_inside_inline_code_and_fences", "../../crates/reqlan-index/tests/broken_references.rs:check_skips_gitignored_file_targets", "../../crates/reqlan-index/tests/broken_references.rs:check_skips_gitignored_import_paths", "../../crates/reqlan-index/tests/broken_references.rs:check_skips_import_on_rq_ignore_error", "../../crates/reqlan-index/tests/broken_references.rs:check_skips_qualified_missing_idea_on_rq_ignore_error", "../../crates/reqlan-index/tests/broken_references.rs:check_skips_remote_import_urls", "../../crates/reqlan-index/tests/broken_references.rs:check_skips_same_file_idea_refs_and_reports_true_missing", "../../crates/reqlan-index/tests/broken_references.rs:check_skips_sparse_wildcard_warning_on_rq_ignore_error", "../../crates/reqlan-index/tests/broken_references.rs:check_skips_targets_that_match_skip_globs", "../../crates/reqlan-index/tests/broken_references.rs:check_strips_test_name_and_line_suffix_before_file_exists", "../../crates/reqlan-index/tests/broken_references.rs:check_two_globs_report_an_outside_target_and_skip_outside_directories", "../../crates/reqlan-index/tests/broken_references.rs:check_warns_when_a_wildcard_matches_zero_or_one_idea", "../../crates/reqlan-index/tests/broken_references.rs:check_wildcard_one_flag_error_sets_severity", "../../crates/reqlan-index/tests/broken_references.rs:check_wildcard_one_flag_off_omits_singleton_match", "../../crates/reqlan-index/tests/broken_references.rs:check_wildcard_zero_flag_error_sets_severity", "../../crates/reqlan-index/tests/broken_references.rs:check_wildcard_zero_flag_off_omits_empty_match", "../../crates/reqlan-index/tests/broken_references.rs:lists_broken_idea_references_and_filters_by_glob", "../../crates/reqlan-index/tests/broken_references.rs:optionally_includes_broken_comment_references", "../../crates/reqlan-index/tests/broken_references.rs:path_glob_matches_cursor_skip_glob", "../../crates/reqlan-index/tests/broken_references.rs:skips_idea_and_comment_refs_on_rq_ignore_error_lines", "../../crates/reqlan-index/tests/broken_references.rs:sync_drops_stale_inline_code_file_refs_when_extract_version_changes", "../crates/reqlan-index/tests/broken_references.rs:check_accepts_url_references", ../../../../crates/reqlan-index/tests/broken_references.rs:check_accepts_import_root_alias_file_refs, ../../../../crates/reqlan-index/tests/broken_references.rs:check_honours_import_roots_from_applying_config, ../../../../crates/reqlan-index/tests/broken_references.rs:check_reports_missing_import_path, ../../../../crates/reqlan-index/tests/broken_references.rs:check_reports_missing_imported_idea, ../../../crates/reqlan-index/tests/broken_references.rs:check_honours_import_roots_from_applying_config, ../../crates/reqlan-index/tests/broken_references.rs:check_accepts_folder_and_implicit_extension_imports, ../../crates/reqlan-index/tests/broken_references.rs:check_accepts_import_root_alias_file_refs, ../../crates/reqlan-index/tests/broken_references.rs:check_accepts_qualified_reference_when_the_file_exists, ../../crates/reqlan-index/tests/broken_references.rs:check_accepts_resolved_imports, ../../crates/reqlan-index/tests/broken_references.rs:check_accepts_test_names_that_contain_colons_from_nested_rq, ../../crates/reqlan-index/tests/broken_references.rs:check_honours_import_roots_from_applying_config, ../../crates/reqlan-index/tests/broken_references.rs:check_includes_an_explicit_file_outside_the_globs, ../../crates/reqlan-index/tests/broken_references.rs:check_orders_issues_by_missing_target, ../../crates/reqlan-index/tests/broken_references.rs:check_rejects_an_empty_path_glob, ../../crates/reqlan-index/tests/broken_references.rs:check_reports_a_malformed_comment_reference, ../../crates/reqlan-index/tests/broken_references.rs:check_reports_missing_file_refs_and_skips_existing, ../../crates/reqlan-index/tests/broken_references.rs:check_reports_missing_import_path, ../../crates/reqlan-index/tests/broken_references.rs:check_reports_missing_imported_idea, ../../crates/reqlan-index/tests/broken_references.rs:check_reports_namespace_qualified_reference_to_a_missing_idea, ../../crates/reqlan-index/tests/broken_references.rs:check_reports_qualified_reference_to_a_missing_file, ../../crates/reqlan-index/tests/broken_references.rs:check_reports_qualified_reference_to_a_missing_idea, ../../crates/reqlan-index/tests/broken_references.rs:check_skips_comment_syntax_on_rq_ignore_error, ../../crates/reqlan-index/tests/broken_references.rs:check_skips_file_refs_inside_inline_code_and_fences, ../../crates/reqlan-index/tests/broken_references.rs:check_skips_gitignored_file_targets, ../../crates/reqlan-index/tests/broken_references.rs:check_skips_gitignored_import_paths, ../../crates/reqlan-index/tests/broken_references.rs:check_skips_import_on_rq_ignore_error, ../../crates/reqlan-index/tests/broken_references.rs:check_skips_qualified_missing_idea_on_rq_ignore_error, ../../crates/reqlan-index/tests/broken_references.rs:check_skips_remote_import_urls, ../../crates/reqlan-index/tests/broken_references.rs:check_skips_same_file_idea_refs_and_reports_true_missing, ../../crates/reqlan-index/tests/broken_references.rs:check_skips_sparse_wildcard_warning_on_rq_ignore_error, ../../crates/reqlan-index/tests/broken_references.rs:check_skips_targets_that_match_skip_globs, ../../crates/reqlan-index/tests/broken_references.rs:check_strips_test_name_and_line_suffix_before_file_exists, ../../crates/reqlan-index/tests/broken_references.rs:check_two_globs_report_an_outside_target_and_skip_outside_directories, ../../crates/reqlan-index/tests/broken_references.rs:check_warns_when_a_wildcard_matches_zero_or_one_idea, ../../crates/reqlan-index/tests/broken_references.rs:check_wildcard_one_flag_error_sets_severity, ../../crates/reqlan-index/tests/broken_references.rs:check_wildcard_one_flag_off_omits_singleton_match, ../../crates/reqlan-index/tests/broken_references.rs:check_wildcard_zero_flag_error_sets_severity, ../../crates/reqlan-index/tests/broken_references.rs:check_wildcard_zero_flag_off_omits_empty_match, ../../crates/reqlan-index/tests/broken_references.rs:lists_broken_idea_references_and_filters_by_glob, ../../crates/reqlan-index/tests/broken_references.rs:optionally_includes_broken_comment_references, ../../crates/reqlan-index/tests/broken_references.rs:path_glob_matches_cursor_skip_glob, ../../crates/reqlan-index/tests/broken_references.rs:skips_idea_and_comment_refs_on_rq_ignore_error_lines, ../../crates/reqlan-index/tests/broken_references.rs:sync_drops_stale_inline_code_file_refs_when_extract_version_changes, ../crates/reqlan-index/tests/broken_references.rs:check_accepts_url_references