{"model":"wedding","specVersion":"1.1.0","specUrl":"/api/v1/models/wedding/spec","inputs":{"weddingBudget":{"kind":"float","min":5000,"max":150000},"fundingMethod":{"kind":"choice","values":["savings","debt"]},"currentSavings":{"kind":"float","min":0,"max":500000},"monthlySavings":{"kind":"float","min":200,"max":10000},"debtInterestRate":{"kind":"float","min":0.05,"max":0.3},"debtRepaymentMonths":{"kind":"choice","values":[6,12,18,24,30,36,42,48,54,60,66,72,78,84]},"annualReturn":{"kind":"float","min":0.02,"max":0.12},"yearsHorizon":{"kind":"int","min":5,"max":40}},"arrayInputs":{},"constraints":["debtInterestRate must stay > 0 (NaN at 0)"],"sentinels":[{"field":"monthsToSave","value":9999,"meaning":"never — monthlySavings is 0 (quantity ignores interest)"}],"facts":[],"disclaimer":"Illustrative planning model, not financial advice. Outputs follow the published model spec exactly; read the spec for assumptions and exclusions before relying on any number."}