gaspatchio-model-reconciliation

Reconciles gaspatchio actuarial models against Excel or lifelib reference outputs variable by variable.

4|Updated Jul 4, 2026
One-click install
npx skills add https://github.com/gaspatchio/gaspatchio --skill gaspatchio-model-reconciliation-gaspatchio
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: gaspatchio-model-reconciliation
Source: https://github.com/gaspatchio/gaspatchio/tree/main/skills/gaspatchio-model-reconciliation
Command: npx skills add https://github.com/gaspatchio/gaspatchio --skill gaspatchio-model-reconciliation-gaspatchio

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires scipy, numpy, altair, polars, and includes references (resource) components.

What problem does it solve? Actuarial models rebuilt in gaspatchio must match an existing gold standard (Excel, lifelib, or a vendor model) exactly, but small timing, rate, or formula differences silently compound into wrong results. This Skill enforces a disciplined variable-by-variable reconciliation workflow so every mismatch is diagnosed, fixed, and documented instead of being waved through. ## Core Features & Use Cases - Tiered Diagnostic Toolkit: Escalates from direct inspection (sign, magnitude, single-cell trace) through pattern detection (scatter plots, residual histograms) to statistical techniques (linear regression, PCA, cohort analysis, waterfall decomposition, error heatmaps, time-series residuals). - Mandatory Build Log: Requires a markdown reconciliation report where every fix cites concrete evidence — variable, time step, source value, gaspatchio value, and delta. - Tolerance Tiers: Classifies differences as exact, tight, reasonable, or directional so teams know when to fix versus document. - Use Case: You are migrating a lifelib term-life model to gaspatchio and the PV of claims is 2.3% off. The Skill walks you through single-policy parquet diffs, a scatter plot revealing proportional bias, and a regression showing slope 1.0833 — pointing directly to an annual-versus-monthly rate conversion bug. ## Quick Start Ask the AI to reconcile your gaspatchio model against your Excel or lifelib reference model, starting with a single specimen policy and diffing outputs variable by variable.

Frequently Asked Questions about gaspatchio-model-reconciliation

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I reconcile a gaspatchio model against an Excel model?

Run both models on the same specimen policy, export gaspatchio results to parquet with gspio run-single-policy --output-file, and diff each variable column by time step using Polars. Fix every mismatch before adding new variables, and record each fix in the build log.

How do I diagnose why my actuarial model output does not match the reference?

Start with Tier 1 checks: sign, magnitude, and a single-cell trace comparing every input for one policy and period. If unexplained, use Tier 2 scatter plots and residual histograms, then escalate to Tier 3 techniques like regression, cohort analysis, or PCA based on the observed pattern.

What Python libraries are used for reconciliation diagnostics?

The diagnostics use scipy.stats for regression and statistical tests, numpy.linalg.svd for PCA, Polars for parquet diffs, and Altair for visualization. scikit-learn, statsmodels, matplotlib, seaborn, and plotly are explicitly not required.

When is a numeric difference acceptable in model reconciliation?

Acceptable differences depend on tolerance tiers: under 0.01% for inputs and policy counts, under 1% for per-policy cashflows, under 5% for aggregate BEL, and sign-plus-magnitude only for extreme stress scenarios. Any accepted tolerance must be documented with justification in the build log.

Why does my model match on aggregate PVs but not on single policies?

Matching aggregates with mismatching single policies indicates offsetting errors that cancel out, which is a red flag. Single-policy output is the truth for debugging; compare intermediate variables per timestep rather than relying on portfolio totals.