# `Skipper.Writer`
[🔗](https://github.com/get-skipper/skipper-elixir/blob/main/lib/skipper/writer.ex#L1)

Reconciles the primary sheet with the test IDs discovered in a run: new IDs
are appended (empty `disabledUntil`); stale rows of the same files are
deleted only with `SKIPPER_SYNC_ALLOW_DELETE=true`. Existing rows are never
modified.

# `sync`

```elixir
@spec sync(Skipper.Config.t(), [String.t()]) :: :ok | {:error, String.t()}
```

# `sync_with`

```elixir
@spec sync_with(Skipper.SheetsApi.api(), Skipper.Config.t(), [String.t()]) ::
  :ok | {:error, String.t()}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
