# `Diffo.Provider.Characteristic.Extension`
[🔗](https://github.com/diffo-dev/diffo/blob/v0.9.0/lib/diffo/provider/components/characteristic/extension.ex#L5)

Marker extension identifying a module as a valid characteristic resource.

Also synthesises default `:create` and `:update` actions on
`BaseCharacteristic`-derived resources from the resource's declared public
attributes — `:create` accepts `[:name | <public_attrs>]` with
`:instance_id` / `:feature_id` arguments and corresponding
`manage_relationship` changes; `:update` accepts `<public_attrs>` only.
Consumers may declare their own `:create` / `:update` actions to override
the synthesised ones.

---

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