# `Squidie.Runs.DynamicWorkPreview`
[🔗](https://github.com/dark-trench/squidie/blob/main/lib/squidie/runs/dynamic_work_preview.ex#L1)

Compatibility dynamic-work preview struct.

`Squidie.Inspection.DynamicWorkPreview` is the canonical inspection
namespace. This module preserves the original `Squidie.Runs.*` return shape
for callers that pattern match or serialize the existing struct.

# `t`

```elixir
@type t() :: %Squidie.Runs.DynamicWorkPreview{
  added_edge_ids: [String.t()],
  added_node_ids: [String.t()],
  duplicate?: boolean(),
  dynamic_work: map(),
  graph: Squidie.Runs.GraphInspection.t(),
  origin_node_id: String.t() | nil,
  recordable?: boolean(),
  run_id: String.t(),
  warnings: [atom()]
}
```

# `from_inspection_preview`

```elixir
@spec from_inspection_preview(Squidie.Inspection.DynamicWorkPreview.t()) :: t()
```

Converts a canonical inspection preview into the compatibility struct.

# `new`

```elixir
@spec new(String.t(), map(), boolean(), Squidie.Runs.GraphInspection.t()) :: t()
```

Builds a compatibility preview from dynamic-work validation output.

# `to_inspection_preview`

```elixir
@spec to_inspection_preview(t()) :: Squidie.Inspection.DynamicWorkPreview.t()
```

Converts a compatibility preview into the canonical inspection struct.

# `to_map`

```elixir
@spec to_map(t()) :: map()
```

Converts a compatibility preview to a plain map for JSON encoding.

---

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