Skip to content
All guides

Guide 04 / Modular engine

Build a modular people-and-resources scenario

The modular workbench combines reviewed mechanisms with declared people, accounts, stocks, and events. Start from an artificial example to learn the accounting, then replace its inputs with choices you can justify for your own scoped experiment.

What you will do

You will review an explicit modular configuration, save an immutable version, and compare private paired reports and mechanism evidence.

Before you start

  • An owned project and a working modular Python runtime, queue worker, and private object store.
  • A decision that can be expressed using the supported compiled modules and their declared inputs.
  • Explicit units, currency/minor-unit basis, calendar, entities, accounts, resources, parameters, and source assumptions.

Step / 01

Choose an example for its mechanism

Choose Modular mechanisms from the project workflow overview. The workbench provides workplace, economy, flood, and contact-health examples. They are artificial accounting inputs, not case studies from customers or observations of a city.

The compiled model registry describes supported equations, dependencies, parameters, events, outputs, and omissions. Select mechanisms that match the question. The system does not accept arbitrary executable Python models uploaded through the browser.

A city or country label supplies scope; it does not fill in population statistics, institutions, disease rates, damage, or economic behavior. Every substantive input still needs a source or an explicit assumption.

Step / 02

Review entities, accounts, and events

Edit the supplied entities, account balances, stocks, resource quantities, module parameters, and scheduled interventions. Check references between modules and choose the outputs you need. The scheduler enforces the declared dependencies and accounting/resource constraints rather than resolving missing inputs with invented values.

When converting a retained household population, declare the scalar, weight, account, and household mappings explicitly. The system repeats the verified conversion when saving; an earlier receipt is not authority to bypass source or compatibility checks.

  1. Confirm scope and units

    Check population, currency, money basis, geography, frequency, base date, ticks, and replica settings before interpreting any quantity.

  2. Review each selected module

    Inspect its inputs and assumptions, confirm the supported parameter values, and check event timing and resource references.

  3. Validate the current draft

    Use mirrored TypeScript/Python validation. Resolve missing dependencies, invalid references, unsupported values, and workload diagnostics.

  4. Save and execute

    Confirm synthetic/source provenance and retention, save an immutable scenario version, then create its paired run.

Step / 03

Choose evidence you can retain

A version explicitly selects summary or full evidence and a retention period of 1–30 days. Dependent runs share the version's fixed expiry and cannot extend it. Summary policy supports verified summaries; longitudinal tables and exact trace replay require full evidence and the original compatible runtime.

Reports retain paired summaries, model definitions, source/runtime identity, and applicable mechanism evidence. Use Aggregate outcomes for the summary and Individuals and events for full-detail entity, account, and event pages. Inputs and evidence keeps source identity and replay alongside the comparison. Check resource and account behavior alongside outcome measures; conserved cash by itself is not a measure of wellbeing.

Compare only compatible runs. Differences in currency, calendar, population, or model definitions can make a comparison unavailable. Retry keeps the pinned runtime and bounded attempt policy; it does not rewrite the original experiment.

Step / 04

Keep sensitivity and validity distinct

The catalog exposes module-specific measurement and evaluation hooks. Bounded candidate evaluation currently runs through the private CLI contract, with explicit parameter replacements or supported module omissions. The web workbench exposes the catalog and compatible scenario/run comparisons.

Candidates can be checked against supplied chronological observations and declared criteria. Synthetic fixtures establish accounting or equation behavior, not empirical applicability. A declared observed source is also not independent domain certification. Clinical effectiveness, behavioral realism, and disaster forecasting require appropriate data and review.