reqlanOverviewIdeasFilesCode filesClustersAttributesGraphPrint

Printable idea sheet

sqlite_artifact_lifecycle

reqlan rq/extension/index-host/sqlite-artifact-lifecycle.rq:11

Katz 0.052

Base SQLite artifacts under `<base>/.reqlan/` ( base_ownership ) must not stay locked for the
whole extension session. The host opens them only while work runs, then releases file handles
so users can delete or replace the files.
Aligns with event_driven: open and close are reactions to index or analysis events, not a
permanent connection or a reconnect loop.
Mediation: only workspace-index.ts / open-analysis-api.ts own SQLite connections. The extension
adapter ( index-service.ts ) must not keep a second long-lived analysis runtime beside the
index, and must not call native open without a matching dispose / release.
Related: index_sequencing, idle_stale_check, headless_consumers, multi_base_environment.

implementation
index-service.ts, base-registry.ts, workspace-index.ts, open-analysis-api.ts, native-analysis-api.ts
status
done
tests
sqlite-artifact-release.test.ts:dispose releases ideas-index so the file can be unlinked, sqlite-artifact-release.test.ts:WorkspaceIndex deactivate releases sqlite artifacts, sqlite-artifact-release.test.ts:BaseRegistry releaseArtifacts closes handles but keeps descriptors, open-analysis-api.test.ts:opens the native engine when the host .node is available

Interactive page: sqlite_artifact_lifecycle