Caching
Sygaldry caches constructed instances per factory instance. The cache key is:
(type_path, instance_tag)when_instanceis provided.(type_path, spec_hash)when_instanceis omitted.
The cache hash is computed from resolved args and kwargs using a canonical
normalization (including object identity markers for non-JSON values) and
SHA-256. If a key with an explicit _instance is reused with a different
hash, a ConfigConflictError is raised.
Transient resolution
Set transient=True to bypass caching and always construct new instances.
Example
from sygaldry import Artificery
factory = Artificery("config.yaml", transient=True)
graph = factory.resolve()