@raisindb/client 0.5.4 → 0.5.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3568,6 +3568,7 @@ declare class HttpDatabase {
3568
3568
  * const result = await staging.executeSql('SELECT * FROM content');
3569
3569
  * ```
3570
3570
  */
3571
+ private _searchApi?;
3571
3572
  onBranch(branch: string): HttpDatabase;
3572
3573
  /**
3573
3574
  * Execute SQL query
@@ -3597,6 +3598,46 @@ declare class HttpDatabase {
3597
3598
  * Get FunctionsApi for invoking server-side functions via HTTP
3598
3599
  */
3599
3600
  functions(): HttpFunctionsApi;
3601
+ /**
3602
+ * The retrieval implementation behind {@link search} and {@link ask}.
3603
+ *
3604
+ * The SAME `SearchApi` the WebSocket client uses, handed this transport's SQL
3605
+ * and function runners. Retrieval is one behaviour — the query shape, the
3606
+ * limit clamp, the required scope, the `grounded` fail-closed mapping — and a
3607
+ * second copy written against HTTP would drift from the first the moment
3608
+ * either is touched. Only the two runners differ.
3609
+ */
3610
+ private searchApi;
3611
+ /**
3612
+ * Find the passages matching a query, by meaning and by keyword at once.
3613
+ *
3614
+ * Available on this HTTP client as well as the WebSocket one, because this is
3615
+ * the client a server-side route handler reaches for — and a route handler is
3616
+ * exactly where retrieval belongs when the page is public: the browser must
3617
+ * not hold a credential that can read the repository.
3618
+ *
3619
+ * @example
3620
+ * ```typescript
3621
+ * const passages = await db.search('how much notice to terminate', {
3622
+ * workspaces: 'stories',
3623
+ * });
3624
+ * ```
3625
+ */
3626
+ search(query: string, options: SearchOptions): Promise<SearchPassage[]>;
3627
+ /**
3628
+ * Answer a question from the stored content, with citations.
3629
+ *
3630
+ * Check `grounded` before showing the answer: when it is false nothing
3631
+ * relevant was retrieved and the model was never asked.
3632
+ *
3633
+ * @example
3634
+ * ```typescript
3635
+ * const { answer, citations, grounded } = await db.ask(question, {
3636
+ * workspaces: 'stories, handbook',
3637
+ * });
3638
+ * ```
3639
+ */
3640
+ ask(question: string, options: AskOptions): Promise<Answer>;
3600
3641
  /**
3601
3642
  * Get an {@link McpClient} for a content-declared MCP server on this database.
3602
3643
  *
@@ -3568,6 +3568,7 @@ declare class HttpDatabase {
3568
3568
  * const result = await staging.executeSql('SELECT * FROM content');
3569
3569
  * ```
3570
3570
  */
3571
+ private _searchApi?;
3571
3572
  onBranch(branch: string): HttpDatabase;
3572
3573
  /**
3573
3574
  * Execute SQL query
@@ -3597,6 +3598,46 @@ declare class HttpDatabase {
3597
3598
  * Get FunctionsApi for invoking server-side functions via HTTP
3598
3599
  */
3599
3600
  functions(): HttpFunctionsApi;
3601
+ /**
3602
+ * The retrieval implementation behind {@link search} and {@link ask}.
3603
+ *
3604
+ * The SAME `SearchApi` the WebSocket client uses, handed this transport's SQL
3605
+ * and function runners. Retrieval is one behaviour — the query shape, the
3606
+ * limit clamp, the required scope, the `grounded` fail-closed mapping — and a
3607
+ * second copy written against HTTP would drift from the first the moment
3608
+ * either is touched. Only the two runners differ.
3609
+ */
3610
+ private searchApi;
3611
+ /**
3612
+ * Find the passages matching a query, by meaning and by keyword at once.
3613
+ *
3614
+ * Available on this HTTP client as well as the WebSocket one, because this is
3615
+ * the client a server-side route handler reaches for — and a route handler is
3616
+ * exactly where retrieval belongs when the page is public: the browser must
3617
+ * not hold a credential that can read the repository.
3618
+ *
3619
+ * @example
3620
+ * ```typescript
3621
+ * const passages = await db.search('how much notice to terminate', {
3622
+ * workspaces: 'stories',
3623
+ * });
3624
+ * ```
3625
+ */
3626
+ search(query: string, options: SearchOptions): Promise<SearchPassage[]>;
3627
+ /**
3628
+ * Answer a question from the stored content, with citations.
3629
+ *
3630
+ * Check `grounded` before showing the answer: when it is false nothing
3631
+ * relevant was retrieved and the model was never asked.
3632
+ *
3633
+ * @example
3634
+ * ```typescript
3635
+ * const { answer, citations, grounded } = await db.ask(question, {
3636
+ * workspaces: 'stories, handbook',
3637
+ * });
3638
+ * ```
3639
+ */
3640
+ ask(question: string, options: AskOptions): Promise<Answer>;
3600
3641
  /**
3601
3642
  * Get an {@link McpClient} for a content-declared MCP server on this database.
3602
3643
  *
@@ -1,4 +1,4 @@
1
- import { f as ConversationStoreOptions, a as ConversationStoreSnapshot, b as ChatMessage, g as ConversationListStoreOptions, h as ConversationListSnapshot, d as ConversationListItem, R as RaisinClient, I as IdentityUser, C as ConnectionState, S as SubscriptionFilters, D as Database, A as AuthManager, F as FlowClientOptions, i as FlowsApi, j as FlowExecutionEvent, E as EventMessage } from './conversation-list-store-Bw1UwRL8.mjs';
1
+ import { f as ConversationStoreOptions, a as ConversationStoreSnapshot, b as ChatMessage, g as ConversationListStoreOptions, h as ConversationListSnapshot, d as ConversationListItem, R as RaisinClient, I as IdentityUser, C as ConnectionState, S as SubscriptionFilters, D as Database, A as AuthManager, F as FlowClientOptions, i as FlowsApi, j as FlowExecutionEvent, E as EventMessage } from './conversation-list-store-BaeGM2lx.mjs';
2
2
 
3
3
  /**
4
4
  * React adapters for the RaisinDB conversation stores.
@@ -1,4 +1,4 @@
1
- import { f as ConversationStoreOptions, a as ConversationStoreSnapshot, b as ChatMessage, g as ConversationListStoreOptions, h as ConversationListSnapshot, d as ConversationListItem, R as RaisinClient, I as IdentityUser, C as ConnectionState, S as SubscriptionFilters, D as Database, A as AuthManager, F as FlowClientOptions, i as FlowsApi, j as FlowExecutionEvent, E as EventMessage } from './conversation-list-store-Bw1UwRL8.js';
1
+ import { f as ConversationStoreOptions, a as ConversationStoreSnapshot, b as ChatMessage, g as ConversationListStoreOptions, h as ConversationListSnapshot, d as ConversationListItem, R as RaisinClient, I as IdentityUser, C as ConnectionState, S as SubscriptionFilters, D as Database, A as AuthManager, F as FlowClientOptions, i as FlowsApi, j as FlowExecutionEvent, E as EventMessage } from './conversation-list-store-BaeGM2lx.js';
2
2
 
3
3
  /**
4
4
  * React adapters for the RaisinDB conversation stores.
package/dist/index.d.mts CHANGED
@@ -1,8 +1,8 @@
1
- import { l as PropertyValue, m as RelationRef, N as Node, H as HttpClientOptions, n as ClientOptions, o as Credentials, p as RaisinHttpClient, R as RaisinClient, q as RetryOptions, U as UploadErrorCode, B as BatchUpload, r as UploaderConfig, s as FileSource, t as BatchUploadOptions, u as BatchUploadResult, v as BatchProgress, w as ReconnectOptions } from './conversation-list-store-Bw1UwRL8.mjs';
2
- export { d0 as AiContainerConfig, c$ as AiErrorBehavior, c_ as AiToolMode, x as Answer, ag as Archetypes, y as AskOptions, b0 as AuditLogEntry, a$ as AuditQueryPayload, O as AuthEvent, A as AuthManager, ce as AuthProviders, Q as AuthStateChange, V as AuthStateChangeCallback, bf as AuthenticatePayload, bg as AuthenticateResponse, bM as BatchFileProgress, aj as BranchDiff, ak as BranchDivergence, ai as Branches, bV as BrowserFileSource, cU as CanonicalTaskType, du as ChatAssistantMessageEvent, dw as ChatCompletedEvent, dF as ChatConversationCreatedEvent, dy as ChatDoneEvent, dn as ChatEvent, dx as ChatFailedEvent, dI as ChatLogEvent, b as ChatMessage, dH as ChatMessageDeliveredEvent, dG as ChatMessageSavedEvent, cZ as ChatStepConfig, cY as ChatTerminationConfig, cX as ChatTerminationMode, dt as ChatTextChunkEvent, dB as ChatThoughtChunkEvent, dA as ChatToolCallCompletedEvent, dz as ChatToolCallStartedEvent, dv as ChatWaitingEvent, bI as ChunkUploadResponse, z as Citation, K as ClientMode, bK as CompleteUploadRequest, bL as CompleteUploadResponse, aF as Connection, aG as ConnectionOptions, C as ConnectionState, d4 as ContainerRule, cO as ContainerType, dp as Conversation, cJ as ConversationCreatedEvent, d as ConversationListItem, h as ConversationListSnapshot, e as ConversationListStore, g as ConversationListStoreOptions, dJ as ConversationManager, dR as ConversationManagerOptions, dr as ConversationStatus, c as ConversationStore, f as ConversationStoreOptions, a as ConversationStoreSnapshot, dO as ConversationSubscription, dq as ConversationType, dM as CreateConvoOptions, bG as CreateUploadRequest, bH as CreateUploadResponse, al as CrossBranchCopySummary, am as CrossBranchNodeChange, L as CurrentUser, bU as DEFAULT_BATCH_CONCURRENCY, bT as DEFAULT_BRANCH, bO as DEFAULT_CHUNK_SIZE, bP as DEFAULT_MAX_RETRIES, bS as DEFAULT_NODE_TYPE, bQ as DEFAULT_RETRY_BASE_DELAY, bR as DEFAULT_RETRY_MAX_DELAY, dK as DEFAULT_SEND_MESSAGE_INACTIVITY_TIMEOUT_MS, D as Database, a3 as DatabaseHttpOptions, ah as ElementTypes, aQ as ErrorInfo, aD as EventCallback, aB as EventHandler, E as EventMessage, aC as EventSubscriptions, d5 as FanOutConfig, c1 as FlowClient, F as FlowClientOptions, c3 as FlowCollectResult, cD as FlowCompletedEvent, da as FlowDefinition, d7 as FlowDefinitionContainer, d9 as FlowDefinitionNode, d1 as FlowDefinitionNodeBase, d3 as FlowDefinitionStep, cQ as FlowErrorStrategy, j as FlowExecutionEvent, cE as FlowFailedEvent, cu as FlowInstanceStatus, cv as FlowInstanceStatusResponse, cw as FlowMetrics, cC as FlowResumedEvent, ct as FlowRunResponse, c2 as FlowRunResult, d2 as FlowStepProperties, cB as FlowWaitingEvent, i as FlowsApi, cf as FunctionInvokeOptions, cg as FunctionInvokeResponse, ch as FunctionInvokeSyncResponse, c4 as FunctionsApi, cW as HandoffTarget, aw as HttpArchetypes, $ as HttpCurrentUser, Z as HttpDatabase, ax as HttpElementTypes, c5 as HttpFunctionsApi, av as HttpNodeTypes, a0 as HttpUserNode, _ as HttpWorkspaceClient, cT as HumanTaskType, c6 as IdentityAuthApi, aL as IdentityAuthError, aK as IdentityAuthResponse, c8 as IdentityAuthResult, c9 as IdentityAuthTransport, ca as IdentityInfo, cb as IdentityMe, I as IdentityUser, dj as InboxApi, dk as InboxApiOptions, db as InboxTask, dc as InboxTaskStatus, aS as IncomingRelation, dL as ListConversationsOptions, aq as ListInvocationsFilter, dl as ListTasksOptions, dm as ListTasksResponse, aI as LocalStorageTokenStorage, cL as LogEvent, bu as LogLevel, bA as LoggerConfig, d8 as LoopConfig, cd as MagicLinkOptions, cc as MagicLinkSent, co as McpCallToolResult, ci as McpClient, cn as McpContentBlock, ck as McpFrameStream, cl as McpJsonRpcFrame, cq as McpReadResourceResult, cp as McpResourceContents, cs as McpResourceSubscription, cr as McpResourceUpdate, cm as McpToolDescriptor, cj as McpTransport, aH as MemoryTokenStorage, d6 as MergeStrategy, ds as MessageBody, dD as MessageChild, cK as MessageSavedEvent, aa as NodeCreateDeepOptions, aV as NodeCreateDeepPayload, a9 as NodeCreateOptions, aU as NodeCreatePayload, aX as NodeDeletePayload, an as NodeDiffInfo, aO as NodeEventPayload, bW as NodeFileSource, aY as NodeGetPayload, aZ as NodeHistoryPayload, a8 as NodeOperations, ac as NodeQueryOptions, b1 as NodeQueryPayload, aT as NodeRelationships, af as NodeTypes, ab as NodeUpdateOptions, aW as NodeUpdatePayload, dQ as PlanActionOptions, dP as PlanActionReceipt, P as PlanProjection, k as PlanProjectionTask, dE as PlanTask, de as RETRY_STRATEGIES, cN as RaisinReference, bt as ReconnectManager, bh as RefreshTokenPayload, b2 as RelationAddPayload, b3 as RelationRemovePayload, b4 as RelationsGetPayload, aP as RequestContext, aM as RequestEnvelope, bn as RequestType, aN as ResponseEnvelope, aR as ResponseMetadata, bo as ResponseStatus, cR as RetryConfig, cS as RetryStrategy, a_ as RevisionEntry, ar as ScheduleInvocationOptions, as as ScheduledInvocation, at as ScheduledInvocationRef, au as ScheduledInvocationTargetKind, ap as SchedulerApi, ay as SchemaCommit, G as SearchOptions, J as SearchPassage, dN as SendMessageOptions, a1 as SignAssetOptions, a2 as SignedAssetUrl, az as SqlQuery, b5 as SqlQueryPayload, b6 as SqlResult, cy as StepCompletedEvent, cP as StepErrorBehavior, cA as StepFailedEvent, cx as StepStartedEvent, cz as StepUsage, bc as SubscribePayload, aE as Subscription, S as SubscriptionFilters, be as SubscriptionResponse, ao as Tags, dd as TaskCompletionResult, cV as TaskOption, cF as TextChunkEvent, cI as ThoughtChunkEvent, aJ as TokenStorage, cH as ToolCallCompletedEvent, T as ToolCallInfo, dC as ToolCallRecord, cG as ToolCallStartedEvent, ad as Transaction, bi as TransactionBeginPayload, bj as TransactionBeginResponse, bk as TransactionCommitPayload, bl as TransactionCommitResponse, ae as TransactionOptions, bm as TransactionRollbackPayload, bd as UnsubscribePayload, bF as Upload, bN as UploadError, c0 as UploadManager, bC as UploadOptions, bD as UploadProgress, bE as UploadResult, bB as UploadStatus, bJ as UploadStatusResponse, b$ as Uploader, Y as UserChangeCallback, X as UserChangeEvent, M as UserNode, b7 as Workspace, a4 as WorkspaceClient, a6 as WorkspaceCreateOptions, b8 as WorkspaceCreatePayload, ba as WorkspaceDeletePayload, b9 as WorkspaceGetPayload, a5 as WorkspaceManager, W as WorkspaceScope, a7 as WorkspaceUpdateOptions, bb as WorkspaceUpdatePayload, bZ as calculateChunkCount, bw as configureLogger, bX as createFileSource, aA as createSqlHandler, bq as decodeMessage, bp as encodeMessage, b_ as getChunkRange, bY as getContentType, by as getLogLevel, bz as getLoggerConfig, df as getRefDisplayName, dg as getRefPath, br as isEventMessage, di as isFlowDefinitionContainer, dh as isFlowDefinitionStep, bs as isResponseEnvelope, cM as isTerminalEvent, bv as logger, dS as projectPlansFromMessages, c7 as readTokensFromFragment, bx as setLogLevel } from './conversation-list-store-Bw1UwRL8.mjs';
3
- export { F as FlowStatus, j as RaisinContextValue, i as RaisinProviderProps, g as RaisinReact, R as ReactLike, h as ReactLikeWithContext, k as UseAuthReturn, l as UseConnectionReturn, b as UseConversationListReturn, U as UseConversationReturn, d as UseFlowOptions, e as UseFlowReturn, m as UseSqlOptions, n as UseSqlReturn, o as UseSubscriptionOptions, f as createRaisinReact, u as useConversation, a as useConversationList, c as useFlow } from './index-C-K8H-PW.mjs';
1
+ import { l as PropertyValue, m as RelationRef, N as Node, H as HttpClientOptions, n as ClientOptions, o as Credentials, p as RaisinHttpClient, R as RaisinClient, q as RetryOptions, U as UploadErrorCode, B as BatchUpload, r as UploaderConfig, s as FileSource, t as BatchUploadOptions, u as BatchUploadResult, v as BatchProgress, w as ReconnectOptions } from './conversation-list-store-BaeGM2lx.mjs';
2
+ export { d0 as AiContainerConfig, c$ as AiErrorBehavior, c_ as AiToolMode, x as Answer, ag as Archetypes, y as AskOptions, b0 as AuditLogEntry, a$ as AuditQueryPayload, O as AuthEvent, A as AuthManager, ce as AuthProviders, Q as AuthStateChange, V as AuthStateChangeCallback, bf as AuthenticatePayload, bg as AuthenticateResponse, bM as BatchFileProgress, aj as BranchDiff, ak as BranchDivergence, ai as Branches, bV as BrowserFileSource, cU as CanonicalTaskType, du as ChatAssistantMessageEvent, dw as ChatCompletedEvent, dF as ChatConversationCreatedEvent, dy as ChatDoneEvent, dn as ChatEvent, dx as ChatFailedEvent, dI as ChatLogEvent, b as ChatMessage, dH as ChatMessageDeliveredEvent, dG as ChatMessageSavedEvent, cZ as ChatStepConfig, cY as ChatTerminationConfig, cX as ChatTerminationMode, dt as ChatTextChunkEvent, dB as ChatThoughtChunkEvent, dA as ChatToolCallCompletedEvent, dz as ChatToolCallStartedEvent, dv as ChatWaitingEvent, bI as ChunkUploadResponse, z as Citation, K as ClientMode, bK as CompleteUploadRequest, bL as CompleteUploadResponse, aF as Connection, aG as ConnectionOptions, C as ConnectionState, d4 as ContainerRule, cO as ContainerType, dp as Conversation, cJ as ConversationCreatedEvent, d as ConversationListItem, h as ConversationListSnapshot, e as ConversationListStore, g as ConversationListStoreOptions, dJ as ConversationManager, dR as ConversationManagerOptions, dr as ConversationStatus, c as ConversationStore, f as ConversationStoreOptions, a as ConversationStoreSnapshot, dO as ConversationSubscription, dq as ConversationType, dM as CreateConvoOptions, bG as CreateUploadRequest, bH as CreateUploadResponse, al as CrossBranchCopySummary, am as CrossBranchNodeChange, L as CurrentUser, bU as DEFAULT_BATCH_CONCURRENCY, bT as DEFAULT_BRANCH, bO as DEFAULT_CHUNK_SIZE, bP as DEFAULT_MAX_RETRIES, bS as DEFAULT_NODE_TYPE, bQ as DEFAULT_RETRY_BASE_DELAY, bR as DEFAULT_RETRY_MAX_DELAY, dK as DEFAULT_SEND_MESSAGE_INACTIVITY_TIMEOUT_MS, D as Database, a3 as DatabaseHttpOptions, ah as ElementTypes, aQ as ErrorInfo, aD as EventCallback, aB as EventHandler, E as EventMessage, aC as EventSubscriptions, d5 as FanOutConfig, c1 as FlowClient, F as FlowClientOptions, c3 as FlowCollectResult, cD as FlowCompletedEvent, da as FlowDefinition, d7 as FlowDefinitionContainer, d9 as FlowDefinitionNode, d1 as FlowDefinitionNodeBase, d3 as FlowDefinitionStep, cQ as FlowErrorStrategy, j as FlowExecutionEvent, cE as FlowFailedEvent, cu as FlowInstanceStatus, cv as FlowInstanceStatusResponse, cw as FlowMetrics, cC as FlowResumedEvent, ct as FlowRunResponse, c2 as FlowRunResult, d2 as FlowStepProperties, cB as FlowWaitingEvent, i as FlowsApi, cf as FunctionInvokeOptions, cg as FunctionInvokeResponse, ch as FunctionInvokeSyncResponse, c4 as FunctionsApi, cW as HandoffTarget, aw as HttpArchetypes, $ as HttpCurrentUser, Z as HttpDatabase, ax as HttpElementTypes, c5 as HttpFunctionsApi, av as HttpNodeTypes, a0 as HttpUserNode, _ as HttpWorkspaceClient, cT as HumanTaskType, c6 as IdentityAuthApi, aL as IdentityAuthError, aK as IdentityAuthResponse, c8 as IdentityAuthResult, c9 as IdentityAuthTransport, ca as IdentityInfo, cb as IdentityMe, I as IdentityUser, dj as InboxApi, dk as InboxApiOptions, db as InboxTask, dc as InboxTaskStatus, aS as IncomingRelation, dL as ListConversationsOptions, aq as ListInvocationsFilter, dl as ListTasksOptions, dm as ListTasksResponse, aI as LocalStorageTokenStorage, cL as LogEvent, bu as LogLevel, bA as LoggerConfig, d8 as LoopConfig, cd as MagicLinkOptions, cc as MagicLinkSent, co as McpCallToolResult, ci as McpClient, cn as McpContentBlock, ck as McpFrameStream, cl as McpJsonRpcFrame, cq as McpReadResourceResult, cp as McpResourceContents, cs as McpResourceSubscription, cr as McpResourceUpdate, cm as McpToolDescriptor, cj as McpTransport, aH as MemoryTokenStorage, d6 as MergeStrategy, ds as MessageBody, dD as MessageChild, cK as MessageSavedEvent, aa as NodeCreateDeepOptions, aV as NodeCreateDeepPayload, a9 as NodeCreateOptions, aU as NodeCreatePayload, aX as NodeDeletePayload, an as NodeDiffInfo, aO as NodeEventPayload, bW as NodeFileSource, aY as NodeGetPayload, aZ as NodeHistoryPayload, a8 as NodeOperations, ac as NodeQueryOptions, b1 as NodeQueryPayload, aT as NodeRelationships, af as NodeTypes, ab as NodeUpdateOptions, aW as NodeUpdatePayload, dQ as PlanActionOptions, dP as PlanActionReceipt, P as PlanProjection, k as PlanProjectionTask, dE as PlanTask, de as RETRY_STRATEGIES, cN as RaisinReference, bt as ReconnectManager, bh as RefreshTokenPayload, b2 as RelationAddPayload, b3 as RelationRemovePayload, b4 as RelationsGetPayload, aP as RequestContext, aM as RequestEnvelope, bn as RequestType, aN as ResponseEnvelope, aR as ResponseMetadata, bo as ResponseStatus, cR as RetryConfig, cS as RetryStrategy, a_ as RevisionEntry, ar as ScheduleInvocationOptions, as as ScheduledInvocation, at as ScheduledInvocationRef, au as ScheduledInvocationTargetKind, ap as SchedulerApi, ay as SchemaCommit, G as SearchOptions, J as SearchPassage, dN as SendMessageOptions, a1 as SignAssetOptions, a2 as SignedAssetUrl, az as SqlQuery, b5 as SqlQueryPayload, b6 as SqlResult, cy as StepCompletedEvent, cP as StepErrorBehavior, cA as StepFailedEvent, cx as StepStartedEvent, cz as StepUsage, bc as SubscribePayload, aE as Subscription, S as SubscriptionFilters, be as SubscriptionResponse, ao as Tags, dd as TaskCompletionResult, cV as TaskOption, cF as TextChunkEvent, cI as ThoughtChunkEvent, aJ as TokenStorage, cH as ToolCallCompletedEvent, T as ToolCallInfo, dC as ToolCallRecord, cG as ToolCallStartedEvent, ad as Transaction, bi as TransactionBeginPayload, bj as TransactionBeginResponse, bk as TransactionCommitPayload, bl as TransactionCommitResponse, ae as TransactionOptions, bm as TransactionRollbackPayload, bd as UnsubscribePayload, bF as Upload, bN as UploadError, c0 as UploadManager, bC as UploadOptions, bD as UploadProgress, bE as UploadResult, bB as UploadStatus, bJ as UploadStatusResponse, b$ as Uploader, Y as UserChangeCallback, X as UserChangeEvent, M as UserNode, b7 as Workspace, a4 as WorkspaceClient, a6 as WorkspaceCreateOptions, b8 as WorkspaceCreatePayload, ba as WorkspaceDeletePayload, b9 as WorkspaceGetPayload, a5 as WorkspaceManager, W as WorkspaceScope, a7 as WorkspaceUpdateOptions, bb as WorkspaceUpdatePayload, bZ as calculateChunkCount, bw as configureLogger, bX as createFileSource, aA as createSqlHandler, bq as decodeMessage, bp as encodeMessage, b_ as getChunkRange, bY as getContentType, by as getLogLevel, bz as getLoggerConfig, df as getRefDisplayName, dg as getRefPath, br as isEventMessage, di as isFlowDefinitionContainer, dh as isFlowDefinitionStep, bs as isResponseEnvelope, cM as isTerminalEvent, bv as logger, dS as projectPlansFromMessages, c7 as readTokensFromFragment, bx as setLogLevel } from './conversation-list-store-BaeGM2lx.mjs';
3
+ export { F as FlowStatus, j as RaisinContextValue, i as RaisinProviderProps, g as RaisinReact, R as ReactLike, h as ReactLikeWithContext, k as UseAuthReturn, l as UseConnectionReturn, b as UseConversationListReturn, U as UseConversationReturn, d as UseFlowOptions, e as UseFlowReturn, m as UseSqlOptions, n as UseSqlReturn, o as UseSubscriptionOptions, f as createRaisinReact, u as useConversation, a as useConversationList, c as useFlow } from './index-C4pX6FVI.mjs';
4
4
  export { AuthAdapter, AuthSnapshot, ConnectionAdapter, ConnectionSnapshot, FlowAdapter, FlowAdapterOptions, FlowSnapshot, RAISIN_CONTEXT_KEY, RaisinContext, SubscriptionAdapter, FlowStatus as SvelteFlowStatus, createAuthAdapter, createConnectionAdapter, createConversationAdapter, createConversationListAdapter, createFlowAdapter, createSubscriptionAdapter } from './svelte.mjs';
5
- export { b as SqlAdapter, S as SqlAdapterOptions, a as SqlSnapshot, c as createSqlAdapter } from './svelte-sql-Ce8sVO7T.mjs';
5
+ export { b as SqlAdapter, S as SqlAdapterOptions, a as SqlSnapshot, c as createSqlAdapter } from './svelte-sql-BhMxrqn_.mjs';
6
6
  export { RaisinVue, VueComputedRef, VueLike, VueRef, createRaisinVue } from './vue.mjs';
7
7
  import 'events';
8
8
  import 'fs/promises';
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- import { l as PropertyValue, m as RelationRef, N as Node, H as HttpClientOptions, n as ClientOptions, o as Credentials, p as RaisinHttpClient, R as RaisinClient, q as RetryOptions, U as UploadErrorCode, B as BatchUpload, r as UploaderConfig, s as FileSource, t as BatchUploadOptions, u as BatchUploadResult, v as BatchProgress, w as ReconnectOptions } from './conversation-list-store-Bw1UwRL8.js';
2
- export { d0 as AiContainerConfig, c$ as AiErrorBehavior, c_ as AiToolMode, x as Answer, ag as Archetypes, y as AskOptions, b0 as AuditLogEntry, a$ as AuditQueryPayload, O as AuthEvent, A as AuthManager, ce as AuthProviders, Q as AuthStateChange, V as AuthStateChangeCallback, bf as AuthenticatePayload, bg as AuthenticateResponse, bM as BatchFileProgress, aj as BranchDiff, ak as BranchDivergence, ai as Branches, bV as BrowserFileSource, cU as CanonicalTaskType, du as ChatAssistantMessageEvent, dw as ChatCompletedEvent, dF as ChatConversationCreatedEvent, dy as ChatDoneEvent, dn as ChatEvent, dx as ChatFailedEvent, dI as ChatLogEvent, b as ChatMessage, dH as ChatMessageDeliveredEvent, dG as ChatMessageSavedEvent, cZ as ChatStepConfig, cY as ChatTerminationConfig, cX as ChatTerminationMode, dt as ChatTextChunkEvent, dB as ChatThoughtChunkEvent, dA as ChatToolCallCompletedEvent, dz as ChatToolCallStartedEvent, dv as ChatWaitingEvent, bI as ChunkUploadResponse, z as Citation, K as ClientMode, bK as CompleteUploadRequest, bL as CompleteUploadResponse, aF as Connection, aG as ConnectionOptions, C as ConnectionState, d4 as ContainerRule, cO as ContainerType, dp as Conversation, cJ as ConversationCreatedEvent, d as ConversationListItem, h as ConversationListSnapshot, e as ConversationListStore, g as ConversationListStoreOptions, dJ as ConversationManager, dR as ConversationManagerOptions, dr as ConversationStatus, c as ConversationStore, f as ConversationStoreOptions, a as ConversationStoreSnapshot, dO as ConversationSubscription, dq as ConversationType, dM as CreateConvoOptions, bG as CreateUploadRequest, bH as CreateUploadResponse, al as CrossBranchCopySummary, am as CrossBranchNodeChange, L as CurrentUser, bU as DEFAULT_BATCH_CONCURRENCY, bT as DEFAULT_BRANCH, bO as DEFAULT_CHUNK_SIZE, bP as DEFAULT_MAX_RETRIES, bS as DEFAULT_NODE_TYPE, bQ as DEFAULT_RETRY_BASE_DELAY, bR as DEFAULT_RETRY_MAX_DELAY, dK as DEFAULT_SEND_MESSAGE_INACTIVITY_TIMEOUT_MS, D as Database, a3 as DatabaseHttpOptions, ah as ElementTypes, aQ as ErrorInfo, aD as EventCallback, aB as EventHandler, E as EventMessage, aC as EventSubscriptions, d5 as FanOutConfig, c1 as FlowClient, F as FlowClientOptions, c3 as FlowCollectResult, cD as FlowCompletedEvent, da as FlowDefinition, d7 as FlowDefinitionContainer, d9 as FlowDefinitionNode, d1 as FlowDefinitionNodeBase, d3 as FlowDefinitionStep, cQ as FlowErrorStrategy, j as FlowExecutionEvent, cE as FlowFailedEvent, cu as FlowInstanceStatus, cv as FlowInstanceStatusResponse, cw as FlowMetrics, cC as FlowResumedEvent, ct as FlowRunResponse, c2 as FlowRunResult, d2 as FlowStepProperties, cB as FlowWaitingEvent, i as FlowsApi, cf as FunctionInvokeOptions, cg as FunctionInvokeResponse, ch as FunctionInvokeSyncResponse, c4 as FunctionsApi, cW as HandoffTarget, aw as HttpArchetypes, $ as HttpCurrentUser, Z as HttpDatabase, ax as HttpElementTypes, c5 as HttpFunctionsApi, av as HttpNodeTypes, a0 as HttpUserNode, _ as HttpWorkspaceClient, cT as HumanTaskType, c6 as IdentityAuthApi, aL as IdentityAuthError, aK as IdentityAuthResponse, c8 as IdentityAuthResult, c9 as IdentityAuthTransport, ca as IdentityInfo, cb as IdentityMe, I as IdentityUser, dj as InboxApi, dk as InboxApiOptions, db as InboxTask, dc as InboxTaskStatus, aS as IncomingRelation, dL as ListConversationsOptions, aq as ListInvocationsFilter, dl as ListTasksOptions, dm as ListTasksResponse, aI as LocalStorageTokenStorage, cL as LogEvent, bu as LogLevel, bA as LoggerConfig, d8 as LoopConfig, cd as MagicLinkOptions, cc as MagicLinkSent, co as McpCallToolResult, ci as McpClient, cn as McpContentBlock, ck as McpFrameStream, cl as McpJsonRpcFrame, cq as McpReadResourceResult, cp as McpResourceContents, cs as McpResourceSubscription, cr as McpResourceUpdate, cm as McpToolDescriptor, cj as McpTransport, aH as MemoryTokenStorage, d6 as MergeStrategy, ds as MessageBody, dD as MessageChild, cK as MessageSavedEvent, aa as NodeCreateDeepOptions, aV as NodeCreateDeepPayload, a9 as NodeCreateOptions, aU as NodeCreatePayload, aX as NodeDeletePayload, an as NodeDiffInfo, aO as NodeEventPayload, bW as NodeFileSource, aY as NodeGetPayload, aZ as NodeHistoryPayload, a8 as NodeOperations, ac as NodeQueryOptions, b1 as NodeQueryPayload, aT as NodeRelationships, af as NodeTypes, ab as NodeUpdateOptions, aW as NodeUpdatePayload, dQ as PlanActionOptions, dP as PlanActionReceipt, P as PlanProjection, k as PlanProjectionTask, dE as PlanTask, de as RETRY_STRATEGIES, cN as RaisinReference, bt as ReconnectManager, bh as RefreshTokenPayload, b2 as RelationAddPayload, b3 as RelationRemovePayload, b4 as RelationsGetPayload, aP as RequestContext, aM as RequestEnvelope, bn as RequestType, aN as ResponseEnvelope, aR as ResponseMetadata, bo as ResponseStatus, cR as RetryConfig, cS as RetryStrategy, a_ as RevisionEntry, ar as ScheduleInvocationOptions, as as ScheduledInvocation, at as ScheduledInvocationRef, au as ScheduledInvocationTargetKind, ap as SchedulerApi, ay as SchemaCommit, G as SearchOptions, J as SearchPassage, dN as SendMessageOptions, a1 as SignAssetOptions, a2 as SignedAssetUrl, az as SqlQuery, b5 as SqlQueryPayload, b6 as SqlResult, cy as StepCompletedEvent, cP as StepErrorBehavior, cA as StepFailedEvent, cx as StepStartedEvent, cz as StepUsage, bc as SubscribePayload, aE as Subscription, S as SubscriptionFilters, be as SubscriptionResponse, ao as Tags, dd as TaskCompletionResult, cV as TaskOption, cF as TextChunkEvent, cI as ThoughtChunkEvent, aJ as TokenStorage, cH as ToolCallCompletedEvent, T as ToolCallInfo, dC as ToolCallRecord, cG as ToolCallStartedEvent, ad as Transaction, bi as TransactionBeginPayload, bj as TransactionBeginResponse, bk as TransactionCommitPayload, bl as TransactionCommitResponse, ae as TransactionOptions, bm as TransactionRollbackPayload, bd as UnsubscribePayload, bF as Upload, bN as UploadError, c0 as UploadManager, bC as UploadOptions, bD as UploadProgress, bE as UploadResult, bB as UploadStatus, bJ as UploadStatusResponse, b$ as Uploader, Y as UserChangeCallback, X as UserChangeEvent, M as UserNode, b7 as Workspace, a4 as WorkspaceClient, a6 as WorkspaceCreateOptions, b8 as WorkspaceCreatePayload, ba as WorkspaceDeletePayload, b9 as WorkspaceGetPayload, a5 as WorkspaceManager, W as WorkspaceScope, a7 as WorkspaceUpdateOptions, bb as WorkspaceUpdatePayload, bZ as calculateChunkCount, bw as configureLogger, bX as createFileSource, aA as createSqlHandler, bq as decodeMessage, bp as encodeMessage, b_ as getChunkRange, bY as getContentType, by as getLogLevel, bz as getLoggerConfig, df as getRefDisplayName, dg as getRefPath, br as isEventMessage, di as isFlowDefinitionContainer, dh as isFlowDefinitionStep, bs as isResponseEnvelope, cM as isTerminalEvent, bv as logger, dS as projectPlansFromMessages, c7 as readTokensFromFragment, bx as setLogLevel } from './conversation-list-store-Bw1UwRL8.js';
3
- export { F as FlowStatus, j as RaisinContextValue, i as RaisinProviderProps, g as RaisinReact, R as ReactLike, h as ReactLikeWithContext, k as UseAuthReturn, l as UseConnectionReturn, b as UseConversationListReturn, U as UseConversationReturn, d as UseFlowOptions, e as UseFlowReturn, m as UseSqlOptions, n as UseSqlReturn, o as UseSubscriptionOptions, f as createRaisinReact, u as useConversation, a as useConversationList, c as useFlow } from './index-B1u8uo8e.js';
1
+ import { l as PropertyValue, m as RelationRef, N as Node, H as HttpClientOptions, n as ClientOptions, o as Credentials, p as RaisinHttpClient, R as RaisinClient, q as RetryOptions, U as UploadErrorCode, B as BatchUpload, r as UploaderConfig, s as FileSource, t as BatchUploadOptions, u as BatchUploadResult, v as BatchProgress, w as ReconnectOptions } from './conversation-list-store-BaeGM2lx.js';
2
+ export { d0 as AiContainerConfig, c$ as AiErrorBehavior, c_ as AiToolMode, x as Answer, ag as Archetypes, y as AskOptions, b0 as AuditLogEntry, a$ as AuditQueryPayload, O as AuthEvent, A as AuthManager, ce as AuthProviders, Q as AuthStateChange, V as AuthStateChangeCallback, bf as AuthenticatePayload, bg as AuthenticateResponse, bM as BatchFileProgress, aj as BranchDiff, ak as BranchDivergence, ai as Branches, bV as BrowserFileSource, cU as CanonicalTaskType, du as ChatAssistantMessageEvent, dw as ChatCompletedEvent, dF as ChatConversationCreatedEvent, dy as ChatDoneEvent, dn as ChatEvent, dx as ChatFailedEvent, dI as ChatLogEvent, b as ChatMessage, dH as ChatMessageDeliveredEvent, dG as ChatMessageSavedEvent, cZ as ChatStepConfig, cY as ChatTerminationConfig, cX as ChatTerminationMode, dt as ChatTextChunkEvent, dB as ChatThoughtChunkEvent, dA as ChatToolCallCompletedEvent, dz as ChatToolCallStartedEvent, dv as ChatWaitingEvent, bI as ChunkUploadResponse, z as Citation, K as ClientMode, bK as CompleteUploadRequest, bL as CompleteUploadResponse, aF as Connection, aG as ConnectionOptions, C as ConnectionState, d4 as ContainerRule, cO as ContainerType, dp as Conversation, cJ as ConversationCreatedEvent, d as ConversationListItem, h as ConversationListSnapshot, e as ConversationListStore, g as ConversationListStoreOptions, dJ as ConversationManager, dR as ConversationManagerOptions, dr as ConversationStatus, c as ConversationStore, f as ConversationStoreOptions, a as ConversationStoreSnapshot, dO as ConversationSubscription, dq as ConversationType, dM as CreateConvoOptions, bG as CreateUploadRequest, bH as CreateUploadResponse, al as CrossBranchCopySummary, am as CrossBranchNodeChange, L as CurrentUser, bU as DEFAULT_BATCH_CONCURRENCY, bT as DEFAULT_BRANCH, bO as DEFAULT_CHUNK_SIZE, bP as DEFAULT_MAX_RETRIES, bS as DEFAULT_NODE_TYPE, bQ as DEFAULT_RETRY_BASE_DELAY, bR as DEFAULT_RETRY_MAX_DELAY, dK as DEFAULT_SEND_MESSAGE_INACTIVITY_TIMEOUT_MS, D as Database, a3 as DatabaseHttpOptions, ah as ElementTypes, aQ as ErrorInfo, aD as EventCallback, aB as EventHandler, E as EventMessage, aC as EventSubscriptions, d5 as FanOutConfig, c1 as FlowClient, F as FlowClientOptions, c3 as FlowCollectResult, cD as FlowCompletedEvent, da as FlowDefinition, d7 as FlowDefinitionContainer, d9 as FlowDefinitionNode, d1 as FlowDefinitionNodeBase, d3 as FlowDefinitionStep, cQ as FlowErrorStrategy, j as FlowExecutionEvent, cE as FlowFailedEvent, cu as FlowInstanceStatus, cv as FlowInstanceStatusResponse, cw as FlowMetrics, cC as FlowResumedEvent, ct as FlowRunResponse, c2 as FlowRunResult, d2 as FlowStepProperties, cB as FlowWaitingEvent, i as FlowsApi, cf as FunctionInvokeOptions, cg as FunctionInvokeResponse, ch as FunctionInvokeSyncResponse, c4 as FunctionsApi, cW as HandoffTarget, aw as HttpArchetypes, $ as HttpCurrentUser, Z as HttpDatabase, ax as HttpElementTypes, c5 as HttpFunctionsApi, av as HttpNodeTypes, a0 as HttpUserNode, _ as HttpWorkspaceClient, cT as HumanTaskType, c6 as IdentityAuthApi, aL as IdentityAuthError, aK as IdentityAuthResponse, c8 as IdentityAuthResult, c9 as IdentityAuthTransport, ca as IdentityInfo, cb as IdentityMe, I as IdentityUser, dj as InboxApi, dk as InboxApiOptions, db as InboxTask, dc as InboxTaskStatus, aS as IncomingRelation, dL as ListConversationsOptions, aq as ListInvocationsFilter, dl as ListTasksOptions, dm as ListTasksResponse, aI as LocalStorageTokenStorage, cL as LogEvent, bu as LogLevel, bA as LoggerConfig, d8 as LoopConfig, cd as MagicLinkOptions, cc as MagicLinkSent, co as McpCallToolResult, ci as McpClient, cn as McpContentBlock, ck as McpFrameStream, cl as McpJsonRpcFrame, cq as McpReadResourceResult, cp as McpResourceContents, cs as McpResourceSubscription, cr as McpResourceUpdate, cm as McpToolDescriptor, cj as McpTransport, aH as MemoryTokenStorage, d6 as MergeStrategy, ds as MessageBody, dD as MessageChild, cK as MessageSavedEvent, aa as NodeCreateDeepOptions, aV as NodeCreateDeepPayload, a9 as NodeCreateOptions, aU as NodeCreatePayload, aX as NodeDeletePayload, an as NodeDiffInfo, aO as NodeEventPayload, bW as NodeFileSource, aY as NodeGetPayload, aZ as NodeHistoryPayload, a8 as NodeOperations, ac as NodeQueryOptions, b1 as NodeQueryPayload, aT as NodeRelationships, af as NodeTypes, ab as NodeUpdateOptions, aW as NodeUpdatePayload, dQ as PlanActionOptions, dP as PlanActionReceipt, P as PlanProjection, k as PlanProjectionTask, dE as PlanTask, de as RETRY_STRATEGIES, cN as RaisinReference, bt as ReconnectManager, bh as RefreshTokenPayload, b2 as RelationAddPayload, b3 as RelationRemovePayload, b4 as RelationsGetPayload, aP as RequestContext, aM as RequestEnvelope, bn as RequestType, aN as ResponseEnvelope, aR as ResponseMetadata, bo as ResponseStatus, cR as RetryConfig, cS as RetryStrategy, a_ as RevisionEntry, ar as ScheduleInvocationOptions, as as ScheduledInvocation, at as ScheduledInvocationRef, au as ScheduledInvocationTargetKind, ap as SchedulerApi, ay as SchemaCommit, G as SearchOptions, J as SearchPassage, dN as SendMessageOptions, a1 as SignAssetOptions, a2 as SignedAssetUrl, az as SqlQuery, b5 as SqlQueryPayload, b6 as SqlResult, cy as StepCompletedEvent, cP as StepErrorBehavior, cA as StepFailedEvent, cx as StepStartedEvent, cz as StepUsage, bc as SubscribePayload, aE as Subscription, S as SubscriptionFilters, be as SubscriptionResponse, ao as Tags, dd as TaskCompletionResult, cV as TaskOption, cF as TextChunkEvent, cI as ThoughtChunkEvent, aJ as TokenStorage, cH as ToolCallCompletedEvent, T as ToolCallInfo, dC as ToolCallRecord, cG as ToolCallStartedEvent, ad as Transaction, bi as TransactionBeginPayload, bj as TransactionBeginResponse, bk as TransactionCommitPayload, bl as TransactionCommitResponse, ae as TransactionOptions, bm as TransactionRollbackPayload, bd as UnsubscribePayload, bF as Upload, bN as UploadError, c0 as UploadManager, bC as UploadOptions, bD as UploadProgress, bE as UploadResult, bB as UploadStatus, bJ as UploadStatusResponse, b$ as Uploader, Y as UserChangeCallback, X as UserChangeEvent, M as UserNode, b7 as Workspace, a4 as WorkspaceClient, a6 as WorkspaceCreateOptions, b8 as WorkspaceCreatePayload, ba as WorkspaceDeletePayload, b9 as WorkspaceGetPayload, a5 as WorkspaceManager, W as WorkspaceScope, a7 as WorkspaceUpdateOptions, bb as WorkspaceUpdatePayload, bZ as calculateChunkCount, bw as configureLogger, bX as createFileSource, aA as createSqlHandler, bq as decodeMessage, bp as encodeMessage, b_ as getChunkRange, bY as getContentType, by as getLogLevel, bz as getLoggerConfig, df as getRefDisplayName, dg as getRefPath, br as isEventMessage, di as isFlowDefinitionContainer, dh as isFlowDefinitionStep, bs as isResponseEnvelope, cM as isTerminalEvent, bv as logger, dS as projectPlansFromMessages, c7 as readTokensFromFragment, bx as setLogLevel } from './conversation-list-store-BaeGM2lx.js';
3
+ export { F as FlowStatus, j as RaisinContextValue, i as RaisinProviderProps, g as RaisinReact, R as ReactLike, h as ReactLikeWithContext, k as UseAuthReturn, l as UseConnectionReturn, b as UseConversationListReturn, U as UseConversationReturn, d as UseFlowOptions, e as UseFlowReturn, m as UseSqlOptions, n as UseSqlReturn, o as UseSubscriptionOptions, f as createRaisinReact, u as useConversation, a as useConversationList, c as useFlow } from './index-DCtNAWZ0.js';
4
4
  export { AuthAdapter, AuthSnapshot, ConnectionAdapter, ConnectionSnapshot, FlowAdapter, FlowAdapterOptions, FlowSnapshot, RAISIN_CONTEXT_KEY, RaisinContext, SubscriptionAdapter, FlowStatus as SvelteFlowStatus, createAuthAdapter, createConnectionAdapter, createConversationAdapter, createConversationListAdapter, createFlowAdapter, createSubscriptionAdapter } from './svelte.js';
5
- export { b as SqlAdapter, S as SqlAdapterOptions, a as SqlSnapshot, c as createSqlAdapter } from './svelte-sql-GOSaxlBv.js';
5
+ export { b as SqlAdapter, S as SqlAdapterOptions, a as SqlSnapshot, c as createSqlAdapter } from './svelte-sql-DN3NpM4c.js';
6
6
  export { RaisinVue, VueComputedRef, VueLike, VueRef, createRaisinVue } from './vue.js';
7
7
  import 'events';
8
8
  import 'fs/promises';
package/dist/index.js CHANGED
@@ -8239,19 +8239,6 @@ var HttpDatabase = class _HttpDatabase {
8239
8239
  getBranch() {
8240
8240
  return this.branch;
8241
8241
  }
8242
- /**
8243
- * Create a new HttpDatabase instance scoped to a specific branch.
8244
- *
8245
- * @param branch - Branch name
8246
- * @returns New HttpDatabase instance with branch context
8247
- *
8248
- * @example
8249
- * ```typescript
8250
- * const db = client.database('my-repo');
8251
- * const staging = db.onBranch('staging');
8252
- * const result = await staging.executeSql('SELECT * FROM content');
8253
- * ```
8254
- */
8255
8242
  onBranch(branch) {
8256
8243
  return new _HttpDatabase(this.repository, this.client, branch);
8257
8244
  }
@@ -8299,6 +8286,63 @@ var HttpDatabase = class _HttpDatabase {
8299
8286
  (repo, name, input) => this.client.invokeFunctionSync(repo, name, input)
8300
8287
  );
8301
8288
  }
8289
+ /**
8290
+ * The retrieval implementation behind {@link search} and {@link ask}.
8291
+ *
8292
+ * The SAME `SearchApi` the WebSocket client uses, handed this transport's SQL
8293
+ * and function runners. Retrieval is one behaviour — the query shape, the
8294
+ * limit clamp, the required scope, the `grounded` fail-closed mapping — and a
8295
+ * second copy written against HTTP would drift from the first the moment
8296
+ * either is touched. Only the two runners differ.
8297
+ */
8298
+ searchApi() {
8299
+ if (!this._searchApi) {
8300
+ this._searchApi = new SearchApi(
8301
+ (sql, params) => this.executeSql(sql, params),
8302
+ async (name, input) => {
8303
+ const run = await this.functions().invoke(name, input, {
8304
+ waitForResult: true
8305
+ });
8306
+ return run?.result ?? run;
8307
+ }
8308
+ );
8309
+ }
8310
+ return this._searchApi;
8311
+ }
8312
+ /**
8313
+ * Find the passages matching a query, by meaning and by keyword at once.
8314
+ *
8315
+ * Available on this HTTP client as well as the WebSocket one, because this is
8316
+ * the client a server-side route handler reaches for — and a route handler is
8317
+ * exactly where retrieval belongs when the page is public: the browser must
8318
+ * not hold a credential that can read the repository.
8319
+ *
8320
+ * @example
8321
+ * ```typescript
8322
+ * const passages = await db.search('how much notice to terminate', {
8323
+ * workspaces: 'stories',
8324
+ * });
8325
+ * ```
8326
+ */
8327
+ async search(query, options) {
8328
+ return this.searchApi().search(query, options);
8329
+ }
8330
+ /**
8331
+ * Answer a question from the stored content, with citations.
8332
+ *
8333
+ * Check `grounded` before showing the answer: when it is false nothing
8334
+ * relevant was retrieved and the model was never asked.
8335
+ *
8336
+ * @example
8337
+ * ```typescript
8338
+ * const { answer, citations, grounded } = await db.ask(question, {
8339
+ * workspaces: 'stories, handbook',
8340
+ * });
8341
+ * ```
8342
+ */
8343
+ async ask(question, options) {
8344
+ return this.searchApi().ask(question, options);
8345
+ }
8302
8346
  /**
8303
8347
  * Get an {@link McpClient} for a content-declared MCP server on this database.
8304
8348
  *