# Architecture This document describes the intended package/module separation for the research-focused, minimal refactor. ## Target top-level modules - `motac.data`: dataset loaders (Chicago, ACLED, simulation) and canonical schema validation - `motac.spatial`: grid/graph builders, travel-time neighbours, POI features - `motac.models`: parametric Hawkes, marked Hawkes, neural-kernel modules - `motac.inference`: JAX likelihoods, sparse/jit kernels, optimisers, constraints - `motac.sim`: simulator and observation-noise models - `motac.eval`: backtesting, metrics, calibration, reporting - `motac.cli`: commands for `fetch`, `build-substrate`, `simulate`, `fit`, `forecast`, `backtest` Only these seven package directories are kept under `src/motac`. Legacy split modules were removed to keep the codebase straightforward for research iteration.