Context
PR #773 introduced the maketables plugin with ETable support, providing polished HTML table rendering for experiment results. PR #749 introduced the GenerateReport pipeline step, which renders HTML reports with effect summaries, plots, and sensitivity check results.
Currently GenerateReport (in causalpy/steps/report.py) renders all tables via plain DataFrame.to_html(). It has no awareness of the maketables / ETable integration introduced in #773.
Problem
Users who run a full pipeline workflow get a report with unstyled, raw HTML tables, even though the same experiment object supports rich ETable rendering elsewhere (e.g., in notebooks). The report should take advantage of the nicer formatting when maketables is available.
Proposed change
Update GenerateReport to optionally use ETable rendering for the effect summary table (and potentially sensitivity check tables) when maketables is installed. Since maketables is an optional dependency, the integration should degrade gracefully to the current DataFrame.to_html() path when it is not available.
Acceptance criteria
Context
PR #773 introduced the
maketablesplugin withETablesupport, providing polished HTML table rendering for experiment results. PR #749 introduced theGenerateReportpipeline step, which renders HTML reports with effect summaries, plots, and sensitivity check results.Currently
GenerateReport(incausalpy/steps/report.py) renders all tables via plainDataFrame.to_html(). It has no awareness of themaketables/ETableintegration introduced in #773.Problem
Users who run a full pipeline workflow get a report with unstyled, raw HTML tables, even though the same experiment object supports rich
ETablerendering elsewhere (e.g., in notebooks). The report should take advantage of the nicer formatting whenmaketablesis available.Proposed change
Update
GenerateReportto optionally useETablerendering for the effect summary table (and potentially sensitivity check tables) whenmaketablesis installed. Sincemaketablesis an optional dependency, the integration should degrade gracefully to the currentDataFrame.to_html()path when it is not available.Acceptance criteria
GenerateReportusesETable-style rendering for the effect summary whenmaketablesis available.DataFrame.to_html()whenmaketablesis not installed.ETablerendering path.