You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The executor is pure and synchronous over whole in-memory documents.
Decision: decline. encode and decode take a parsed JSON value, so by the time a caller has one the whole document is already in memory; a streaming executor would need a streaming JSON tokenizer and an incremental writer inside a platform-neutral library. The rules themselves are not stream-safe in general: a when reads arbitrary paths of the governing document (including later fields and collections), fixed indices and one-feeder arrays need the array's length, and the gap and conflict checks run over the finished output. A sequence of records (NDJSON, one document per line) already streams by calling encode per record, which needs nothing from the library.
Revisit when a single document does not fit in memory, starting from a stream-safe subset (wildcard-aligned rules whose when reads only the current element) behind a separate entry point.
The README reason for this omission is updated in #56.
Activity
Mearman commentedon Oct 21, 2026
Declined as recorded: the rules are not stream-safe in general and NDJSON already streams per record. Revisit condition stays in the body.