0.1.4 — 2026-05-05
Artefact.graft/3— pipeline-friendly convenience for extending an artefact with new nodes and relationships declared inline (same shape asArtefact.new); every node in args MUST carry:uuid(no auto-find — uuid is the binding); nodes whose uuid lives in left bind to it (labels unioned, properties merged left-wins), nodes with new uuids are added; opts honour:titleand:description; raisesArgumentErrorfor missing uuid, duplicate keys, or relationship referencing an unknown key; records:graftedprovenance source
0.1.3 — 2026-04-30
Artefact.Mermaid.export/2— derives Mermaidgraphsource from an%Artefact{}, alongsideArtefact.CypherandArtefact.Arrows; nodes render as circles,:directionoption for:LR,:RL,:TB,:BT,:TD:descriptionfield on%Artefact{}— optional human-readable description, defaults tonil; accepted byArtefact.new/1and round-tripped throughArtefact.Arrows- Mermaid front-matter
title:(Mermaid 9.4+ heading) and bodyaccTitle:derived fromartefact.title;accDescr:derived fromartefact.description(inline form for single-line, block formaccDescr { ... }for multi-line) Artefact.combine/3— pipeline-friendly convenience overArtefact.Binding.find/2+Artefact.harmonise/4; the heart flows through the pipe as the first argument, opts honour:title,:base_labeland:descriptionoverrides; raisesMatchErrorwhen no shared bindings exist
0.1.2 — 2026-04-21
- Improved
Artefact.new/1macro — nodes and relationships declared inline with atom keys and keyword options Artefact.Cypher.merge_params/1— parameterised MERGE returning{cypher, params}for driver useArtefact.Cypher.create_params/1— parameterised CREATE returning{cypher, params}Artefact.Binding.find/2— finds shared nodes between two artefacts by uuid for harmonisationArtefact.harmonise/3macro — merges two artefacts on shared node bindings; left argument is heartside
0.1.1 — 2026-04-01
Artefact.Arrows— lossless round-trip with Arrows JSON (from_json/2,to_json/1)Artefact.Cypher— inlinecreate/1andmerge/1Cypher string generation%Artefact{},%Artefact.Graph{},%Artefact.Node{},%Artefact.Relationship{}structsArtefact.compose/2— combines two artefacts into one graph