## RecoverReport


What `Repo.recover_report` found: tether's refs in each object's store,


Usage

``` python
RecoverReport(
    dataset_id,
    trunk,
    objects=list(),
    pinned=False,
    suggested_id=None,
    scoped=False,
    steps=list()
)
```


by the dataset id they carry, and what to run to take them back.


## Parameter Attributes


`dataset_id: str`  
This dataset's id (`tether.toml`).

`trunk: str`  
The trunk bookmark (`[vcs] trunk`).

`objects: list[RecoveredObject] = list()`  
Per object, sorted by key.

`pinned: bool = ``False`  
Whether this dataset has pinned anything under its id already: a manifest names a pin, or a store holds one. Its id cannot change then.

`suggested_id: str | None = None`  
The one other dataset id the stores hold refs for, to set in `tether.toml` while nothing is pinned under this one yet; never for a [scoped](RecoverReport.md#tether.RecoverReport.scoped) report.

`scoped: bool = ``False`  
Whether only some objects were listed (`recover KEY...`): the id applies to every object, and a commit pins every object under it, so a scoped report advises no id and nothing that pins; its steps end with `tether recover` on every object.

`steps: list[RecoverStep] = list()`  
What to run, in order.


## Attributes

| Name | Description |
|----|----|
| [datasets](#datasets) | Dataset id -\> what every selected store holds under it, merged. |

------------------------------------------------------------------------


#### datasets


Dataset id -\> what every selected store holds under it, merged.


`datasets: dict[str, RecoveredRefs]`
