Skip to main content

QueryStreams

@rotorsoft/act-root


@rotorsoft/act-root / act/src / QueryStreams

Type Alias: QueryStreams

QueryStreams = object

Defined in: libs/act/src/types/ports.ts:175

Filter options for Store.query_streams.

Mirrors the Query pattern used by Store.query โ€” pass filters server-side to keep the cost low on large tables (e.g., dynamic reactions producing one subscription per aggregate).

What the store can filter: the columns it actually persists โ€” stream, source, blocked. Higher-level classification ("is this a projection vs a reaction?", "is this a static or dynamic resolver?") is an orchestrator concern; the streams table doesn't store kinds. Layer that on top by joining results with Act's built-in registry.

Propertiesโ€‹

after?โ€‹

readonly optional after?: string

Defined in: libs/act/src/types/ports.ts:182

Keyset pagination cursor: returns only streams with stream > after (lexicographic). Pass the last seen stream to fetch the next page.


blocked?โ€‹

readonly optional blocked?: boolean

Defined in: libs/act/src/types/ports.ts:180

Restrict to blocked (true) or unblocked (false) streams. Omit for all.


lane?โ€‹

readonly optional lane?: string

Defined in: libs/act/src/types/ports.ts:181

Restrict to streams in this drain lane (ACT-1103). Exact match.


limit?โ€‹

readonly optional limit?: number

Defined in: libs/act/src/types/ports.ts:183

Max rows to return (default: 100).


source?โ€‹

readonly optional source?: string

Defined in: libs/act/src/types/ports.ts:178

Source-stream filter. Same anchor semantics as stream. Useful to isolate dynamic-reaction subscriptions tied to a particular aggregate stream. Pass source_exact: true for literal equality.


source_exact?โ€‹

readonly optional source_exact?: boolean

Defined in: libs/act/src/types/ports.ts:179

Use exact match instead of pattern match for source.


stream?โ€‹

readonly optional stream?: string

Defined in: libs/act/src/types/ports.ts:176

Stream-name filter. Interpreted as a regex by default โ€” same anchor semantics across all stores (PG ~, SQLite anchor-aware LIKE, InMemory JS RegExp). Anchors are caller- controlled: ^foo for prefix, foo$ for suffix, ^foo$ for whole-string match. A plain string foo is a substring match (matches any stream containing foo). Pass stream_exact: true for a fast literal-equality comparison that skips regex compilation.


stream_exact?โ€‹

readonly optional stream_exact?: boolean

Defined in: libs/act/src/types/ports.ts:177

Treat stream as a literal string instead of a regex.