theoryforge 0.3.0
Native diagram rendering in both packages, tailored to each language and layered on the unchanged, byte-identical intermediate representation.
R gains tf_render_diagram(): a DiagrammeR widget for the viewer and R Markdown, or a standalone SVG string with as = "svg". The rendering packages are optional, in Suggests, so the deterministic core stays dependency-free. Python gains render_diagram() and Theory.render_diagram(), which wrap the DOT in a graphviz.Source through the optional theoryforge[render] extra.
Both accept a theory or a raw IR string, so literature diagrams render the same way; the three SVG chart views pass through unchanged; causal_dag is refused with a pointer to dagitty. Rendering is language-native by design and sits outside the parity contract (API_SPEC.md section 26).
The digraph views now render as figures on both documentation sites, following the code that produces them.
See NEWS.md and CHANGELOG.md.