[P0] Build the bounded in-memory capture pipeline #8

Closed
opened 2026-07-17 23:58:54 +00:00 by lost-rob0t · 0 comments
lost-rob0t commented 2026-07-17 23:58:54 +00:00 (Migrated from github.com)

Goal

Process raw screenshots and metadata without writing plaintext intermediate data to disk.

Requirements

  • Typed staged pipeline with bounded queues and backpressure.
  • Raw frames exist only in memory and are released after processing.
  • No temporary image files.
  • Cancellation propagates from the capture gate to every worker.
  • Each item carries a capture-session token so stale work cannot persist after stop/restart.
  • Worker faults isolate the failing stage and force safe lifecycle behavior.
  • Queue limits and overload policy are configurable.

Acceptance criteria

  • Integration tests verify raw frames never reach filesystem-backed paths.
  • Disabling capture drains or destroys pending work without storage writes.
  • Overload drops or coalesces frames according to policy instead of growing memory without bound.
  • Error messages contain record IDs only, not captured content.

Depends on

## Goal Process raw screenshots and metadata without writing plaintext intermediate data to disk. ## Requirements - Typed staged pipeline with bounded queues and backpressure. - Raw frames exist only in memory and are released after processing. - No temporary image files. - Cancellation propagates from the capture gate to every worker. - Each item carries a capture-session token so stale work cannot persist after stop/restart. - Worker faults isolate the failing stage and force safe lifecycle behavior. - Queue limits and overload policy are configurable. ## Acceptance criteria - Integration tests verify raw frames never reach filesystem-backed paths. - Disabling capture drains or destroys pending work without storage writes. - Overload drops or coalesces frames according to policy instead of growing memory without bound. - Error messages contain record IDs only, not captured content. ## Depends on - #7
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/local-recall#8
No description provided.