v0.7.2 — agent-reachable calibration & sensitivity, three new skills, design storms, memory observability
Released alongside our paper in AI for Engineering: Agentic SWMM: Auditable and Reproducible Stormwater Modelling Workflow with Agent Skills and Model Context Protocol.
70 commits since v0.7.1 — the typed-tool surface grows 38 → 55 tools, the skill library 15 → 18 skills, the test suite 2,318 → 2,799 tests. Full suite green; SWMM execution byte-identical.
Calibration & sensitivity, by name
All 11 calibration + uncertainty tools (SCE-UA, DREAM-ZS, validation, OAT / Morris / Sobol', rainfall ensembles, source decomposition) are now first-class typed tools the planner selects directly. A parity test locks every intent hint to a registered tool name.
Three new skills
- swmm-water-quality — pollutant buildup/washoff INP sections (
--water-quality-json), water-quality rpt parsing, pollutant loads in the audit note,read_wq_loads. Engine-smoke-verified on SWMM 5.2.4 at 0.000% quality continuity error. - swmm-design-review —
aiswmm review: a deterministic rule checklist over a completed run, YAML rulebooks,pass/fail/warn/needs-datawith evidence. The shipped GB 50014-class rulebook is a template — every threshold markedverify: true; the tool reports findings, it never certifies compliance. - swmm-report —
aiswmm report: an engineering-formatted Word deliverable assembled from audit artifacts (numbered sections, captioned tables with narratives, provenance sha256 table).pip install 'aiswmm[report]'.
Design storms
generate_design_storm synthesises Chicago (CN 167-form / generic IDF) and alternating-block hyetographs from a return period + IDF coefficients; storm totals equal the IDF depth exactly. The explicit-depth shape library stays available as generate_storm_shape.
Memory observability
Runs record which memory entries shaped them (memories_applied); an application outcome log derives a per-entry health score (aiswmm memory health); recall is health-aware (watch-tier cautions, explicit archive/restore verbs); the injected memory block is budget-capped. New-case onboarding is back: unfamiliar watersheds get an offer of transferred starter parameters from similar past cases.
Fixed
Silent run-directory overwrite on re-runs (timestamped defaults); water-quality rows dropped from the Outfall Loading Summary; .rpt parsing consolidated behind one canonical parser with 23 parity tests; eight skills' runtime docs corrected against code.
Full details in CHANGELOG.md.