# benchweave retention


Project retention/disposal from the store at rest (read-only).


``` bash
benchweave retention [OPTIONS]
```


Writes nothing back and never migrates the store -- a schema mismatch (pending migrations or a newer store) refuses typed (retention_store:).


<span class="gd-details-chevron" aria-hidden="true"></span>Full --help output


    Usage: benchweave retention [OPTIONS]

      Project retention/disposal from the store at rest (read-only).

      Writes nothing back and never migrates the store -- a schema mismatch
      (pending migrations or a newer store) refuses typed (retention_store:).

    Options:
      --data-dir PATH              At-rest data directory (holds state.sqlite +
                                   content/).  [required]
      --bench TEXT                 Restrict the projection to one bench id
                                   (default: every bench).
      --policy PATH                Retention policy file. Default: <data-
                                   dir>/retention-policy.json -- absent there means
                                   every row is ungoverned; a file that is present
                                   but invalid refuses. An explicitly passed path
                                   must load.
      --max-dataset-bytes INTEGER  Capture-byte ceiling for the quota-wedge
                                   projection (default: env
                                   BENCHWEAVE_MAX_DATASET_BYTES; unset means
                                   ceiling unknown and the exhaustion projection
                                   is omitted).
      --horizon-s INTEGER          Growth horizon in seconds: every stream's
                                   ingest rate is extrapolated over this one
                                   window so projections are comparable (default:
                                   2592000, 30 days; accepted range
                                   1..253402300799, the datetime-domain ceiling).
      --out PATH                   Write the report to FILE (markdown; JSON with
                                   --json) instead of stdout.
      --json                       Emit the stable machine JSON contract instead
                                   of text.
      --help                       Show this message and exit.


# Options


`--data-dir: PATH`  
**Required.** At-rest data directory (holds state.sqlite + content/). Environment variable: `BENCHWEAVE_DATA_DIR`.

`--bench: TEXT`  
Restrict the projection to one bench id (default: every bench).

`--policy: PATH`  
Retention policy file. Default: /retention-policy.json -- absent there means every row is ungoverned; a file that is present but invalid refuses. An explicitly passed path must load.

`--max-dataset-bytes: INTEGER`  
Capture-byte ceiling for the quota-wedge projection (default: env BENCHWEAVE_MAX_DATASET_BYTES; unset means ceiling unknown and the exhaustion projection is omitted).

`--horizon-s: INTEGER`  
Growth horizon in seconds: every stream's ingest rate is extrapolated over this one window so projections are comparable (default: 2592000, 30 days; accepted range 1..253402300799, the datetime-domain ceiling).

`--out: PATH`  
Write the report to FILE (markdown; JSON with `--json`) instead of stdout.

`--json`  
Emit the stable machine JSON contract instead of text.
