ExAbby.ExperimentReport (ex_abby v0.5.1)

Copy Markdown

Read model behind the admin experiment pages.

Combines an experiment's summary rows with control-relative significance and derives the figures both admin pages show: the best comparison, per-metric winners, totals, a health flag and how long the experiment has been running.

Summary

Functions

Builds the report for one experiment from the database.

The significance cell for one variation and metric: :unavailable when there is no control, :control for the control arm, :no_data when either arm has no trials, or a ready comparison map.

Builds the report from an experiment and its summary rows without touching the database. now bounds the running time of an active experiment.

A shared horizontal scale, in percentage points, wide enough for every interval in comparisons, so bars drawn together are comparable.

Builds a report for every experiment matching status (:active, :archived or :all), newest first.

Label for a metric, falling back to the generic "Success" label the admin has always used when none is configured.

Every ready comparison in the report as flat maps carrying :metric, :variation_id and :variation_name.

Whether the second success metric is configured or has recorded conversions.

Functions

build(experiment)

Builds the report for one experiment from the database.

comparison(experiment_report, metric, variation_id)

The significance cell for one variation and metric: :unavailable when there is no control, :control for the control arm, :no_data when either arm has no trials, or a ready comparison map.

from_summary(experiment, summary, now)

Builds the report from an experiment and its summary rows without touching the database. now bounds the running time of an active experiment.

lift_scale(comparisons)

A shared horizontal scale, in percentage points, wide enough for every interval in comparisons, so bars drawn together are comparable.

list(status)

Builds a report for every experiment matching status (:active, :archived or :all), newest first.

metric_label(experiment, atom)

Label for a metric, falling back to the generic "Success" label the admin has always used when none is configured.

ready_comparisons(experiment_report)

Every ready comparison in the report as flat maps carrying :metric, :variation_id and :variation_name.

show_success2?(experiment, summary)

Whether the second success metric is configured or has recorded conversions.