changedInput schema / properties / break_fee_months / description
Previous value: -"Early-termination fee in months' rent"New value: +"Early-termination (break) fee stated in the lease, in months' rent, e.g. 2. Default 0 = no break clause"
changedInput schema / properties / currency / description
Previous value: -"Currency code in ISO 4217 format"New value: +"ISO 4217 currency code used only to label amounts, e.g. USD, GBP, EUR. Default USD"
changedInput schema / properties / deposit / description
Previous value: -"Initial deposit amount as a number"New value: +"Security deposit held by the landlord, non-negative amount, e.g. 2200. Default 0"
changedInput schema / properties / expected_relet_months / description
Previous value: -"Expected months to relett the property as a number"New value: +"Expected months until a replacement tenant moves in, e.g. 0.5 for about two weeks. Default 1"
changedInput schema / properties / landlord_mitigates / description
Previous value: -"True if landlord mitigates damages, false otherwise"New value: +"Whether the landlord must try to re-let and offset rent (duty to mitigate). Default true; false = liable for all remaining rent"
changedInput schema / properties / monthly_rent / description
Previous value: -"Monthly rent"New value: +"Current monthly rent as a positive number in the lease currency, e.g. 2200"
changedInput schema / properties / months_remaining / description
Previous value: -"Months left on the lease (including the current one)"New value: +"Months left on the lease including the current month, positive number, e.g. 7"
changedInput schema / properties / notice_months / description
Previous value: -"Number of months' notice required to terminate the lease"New value: +"Notice period required by the lease, in months, e.g. 2; cannot exceed months_remaining. Default 2 if no break fee, else 0"
changedInput schema / properties / reletting_fee / description
Previous value: -"Fee for reletting the property as a number"New value: +"Fixed re-letting/advertising/cleaning fee stated in the lease, non-negative amount, e.g. 300. Default 0"
changedInput schema / properties / sublet_discount_pct / description
Previous value: -"Percentage discount on rent when subletting, as a number 0-100"New value: +"Percent below full rent a subtenant would pay, 0 to under 100, e.g. 15 for 15%. Default 15"
changedInput schema / properties / sublet_vacancy_months / description
Previous value: -"Number of months the property may be vacant while subletting"New value: +"Months the unit sits empty before a subtenant starts paying, non-negative, e.g. 1. Default 1"
addedOutput schema / properties / assumptions
Added value: +{
+ "description": "Assumptions applied (sublet discount, vacancy, deposit handling)",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+}
removedOutput schema / properties / break_lease
Removed value: -{
- "description": "Details about breaking the lease",
- "properties": {
- "break_fee": {
- "description": "Early-termination fee",
- "type": "number"
- },
- "notice_cost": {
- "description": "Cost associated with giving notice",
- "type": "number"
- },
- "reletting_fee": {
- "description": "Fee for finding a new tenant",
- "type": "number"
- },
- "remaining_rent": {
- "description": "Rent for the remaining months",
- "type": "number"
- },
- "risks": {
- "description": "Potential risks associated with breaking the lease",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "total_cost": {
- "description": "Total cost of breaking the lease",
- "type": "number"
- }
- },
- "required": [
- "total_cost",
- "break_fee",
- "notice_cost",
- "reletting_fee",
- "remaining_rent",
- "risks"
- ],
- "type": "object"
-}
addedOutput schema / properties / cheapest
Added value: +{
+ "description": "Identifier of the lowest-cost option",
+ "enum": [
+ "break_lease",
+ "sublet",
+ "stay"
+ ],
+ "type": "string"
+}
addedOutput schema / properties / currency
Added value: +{
+ "description": "Currency code the amounts are labelled in",
+ "type": "string"
+}
addedOutput schema / properties / disclaimer
Added value: +{
+ "description": "Informational, not-legal-advice disclaimer to show with the result",
+ "type": "string"
+}
addedOutput schema / properties / options
Added value: +{
+ "description": "The three exit options sorted by net_cost, cheapest first",
+ "items": {
+ "properties": {
+ "net_cost": {
+ "description": "Net cost of this option over the remaining lease",
+ "type": "number"
+ },
+ "note": {
+ "description": "One-line explanation of how the cost arises",
+ "type": "string"
+ },
+ "option": {
+ "description": "Option identifier",
+ "enum": [
+ "break_lease",
+ "sublet",
+ "stay"
+ ],
+ "type": "string"
+ },
+ "risks": {
+ "description": "Risks to check before choosing this option",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "option",
+ "net_cost",
+ "note",
+ "risks"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+}
removedOutput schema / properties / stay_to_term
Removed value: -{
- "description": "Details about staying to the end of the lease term",
- "properties": {
- "remaining_rent": {
- "description": "Rent for the remaining months",
- "type": "number"
- },
- "risks": {
- "description": "Potential risks associated with staying to the end of the lease term",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "total_cost": {
- "description": "Total cost of staying to the end of the lease term",
- "type": "number"
- }
- },
- "required": [
- "total_cost",
- "remaining_rent",
- "risks"
- ],
- "type": "object"
-}
removedOutput schema / properties / sublet
Removed value: -{
- "description": "Details about subletting the lease",
- "properties": {
- "risks": {
- "description": "Potential risks associated with subletting",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "sublet_discount": {
- "description": "Discount applied to the sublet rent",
- "type": "number"
- },
- "sublet_income": {
- "description": "Income from subletting",
- "type": "number"
- },
- "total_cost": {
- "description": "Total cost of subletting",
- "type": "number"
- },
- "vacancy_cost": {
- "description": "Cost associated with vacancy months",
- "type": "number"
- }
- },
- "required": [
- "total_cost",
- "sublet_income",
- "sublet_discount",
- "vacancy_cost",
- "risks"
- ],
- "type": "object"
-}
changedOutput schema / required
Previous value: -[
- "break_lease",
- "sublet",
- "stay_to_term"
-]New value: +[
+ "currency",
+ "options",
+ "cheapest",
+ "assumptions",
+ "disclaimer"
+]