Idea detail
release_when_idle
reqlan rq/extension/index-host/sqlite-artifact-lifecycle.rq:38
block
done
Summary
After an index or analysis pass finishes, and after the idle quiet period
( idle_stale_check / indexing_trigger_auto ), index-service.ts must release every open
base SQLite handle via base-registry.ts `releaseArtifacts` → workspace-index.ts `deactivate`.
Descriptors stay registered so the next event can reopen the same base.
Idle must not leave connections open after a heal / sync, and must not schedule another open
unless a real host event arrives ( file change, pin / switch, focus reopen, command, UI query ).
Navigation
Attributes
| Key | Value |
|---|---|
| implementation | index-service.ts, base-registry.ts, workspace-index.ts |
| status | done |
| tests | sqlite-artifact-release.test.ts:BaseRegistry releaseArtifacts closes handles but keeps descriptors, base-registry-catchup.test.ts:deactivate returns to uninitialized so a base can be reopened |
Ancestor context
No ancestor chain recorded.
Outbound references
Inbound references
| Kind | Idea | Path | Snippet |
|---|---|---|---|
| references | active_base_switch | reqlan rq/bases/base.rq | release_when_idle |
| references | event_driven_base_access | reqlan rq/extension/index-host/sqlite-artifact-lifecycle.rq | release_when_idle |
| references | extension_startup_sequence | reqlan rq/indexer/sequencing.rq | release_when_idle |
| references | idle_stale_check | reqlan rq/indexer/sequencing.rq | release_when_idle |
Unresolved references
| Kind | Idea | Path | Snippet |
|---|---|---|---|
| None | |||
Local graph
Initialising graph…