## ObjectStatus


One object's classification in a [StatusReport](StatusReport.md#tether.StatusReport).


Usage

``` python
ObjectStatus(
    key,
    kind,
    tier,
    committed,
    pinned,
    recoverable,
    changed,
    current_state,
    origin="adopted",
    verify=None,
    error=None,
    behind=False
)
```


## Parameter Attributes


`key: str`  
Object key.

`kind: str`  
Backend kind.

`tier: Tier`  
Effective capability tier for this object.

`committed: bool`  
Whether the manifest has a committed state.

`pinned: bool`  
Whether the manifest carries a native pin.

`recoverable: bool`  
Whether the committed state can be reconstructed later.

`changed: bool`  
Whether the current state differs from the committed one.

`current_state: State | None`  
The fingerprint taken by this status (or the cached one).

`origin: str = ``"adopted"`  
[created](Pin.md#tether.Pin.created) when `add --create` made the store ([ObjectManifest.origin](ObjectManifest.md#tether.ObjectManifest.origin)).

`verify: VerifyReport | None = None`  
Cheap verify result when `RepoConfig.verify_on_status` is set.

`error: str | None = None`  
Fingerprint failure message, if any.

`behind: bool = ``False`  
The object has no working branch and its upstream branch has moved past the committed state (seen by a fan-out snapshot); `tether pull` takes it.


## Attributes

| Name | Description |
|----|----|
| [state_label](#state_label) | `"new"`, `"modified"`, `"behind"`, `"clean"`, or `"error"`. |

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


#### state_label


`"new"`, `"modified"`, `"behind"`, `"clean"`, or `"error"`.


`state_label: str`
