Skip to content

Marivo 0.3.1

Marivo 0.3.1 strengthens the agent-facing authoring and analysis workflow with windowed cumulative metrics, evidence-first datasource authoring, and safer analysis guardrails.

  • Cumulative metrics now support three accumulation anchors through the new anchor= parameter on ms.cumulative(...). anchor=None keeps the v1 all-history running total. ms.grain_to_date(grain=...) resets the running total at each reset-grain boundary (MTD / QTD / YTD / WTD). ms.trailing(count=..., unit=...) is a fixed-size rolling window where empty windows are true zero and partial windows show the actual accumulation.
  • transform.rollup(...) now re-aggregates cumulative frames. Pass grain= to re-bucket the time axis; cumulative frames carry rollup_fold="last" so each period contributes its period-end value. Non-reaggregatable frames without a fold are still rejected with a teaching error.
  • compare is now anchor-dispatched. all_history stays rejected; trailing is allowed when both frames share the same anchor payload; grain_to_date is allowed for a single-period, boundary-anchored window and records the to-date alignment on the resulting DeltaFrame.
  • Datasource authoring now follows an evidence-first snapshot workflow. Typed catalog objects, scoped inspection, and persisted evidence replace the older broad discovery flow, helping authors move from real source evidence to one semantic object at a time.
  • JSON is now a first-class DuckDB file source. Marivo can inspect and use local or HTTP JSON data alongside its other supported datasource inputs.
  • Analysis decomposition supports explicit multi-axis attribution modes, and quality assessment now blocks unsafe hourly coverage before downstream analysis treats it as reliable.
  • contract(), show(), and mv.help(ref) now surface the anchor-specific caveat, so the allowed path is visible at the frame an agent is reading.
  • The rollup transform table entry now lists grain alongside drop_axes.
  • The semantic-layer and analysis-workflow site docs (EN + CN) document the grain-compatibility rule (week under month/quarter/year reset is illegal) and the integer-multiple rule (trailing span must be an integer multiple of the query grain).
  • The installer can now initialize a Marivo project, and the same installer is available from https://marivo.io/install.sh.
  • Readiness rejects undeclared naive time axes instead of allowing ambiguous time semantics into analysis.
  • Typed file schemas are preserved at runtime, avoiding loss of declared source structure during materialization.
  • Updated the semantic-layer, analysis-workflow, installation, quick-start, and evidence docs in English and Chinese for the streamlined agent workflow.
  • Added design specs for cumulative metrics v2, datasource snapshots, typed catalog navigation, JSON sources, and the refined analysis surface.
Terminal window
pip install marivo

Install the backend extra for the datasource you plan to use:

Terminal window
pip install "marivo[duckdb]"
pip install "marivo[mysql]"
pip install "marivo[trino]"
pip install "marivo[postgres]"
pip install "marivo[clickhouse]"
pip install "marivo[all]"

Marivo 0.3.1 requires Python 3.12 or newer.