s-m-r-t
Open the s-m-r-t source on GitHub Switch to dark color scheme
← All packages
Content & media v0.57.40 New

@happyvertical/smrt-ingestion

Durable tenant-scoped intake: receipts, evidence, analysis attempts, proposals, and an action journal, with inbox and review components for people.

Source ↗

What it gives you

Durable tenant-scoped intake: receipts, evidence, analysis attempts, proposals, and an action journal, with inbox and review components for people.

  1. 01Receipt identity is tenant, source, and delivery key; a source retries the same receive call after failure or lost acknowledgment
  2. 02Every read and write rechecks the host scope predicate; source metadata is never authority
  3. 03Configured source adapters for email, a watch folder, and vendor webhooks preserve bytes and never perform domain writes

Receive, analyze, journal

receive accepts bounded original byte buffers with stable part ids and becomes ready only after every part is durable. analyze appends immutable input revisions; claimAnalysis uses leases, monotonic fences, and attempt budgets. createAction, publishProposal, and appendPlan persist explicit intentions for the later review and execution layer; they approve nothing.

Deletion and retention

expire revokes access and pending work before removing bytes and calling the host purgeDerived callback. Interrupted deletion is retried by repairDeletions and sweepRetention. Minimal identities remain; content-bearing payloads are redacted. Only SQLite and PostgreSQL are supported.

Human review

IntakeInbox and IntakeReview mount through an authenticated host using the browser-safe IntakeReviewHost contract. The ingestion.inbox and ingestion.review recipes register those routes for a host to mount and declare no model navigation.