DOCUMENT OPS

Evidence Bundle Sealer and Chain-of-Custody Register

When a new evidence bundle lands in S3, computes a manifest digest, writes an append-only chain-of-custody row to Postgres.

CategoryDocument Ops
Enginesim
Difficultyadvanced
Triggerevent
Steps5
Setup~25 min

How it runs

The automated pipeline, trigger to output.

  • TriggerS3 emits manifest object-created eventAWS S3
  • ActionRead manifest and artifact list from bundleAWS S3
  • LogicCompute rolling digest over all artifact hashes
  • ActionAppend chain-of-custody row to Postgres ledgerPostgreSQLPostgres
  • OutputConfirm sealed pack in Teams audit channelMicrosoft Teams

What it does

Gives an evidence bundle a defensible chain of custody. The instant a pack is finalized in S3, it records who produced it, when, and a cryptographic digest of its contents into an append-only ledger, so anyone can later prove the bundle handed to the auditor is byte-for-byte what was sealed.

When to use it

Use it as the closing step after any evidence pack is assembled, when your auditor or your own controls require demonstrable integrity and a non-repudiable record of when evidence was frozen.

How it works

  1. 1An S3 object-created event on the bundle's manifest fires the flow.
  2. 2Reads the full manifest and the artifact list from the bundle prefix.
  3. 3Computes a single rolling digest over every artifact hash to fingerprint the whole pack.
  4. 4Inserts an append-only row into the Postgres chain-of-custody ledger with the digest, period, object count, and sealing timestamp.
  5. 5Posts a confirmation to the audit channel in Microsoft Teams noting the pack is sealed and its digest.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect AWS S3Buckets, objects, signed URLs.
  2. 2
    Connect PostgresAny Postgres URL — query, write, migrate.
  3. 3
    Connect Microsoft TeamsChannels, chats, files.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.