> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sediment.so/llms.txt
> Use this file to discover all available pages before exploring further.

# CLI reference

Every `sediment` command and flag, generated from the CLI's own parsers by
`scripts/gen_cli_docs.py`. Do not edit this file — edit the parser and
re-run the generator (CI fails on a stale page).

Each verb also prints this on demand: `sediment <command> --help`.

**(required)** on a flag whose description names an environment default —
`$SEDIMENT_ORG_ID` and friends — means required only while that variable is
unset.

New here? Start with the [quickstart](/quickstart), which installs
the CLI.

## Commands

## sediment facts

fact counts per table (remote; --database-url for direct)

```text  theme={"dark"}
sediment facts [-h] [--database-url DATABASE_URL]
```

Options:

| Name             | Description                                 |
| ---------------- | ------------------------------------------- |
| `--database-url` | read PostgreSQL directly instead of the API |

## sediment evidence

read selected Session evidence with operator authority

```text  theme={"dark"}
sediment evidence [-h] <operation> ...
```

### sediment evidence inventory

print a complete bounded Session inventory as JSON

```text  theme={"dark"}
sediment evidence inventory [-h] SESSION
```

Arguments:

| Name         | Description       |
| ------------ | ----------------- |
| `session_id` | source Session ID |

### sediment evidence inspect

print one Inference call's part manifest as JSON

```text  theme={"dark"}
sediment evidence inspect [-h] SESSION INFERENCE_CALL
```

Arguments:

| Name                | Description            |
| ------------------- | ---------------------- |
| `session_id`        | source Session ID      |
| `inference_call_id` | Inference call Fact ID |

### sediment evidence fetch

write exact selected parts to a private local packet

```text  theme={"dark"}
sediment evidence fetch [-h] --references PATH --output PATH SESSION
```

Arguments:

| Name         | Description       |
| ------------ | ----------------- |
| `session_id` | source Session ID |

Options:

| Name           | Description                                                                |
| -------------- | -------------------------------------------------------------------------- |
| `--references` | version 1 selection JSON (64 KiB; 1–32 distinct references) **(required)** |
| `--output`     | packet destination (0600; must not exist) **(required)**                   |

## sediment demo

plant one synthetic session so facts is non-zero

```text  theme={"dark"}
sediment demo [-h] [--force]
```

Options:

| Name      | Description                                                |
| --------- | ---------------------------------------------------------- |
| `--force` | allow a non-loopback server (writes synthetic facts to it) |

## sediment db

provision database roles or inspect and upgrade the schema

```text  theme={"dark"}
sediment db [-h] <operation> ...
```

### sediment db status

inspect the schema revision without changing it

```text  theme={"dark"}
sediment db status [-h] [--database-url DATABASE_URL]
```

Options:

| Name             | Description                                       |
| ---------------- | ------------------------------------------------- |
| `--database-url` | PostgreSQL URL (default: SEDIMENT\_DATABASE\_URL) |

### sediment db upgrade

upgrade the schema under an advisory lock

```text  theme={"dark"}
sediment db upgrade [-h] [--database-url DATABASE_URL]
```

Options:

| Name             | Description                                       |
| ---------------- | ------------------------------------------------- |
| `--database-url` | PostgreSQL URL (default: SEDIMENT\_DATABASE\_URL) |

### sediment db provision

Read SEDIMENT\_BOOTSTRAP\_DATABASE\_URL, SEDIMENT\_MIGRATOR\_PASSWORD, SEDIMENT\_RUNTIME\_PASSWORD, and SEDIMENT\_OPERATOR\_PASSWORD from the environment. Stop services before provisioning.

```text  theme={"dark"}
sediment db provision [-h]
```

## sediment quarantine

quarantine one fact by id

```text  theme={"dark"}
sediment quarantine [-h] --reason REASON {inference_calls,developer_decisions,ci_outcomes,pushes,pull_request_merges,pull_request_revisions,edit_observations,rejected_edits,retry_linkages,session_commit_observations,repository_renames} fact_id
```

Arguments:

| Name      | Description                                                                                                                                                                                                                                 |
| --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `table`   | (choices: `inference_calls`, `developer_decisions`, `ci_outcomes`, `pushes`, `pull_request_merges`, `pull_request_revisions`, `edit_observations`, `rejected_edits`, `retry_linkages`, `session_commit_observations`, `repository_renames`) |
| `fact_id` | —                                                                                                                                                                                                                                           |

Options:

| Name       | Description    |
| ---------- | -------------- |
| `--reason` | **(required)** |

## sediment release

release one quarantined fact by id

```text  theme={"dark"}
sediment release [-h] --reason REASON {inference_calls,developer_decisions,ci_outcomes,pushes,pull_request_merges,pull_request_revisions,edit_observations,rejected_edits,retry_linkages,session_commit_observations,repository_renames} fact_id
```

Arguments:

| Name      | Description                                                                                                                                                                                                                                 |
| --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `table`   | (choices: `inference_calls`, `developer_decisions`, `ci_outcomes`, `pushes`, `pull_request_merges`, `pull_request_revisions`, `edit_observations`, `rejected_edits`, `retry_linkages`, `session_commit_observations`, `repository_renames`) |
| `fact_id` | —                                                                                                                                                                                                                                           |

Options:

| Name       | Description    |
| ---------- | -------------- |
| `--reason` | **(required)** |

## sediment quarantine-log

the org's quarantine history

```text  theme={"dark"}
sediment quarantine-log [-h] [--tail TAIL] [--all]
```

Options:

| Name     | Description             |
| -------- | ----------------------- |
| `--tail` | rows shown (default 20) |
| `--all`  | show the full history   |

## sediment quarantine-inference-calls

bulk-quarantine inference calls by filter (dry-run by default)

```text  theme={"dark"}
sediment quarantine-inference-calls [-h] [--session-id SESSION_ID] [--provider {litellm,portkey,helicone,unknown}] [--between FROM TO] [--all] [--apply] --reason REASON
```

Options:

| Name           | Description                                             |
| -------------- | ------------------------------------------------------- |
| `--session-id` | —                                                       |
| `--provider`   | gateway provider filter                                 |
| `--between`    | ISO-8601 capture-time bounds, timezone-aware, inclusive |
| `--all`        | allow a filterless (org-wide) run                       |
| `--apply`      | write; without it, dry-run only                         |
| `--reason`     | **(required)**                                          |

## sediment server

run a local API server with managed PostgreSQL

```text  theme={"dark"}
sediment server [-h] [--host HOST] [--port PORT] [--root ROOT]
```

Options:

| Name     | Description                                                                            |
| -------- | -------------------------------------------------------------------------------------- |
| `--host` | —                                                                                      |
| `--port` | —                                                                                      |
| `--root` | server data, PostgreSQL binaries, credentials, and logs (default: \~/.sediment/server) |

## sediment login

store verified operator credentials, or separate ingest credentials with --capture. Remote URLs must use HTTPS; HTTP is accepted only for localhost or a literal loopback IP address. A loopback URL enrolls both credentials sediment server generated in \~/.sediment/server/server.env; any other server prompts, or takes --with-token on stdin.

```text  theme={"dark"}
sediment login [-h] [--capture] [--with-token] url
```

Arguments:

| Name  | Description                                                                                     |
| ----- | ----------------------------------------------------------------------------------------------- |
| `url` | HTTPS server base URL or loopback HTTP URL, e.g. [http://127.0.0.1:8000](http://127.0.0.1:8000) |

Options:

| Name           | Description                                                              |
| -------------- | ------------------------------------------------------------------------ |
| `--capture`    | enroll an ingest credential for capture without replacing operator login |
| `--with-token` | read the token from stdin instead of prompting (unattended)              |

## sediment logout

remove stored credentials

```text  theme={"dark"}
sediment logout [-h] [--server SERVER]
```

Options:

| Name       | Description                                 |
| ---------- | ------------------------------------------- |
| `--server` | server URL to log out of (default: current) |

## sediment commit

pretty-print attributions for a commit

```text  theme={"dark"}
sediment commit [-h] [--repo REPO] [--repository-provider {github}] [--repository-host REPOSITORY_HOST] [--repository-id REPOSITORY_ID] [--as-of AS_OF] sha
```

Arguments:

| Name  | Description                    |
| ----- | ------------------------------ |
| `sha` | full 40- or 64-char commit SHA |

Options:

| Name                    | Description                                                |
| ----------------------- | ---------------------------------------------------------- |
| `--repo`                | observed repository name; ambiguous names require identity |
| `--repository-provider` | forge provider (requires host and ID) (choices: `github`)  |
| `--repository-host`     | forge hostname (requires provider and ID)                  |
| `--repository-id`       | provider repository ID (requires provider and host)        |
| `--as-of`               | inclusive evidence boundary as an aware RFC 3339 timestamp |

## sediment derive

materialize a reviewed canonical derivation bundle

```text  theme={"dark"}
sediment derive [-h] --out OUT [--policy POLICY] [--since SINCE] [--until UNTIL] [--users USER [USER ...]] [--sample N]
```

Options:

| Name       | Description                                                        |
| ---------- | ------------------------------------------------------------------ |
| `--out`    | new bundle directory **(required)**                                |
| `--policy` | strict derivation policy TOML file                                 |
| `--since`  | inclusive RFC 3339 completion time                                 |
| `--until`  | exclusive RFC 3339 completion time                                 |
| `--users`  | space-separated user IDs (default: every user in the organization) |
| `--sample` | print the first N canonical rows after writing                     |

## sediment export

run an export projection

```text  theme={"dark"}
sediment export [-h] <format> ...
```

### sediment export rlvr

export one explicit RLVR target

```text  theme={"dark"}
sediment export rlvr [-h] --out OUT --target {sediment,swe-bench,nemo-gym} [--from FROM_BUNDLE] [--profile {swe-bench-tasks-v1,nemo-gym-rollouts-v1}] [--consumer-config CONSUMER_CONFIG]
```

Options:

| Name                | Description                                                                                           |
| ------------------- | ----------------------------------------------------------------------------------------------------- |
| `--out`             | output directory **(required)**                                                                       |
| `--target`          | explicit consumer contract (choices: `sediment`, `swe-bench`, `nemo-gym`) **(required)**              |
| `--from`            | validated derived bundle directory                                                                    |
| `--profile`         | exact optional consumer compatibility profile (choices: `swe-bench-tasks-v1`, `nemo-gym-rollouts-v1`) |
| `--consumer-config` | JSON task and response configuration for the selected profile                                         |

### sediment export dpo

dpo.jsonl — chosen/rejected pairs

```text  theme={"dark"}
sediment export dpo [-h] --out OUT [--recipe {dpo_human,dpo_outcome}] [--from FROM_BUNDLE] [--profile {hf-trl-dpo-v2,fireworks-dpo-v2}]
```

Options:

| Name        | Description                                                                                               |
| ----------- | --------------------------------------------------------------------------------------------------------- |
| `--out`     | output directory **(required)**                                                                           |
| `--recipe`  | evidence recipe (default: dpo\_human; dpo\_outcome requires opt-in) (choices: `dpo_human`, `dpo_outcome`) |
| `--from`    | validated derived bundle directory                                                                        |
| `--profile` | exact optional consumer compatibility profile (choices: `hf-trl-dpo-v2`, `fireworks-dpo-v2`)              |

### sediment export sft

sft.jsonl — supervised training targets

```text  theme={"dark"}
sediment export sft [-h] --out OUT [--recipe {sft_curated,sft_verified}] [--from FROM_BUNDLE] [--profile {hf-trl-sft-v1,fireworks-sft-v1}]
```

Options:

| Name        | Description                                                                                                     |
| ----------- | --------------------------------------------------------------------------------------------------------------- |
| `--out`     | output directory **(required)**                                                                                 |
| `--recipe`  | evidence recipe (default: sft\_curated; sft\_verified requires opt-in) (choices: `sft_curated`, `sft_verified`) |
| `--from`    | validated derived bundle directory                                                                              |
| `--profile` | exact optional consumer compatibility profile (choices: `hf-trl-sft-v1`, `fireworks-sft-v1`)                    |

### sediment export diff-sft

diff\_sft.jsonl — per-commit, per-file training rows

```text  theme={"dark"}
sediment export diff-sft [-h] --out OUT [--recipe {sft_curated,sft_verified}] [--from FROM_BUNDLE]
```

Options:

| Name       | Description                                                                                                         |
| ---------- | ------------------------------------------------------------------------------------------------------------------- |
| `--out`    | output directory **(required)**                                                                                     |
| `--recipe` | SFT evidence recipe (default: sft\_curated; sft\_verified requires opt-in) (choices: `sft_curated`, `sft_verified`) |
| `--from`   | validated derived bundle directory                                                                                  |

### sediment export recovery

recovery.jsonl — red-to-green CI-transition recovery pairs

```text  theme={"dark"}
sediment export recovery [-h] --out OUT [--recipe {recovery_ci}]
```

Options:

| Name       | Description                                                      |
| ---------- | ---------------------------------------------------------------- |
| `--out`    | output directory **(required)**                                  |
| `--recipe` | evidence recipe (default: recovery\_ci) (choices: `recovery_ci`) |

## sediment doctor

```text  theme={"dark"}
sediment doctor [-h] [--fetch] [--agent {cursor,codex,pi}] [--session-id SESSION_ID] [--transcripts] [--inference-calls] [REPO ...]
```

Arguments:

| Name    | Description                                                                              |
| ------- | ---------------------------------------------------------------------------------------- |
| `repos` | also run the per-repo checks on each REPO (default: agent and machine-level checks only) |

Options:

| Name                | Description                                                                                                                                                                         |
| ------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--fetch`           | allow one fetch into the notes tracking ref, so a notes ref whose remote tip is not a local object can be classified as behind vs diverged; without it doctor writes nothing at all |
| `--agent`           | verify this harness's installation and captured Session evidence (choices: `cursor`, `codex`, `pi`)                                                                                 |
| `--session-id`      | verify this exact Session with --agent and one REPO                                                                                                                                 |
| `--transcripts`     | also require this harness's Edit observation and transcript opt-in                                                                                                                  |
| `--inference-calls` | also require an Inference call in the selected Session                                                                                                                              |

## sediment install

```text  theme={"dark"}
sediment install [-h] [--no-agents] [--transcripts] [--no-env] [--user-id USER_ID] [--codex-profile NAME] [--fleet] [--out DIR] [--apply] [--prefix PREFIX] [repo]
```

Arguments:

| Name   | Description |
| ------ | ----------- |
| `repo` | —           |

Options:

| Name              | Description                                                                                                                                                                                                                                                                                                  |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `--no-agents`     | skip user-level hooks for Claude Code, Codex, Cursor, and pi                                                                                                                                                                                                                                                 |
| `--transcripts`   | opt in to the SessionEnd transcript extractor: ships applied edit text and observed file text to the ingest endpoint, plus the PreToolUse snapshot hook whose line hashes let it report how many lines something other than the agent changed; also enable pi Edit observations in the generated environment |
| `--no-env`        | skip writing the agent telemetry env files and let Cursor hooks inherit capture settings from their process; by default install generates them from the `sediment login` config                                                                                                                              |
| `--user-id`       | stamp OTEL\_RESOURCE\_ATTRIBUTES=user.id=\<value> into the env files (per-developer attribution)                                                                                                                                                                                                             |
| `--codex-profile` | write a Codex telemetry profile with resolved login credentials (0600); preserve its model and unrelated settings                                                                                                                                                                                            |
| `--fleet`         | emit the machine-wide MDM bundle instead of a per-repo install                                                                                                                                                                                                                                               |
| `--out`           | fleet: emit the bundle to DIR (default: ./sediment-fleet)                                                                                                                                                                                                                                                    |
| `--apply`         | fleet: provision this machine directly — bundle into --prefix, system gitconfig, Claude Code managed settings (needs privileges)                                                                                                                                                                             |
| `--prefix`        | fleet: absolute POSIX path where MDM installs the bundle; hooks reference the stamper there (default: /opt/sediment)                                                                                                                                                                                         |

## sediment uninstall

```text  theme={"dark"}
sediment uninstall [-h] [--agents] [repo]
```

Arguments:

| Name   | Description |
| ------ | ----------- |
| `repo` | —           |

Options:

| Name       | Description                                                                    |
| ---------- | ------------------------------------------------------------------------------ |
| `--agents` | also remove user-level agent hooks, generated env, and managed Codex telemetry |

## sediment mirror-gc

Reclaim bare mirrors for repos with no recent Push activity.

```text  theme={"dark"}
sediment mirror-gc [-h] --org ORG [--retention-days RETENTION_DAYS] [--apply] [--json] [--database-url DATABASE_URL] [--mirror-path MIRROR_PATH]
```

Options:

| Name               | Description                                                                 |
| ------------------ | --------------------------------------------------------------------------- |
| `--org`            | org id (default: \$SEDIMENT\_ORG\_ID) **(required)**                        |
| `--retention-days` | days of no Push before a mirror is eligible for removal (default: 90)       |
| `--apply`          | actually delete eligible mirrors (default: dry-run, print only)             |
| `--json`           | emit JSON instead of a text report                                          |
| `--database-url`   | PostgreSQL URL (default: \$SEDIMENT\_DATABASE\_URL)                         |
| `--mirror-path`    | base dir for git mirrors (default: \$SEDIMENT\_MIRROR\_PATH or './mirrors') |

## sediment delivery

Deliver prepared capture payloads; OTLP acknowledgment is not a Fact count.

```text  theme={"dark"}
sediment delivery [-h] {enqueue,status,replay} ...
```

### sediment delivery enqueue

```text  theme={"dark"}
sediment delivery enqueue [-h] [--directory DIRECTORY] [--fallback-direct]
```

Options:

| Name                | Description                                                            |
| ------------------- | ---------------------------------------------------------------------- |
| `--directory`       | private buffer (default: SEDIMENT\_DELIVERY\_DIR)                      |
| `--fallback-direct` | allow one best-effort send when buffering is disabled or storage fails |

### sediment delivery status

```text  theme={"dark"}
sediment delivery status [-h] [--directory DIRECTORY]
```

Options:

| Name          | Description                                       |
| ------------- | ------------------------------------------------- |
| `--directory` | private buffer (default: SEDIMENT\_DELIVERY\_DIR) |

### sediment delivery replay

```text  theme={"dark"}
sediment delivery replay [-h] [--directory DIRECTORY] [--watch] [--retry-blocked]
```

Options:

| Name              | Description                                                 |
| ----------------- | ----------------------------------------------------------- |
| `--directory`     | private buffer (default: SEDIMENT\_DELIVERY\_DIR)           |
| `--watch`         | supervise replay until stopped                              |
| `--retry-blocked` | retry blocked payloads once; stop the existing worker first |

## sediment report

Read-only reports, forwarded to their own module. An empty result exits 0, never an error.

| Report                                                                        | Description                                                          |
| ----------------------------------------------------------------------------- | -------------------------------------------------------------------- |
| [`model`](#sediment-report-model)                                             | per-model attribution/CI/acceptance; --compare significance          |
| [`label-confidence-inspection`](#sediment-report-label-confidence-inspection) | sample resolved confidence for human validation                      |
| [`dataset-diagnostics`](#sediment-report-dataset-diagnostics)                 | export-side dataset health checks                                    |
| [`recovery-yield`](#sediment-report-recovery-yield)                           | recovery-pair yield by skip reason                                   |
| [`precision`](#sediment-report-precision)                                     | attribution precision/recall against a ground-truth manifest         |
| [`abandonment`](#sediment-report-abandonment)                                 | sessions whose accepted edits never reached a commit                 |
| [`attribution-share`](#sediment-report-attribution-share)                     | notes-attribution share and decline alert                            |
| [`merge-retention`](#sediment-report-merge-retention)                         | attributed change retention through pull request merge               |
| [`lifecycle`](#sediment-report-lifecycle)                                     | accepted-work progression, retention, attrition, and rework evidence |

### sediment report model

Per-model outcome report — attribution, CI, and acceptance by model.

```text  theme={"dark"}
sediment report model [-h] --org ORG [--since-days SINCE_DAYS] [--json] [--trend] [--target-mde TARGET_MDE] [--completions-per-day MODEL_A_PER_DAY MODEL_B_PER_DAY] [--bootstrap-check] [--bootstrap-iterations BOOTSTRAP_ITERATIONS] [--bootstrap-seed BOOTSTRAP_SEED] [--non-inferiority-margin NON_INFERIORITY_MARGIN] [--peek-fraction PEEK_FRACTION] [--ci-grain {commit,attributed_completion}] [--compare MODEL_A MODEL_B] [--compare-all MODEL [MODEL ...]] [--effect-decay] [--regret] [--database-url DATABASE_URL] [--mirror-path MIRROR_PATH]
```

Options:

| Name                       | Description                                                                                                                                                                                                                                                                                                                                                                                          |
| -------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--org`                    | org id (default: \$SEDIMENT\_ORG\_ID) **(required)**                                                                                                                                                                                                                                                                                                                                                 |
| `--since-days`             | window inference calls (and their attributed completions) to the last N days by capture time; default: all history                                                                                                                                                                                                                                                                                   |
| `--json`                   | emit JSON rows instead of a table                                                                                                                                                                                                                                                                                                                                                                    |
| `--trend`                  | also bucket attribution\_rate and ci\_pass\_rate into 7-day captured-at windows and run a Mann-Kendall monotonic trend test                                                                                                                                                                                                                                                                          |
| `--target-mde`             | with --compare, also report the equal-allocation n per arm needed to detect this target effect, expressed as raw proportion points (0.05 means five percentage points)                                                                                                                                                                                                                               |
| `--completions-per-day`    | with --target-mde, also estimate calendar days using per-arm completions/day in the same order as --compare; zero or negative rates omit the duration line                                                                                                                                                                                                                                           |
| `--bootstrap-check`        | with --compare, also run a fixed-seed bootstrap percentile CI diagnostic against the analytic two-proportion CI                                                                                                                                                                                                                                                                                      |
| `--bootstrap-iterations`   | resamples for --bootstrap-check (default: 2000)                                                                                                                                                                                                                                                                                                                                                      |
| `--bootstrap-seed`         | deterministic RNG seed for --bootstrap-check (default: 151)                                                                                                                                                                                                                                                                                                                                          |
| `--non-inferiority-margin` | with --compare, test whether MODEL\_B is not worse than MODEL\_A by more than this raw proportion-point margin (0.05 means five percentage points)                                                                                                                                                                                                                                                   |
| `--peek-fraction`          | with --compare, also report an O'Brien-Fleming sequential boundary read for this information fraction (0 \< t \<= 1)                                                                                                                                                                                                                                                                                 |
| `--ci-grain`               | unit of analysis for ci\_linked/ci\_passed: 'commit' (default, correct) dedups a commit's file-grained attributed completions to one trial before counting; 'attributed\_completion' is the legacy per-attributed-completion count, kept only as an escape hatch for explicit comparison — it inflates sample size and is not recommended for inference (choices: `commit`, `attributed_completion`) |
| `--compare`                | two-proportion z-test of MODEL\_A vs MODEL\_B on CI pass rate and attribution rate, over the same --org/--since-days window; a model with no data in this window compares as insufficient data, not an error                                                                                                                                                                                         |
| `--compare-all`            | pairwise two-proportion z-tests for 2+ models with Benjamini-Hochberg FDR control across both metrics and all pairs; a model with no data in this window compares as insufficient data, not an error                                                                                                                                                                                                 |
| `--effect-decay`           | with --compare, print a regression-to-the-mean diagnostic: Cohen's h at 25/50/75/100%% prefixes for CI pass rate and attribution rate, using natural arrival order                                                                                                                                                                                                                                   |
| `--regret`                 | with --compare-all, add expected regret for the apparent-best model on each metric                                                                                                                                                                                                                                                                                                                   |
| `--database-url`           | PostgreSQL URL (default: \$SEDIMENT\_DATABASE\_URL)                                                                                                                                                                                                                                                                                                                                                  |
| `--mirror-path`            | base dir for git mirrors (default: \$SEDIMENT\_MIRROR\_PATH or './mirrors')                                                                                                                                                                                                                                                                                                                          |

### sediment report label-confidence-inspection

Label-confidence inspection — a stratified sample of attributed\_completions with

```text  theme={"dark"}
sediment report label-confidence-inspection [-h] --org ORG [--n N] [--json] [--recipe {sft_curated,sft_verified}] [--sensitivity] [--knob {explicit_accept_confidence,explicit_reject_confidence,baseline_confidence,implicit_accept_multiplier,implicit_reject_multiplier,ci_pass_multiplier,ci_fail_multiplier,ci_resolution.clean_reliability,ci_resolution.suspected_flake_reliability,ci_resolution.non_verdict_reliability}] [--values VALUES] [--min-confidence MIN_CONFIDENCE] [--latency-buckets LATENCY_BUCKETS] [--database-url DATABASE_URL] [--mirror-path MIRROR_PATH]
```

Options:

| Name                | Description                                                                                                                                                                                                                                                                                                                                                                                       |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--org`             | org id (default: \$SEDIMENT\_ORG\_ID) **(required)**                                                                                                                                                                                                                                                                                                                                              |
| `--n`               | sample size, stratified across the confidence ladder's real branches (default: 50)                                                                                                                                                                                                                                                                                                                |
| `--json`            | emit JSON rows instead of a table                                                                                                                                                                                                                                                                                                                                                                 |
| `--recipe`          | SFT evidence recipe (default: sft\_curated) (choices: `sft_curated`, `sft_verified`)                                                                                                                                                                                                                                                                                                              |
| `--sensitivity`     | sweep LabelConfidencePolicy knobs over all assembled attributed\_completions                                                                                                                                                                                                                                                                                                                      |
| `--knob`            | LabelConfidencePolicy knob to sweep in sensitivity mode; may repeat (choices: `explicit_accept_confidence`, `explicit_reject_confidence`, `baseline_confidence`, `implicit_accept_multiplier`, `implicit_reject_multiplier`, `ci_pass_multiplier`, `ci_fail_multiplier`, `ci_resolution.clean_reliability`, `ci_resolution.suspected_flake_reliability`, `ci_resolution.non_verdict_reliability`) |
| `--values`          | comma-separated grid for a single --knob in sensitivity mode                                                                                                                                                                                                                                                                                                                                      |
| `--min-confidence`  | SFT confidence floor for sensitivity mode (default: 0.6)                                                                                                                                                                                                                                                                                                                                          |
| `--latency-buckets` | emit the decision-latency diagnostic using this many quantile buckets instead of the label-confidence-inspection sample                                                                                                                                                                                                                                                                           |
| `--database-url`    | PostgreSQL URL (default: \$SEDIMENT\_DATABASE\_URL)                                                                                                                                                                                                                                                                                                                                               |
| `--mirror-path`     | base dir for git mirrors (default: \$SEDIMENT\_MIRROR\_PATH or './mirrors')                                                                                                                                                                                                                                                                                                                       |

### sediment report dataset-diagnostics

DPO/SFT dataset diagnostics.

```text  theme={"dark"}
sediment report dataset-diagnostics [-h] --org ORG [--json] [--dpo-recipe {dpo_human,dpo_outcome}] [--sft-recipe {sft_curated,sft_verified}] [--max-examples MAX_EXAMPLES] [--dpo-near-duplicate-threshold DPO_NEAR_DUPLICATE_THRESHOLD] [--database-url DATABASE_URL] [--mirror-path MIRROR_PATH]
```

Options:

| Name                             | Description                                                                                |
| -------------------------------- | ------------------------------------------------------------------------------------------ |
| `--org`                          | org id (default: \$SEDIMENT\_ORG\_ID) **(required)**                                       |
| `--json`                         | emit JSON report instead of tables                                                         |
| `--dpo-recipe`                   | DPO evidence recipe (default: dpo\_human) (choices: `dpo_human`, `dpo_outcome`)            |
| `--sft-recipe`                   | SFT evidence recipe (default: sft\_curated) (choices: `sft_curated`, `sft_verified`)       |
| `--max-examples`                 | maximum examples per diagnostics section (default: 5)                                      |
| `--dpo-near-duplicate-threshold` | minimum token Jaccard similarity for DPO near-duplicate prompt bucket flags (default: 0.8) |
| `--database-url`                 | PostgreSQL URL (default: \$SEDIMENT\_DATABASE\_URL)                                        |
| `--mirror-path`                  | base dir for git mirrors (default: \$SEDIMENT\_MIRROR\_PATH or './mirrors')                |

### sediment report recovery-yield

Recovery-pair yield report: failed CI runs, emitted pairs, skips.

```text  theme={"dark"}
sediment report recovery-yield [-h] --org ORG [--json] [--database-url DATABASE_URL] [--mirror-path MIRROR_PATH]
```

Options:

| Name             | Description                                                                 |
| ---------------- | --------------------------------------------------------------------------- |
| `--org`          | org id (default: \$SEDIMENT\_ORG\_ID) **(required)**                        |
| `--json`         | emit a JSON row instead of a table                                          |
| `--database-url` | PostgreSQL URL (default: \$SEDIMENT\_DATABASE\_URL)                         |
| `--mirror-path`  | base dir for git mirrors (default: \$SEDIMENT\_MIRROR\_PATH or './mirrors') |

### sediment report precision

Score derived attributions against a ground-truth manifest.

```text  theme={"dark"}
sediment report precision [-h] --org ORG --manifest MANIFEST [--threshold THRESHOLD] [--sweep-thresholds SWEEP_THRESHOLDS] [--json] [--database-url DATABASE_URL] [--mirror-path MIRROR_PATH]
```

Options:

| Name                 | Description                                                                 |
| -------------------- | --------------------------------------------------------------------------- |
| `--org`              | org id (default: \$SEDIMENT\_ORG\_ID) **(required)**                        |
| `--manifest`         | JSONL ground-truth manifest **(required)**                                  |
| `--threshold`        | default scoring threshold (default: 0.7)                                    |
| `--sweep-thresholds` | comma-separated sweep thresholds (default: 0.1,0.2,...,0.9)                 |
| `--json`             | emit JSON instead of a text report                                          |
| `--database-url`     | PostgreSQL URL (default: \$SEDIMENT\_DATABASE\_URL)                         |
| `--mirror-path`      | base dir for git mirrors (default: \$SEDIMENT\_MIRROR\_PATH or './mirrors') |

### sediment report abandonment

Accepted Session status from captured Session-to-commit observations.

```text  theme={"dark"}
sediment report abandonment [-h] --org ORG [--json] [--database-url DATABASE_URL] [--mirror-path MIRROR_PATH] [--grace-horizon-days GRACE_HORIZON_DAYS]
```

Options:

| Name                   | Description                                                                                |
| ---------------------- | ------------------------------------------------------------------------------------------ |
| `--org`                | org id (default: \$SEDIMENT\_ORG\_ID) **(required)**                                       |
| `--json`               | emit a JSON row instead of a table                                                         |
| `--database-url`       | PostgreSQL URL (default: \$SEDIMENT\_DATABASE\_URL)                                        |
| `--mirror-path`        | base dir for git mirrors (default: \$SEDIMENT\_MIRROR\_PATH or './mirrors')                |
| `--grace-horizon-days` | legacy horizon for policy compatibility; missing observations remain unknown (default: 14) |

### sediment report attribution-share

Report notes-attribution share per repo and flag a material decline against a trailing baseline window.

```text  theme={"dark"}
sediment report attribution-share [-h] --org ORG --target-margin TARGET_MARGIN [--window-days WINDOW_DAYS] [--baseline-window-days BASELINE_WINDOW_DAYS] [--json] [--database-url DATABASE_URL] [--mirror-path MIRROR_PATH]
```

Options:

| Name                     | Description                                                                                                                                                                             |
| ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--org`                  | org id (default: \$SEDIMENT\_ORG\_ID) **(required)**                                                                                                                                    |
| `--target-margin`        | target CI half-width in raw proportion points for the decline verdict's min-cases gate, e.g. 0.1 for +/-10pp (worst-case p=0.5 planner -- see scripts/corpus\_sizing.py) **(required)** |
| `--window-days`          | current window width in days (default: 7)                                                                                                                                               |
| `--baseline-window-days` | trailing baseline window width in days (default: 28)                                                                                                                                    |
| `--json`                 | emit JSON instead of a text report                                                                                                                                                      |
| `--database-url`         | PostgreSQL URL (default: \$SEDIMENT\_DATABASE\_URL)                                                                                                                                     |
| `--mirror-path`          | base dir for git mirrors (default: \$SEDIMENT\_MIRROR\_PATH or './mirrors')                                                                                                             |

### sediment report merge-retention

Measure attributed file changes at pull request merge boundaries.

```text  theme={"dark"}
sediment report merge-retention [-h] --org ORG [--json] [--rows-out FILE] [--database-url DATABASE_URL] [--mirror-path MIRROR_PATH]
```

Options:

| Name             | Description                                                                 |
| ---------------- | --------------------------------------------------------------------------- |
| `--org`          | org id (default: \$SEDIMENT\_ORG\_ID) **(required)**                        |
| `--json`         | emit JSON instead of a text report                                          |
| `--rows-out`     | write canonical merge-retention rows to FILE as JSONL                       |
| `--database-url` | PostgreSQL URL (default: \$SEDIMENT\_DATABASE\_URL)                         |
| `--mirror-path`  | base dir for git mirrors (default: \$SEDIMENT\_MIRROR\_PATH or './mirrors') |

### sediment report lifecycle

Report accepted-work progression and operational evidence.

```text  theme={"dark"}
sediment report lifecycle [-h] --org ORG --json [--database-url DATABASE_URL] [--mirror-path MIRROR_PATH]
```

Options:

| Name             | Description                                                                 |
| ---------------- | --------------------------------------------------------------------------- |
| `--org`          | org id (default: \$SEDIMENT\_ORG\_ID) **(required)**                        |
| `--json`         | emit the canonical JSON artifact (required) **(required)**                  |
| `--database-url` | PostgreSQL URL (default: \$SEDIMENT\_DATABASE\_URL)                         |
| `--mirror-path`  | base dir for git mirrors (default: \$SEDIMENT\_MIRROR\_PATH or './mirrors') |
