reqlanOverviewIdeasFilesCode filesClustersAttributesGraphPrint
Ideas/implied_context

Idea detail

implied_context

reqlan rq/bases/base.rq:122

block

Summary

The * * active base * * for editor-adjacent surfaces is the longest-matching base root that
contains the focused file path. When no file is focused, the last selected base ( Ideas Summary
switcher / activity bar ) or the first discovered base is used.
Context, local graph, and analysers bind to the active base's index — not a merged global graph.
User / explicit pin is a pointer swap only — active_base_switch.
Core selection: base-discovery.ts ( `baseForPath` / `selectDefaultBase` ); editor pin / switch: index-service.ts.

Jump to outbound references

Jump to inbound references

Navigation

Source file

reqlan rq/bases/base.rq

community 3

community cluster

base.rq

file cluster

reqlan rq/bases

folder cluster

status: Not present

status cluster

tag: Not present

tag cluster

Printable page

Static print-friendly idea sheet.

Attributes

KeyValue
implementation base-discovery.ts, index-service.ts
tests base-discovery.test.ts:baseForPath picks longest matching root, base-discovery.test.ts:selectDefaultBase prefers cwd containment

Browse all attributes

Ancestor context

active_base_switch

Changing the active base is a * * pointer swap * * onto a per-base `WorkspaceIndex` / store. - Do * * not * * await soft-sync, hard-rebuild, or a full `.rq` walk on the switch call itself. - Host surfaces rebind views to the newly active store ( status snapshot, tables, context panes ) immediately. - If the selected base is not yet ready, show its readiness / progress and * * schedule * * the normal activate catch-up ( open if needed, then one soft sync ) fire-and-forget — same path as ["../indexer/indexer.rq".triggers] / ["../extension/features-graph-analysers.rq".indexing_trigger_open], not a special switcher rebuild. - Idle staleness checks also heal unopened / never-synced bases ( they cannot mtime-diff without a store ). - `activateAll` isolates open failures so one bad base cannot leave siblings stranded in `uninitialized`. - Editor-follow must not overwrite a user pin on the same refresh that applies the selection. Surfaces: activity bar ["../extension/module/activitybar-panels/workspace.rq".workspace_base_picker], Ideas Summary ["../extension/module/ideas_summary/base-scope.rq".ideas_summary_base_scope]. Implemented by [editor_index_adapter] ( `setActiveBaseId` / `scheduleBaseCatchUp` ); engine: [base_registry] `ensureBaseReady`, [workspace_index] `ensureReady`.

Outbound references

KindIdeaPathSnippet
file_reference base_discovery packages/analytical/src/core/base-discovery.ts base-discovery.ts
file_reference ../../packages/analytical/test/base-discovery.test.ts:baseForPath picks longest matching root packages/analytical/test/base-discovery.test.ts:baseForPath picks longest matching root base-discovery.test.ts:baseForPath picks longest matching root
file_reference ../../packages/analytical/test/base-discovery.test.ts:selectDefaultBase prefers cwd containment packages/analytical/test/base-discovery.test.ts:selectDefaultBase prefers cwd containment base-discovery.test.ts:selectDefaultBase prefers cwd containment
file_reference editor_index_adapter packages/extension/src/analytical_submodule/index-store/index-service.ts index-service.ts
references active_base_switch reqlan rq/bases/base.rq active_base_switch

Inbound references

KindIdeaPathSnippet
references base_nesting reqlan rq/bases/base.rq implied_context

Unresolved references

KindIdeaPathSnippet
None

Local graph

Initialising graph…