Skip to main content
Glama

Security deposit rules for a state (and city)

deposit_settlement_rules
Read-onlyIdempotent

Looks up the security deposit rules (deposits only) for one US state, with a covered city's deposit ordinance (Chicago, San Francisco, Berkeley, Los Angeles, Seattle, Portland, Minneapolis, Saint Paul). Inputs: state (two-letter code); optional city. Returns the deposit return deadline and what starts it, itemization and documentation duties, allowed deductions and depreciation, deposit interest, penalties, the deposit cap and recent changes, with citations. Not for: settling a specific move-out (deposit_settlement_settle does that), evictions, unpaid-rent collection, rent increases or rent control, lease renewal or notice periods, legal advice. Deterministic and source-cited: the same input gives the same result.

Input Schema

NameRequiredDescriptionDefault
cityNoOptional city for its overlay (e.g. 'Chicago').
as_ofNoOptional date (YYYY-MM-DD): show the law in force on that day, for a past move-out the day the tenancy ended. Omitted: the current law.
auditNoAlso return the run record and input/result hashes (an audit trail). Default false.
stateYesUS state, 2-letter code or name (e.g. 'TX').
serve_pinnedNoOptional, with expect_ruleset. True asks us to answer under the ruleset version you named even when the rules have changed since, from that version's signed bundle; the result says so in served_from_bundle. We refuse a version older than 12 months, one a later correction or law change replaced for your state, or one we have no bundle for. Default false: the call fails whenever the rules have changed.
expect_rulesetNoOptional. The ruleset version you built against, as results carry it in provenance.ruleset_version (e.g. 'sd-2026.11.14'), or its sha256: hash. If the rules have changed since, the call fails (nothing computed, nothing charged) and says what is in force now, so you upgrade on your own schedule. Leave it out to answer under the current rules.

Output Schema

NameRequiredDescriptionDefault
runNo
linksNo
resultYes
reviewNo
readingNo
signatureNo
input_hashNo
client_refsNo
deprecationNo
result_hashNo
request_hashNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed35 schema fields changed
    • removedOutput schema / $defs
      Removed value: -{
      -  "Alternative": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "combine": {
      -        "default": "replace",
      -        "enum": [
      -          "replace",
      -          "later_date",
      -          "earlier_date",
      -          "extend"
      -        ],
      -        "type": "string"
      -      },
      -      "condition": {
      -        "type": "string"
      -      },
      -      "counting": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "calendar",
      -              "business"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "days": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "demand_within_days": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "effective_before": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "effective_by": {
      -        "default": "termination",
      -        "enum": [
      -          "termination",
      -          "conduct"
      -        ],
      -        "type": "string"
      -      },
      -      "effective_on_or_after": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "extends": {
      -        "default": "deadline",
      -        "enum": [
      -          "deadline",
      -          "itemization"
      -        ],
      -        "type": "string"
      -      },
      -      "listed_if": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "listed_warning": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "months": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "notice_within_days": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "pending": {
      -        "default": "not_started",
      -        "enum": [
      -          "not_started",
      -          "notice_date"
      -        ],
      -        "type": "string"
      -      },
      -      "requires": {
      -        "default": [],
      -        "items": {
      -          "enum": [
      -            "no_deductions",
      -            "with_deductions",
      -            "damage_deductions",
      -            "no_damage_deductions",
      -            "lease_specifies_longer",
      -            "lease_specifies_shorter",
      -            "tenant_gave_notice",
      -            "contractor_needed",
      -            "damages_exceed_deposit",
      -            "written_lease",
      -            "at_will",
      -            "abandoned",
      -            "charges_only",
      -            "relet_before_end"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "start": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "vacate",
      -              "termination",
      -              "later_of_vacate_and_termination",
      -              "forwarding_address",
      -              "demand",
      -              "later_of_termination_and_address",
      -              "latest_of_termination_possession_and_address",
      -              "earlier_of_termination_and_surrender",
      -              "surrender_or_termination_first",
      -              "new_tenant_occupancy",
      -              "termination_possession_and_demand",
      -              "claim_notice"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "required": [
      -      "condition"
      -    ],
      -    "type": "object"
      -  },
      -  "BrokenLease": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "requires_notice": {
      -        "type": "boolean"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "requires_notice",
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "CapLimits": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "furnished_months": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "months_rent": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "type": "object"
      -  },
      -  "Change": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "effective_on": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "source": {
      -        "type": "string"
      -      },
      -      "text": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "text",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "Citation": {
      -    "properties": {
      -      "accessed": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "type": "string"
      -      },
      -      "rule": {
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source_title": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "url": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "verbatim": {
      -        "default": true,
      -        "type": "boolean"
      -      }
      -    },
      -    "required": [
      -      "rule",
      -      "section",
      -      "quote"
      -    ],
      -    "type": "object"
      -  },
      -  "CityRules": {
      -    "properties": {
      -      "additional_penalty": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/PenaltyRule"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "applicability": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "deductions": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/DeductionRules"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "deposit_cap": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/DepositCap"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "depreciation_schedule": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "forfeiture": {
      -        "anyOf": [
      -          {
      -            "items": {
      -              "$ref": "#/$defs/Forfeiture"
      -            },
      -            "type": "array"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "id": {
      -        "type": "string"
      -      },
      -      "interest": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/InterestRule"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "itemization": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/Itemization"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "name": {
      -        "type": "string"
      -      },
      -      "notes": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "penalty": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/PenaltyRule"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "return_rule": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/ReturnRule"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "state": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "id",
      -      "name",
      -      "state"
      -    ],
      -    "type": "object"
      -  },
      -  "CleaningRule": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "basis": {
      -        "enum": [
      -          "named",
      -          "damage"
      -        ],
      -        "type": "string"
      -      },
      -      "condition": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "routine": {
      -        "default": "barred",
      -        "enum": [
      -          "barred",
      -          "lease",
      -          "reasonable"
      -        ],
      -        "type": "string"
      -      },
      -      "routine_signed_provision": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      },
      -      "unless_no_notice": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "verbatim": {
      -        "default": true,
      -        "type": "boolean"
      -      }
      -    },
      -    "required": [
      -      "basis",
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "ContractDamages": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "categories": {
      -        "items": {
      -          "enum": [
      -            "unpaid_rent",
      -            "unpaid_utilities",
      -            "cleaning",
      -            "carpet",
      -            "flooring",
      -            "paint",
      -            "blinds_window_coverings",
      -            "appliance",
      -            "fixture_or_hardware",
      -            "wall_or_door_repair",
      -            "key_or_lock",
      -            "late_fees",
      -            "lease_break_fee",
      -            "moving_and_storage",
      -            "reletting_costs",
      -            "trash_and_abandoned_items",
      -            "other_damage",
      -            "other"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "lead": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "maxLength": 400,
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "section",
      -      "quote",
      -      "source",
      -      "categories"
      -    ],
      -    "type": "object"
      -  },
      -  "DeductionRules": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "allowed": {
      -        "default": [],
      -        "items": {
      -          "enum": [
      -            "unpaid_rent",
      -            "unpaid_utilities",
      -            "late_fees",
      -            "lease_break_fee",
      -            "cleaning_to_move_in_condition",
      -            "damage_beyond_wear",
      -            "future_defaults_under_lease",
      -            "other_lease_obligations",
      -            "moving_and_storage",
      -            "real_estate_tax_increase",
      -            "removal_of_items_left"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "allowed_detail": {
      -        "default": [],
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "cleaning": {
      -        "anyOf": [
      -          {
      -            "items": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "amendment": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "from": {
      -                  "anyOf": [
      -                    {
      -                      "format": "date",
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "governed_by": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "note": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "source": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "until": {
      -                  "anyOf": [
      -                    {
      -                      "format": "date",
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "value": {
      -                  "$ref": "#/$defs/CleaningRule"
      -                }
      -              },
      -              "required": [
      -                "value"
      -              ],
      -              "type": "object"
      -            },
      -            "type": "array"
      -          },
      -          {
      -            "$ref": "#/$defs/CleaningRule"
      -          },
      -          {
      -            "items": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "basis": {
      -                  "enum": [
      -                    "named",
      -                    "damage"
      -                  ],
      -                  "type": "string"
      -                },
      -                "condition": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ],
      -                  "default": null
      -                },
      -                "effective_on": {
      -                  "anyOf": [
      -                    {
      -                      "format": "date",
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ],
      -                  "default": null
      -                },
      -                "note": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ],
      -                  "default": null
      -                },
      -                "quote": {
      -                  "maxLength": 600,
      -                  "type": "string"
      -                },
      -                "routine": {
      -                  "default": "barred",
      -                  "enum": [
      -                    "barred",
      -                    "lease",
      -                    "reasonable"
      -                  ],
      -                  "type": "string"
      -                },
      -                "routine_signed_provision": {
      -                  "default": false,
      -                  "type": "boolean"
      -                },
      -                "section": {
      -                  "type": "string"
      -                },
      -                "source": {
      -                  "type": "string"
      -                },
      -                "unless_no_notice": {
      -                  "default": false,
      -                  "type": "boolean"
      -                },
      -                "verbatim": {
      -                  "default": true,
      -                  "type": "boolean"
      -                }
      -              },
      -              "required": [
      -                "basis",
      -                "section",
      -                "quote",
      -                "source"
      -              ],
      -              "type": "object"
      -            },
      -            "type": "array"
      -          }
      -        ],
      -        "default": []
      -      },
      -      "contract_damages": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/ContractDamages"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "depreciation": {
      -        "default": "silent",
      -        "enum": [
      -          "required",
      -          "guidance",
      -          "silent"
      -        ],
      -        "type": "string"
      -      },
      -      "depreciation_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "depreciation_only": {
      -        "default": [],
      -        "items": {
      -          "enum": [
      -            "unpaid_rent",
      -            "unpaid_utilities",
      -            "cleaning",
      -            "carpet",
      -            "flooring",
      -            "paint",
      -            "blinds_window_coverings",
      -            "appliance",
      -            "fixture_or_hardware",
      -            "wall_or_door_repair",
      -            "key_or_lock",
      -            "late_fees",
      -            "lease_break_fee",
      -            "moving_and_storage",
      -            "reletting_costs",
      -            "trash_and_abandoned_items",
      -            "other_damage",
      -            "other"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "discovery_cutoff": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/DiscoveryCutoff"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "excluded": {
      -        "default": [],
      -        "items": {
      -          "$ref": "#/$defs/Exclusion"
      -        },
      -        "type": "array"
      -      },
      -      "late_fee": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/LateFeeRule"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "lease_authorized": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/LeaseAuthorized"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "lease_break": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/LeaseBreakRule"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "mitigation_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "nonstandard_only": {
      -        "default": [],
      -        "items": {
      -          "enum": [
      -            "unpaid_rent",
      -            "unpaid_utilities",
      -            "cleaning",
      -            "carpet",
      -            "flooring",
      -            "paint",
      -            "blinds_window_coverings",
      -            "appliance",
      -            "fixture_or_hardware",
      -            "wall_or_door_repair",
      -            "key_or_lock",
      -            "late_fees",
      -            "lease_break_fee",
      -            "moving_and_storage",
      -            "reletting_costs",
      -            "trash_and_abandoned_items",
      -            "other_damage",
      -            "other"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "nonstandard_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "normal_wear_excluded": {
      -        "default": true,
      -        "type": "boolean"
      -      },
      -      "not_allowed_warning": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "termination_notice_quote": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "termination_notice_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "utilities": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/UtilityLimit"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "type": "object"
      -  },
      -  "DepositCap": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "advance_rent_exempt_months": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "before_furnished_months": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "before_months_rent": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "cap_limits": {
      -        "anyOf": [
      -          {
      -            "items": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "amendment": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "from": {
      -                  "anyOf": [
      -                    {
      -                      "format": "date",
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "governed_by": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "note": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "source": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "until": {
      -                  "anyOf": [
      -                    {
      -                      "format": "date",
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "value": {
      -                  "$ref": "#/$defs/CapLimits"
      -                }
      -              },
      -              "required": [
      -                "value"
      -              ],
      -              "type": "object"
      -            },
      -            "type": "array"
      -          },
      -          {
      -            "$ref": "#/$defs/CapLimits"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "counts_prepaid_rent": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "effective_by": {
      -        "default": "collected",
      -        "enum": [
      -          "collected",
      -          "lease_signed",
      -          "required"
      -        ],
      -        "type": "string"
      -      },
      -      "effective_on": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "excess_remedy": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/ExcessRemedy"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "excludes_pet_deposit": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "furnished_exempt": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "furnished_months": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "later_after_months": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "later_months_rent": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "max_rent_usd": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "max_term_months": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "min_term_months": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "minimum_usd": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "months_rent": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "or_demanded_before": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "periodic_after_months": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "pet_allowance_months": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "pet_cap_months": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "post_closing_occupancy_from": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "prepaid_cap_months": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "prepaid_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "source": {
      -        "type": "string"
      -      },
      -      "variant_duty": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "variant_extra_months": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "variant_months": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "variant_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "variant_when": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "small_landlord",
      -              "tenant_age_62_plus",
      -              "month_to_month"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "variants": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "required": [
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "Deprecation": {
      -    "properties": {
      -      "field": {
      -        "type": "string"
      -      },
      -      "until": {
      -        "format": "date",
      -        "type": "string"
      -      },
      -      "use": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "field",
      -      "until",
      -      "use"
      -    ],
      -    "type": "object"
      -  },
      -  "DescribeEach": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "quote": {
      -        "maxLength": 400,
      -        "type": "string"
      -      },
      -      "rent_only_exempt": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "DiscoveryCutoff": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "days_after_new_tenant": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "days_after_vacate": {
      -        "exclusiveMinimum": 0,
      -        "type": "integer"
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "days_after_vacate",
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "ExcessRemedy": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "multiple": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          }
      -        ]
      -      },
      -      "quote": {
      -        "maxLength": 400,
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "multiple",
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "Exclusion": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "category": {
      -        "enum": [
      -          "unpaid_rent",
      -          "unpaid_utilities",
      -          "cleaning",
      -          "carpet",
      -          "flooring",
      -          "paint",
      -          "blinds_window_coverings",
      -          "appliance",
      -          "fixture_or_hardware",
      -          "wall_or_door_repair",
      -          "key_or_lock",
      -          "late_fees",
      -          "lease_break_fee",
      -          "moving_and_storage",
      -          "reletting_costs",
      -          "trash_and_abandoned_items",
      -          "other_damage",
      -          "other"
      -        ],
      -        "type": "string"
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "category",
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "Fallback": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "days": {
      -        "exclusiveMinimum": 0,
      -        "type": "integer"
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "start": {
      -        "default": "vacate",
      -        "enum": [
      -          "vacate",
      -          "termination",
      -          "later_of_vacate_and_termination",
      -          "forwarding_address",
      -          "demand",
      -          "later_of_termination_and_address",
      -          "latest_of_termination_possession_and_address",
      -          "earlier_of_termination_and_surrender",
      -          "surrender_or_termination_first",
      -          "new_tenant_occupancy",
      -          "termination_possession_and_demand",
      -          "claim_notice"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "days",
      -      "section"
      -    ],
      -    "type": "object"
      -  },
      -  "Forfeiture": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "account_leg": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "address_relief_days": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "bars": {
      -        "default": "all",
      -        "enum": [
      -          "all",
      -          "damage"
      -        ],
      -        "type": "string"
      -      },
      -      "condition": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "contested": {
      -        "default": [],
      -        "items": {
      -          "enum": [
      -            "unpaid_rent",
      -            "unpaid_utilities",
      -            "cleaning",
      -            "carpet",
      -            "flooring",
      -            "paint",
      -            "blinds_window_coverings",
      -            "appliance",
      -            "fixture_or_hardware",
      -            "wall_or_door_repair",
      -            "key_or_lock",
      -            "late_fees",
      -            "lease_break_fee",
      -            "moving_and_storage",
      -            "reletting_costs",
      -            "trash_and_abandoned_items",
      -            "other_damage",
      -            "other"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "cure_business_days": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "cure_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "days": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "days_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "doc_legs": {
      -        "default": [],
      -        "items": {
      -          "enum": [
      -            "itemized_statement",
      -            "move_in_condition_statement",
      -            "move_out_list"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "effective_on": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "excuse_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "excuse_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "exempt": {
      -        "default": [],
      -        "items": {
      -          "enum": [
      -            "unpaid_rent",
      -            "unpaid_utilities",
      -            "cleaning",
      -            "carpet",
      -            "flooring",
      -            "paint",
      -            "blinds_window_coverings",
      -            "appliance",
      -            "fixture_or_hardware",
      -            "wall_or_door_repair",
      -            "key_or_lock",
      -            "late_fees",
      -            "lease_break_fee",
      -            "moving_and_storage",
      -            "reletting_costs",
      -            "trash_and_abandoned_items",
      -            "other_damage",
      -            "other"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "gate": {
      -        "default": "none",
      -        "enum": [
      -          "none",
      -          "bad_faith",
      -          "unreasonable",
      -          "willful",
      -          "presumption",
      -          "tenant_notice",
      -          "court"
      -        ],
      -        "type": "string"
      -      },
      -      "in_full_quote": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "keeps_claim": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "keeps_claim_for": {
      -        "default": "all",
      -        "enum": [
      -          "all",
      -          "damage"
      -        ],
      -        "type": "string"
      -      },
      -      "keeps_claim_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "late_condition_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "late_refund_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "no_address_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "no_address_relief": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "unsettled",
      -              "stands"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "not_if_abandoned": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "nothing_withheld_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "notice_relief": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/NoticeRelief"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "rent_only": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "exempt",
      -              "undisputed"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "rent_only_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "short_interest_contested": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "source": {
      -        "type": "string"
      -      },
      -      "tenant_notice_relief": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "trigger": {
      -        "enum": [
      -          "late_statement",
      -          "late_return",
      -          "late_statement_or_return",
      -          "late_claim_notice",
      -          "late_action_or_return",
      -          "not_in_input",
      -          "missing_documentation",
      -          "receipts_after_estimate"
      -        ],
      -        "type": "string"
      -      },
      -      "verbatim": {
      -        "default": true,
      -        "type": "boolean"
      -      }
      -    },
      -    "required": [
      -      "trigger",
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "Guide": {
      -    "properties": {
      -      "accessed": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "publisher": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "title": {
      -        "type": "string"
      -      },
      -      "url": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "required": [
      -      "title"
      -    ],
      -    "type": "object"
      -  },
      -  "InterestRule": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "accrual_floor": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "accrual_floor_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "accrues_after_months": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "bank_rate_lesser": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "base": {
      -        "default": "deposit",
      -        "enum": [
      -          "deposit",
      -          "excess_over_max_50_or_month"
      -        ],
      -        "type": "string"
      -      },
      -      "compound": {
      -        "default": "none",
      -        "enum": [
      -          "none",
      -          "annual"
      -        ],
      -        "type": "string"
      -      },
      -      "condition": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "count_last_day": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "due_days": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "due_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "due_start": {
      -        "default": "vacate",
      -        "enum": [
      -          "vacate",
      -          "termination",
      -          "later_of_vacate_and_termination",
      -          "forwarding_address",
      -          "demand",
      -          "later_of_termination_and_address",
      -          "latest_of_termination_possession_and_address",
      -          "earlier_of_termination_and_surrender",
      -          "surrender_or_termination_first",
      -          "new_tenant_occupancy",
      -          "termination_possession_and_demand",
      -          "claim_notice"
      -        ],
      -        "type": "string"
      -      },
      -      "fee_percent": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "formula": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "held_until": {
      -        "default": "vacate",
      -        "enum": [
      -          "vacate",
      -          "return"
      -        ],
      -        "type": "string"
      -      },
      -      "includes_prepaid_rent": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "legacy_before": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "legacy_interval_months": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "legacy_rate": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "method": {
      -        "default": "simple",
      -        "enum": [
      -          "simple",
      -          "monthly_by_year",
      -          "months_to_compliance",
      -          "lease_years",
      -          "per_window",
      -          "anniversary_years",
      -          "monthly"
      -        ],
      -        "type": "string"
      -      },
      -      "min_deposit_months_rent": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "min_deposit_usd": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "min_lease_term_months": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "min_tenancy_days": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "min_tenancy_months": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "min_tenancy_strict": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "min_units": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "minimum_usd": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "ordinance_coverage": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "payable": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "annually",
      -              "at_end"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "rate": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "fixed_percent",
      -              "statutory_index",
      -              "bank_rate"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "rate_published_by": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "rate_schedule": {
      -        "anyOf": [
      -          {
      -            "items": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "amendment": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "from": {
      -                  "anyOf": [
      -                    {
      -                      "format": "date",
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "governed_by": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "note": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "source": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "until": {
      -                  "anyOf": [
      -                    {
      -                      "format": "date",
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ]
      -                },
      -                "value": {
      -                  "anyOf": [
      -                    {
      -                      "minimum": 0,
      -                      "type": "number"
      -                    },
      -                    {
      -                      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -                      "type": "string"
      -                    }
      -                  ]
      -                }
      -              },
      -              "required": [
      -                "value"
      -              ],
      -              "type": "object"
      -            },
      -            "type": "array"
      -          },
      -          {
      -            "minimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "items": {
      -              "additionalProperties": false,
      -              "properties": {
      -                "from": {
      -                  "format": "date",
      -                  "type": "string"
      -                },
      -                "note": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ],
      -                  "default": null
      -                },
      -                "rate_value": {
      -                  "anyOf": [
      -                    {
      -                      "minimum": 0,
      -                      "type": "number"
      -                    },
      -                    {
      -                      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -                      "type": "string"
      -                    }
      -                  ]
      -                },
      -                "source": {
      -                  "anyOf": [
      -                    {
      -                      "type": "string"
      -                    },
      -                    {
      -                      "type": "null"
      -                    }
      -                  ],
      -                  "default": null
      -                },
      -                "to": {
      -                  "format": "date",
      -                  "type": "string"
      -                }
      -              },
      -              "required": [
      -                "from",
      -                "to",
      -                "rate_value"
      -              ],
      -              "type": "object"
      -            },
      -            "type": "array"
      -          }
      -        ],
      -        "default": []
      -      },
      -      "rate_value": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "rate_year": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "required": {
      -        "anyOf": [
      -          {
      -            "type": "boolean"
      -          },
      -          {
      -            "const": "conditional",
      -            "type": "string"
      -          }
      -        ]
      -      },
      -      "section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "year_starts": {
      -        "anyOf": [
      -          {
      -            "pattern": "^\\d{2}-\\d{2}$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "required": [
      -      "required"
      -    ],
      -    "type": "object"
      -  },
      -  "Itemization": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "after_refund": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "days": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "describe_each": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/DescribeEach"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "effective_on": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "months": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "move_in_photos": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/MoveInPhotos"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "move_in_statement": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/MoveInStatement"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "move_out_list": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/MoveOutList"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "on_full_refund": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "photos": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/Photos"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "receipts": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/Receipts"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "refund_with_list": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "required": {
      -        "default": true,
      -        "type": "boolean"
      -      },
      -      "section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "start": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "vacate",
      -              "termination",
      -              "later_of_vacate_and_termination",
      -              "forwarding_address",
      -              "demand",
      -              "later_of_termination_and_address",
      -              "latest_of_termination_possession_and_address",
      -              "earlier_of_termination_and_surrender",
      -              "surrender_or_termination_first",
      -              "new_tenant_occupancy",
      -              "termination_possession_and_demand",
      -              "claim_notice"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "with_refund": {
      -        "default": true,
      -        "type": "boolean"
      -      }
      -    },
      -    "type": "object"
      -  },
      -  "JurisdictionRef": {
      -    "properties": {
      -      "city": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "city_overlay": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "city_rules_checked": {
      -        "anyOf": [
      -          {
      -            "type": "boolean"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "covered": {
      -        "type": "boolean"
      -      },
      -      "state": {
      -        "type": "string"
      -      },
      -      "state_name": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "verified": {
      -        "type": "boolean"
      -      }
      -    },
      -    "required": [
      -      "state",
      -      "covered",
      -      "verified"
      -    ],
      -    "type": "object"
      -  },
      -  "LateFeeRule": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "agreements_from": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "combine": {
      -        "default": "greater",
      -        "enum": [
      -          "greater",
      -          "lesser",
      -          "plus"
      -        ],
      -        "type": "string"
      -      },
      -      "conditional": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "deposit_use": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "flat_usd": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "month_to_month_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "over_cap_penalties": {
      -        "default": [],
      -        "items": {
      -          "$ref": "#/$defs/OverCapPenalty"
      -        },
      -        "type": "array"
      -      },
      -      "over_cap_remedy": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "over_cap_remedy_conditional": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "over_cap_remedy_damages": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "over_cap_remedy_fees": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "over_cap_remedy_if": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "over_cap_remedy_months": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "over_cap_remedy_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "over_cap_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "over_cap_void": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "over_usd": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "per": {
      -        "default": "late_payment",
      -        "enum": [
      -          "late_payment",
      -          "month"
      -        ],
      -        "type": "string"
      -      },
      -      "percent": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "percent_of": {
      -        "default": "rent",
      -        "enum": [
      -          "rent",
      -          "past_due_payment"
      -        ],
      -        "type": "string"
      -      },
      -      "preconditions": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "preconditions_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "preconditions_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "presumption": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "renewal_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "rent_tiers": {
      -        "default": [],
      -        "items": {
      -          "$ref": "#/$defs/RentTier"
      -        },
      -        "type": "array"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      },
      -      "unit_tiers": {
      -        "default": [],
      -        "items": {
      -          "$ref": "#/$defs/UnitTier"
      -        },
      -        "type": "array"
      -      },
      -      "verbatim": {
      -        "default": true,
      -        "type": "boolean"
      -      }
      -    },
      -    "required": [
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "LeaseAuthorized": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "categories": {
      -        "default": [],
      -        "items": {
      -          "enum": [
      -            "unpaid_rent",
      -            "unpaid_utilities",
      -            "cleaning",
      -            "carpet",
      -            "flooring",
      -            "paint",
      -            "blinds_window_coverings",
      -            "appliance",
      -            "fixture_or_hardware",
      -            "wall_or_door_repair",
      -            "key_or_lock",
      -            "late_fees",
      -            "lease_break_fee",
      -            "moving_and_storage",
      -            "reletting_costs",
      -            "trash_and_abandoned_items",
      -            "other_damage",
      -            "other"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "replace": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      },
      -      "verbatim": {
      -        "default": true,
      -        "type": "boolean"
      -      }
      -    },
      -    "required": [
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "LeaseBreakRule": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "excludes_later_rent": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "exclusion_quote": {
      -        "anyOf": [
      -          {
      -            "maxLength": 400,
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "exclusion_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "keeps_retake_month_rent": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "months_rent": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "rule": {
      -        "enum": [
      -          "actual_rent",
      -          "cap_months_rent",
      -          "nonstandard_provision"
      -        ],
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      },
      -      "verbatim": {
      -        "default": true,
      -        "type": "boolean"
      -      }
      -    },
      -    "required": [
      -      "rule",
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "Links": {
      -    "properties": {
      -      "downloads": {
      -        "additionalProperties": {
      -          "type": "string"
      -        },
      -        "type": "object"
      -      },
      -      "how_to_get_files": {
      -        "type": "string"
      -      },
      -      "web_tool": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "web_tool_prefilled": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "required": [
      -      "how_to_get_files"
      -    ],
      -    "type": "object"
      -  },
      -  "MoveInPhotos": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "missing": {
      -        "default": "depends",
      -        "enum": [
      -          "warn",
      -          "depends",
      -          "bars"
      -        ],
      -        "type": "string"
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      },
      -      "tenancy_from": {
      -        "format": "date",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "tenancy_from",
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "MoveInStatement": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "missing": {
      -        "default": "depends",
      -        "enum": [
      -          "depends",
      -          "bars",
      -          "warn"
      -        ],
      -        "type": "string"
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "maxLength": 400,
      -        "type": "string"
      -      },
      -      "rent_exempt": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "scope": {
      -        "default": "lines",
      -        "enum": [
      -          "lines",
      -          "all"
      -        ],
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "MoveOutList": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "business_days": {
      -        "exclusiveMinimum": 0,
      -        "type": "integer"
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "maxLength": 400,
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      },
      -      "unnotified_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "required": [
      -      "business_days",
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "NotIfAbandoned": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "quote": {
      -        "maxLength": 400,
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "Note": {
      -    "properties": {
      -      "code": {
      -        "type": "string"
      -      },
      -      "text": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "code",
      -      "text"
      -    ],
      -    "type": "object"
      -  },
      -  "NoticeRelief": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "agreement": {
      -        "type": "string"
      -      },
      -      "lease": {
      -        "type": "string"
      -      },
      -      "reach": {
      -        "type": "string"
      -      },
      -      "relief": {
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "section",
      -      "source",
      -      "agreement",
      -      "lease",
      -      "reach",
      -      "relief"
      -    ],
      -    "type": "object"
      -  },
      -  "OverCapPenalty": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "applies_if": {
      -        "type": "string"
      -      },
      -      "conditional": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "damages": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "fees": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "fixed_usd": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          }
      -        ]
      -      },
      -      "minimum_usd": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "section",
      -      "quote",
      -      "fixed_usd",
      -      "applies_if"
      -    ],
      -    "type": "object"
      -  },
      -  "PaymentMethod": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "days": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "effective_on": {
      -        "format": "date",
      -        "type": "string"
      -      },
      -      "kind": {
      -        "enum": [
      -          "electronic_after_notice",
      -          "electronic_if_paid_electronically"
      -        ],
      -        "type": "string"
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "section": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "kind",
      -      "effective_on",
      -      "section"
      -    ],
      -    "type": "object"
      -  },
      -  "PenaltyRule": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "base": {
      -        "default": "withheld",
      -        "enum": [
      -          "withheld",
      -          "wrongfully_withheld",
      -          "entitled_balance",
      -          "exceeds_damages"
      -        ],
      -        "type": "string"
      -      },
      -      "base_high": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "deposit",
      -              "withheld"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "base_if_no_statement": {
      -        "anyOf": [
      -          {
      -            "const": "deposit_less_claims",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "basis": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "deposit",
      -              "amount_withheld",
      -              "monthly_rent"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "condition": {
      -        "enum": [
      -          "bad_faith",
      -          "willful",
      -          "any_late",
      -          "late",
      -          "any_violation",
      -          "without_reasonable_basis",
      -          "court_discretion",
      -          "unpaid_annual_interest",
      -          "after_tenant_notice",
      -          "absence_of_good_faith",
      -          "no_account_and_no_listing",
      -          "late_claim_notice",
      -          "late_action_or_return"
      -        ],
      -        "type": "string"
      -      },
      -      "credited_against_rent": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "rent_due",
      -              "rent_beyond_deposit"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "discretionary": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "earlier_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "earlier_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "fees_only_without_multiple": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "fixed_usd": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "forfeits_right_to_withhold_if_late": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "interest_in_base": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "interest_only_fixed_usd": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "interest_only_multiple": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "kind": {
      -        "enum": [
      -          "multiple",
      -          "fixed",
      -          "actual_only",
      -          "forfeiture_only"
      -        ],
      -        "type": "string"
      -      },
      -      "late_refund_in_base": {
      -        "default": true,
      -        "type": "boolean"
      -      },
      -      "low_on_merits": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "max_months_rent": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "minimum_usd": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "multiple": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "multiple_if_statement_late": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "multiple_is_additional": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "no_statement_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "not_if_abandoned": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note_from": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "per_violation": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "plus_attorney_fees": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "safe_harbor": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/SafeHarbor"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "source": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "required": [
      -      "kind",
      -      "condition"
      -    ],
      -    "type": "object"
      -  },
      -  "Photos": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "effective_by": {
      -        "default": "move_out",
      -        "enum": [
      -          "move_out",
      -          "notice"
      -        ],
      -        "type": "string"
      -      },
      -      "effective_on": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "gate_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "kinds": {
      -        "default": [
      -          "move_out",
      -          "after_repair"
      -        ],
      -        "items": {
      -          "enum": [
      -            "move_in",
      -            "move_out",
      -            "after_repair"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "missing": {
      -        "default": "warn",
      -        "enum": [
      -          "warn",
      -          "depends",
      -          "bars"
      -        ],
      -        "type": "string"
      -      },
      -      "missing_from": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "required": {
      -        "type": "boolean"
      -      },
      -      "scope": {
      -        "default": "lines",
      -        "enum": [
      -          "lines",
      -          "all"
      -        ],
      -        "type": "string"
      -      },
      -      "section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "threshold_usd": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "required": [
      -      "required"
      -    ],
      -    "type": "object"
      -  },
      -  "Provenance": {
      -    "properties": {
      -      "rule_ids": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "rules_as_of": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "ruleset_hash": {
      -        "type": "string"
      -      },
      -      "ruleset_id": {
      -        "type": "string"
      -      },
      -      "ruleset_version": {
      -        "type": "string"
      -      },
      -      "sources": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "ruleset_id",
      -      "ruleset_version",
      -      "ruleset_hash"
      -    ],
      -    "type": "object"
      -  },
      -  "Reading": {
      -    "properties": {
      -      "counts": {
      -        "$ref": "#/$defs/ReadingCounts"
      -      },
      -      "findings": {
      -        "items": {
      -          "additionalProperties": true,
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "id": {
      -        "type": "string"
      -      },
      -      "kind": {
      -        "enum": [
      -          "notes",
      -          "document"
      -        ],
      -        "type": "string"
      -      },
      -      "model": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "notes": {
      -        "items": {
      -          "$ref": "#/$defs/ReadingNote"
      -        },
      -        "type": "array"
      -      },
      -      "prompt_version": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "required": [
      -      "id",
      -      "kind",
      -      "counts",
      -      "findings"
      -    ],
      -    "type": "object"
      -  },
      -  "ReadingCounts": {
      -    "properties": {
      -      "ai": {
      -        "type": "integer"
      -      },
      -      "parser": {
      -        "type": "integer"
      -      },
      -      "total": {
      -        "type": "integer"
      -      },
      -      "unmatched": {
      -        "type": "integer"
      -      }
      -    },
      -    "required": [
      -      "total",
      -      "ai",
      -      "parser",
      -      "unmatched"
      -    ],
      -    "type": "object"
      -  },
      -  "ReadingNote": {
      -    "properties": {
      -      "code": {
      -        "type": "string"
      -      },
      -      "finding_ids": {
      -        "default": [],
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "kind": {
      -        "enum": [
      -          "warning",
      -          "assumption"
      -        ],
      -        "type": "string"
      -      },
      -      "message": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "kind",
      -      "code",
      -      "message"
      -    ],
      -    "type": "object"
      -  },
      -  "Receipts": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "enclosed_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "estimate_days": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "estimate_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "estimate_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "gate_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "missing": {
      -        "default": "warn",
      -        "enum": [
      -          "warn",
      -          "depends",
      -          "bars"
      -        ],
      -        "type": "string"
      -      },
      -      "missing_from": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "own_work_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "required": {
      -        "type": "boolean"
      -      },
      -      "scope": {
      -        "default": "lines",
      -        "enum": [
      -          "lines",
      -          "all"
      -        ],
      -        "type": "string"
      -      },
      -      "section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "threshold_usd": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "required": [
      -      "required"
      -    ],
      -    "type": "object"
      -  },
      -  "RentTier": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "flat_usd": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          }
      -        ]
      -      },
      -      "max_rent_usd": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "required": [
      -      "flat_usd"
      -    ],
      -    "type": "object"
      -  },
      -  "ResultSignature": {
      -    "properties": {
      -      "jws": {
      -        "type": "string"
      -      },
      -      "payload": {
      -        "$ref": "#/$defs/ResultSignaturePayload"
      -      },
      -      "verify_code": {
      -        "type": "string"
      -      },
      -      "verify_url": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "jws",
      -      "payload",
      -      "verify_code",
      -      "verify_url"
      -    ],
      -    "type": "object"
      -  },
      -  "ResultSignaturePayload": {
      -    "properties": {
      -      "capability": {
      -        "type": "string"
      -      },
      -      "engine_version": {
      -        "type": "string"
      -      },
      -      "issued_at": {
      -        "type": "string"
      -      },
      -      "kid": {
      -        "type": "string"
      -      },
      -      "operation": {
      -        "type": "string"
      -      },
      -      "result_hash": {
      -        "type": "string"
      -      },
      -      "ruleset_hash": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "ruleset_version": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "v": {
      -        "type": "integer"
      -      }
      -    },
      -    "required": [
      -      "v",
      -      "kid",
      -      "capability",
      -      "operation",
      -      "ruleset_version",
      -      "ruleset_hash",
      -      "engine_version",
      -      "result_hash",
      -      "issued_at"
      -    ],
      -    "type": "object"
      -  },
      -  "ReturnRule": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "alternatives": {
      -        "default": [],
      -        "items": {
      -          "$ref": "#/$defs/Alternative"
      -        },
      -        "type": "array"
      -      },
      -      "broken_lease": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/BrokenLease"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "counting": {
      -        "default": "calendar",
      -        "enum": [
      -          "calendar",
      -          "business"
      -        ],
      -        "type": "string"
      -      },
      -      "days": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "demand_in_writing": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "determination_days": {
      -        "anyOf": [
      -          {
      -            "exclusiveMinimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "determination_section": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "fallback": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/Fallback"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "gate": {
      -        "anyOf": [
      -          {
      -            "const": "forwarding_address",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "gate_restarts": {
      -        "default": true,
      -        "type": "boolean"
      -      },
      -      "holidays": {
      -        "default": "federal",
      -        "enum": [
      -          "federal",
      -          "AZ",
      -          "CA",
      -          "NY",
      -          "TX"
      -        ],
      -        "type": "string"
      -      },
      -      "months": {
      -        "anyOf": [
      -          {
      -            "minimum": 0,
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "not_if_abandoned": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/NotIfAbandoned"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "payment_method": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/PaymentMethod"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "prepaid_rent_returned": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "rollover": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "rollover_days": {
      -        "default": [
      -          "saturday",
      -          "sunday",
      -          "holiday"
      -        ],
      -        "items": {
      -          "enum": [
      -            "saturday",
      -            "sunday",
      -            "holiday"
      -          ],
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "rollover_source": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "rollover_unsettled": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "start": {
      -        "default": "vacate",
      -        "enum": [
      -          "vacate",
      -          "termination",
      -          "later_of_vacate_and_termination",
      -          "forwarding_address",
      -          "demand",
      -          "later_of_termination_and_address",
      -          "latest_of_termination_possession_and_address",
      -          "earlier_of_termination_and_surrender",
      -          "surrender_or_termination_first",
      -          "new_tenant_occupancy",
      -          "termination_possession_and_demand",
      -          "claim_notice"
      -        ],
      -        "type": "string"
      -      },
      -      "start_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "unsettled_rollover": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/UnsettledRollover"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "unsettled_start": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/UnsettledStart"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      }
      -    },
      -    "type": "object"
      -  },
      -  "Review": {
      -    "properties": {
      -      "ai_read": {
      -        "default": 0,
      -        "type": "integer"
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "reading_id": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "status": {
      -        "default": "verified",
      -        "enum": [
      -          "draft",
      -          "verified"
      -        ],
      -        "type": "string"
      -      }
      -    },
      -    "type": "object"
      -  },
      -  "RulesResult": {
      -    "properties": {
      -      "citations": {
      -        "items": {
      -          "$ref": "#/$defs/Citation"
      -        },
      -        "type": "array"
      -      },
      -      "city_overlay": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/CityRules"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "covered_cities": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "covered_states": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "disclaimer": {
      -        "type": "string"
      -      },
      -      "guides": {
      -        "items": {
      -          "$ref": "#/$defs/Guide"
      -        },
      -        "type": "array"
      -      },
      -      "jurisdiction": {
      -        "$ref": "#/$defs/JurisdictionRef"
      -      },
      -      "provenance": {
      -        "$ref": "#/$defs/Provenance"
      -      },
      -      "research_notes": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "rules": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/StateRules"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "small_claims": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/Guide"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "summary": {
      -        "type": "string"
      -      },
      -      "warnings": {
      -        "items": {
      -          "$ref": "#/$defs/Note"
      -        },
      -        "type": "array"
      -      }
      -    },
      -    "required": [
      -      "summary",
      -      "disclaimer",
      -      "jurisdiction",
      -      "provenance"
      -    ],
      -    "type": "object"
      -  },
      -  "RunInfo": {
      -    "properties": {
      -      "capability": {
      -        "type": "string"
      -      },
      -      "contract_version": {
      -        "type": "string"
      -      },
      -      "duration_ms": {
      -        "type": "integer"
      -      },
      -      "engine_version": {
      -        "type": "string"
      -      },
      -      "id": {
      -        "type": "string"
      -      },
      -      "operation": {
      -        "type": "string"
      -      },
      -      "received_at": {
      -        "format": "date-time",
      -        "type": "string"
      -      },
      -      "ruleset_hash": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "ruleset_version": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      }
      -    },
      -    "required": [
      -      "id",
      -      "capability",
      -      "operation",
      -      "contract_version",
      -      "engine_version",
      -      "ruleset_version",
      -      "ruleset_hash",
      -      "received_at",
      -      "duration_ms"
      -    ],
      -    "type": "object"
      -  },
      -  "SafeHarbor": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "address_due": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "by_termination",
      -              "upon_termination"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "address_due_quote": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "conditions": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "late_address": {
      -        "anyOf": [
      -          {
      -            "const": "unsettled",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "lease_notice_address_counts": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "requires_mailing": {
      -        "default": false,
      -        "type": "boolean"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      },
      -      "when": {
      -        "const": "no_forwarding_address",
      -        "default": "no_forwarding_address",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "StateRules": {
      -    "properties": {
      -      "applicability": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "deductions": {
      -        "$ref": "#/$defs/DeductionRules"
      -      },
      -      "deposit_cap": {
      -        "anyOf": [
      -          {
      -            "$ref": "#/$defs/DepositCap"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "deposit_cap_months_rent": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "forfeiture": {
      -        "items": {
      -          "$ref": "#/$defs/Forfeiture"
      -        },
      -        "type": "array"
      -      },
      -      "interest": {
      -        "$ref": "#/$defs/InterestRule"
      -      },
      -      "itemization": {
      -        "$ref": "#/$defs/Itemization"
      -      },
      -      "notes": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "penalty": {
      -        "$ref": "#/$defs/PenaltyRule"
      -      },
      -      "recent_changes": {
      -        "items": {
      -          "$ref": "#/$defs/Change"
      -        },
      -        "type": "array"
      -      },
      -      "return_rule": {
      -        "$ref": "#/$defs/ReturnRule"
      -      },
      -      "statute": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "statute",
      -      "return_rule",
      -      "itemization",
      -      "deductions",
      -      "interest",
      -      "penalty"
      -    ],
      -    "type": "object"
      -  },
      -  "UnitTier": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "max_units": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "percent": {
      -        "anyOf": [
      -          {
      -            "type": "number"
      -          },
      -          {
      -            "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -            "type": "string"
      -          }
      -        ]
      -      }
      -    },
      -    "required": [
      -      "percent"
      -    ],
      -    "type": "object"
      -  },
      -  "UnsettledRollover": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "holidays": {
      -        "default": [],
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "quote": {
      -        "maxLength": 1200,
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      },
      -      "start_rolls": {
      -        "default": false,
      -        "type": "boolean"
      -      }
      -    },
      -    "required": [
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "UnsettledStart": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "event": {
      -        "enum": [
      -          "vacate",
      -          "termination",
      -          "later_of_vacate_and_termination",
      -          "forwarding_address",
      -          "demand",
      -          "later_of_termination_and_address",
      -          "latest_of_termination_possession_and_address",
      -          "earlier_of_termination_and_surrender",
      -          "surrender_or_termination_first",
      -          "new_tenant_occupancy",
      -          "termination_possession_and_demand",
      -          "claim_notice"
      -        ],
      -        "type": "string"
      -      },
      -      "later_text_note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "later_text_on": {
      -        "anyOf": [
      -          {
      -            "format": "date",
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "note": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "event",
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  },
      -  "UtilityLimit": {
      -    "additionalProperties": false,
      -    "properties": {
      -      "kinds": {
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": "array"
      -      },
      -      "quote": {
      -        "maxLength": 600,
      -        "type": "string"
      -      },
      -      "section": {
      -        "type": "string"
      -      },
      -      "source": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "kinds",
      -      "section",
      -      "quote",
      -      "source"
      -    ],
      -    "type": "object"
      -  }
      -}
    • removedOutput schema / properties / client_refs / anyOf
      Removed value: -[
      -  {
      -    "additionalProperties": true,
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / client_refs / default
      Removed value: -null
    • addedOutput schema / properties / client_refs / type
      Added value: +[
      +  "object",
      +  "null"
      +]
    • removedOutput schema / properties / deprecation / anyOf
      Removed value: -[
      -  {
      -    "items": {
      -      "$ref": "#/$defs/Deprecation"
      -    },
      -    "type": "array"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / deprecation / default
      Removed value: -null
    • addedOutput schema / properties / deprecation / type
      Added value: +[
      +  "array",
      +  "null"
      +]
    • removedOutput schema / properties / input_hash / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / input_hash / default
      Removed value: -null
    • addedOutput schema / properties / input_hash / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / links / anyOf
      Removed value: -[
      -  {
      -    "$ref": "#/$defs/Links"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / links / default
      Removed value: -null
    • addedOutput schema / properties / links / type
      Added value: +[
      +  "object",
      +  "null"
      +]
    • removedOutput schema / properties / reading / anyOf
      Removed value: -[
      -  {
      -    "$ref": "#/$defs/Reading"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / reading / default
      Removed value: -null
    • addedOutput schema / properties / reading / type
      Added value: +[
      +  "object",
      +  "null"
      +]
    • removedOutput schema / properties / request_hash / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / request_hash / default
      Removed value: -null
    • addedOutput schema / properties / request_hash / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / result / $ref
      Removed value: -"#/$defs/RulesResult"
    • addedOutput schema / properties / result / properties
      Added value: +{
      +  "citations": {
      +    "type": "array"
      +  },
      +  "city_overlay": {
      +    "type": [
      +      "object",
      +      "null"
      +    ]
      +  },
      +  "covered_cities": {
      +    "type": "array"
      +  },
      +  "covered_states": {
      +    "type": "array"
      +  },
      +  "disclaimer": {
      +    "type": "string"
      +  },
      +  "guides": {
      +    "type": "array"
      +  },
      +  "jurisdiction": {
      +    "type": "object"
      +  },
      +  "provenance": {
      +    "type": "object"
      +  },
      +  "research_notes": {
      +    "type": "array"
      +  },
      +  "rules": {
      +    "type": [
      +      "object",
      +      "null"
      +    ]
      +  },
      +  "small_claims": {
      +    "type": [
      +      "object",
      +      "null"
      +    ]
      +  },
      +  "summary": {
      +    "type": "string"
      +  },
      +  "warnings": {
      +    "type": "array"
      +  }
      +}
    • addedOutput schema / properties / result / required
      Added value: +[
      +  "summary",
      +  "disclaimer",
      +  "jurisdiction",
      +  "provenance"
      +]
    • addedOutput schema / properties / result / type
      Added value: +"object"
    • removedOutput schema / properties / result_hash / anyOf
      Removed value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / result_hash / default
      Removed value: -null
    • addedOutput schema / properties / result_hash / type
      Added value: +[
      +  "string",
      +  "null"
      +]
    • removedOutput schema / properties / review / anyOf
      Removed value: -[
      -  {
      -    "$ref": "#/$defs/Review"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / review / default
      Removed value: -null
    • addedOutput schema / properties / review / type
      Added value: +[
      +  "object",
      +  "null"
      +]
    • removedOutput schema / properties / run / anyOf
      Removed value: -[
      -  {
      -    "$ref": "#/$defs/RunInfo"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / run / default
      Removed value: -null
    • addedOutput schema / properties / run / type
      Added value: +[
      +  "object",
      +  "null"
      +]
    • removedOutput schema / properties / signature / anyOf
      Removed value: -[
      -  {
      -    "$ref": "#/$defs/ResultSignature"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedOutput schema / properties / signature / default
      Removed value: -null
    • addedOutput schema / properties / signature / type
      Added value: +[
      +  "object",
      +  "null"
      +]
  2. Changed11 schema fields changed
    • addedOutput schema / $defs / Alternative / properties / demand_within_days
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • changedOutput schema / $defs / DepositCap / properties / effective_by / enum
      Previous value: -[
      -  "collected",
      -  "lease_signed"
      -]New value: +[
      +  "collected",
      +  "lease_signed",
      +  "required"
      +]
    • addedOutput schema / $defs / DepositCap / properties / periodic_after_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / pet_cap_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / post_closing_occupancy_from
      Added value: +{
      +  "anyOf": [
      +    {
      +      "format": "date",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / PenaltyRule / properties / interest_only_fixed_usd
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / PenaltyRule / properties / interest_only_multiple
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / SafeHarbor / properties / conditions
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / SafeHarbor / properties / late_address
      Added value: +{
      +  "anyOf": [
      +    {
      +      "const": "unsettled",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / SafeHarbor / properties / lease_notice_address_counts
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / SafeHarbor / properties / requires_mailing
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
  3. Changed18 schema fields changed
    • addedOutput schema / $defs / BrokenLease
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "quote": {
      +      "maxLength": 600,
      +      "type": "string"
      +    },
      +    "requires_notice": {
      +      "type": "boolean"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "requires_notice",
      +    "section",
      +    "quote",
      +    "source"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / CapLimits
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "furnished_months": {
      +      "anyOf": [
      +        {
      +          "exclusiveMinimum": 0,
      +          "type": "number"
      +        },
      +        {
      +          "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "months_rent": {
      +      "anyOf": [
      +        {
      +          "exclusiveMinimum": 0,
      +          "type": "number"
      +        },
      +        {
      +          "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    }
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / $defs / DepositCap / properties / cap_limits
      Added value: +{
      +  "anyOf": [
      +    {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "amendment": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "from": {
      +            "anyOf": [
      +              {
      +                "format": "date",
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "governed_by": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "note": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "source": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "until": {
      +            "anyOf": [
      +              {
      +                "format": "date",
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "value": {
      +            "$ref": "#/$defs/CapLimits"
      +          }
      +        },
      +        "required": [
      +          "value"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    {
      +      "$ref": "#/$defs/CapLimits"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / keeps_claim_for
      Added value: +{
      +  "default": "all",
      +  "enum": [
      +    "all",
      +    "damage"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / $defs / Forfeiture / properties / keeps_claim_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / no_address_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / no_address_relief
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "unsettled",
      +        "stands"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / notice_relief
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/NoticeRelief"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / NoticeRelief
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "agreement": {
      +      "type": "string"
      +    },
      +    "lease": {
      +      "type": "string"
      +    },
      +    "reach": {
      +      "type": "string"
      +    },
      +    "relief": {
      +      "type": "string"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "section",
      +    "source",
      +    "agreement",
      +    "lease",
      +    "reach",
      +    "relief"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / PenaltyRule / properties / earlier_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / PenaltyRule / properties / source
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Receipts / properties / enclosed_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Receipts / properties / own_work_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / ReturnRule / properties / broken_lease
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/BrokenLease"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / ReturnRule / properties / unsettled_start
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/UnsettledStart"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / SafeHarbor / properties / address_due
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "by_termination",
      +        "upon_termination"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / SafeHarbor / properties / address_due_quote
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / UnsettledStart
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "event": {
      +      "enum": [
      +        "vacate",
      +        "termination",
      +        "later_of_vacate_and_termination",
      +        "forwarding_address",
      +        "demand",
      +        "later_of_termination_and_address",
      +        "latest_of_termination_possession_and_address",
      +        "earlier_of_termination_and_surrender",
      +        "surrender_or_termination_first",
      +        "new_tenant_occupancy",
      +        "termination_possession_and_demand",
      +        "claim_notice"
      +      ],
      +      "type": "string"
      +    },
      +    "later_text_note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "later_text_on": {
      +      "anyOf": [
      +        {
      +          "format": "date",
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "quote": {
      +      "maxLength": 600,
      +      "type": "string"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "event",
      +    "section",
      +    "quote",
      +    "source"
      +  ],
      +  "type": "object"
      +}
  4. Changed8 schema fields changed
    • addedOutput schema / $defs / LateFeeRule / properties / over_cap_penalties
      Added value: +{
      +  "default": [],
      +  "items": {
      +    "$ref": "#/$defs/OverCapPenalty"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / percent_of
      Added value: +{
      +  "default": "rent",
      +  "enum": [
      +    "rent",
      +    "past_due_payment"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / preconditions
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / preconditions_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / preconditions_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / OverCapPenalty
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "applies_if": {
      +      "type": "string"
      +    },
      +    "conditional": {
      +      "default": false,
      +      "type": "boolean"
      +    },
      +    "damages": {
      +      "default": false,
      +      "type": "boolean"
      +    },
      +    "fees": {
      +      "default": false,
      +      "type": "boolean"
      +    },
      +    "fixed_usd": {
      +      "anyOf": [
      +        {
      +          "exclusiveMinimum": 0,
      +          "type": "number"
      +        },
      +        {
      +          "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +          "type": "string"
      +        }
      +      ]
      +    },
      +    "minimum_usd": {
      +      "anyOf": [
      +        {
      +          "exclusiveMinimum": 0,
      +          "type": "number"
      +        },
      +        {
      +          "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "quote": {
      +      "maxLength": 600,
      +      "type": "string"
      +    },
      +    "section": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "section",
      +    "quote",
      +    "fixed_usd",
      +    "applies_if"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / ReturnRule / properties / unsettled_rollover
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/UnsettledRollover"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / UnsettledRollover
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "holidays": {
      +      "default": [],
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "quote": {
      +      "maxLength": 1200,
      +      "type": "string"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    },
      +    "start_rolls": {
      +      "default": false,
      +      "type": "boolean"
      +    }
      +  },
      +  "required": [
      +    "section",
      +    "quote",
      +    "source"
      +  ],
      +  "type": "object"
      +}
  5. Changed58 schema fields changed
    • addedOutput schema / $defs / Alternative / properties / listed_warning
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / ContractDamages / properties / lead
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DeductionRules / properties / discovery_cutoff
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/DiscoveryCutoff"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DeductionRules / properties / lease_authorized
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/LeaseAuthorized"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DeductionRules / properties / termination_notice_quote
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DeductionRules / properties / termination_notice_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / advance_rent_exempt_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / or_demanded_before
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / DepositCap / properties / prepaid_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / variant_duty
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / variant_extra_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Deprecation
      Added value: +{
      +  "properties": {
      +    "field": {
      +      "type": "string"
      +    },
      +    "until": {
      +      "format": "date",
      +      "type": "string"
      +    },
      +    "use": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "field",
      +    "until",
      +    "use"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / DiscoveryCutoff
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "days_after_new_tenant": {
      +      "anyOf": [
      +        {
      +          "exclusiveMinimum": 0,
      +          "type": "integer"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "days_after_vacate": {
      +      "exclusiveMinimum": 0,
      +      "type": "integer"
      +    },
      +    "quote": {
      +      "maxLength": 600,
      +      "type": "string"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "days_after_vacate",
      +    "section",
      +    "quote",
      +    "source"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / Forfeiture / properties / account_leg
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / cure_business_days
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / cure_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / days
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / days_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / doc_legs
      Added value: +{
      +  "default": [],
      +  "items": {
      +    "enum": [
      +      "itemized_statement",
      +      "move_in_condition_statement",
      +      "move_out_list"
      +    ],
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / $defs / Forfeiture / properties / excuse_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / excuse_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / in_full_quote
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / late_condition_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / late_refund_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / nothing_withheld_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / rent_only
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "exempt",
      +        "undisputed"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Forfeiture / properties / rent_only_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • changedOutput schema / $defs / Forfeiture / properties / trigger / enum
      Previous value: -[
      -  "late_statement",
      -  "late_return",
      -  "late_statement_or_return",
      -  "late_claim_notice",
      -  "not_in_input"
      -]New value: +[
      +  "late_statement",
      +  "late_return",
      +  "late_statement_or_return",
      +  "late_claim_notice",
      +  "late_action_or_return",
      +  "not_in_input",
      +  "missing_documentation",
      +  "receipts_after_estimate"
      +]
    • addedOutput schema / $defs / InterestRule / properties / section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Itemization / properties / section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / agreements_from
      Added value: +{
      +  "anyOf": [
      +    {
      +      "format": "date",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / month_to_month_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / over_cap_remedy
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / over_cap_remedy_conditional
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / over_cap_remedy_damages
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / over_cap_remedy_fees
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / over_cap_remedy_if
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / over_cap_remedy_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / over_cap_remedy_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / over_cap_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / over_cap_void
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LateFeeRule / properties / renewal_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LeaseAuthorized
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "categories": {
      +      "default": [],
      +      "items": {
      +        "enum": [
      +          "unpaid_rent",
      +          "unpaid_utilities",
      +          "cleaning",
      +          "carpet",
      +          "flooring",
      +          "paint",
      +          "blinds_window_coverings",
      +          "appliance",
      +          "fixture_or_hardware",
      +          "wall_or_door_repair",
      +          "key_or_lock",
      +          "late_fees",
      +          "lease_break_fee",
      +          "moving_and_storage",
      +          "reletting_costs",
      +          "trash_and_abandoned_items",
      +          "other_damage",
      +          "other"
      +        ],
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "quote": {
      +      "maxLength": 600,
      +      "type": "string"
      +    },
      +    "replace": {
      +      "default": false,
      +      "type": "boolean"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    },
      +    "verbatim": {
      +      "default": true,
      +      "type": "boolean"
      +    }
      +  },
      +  "required": [
      +    "section",
      +    "quote",
      +    "source"
      +  ],
      +  "type": "object"
      +}
    • changedOutput schema / $defs / PenaltyRule / properties / condition / enum
      Previous value: -[
      -  "bad_faith",
      -  "willful",
      -  "any_late",
      -  "late",
      -  "any_violation",
      -  "without_reasonable_basis",
      -  "court_discretion",
      -  "unpaid_annual_interest"
      -]New value: +[
      +  "bad_faith",
      +  "willful",
      +  "any_late",
      +  "late",
      +  "any_violation",
      +  "without_reasonable_basis",
      +  "court_discretion",
      +  "unpaid_annual_interest",
      +  "after_tenant_notice",
      +  "absence_of_good_faith",
      +  "no_account_and_no_listing",
      +  "late_claim_notice",
      +  "late_action_or_return"
      +]
    • addedOutput schema / $defs / PenaltyRule / properties / earlier_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / PenaltyRule / properties / fees_only_without_multiple
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / PenaltyRule / properties / low_on_merits
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / PenaltyRule / properties / note_from
      Added value: +{
      +  "anyOf": [
      +    {
      +      "format": "date",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / PenaltyRule / properties / section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Photos / properties / effective_by
      Added value: +{
      +  "default": "move_out",
      +  "enum": [
      +    "move_out",
      +    "notice"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / $defs / Photos / properties / missing_from
      Added value: +{
      +  "anyOf": [
      +    {
      +      "format": "date",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Photos / properties / section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Receipts / properties / estimate_days
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Receipts / properties / missing_from
      Added value: +{
      +  "anyOf": [
      +    {
      +      "format": "date",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Receipts / properties / section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / ReturnRule / properties / prepaid_rent_returned
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / deprecation
      Added value: +{
      +  "anyOf": [
      +    {
      +      "items": {
      +        "$ref": "#/$defs/Deprecation"
      +      },
      +      "type": "array"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
  6. Changed7 schema fields changed
    • addedOutput schema / $defs / Reading
      Added value: +{
      +  "properties": {
      +    "counts": {
      +      "$ref": "#/$defs/ReadingCounts"
      +    },
      +    "findings": {
      +      "items": {
      +        "additionalProperties": true,
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "id": {
      +      "type": "string"
      +    },
      +    "kind": {
      +      "enum": [
      +        "notes",
      +        "document"
      +      ],
      +      "type": "string"
      +    },
      +    "model": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "notes": {
      +      "items": {
      +        "$ref": "#/$defs/ReadingNote"
      +      },
      +      "type": "array"
      +    },
      +    "prompt_version": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    }
      +  },
      +  "required": [
      +    "id",
      +    "kind",
      +    "counts",
      +    "findings"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / ReadingCounts
      Added value: +{
      +  "properties": {
      +    "ai": {
      +      "type": "integer"
      +    },
      +    "parser": {
      +      "type": "integer"
      +    },
      +    "total": {
      +      "type": "integer"
      +    },
      +    "unmatched": {
      +      "type": "integer"
      +    }
      +  },
      +  "required": [
      +    "total",
      +    "ai",
      +    "parser",
      +    "unmatched"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / ReadingNote
      Added value: +{
      +  "properties": {
      +    "code": {
      +      "type": "string"
      +    },
      +    "finding_ids": {
      +      "default": [],
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "kind": {
      +      "enum": [
      +        "warning",
      +        "assumption"
      +      ],
      +      "type": "string"
      +    },
      +    "message": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "kind",
      +    "code",
      +    "message"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / Review
      Added value: +{
      +  "properties": {
      +    "ai_read": {
      +      "default": 0,
      +      "type": "integer"
      +    },
      +    "note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "reading_id": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "status": {
      +      "default": "verified",
      +      "enum": [
      +        "draft",
      +        "verified"
      +      ],
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / properties / reading
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/Reading"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / properties / request_hash
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / properties / review
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/Review"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
  7. Changed22 schema fields changed
    • addedInput schema / properties / as_of
      Added value: +{
      +  "description": "Optional date (YYYY-MM-DD): show the law in force on that day, for a past move-out the day the tenancy ended. Omitted: the current law.",
      +  "format": "date",
      +  "type": "string"
      +}
    • addedInput schema / properties / expect_ruleset
      Added value: +{
      +  "description": "Optional. The ruleset version you built against, as results carry it in provenance.ruleset_version (e.g. 'sd-2026.11.14'), or its sha256: hash. If the rules have changed since, the call fails (nothing computed, nothing charged) and says what is in force now, so you upgrade on your own schedule. Leave it out to answer under the current rules.",
      +  "type": "string"
      +}
    • addedInput schema / properties / serve_pinned
      Added value: +{
      +  "default": false,
      +  "description": "Optional, with expect_ruleset. True asks us to answer under the ruleset version you named even when the rules have changed since, from that version's signed bundle; the result says so in served_from_bundle. We refuse a version older than 12 months, one a later correction or law change replaced for your state, or one we have no bundle for. Default false: the call fails whenever the rules have changed.",
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / Alternative / properties / listed_if
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / CleaningRule / properties / effective_on
      Removed value: -{
      -  "anyOf": [
      -    {
      -      "format": "date",
      -      "type": "string"
      -    },
      -    {
      -      "type": "null"
      -    }
      -  ],
      -  "default": null
      -}
    • addedOutput schema / $defs / DeductionRules / properties / cleaning / anyOf
      Added value: +[
      +  {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "amendment": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "from": {
      +          "anyOf": [
      +            {
      +              "format": "date",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "governed_by": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "note": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "source": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "until": {
      +          "anyOf": [
      +            {
      +              "format": "date",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "value": {
      +          "$ref": "#/$defs/CleaningRule"
      +        }
      +      },
      +      "required": [
      +        "value"
      +      ],
      +      "type": "object"
      +    },
      +    "type": "array"
      +  },
      +  {
      +    "$ref": "#/$defs/CleaningRule"
      +  },
      +  {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "basis": {
      +          "enum": [
      +            "named",
      +            "damage"
      +          ],
      +          "type": "string"
      +        },
      +        "condition": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "default": null
      +        },
      +        "effective_on": {
      +          "anyOf": [
      +            {
      +              "format": "date",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "default": null
      +        },
      +        "note": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "default": null
      +        },
      +        "quote": {
      +          "maxLength": 600,
      +          "type": "string"
      +        },
      +        "routine": {
      +          "default": "barred",
      +          "enum": [
      +            "barred",
      +            "lease",
      +            "reasonable"
      +          ],
      +          "type": "string"
      +        },
      +        "routine_signed_provision": {
      +          "default": false,
      +          "type": "boolean"
      +        },
      +        "section": {
      +          "type": "string"
      +        },
      +        "source": {
      +          "type": "string"
      +        },
      +        "unless_no_notice": {
      +          "default": false,
      +          "type": "boolean"
      +        },
      +        "verbatim": {
      +          "default": true,
      +          "type": "boolean"
      +        }
      +      },
      +      "required": [
      +        "basis",
      +        "section",
      +        "quote",
      +        "source"
      +      ],
      +      "type": "object"
      +    },
      +    "type": "array"
      +  }
      +]
    • removedOutput schema / $defs / DeductionRules / properties / cleaning / items
      Removed value: -{
      -  "$ref": "#/$defs/CleaningRule"
      -}
    • removedOutput schema / $defs / DeductionRules / properties / cleaning / type
      Removed value: -"array"
    • addedOutput schema / $defs / DescribeEach
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "quote": {
      +      "maxLength": 400,
      +      "type": "string"
      +    },
      +    "rent_only_exempt": {
      +      "default": false,
      +      "type": "boolean"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "section",
      +    "quote",
      +    "source"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / InterestRule / properties / rate_schedule / anyOf
      Added value: +[
      +  {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "amendment": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "from": {
      +          "anyOf": [
      +            {
      +              "format": "date",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "governed_by": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "note": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "source": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "until": {
      +          "anyOf": [
      +            {
      +              "format": "date",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "value": {
      +          "anyOf": [
      +            {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            {
      +              "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +              "type": "string"
      +            }
      +          ]
      +        }
      +      },
      +      "required": [
      +        "value"
      +      ],
      +      "type": "object"
      +    },
      +    "type": "array"
      +  },
      +  {
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  {
      +    "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +    "type": "string"
      +  },
      +  {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "from": {
      +          "format": "date",
      +          "type": "string"
      +        },
      +        "note": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "default": null
      +        },
      +        "rate_value": {
      +          "anyOf": [
      +            {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            {
      +              "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +              "type": "string"
      +            }
      +          ]
      +        },
      +        "source": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "default": null
      +        },
      +        "to": {
      +          "format": "date",
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "from",
      +        "to",
      +        "rate_value"
      +      ],
      +      "type": "object"
      +    },
      +    "type": "array"
      +  }
      +]
    • removedOutput schema / $defs / InterestRule / properties / rate_schedule / items
      Removed value: -{
      -  "$ref": "#/$defs/RateWindow"
      -}
    • removedOutput schema / $defs / InterestRule / properties / rate_schedule / type
      Removed value: -"array"
    • addedOutput schema / $defs / Itemization / properties / describe_each
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/DescribeEach"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / MoveOutList / properties / unnotified_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Provenance / properties / rules_as_of
      Added value: +{
      +  "anyOf": [
      +    {
      +      "format": "date",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / RateWindow
      Removed value: -{
      -  "additionalProperties": false,
      -  "properties": {
      -    "from": {
      -      "format": "date",
      -      "type": "string"
      -    },
      -    "note": {
      -      "anyOf": [
      -        {
      -          "type": "string"
      -        },
      -        {
      -          "type": "null"
      -        }
      -      ],
      -      "default": null
      -    },
      -    "rate_value": {
      -      "anyOf": [
      -        {
      -          "minimum": 0,
      -          "type": "number"
      -        },
      -        {
      -          "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      -          "type": "string"
      -        }
      -      ]
      -    },
      -    "source": {
      -      "anyOf": [
      -        {
      -          "type": "string"
      -        },
      -        {
      -          "type": "null"
      -        }
      -      ],
      -      "default": null
      -    },
      -    "to": {
      -      "format": "date",
      -      "type": "string"
      -    }
      -  },
      -  "required": [
      -    "from",
      -    "to",
      -    "rate_value"
      -  ],
      -  "type": "object"
      -}
    • addedOutput schema / $defs / Receipts / properties / estimate_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Receipts / properties / estimate_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / ResultSignature
      Added value: +{
      +  "properties": {
      +    "jws": {
      +      "type": "string"
      +    },
      +    "payload": {
      +      "$ref": "#/$defs/ResultSignaturePayload"
      +    },
      +    "verify_code": {
      +      "type": "string"
      +    },
      +    "verify_url": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "jws",
      +    "payload",
      +    "verify_code",
      +    "verify_url"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / ResultSignaturePayload
      Added value: +{
      +  "properties": {
      +    "capability": {
      +      "type": "string"
      +    },
      +    "engine_version": {
      +      "type": "string"
      +    },
      +    "issued_at": {
      +      "type": "string"
      +    },
      +    "kid": {
      +      "type": "string"
      +    },
      +    "operation": {
      +      "type": "string"
      +    },
      +    "result_hash": {
      +      "type": "string"
      +    },
      +    "ruleset_hash": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "ruleset_version": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "v": {
      +      "type": "integer"
      +    }
      +  },
      +  "required": [
      +    "v",
      +    "kid",
      +    "capability",
      +    "operation",
      +    "ruleset_version",
      +    "ruleset_hash",
      +    "engine_version",
      +    "result_hash",
      +    "issued_at"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / ReturnRule / properties / demand_in_writing
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / signature
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/ResultSignature"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
  8. Changed1 schema field changed
    • addedInput schema / properties / state / description
      Added value: +"US state, 2-letter code or name (e.g. 'TX')."
  9. Changed375 schema fields changed
    • removedInput schema / properties / audit / title
      Removed value: -"Audit"
    • removedInput schema / properties / city / anyOf
      Removed value: -[
      -  {
      -    "maxLength": 80,
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / city / default
      Removed value: -null
    • addedInput schema / properties / city / maxLength
      Added value: +80
    • removedInput schema / properties / city / title
      Removed value: -"City"
    • addedInput schema / properties / city / type
      Added value: +"string"
    • removedInput schema / properties / state / title
      Removed value: -"State"
    • removedInput schema / title
      Removed value: -"deposit_settlement_rulesArguments"
    • removedOutput schema / $defs / Alternative / description
      Removed value: -"A different deadline when a condition holds (e.g. 14 days when nothing is deducted).\n\n``condition`` is the statute's case in words. The engine evaluates it when ``requires``\nlists mapped conditions, when the condition itself is one (``no_deductions``), or when an\neffective-date window is the whole condition; any other alternative keeps the base rule and\nadds an assumption naming it. ``combine`` says how a matching alternative applies:\n``replace`` the base period (the first match wins), or take the ``later_date`` /\n``earlier_date`` of the base deadline and this one (Connecticut: 21 days after the end of\nthe tenancy or 15 days after the forwarding address, whichever is later)."
    • removedOutput schema / $defs / Alternative / properties / combine / title
      Removed value: -"Combine"
    • removedOutput schema / $defs / Alternative / properties / condition / title
      Removed value: -"Condition"
    • removedOutput schema / $defs / Alternative / properties / counting / title
      Removed value: -"Counting"
    • removedOutput schema / $defs / Alternative / properties / days / title
      Removed value: -"Days"
    • removedOutput schema / $defs / Alternative / properties / effective_before / title
      Removed value: -"Effective Before"
    • addedOutput schema / $defs / Alternative / properties / effective_by
      Added value: +{
      +  "default": "termination",
      +  "enum": [
      +    "termination",
      +    "conduct"
      +  ],
      +  "type": "string"
      +}
    • removedOutput schema / $defs / Alternative / properties / effective_on_or_after / title
      Removed value: -"Effective On Or After"
    • addedOutput schema / $defs / Alternative / properties / extends
      Added value: +{
      +  "default": "deadline",
      +  "enum": [
      +    "deadline",
      +    "itemization"
      +  ],
      +  "type": "string"
      +}
    • removedOutput schema / $defs / Alternative / properties / months / title
      Removed value: -"Months"
    • removedOutput schema / $defs / Alternative / properties / note / title
      Removed value: -"Note"
    • removedOutput schema / $defs / Alternative / properties / notice_within_days / title
      Removed value: -"Notice Within Days"
    • removedOutput schema / $defs / Alternative / properties / pending / title
      Removed value: -"Pending"
    • changedOutput schema / $defs / Alternative / properties / requires / items / enum
      Previous value: -[
      -  "no_deductions",
      -  "with_deductions",
      -  "damage_deductions",
      -  "no_damage_deductions",
      -  "lease_specifies_longer",
      -  "lease_specifies_shorter",
      -  "tenant_gave_notice",
      -  "contractor_needed",
      -  "damages_exceed_deposit"
      -]New value: +[
      +  "no_deductions",
      +  "with_deductions",
      +  "damage_deductions",
      +  "no_damage_deductions",
      +  "lease_specifies_longer",
      +  "lease_specifies_shorter",
      +  "tenant_gave_notice",
      +  "contractor_needed",
      +  "damages_exceed_deposit",
      +  "written_lease",
      +  "at_will",
      +  "abandoned",
      +  "charges_only",
      +  "relet_before_end"
      +]
    • removedOutput schema / $defs / Alternative / properties / requires / title
      Removed value: -"Requires"
    • removedOutput schema / $defs / Alternative / properties / start / title
      Removed value: -"Start"
    • removedOutput schema / $defs / Alternative / title
      Removed value: -"Alternative"
    • removedOutput schema / $defs / Change / properties / effective_on / title
      Removed value: -"Effective On"
    • removedOutput schema / $defs / Change / properties / source / title
      Removed value: -"Source"
    • removedOutput schema / $defs / Change / properties / text / title
      Removed value: -"Text"
    • removedOutput schema / $defs / Change / title
      Removed value: -"Change"
    • removedOutput schema / $defs / Citation / properties / accessed / title
      Removed value: -"Accessed"
    • removedOutput schema / $defs / Citation / properties / quote / description
      Removed value: -"Short quote of the rule (or our summary when verbatim is false)."
    • removedOutput schema / $defs / Citation / properties / quote / title
      Removed value: -"Quote"
    • removedOutput schema / $defs / Citation / properties / rule / description
      Removed value: -"What the citation supports: deadline, interest, penalty, ..."
    • removedOutput schema / $defs / Citation / properties / rule / title
      Removed value: -"Rule"
    • removedOutput schema / $defs / Citation / properties / section / title
      Removed value: -"Section"
    • removedOutput schema / $defs / Citation / properties / source_title / title
      Removed value: -"Source Title"
    • removedOutput schema / $defs / Citation / properties / url / title
      Removed value: -"Url"
    • removedOutput schema / $defs / Citation / properties / verbatim / title
      Removed value: -"Verbatim"
    • removedOutput schema / $defs / Citation / title
      Removed value: -"Citation"
    • removedOutput schema / $defs / CityRules / properties / applicability / title
      Removed value: -"Applicability"
    • removedOutput schema / $defs / CityRules / properties / depreciation_schedule / title
      Removed value: -"Depreciation Schedule"
    • removedOutput schema / $defs / CityRules / properties / forfeiture / title
      Removed value: -"Forfeiture"
    • removedOutput schema / $defs / CityRules / properties / id / title
      Removed value: -"Id"
    • removedOutput schema / $defs / CityRules / properties / name / title
      Removed value: -"Name"
    • removedOutput schema / $defs / CityRules / properties / notes / title
      Removed value: -"Notes"
    • removedOutput schema / $defs / CityRules / properties / state / title
      Removed value: -"State"
    • removedOutput schema / $defs / CityRules / title
      Removed value: -"CityRules"
    • addedOutput schema / $defs / CleaningRule
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "basis": {
      +      "enum": [
      +        "named",
      +        "damage"
      +      ],
      +      "type": "string"
      +    },
      +    "condition": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "effective_on": {
      +      "anyOf": [
      +        {
      +          "format": "date",
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "quote": {
      +      "maxLength": 600,
      +      "type": "string"
      +    },
      +    "routine": {
      +      "default": "barred",
      +      "enum": [
      +        "barred",
      +        "lease",
      +        "reasonable"
      +      ],
      +      "type": "string"
      +    },
      +    "routine_signed_provision": {
      +      "default": false,
      +      "type": "boolean"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    },
      +    "unless_no_notice": {
      +      "default": false,
      +      "type": "boolean"
      +    },
      +    "verbatim": {
      +      "default": true,
      +      "type": "boolean"
      +    }
      +  },
      +  "required": [
      +    "basis",
      +    "section",
      +    "quote",
      +    "source"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / ContractDamages
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "categories": {
      +      "items": {
      +        "enum": [
      +          "unpaid_rent",
      +          "unpaid_utilities",
      +          "cleaning",
      +          "carpet",
      +          "flooring",
      +          "paint",
      +          "blinds_window_coverings",
      +          "appliance",
      +          "fixture_or_hardware",
      +          "wall_or_door_repair",
      +          "key_or_lock",
      +          "late_fees",
      +          "lease_break_fee",
      +          "moving_and_storage",
      +          "reletting_costs",
      +          "trash_and_abandoned_items",
      +          "other_damage",
      +          "other"
      +        ],
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "quote": {
      +      "maxLength": 400,
      +      "type": "string"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "section",
      +    "quote",
      +    "source",
      +    "categories"
      +  ],
      +  "type": "object"
      +}
    • changedOutput schema / $defs / DeductionRules / properties / allowed / items / enum
      Previous value: -[
      -  "unpaid_rent",
      -  "unpaid_utilities",
      -  "late_fees",
      -  "lease_break_fee",
      -  "cleaning_to_move_in_condition",
      -  "damage_beyond_wear",
      -  "future_defaults_under_lease",
      -  "other_lease_obligations",
      -  "moving_and_storage",
      -  "real_estate_tax_increase"
      -]New value: +[
      +  "unpaid_rent",
      +  "unpaid_utilities",
      +  "late_fees",
      +  "lease_break_fee",
      +  "cleaning_to_move_in_condition",
      +  "damage_beyond_wear",
      +  "future_defaults_under_lease",
      +  "other_lease_obligations",
      +  "moving_and_storage",
      +  "real_estate_tax_increase",
      +  "removal_of_items_left"
      +]
    • removedOutput schema / $defs / DeductionRules / properties / allowed / title
      Removed value: -"Allowed"
    • removedOutput schema / $defs / DeductionRules / properties / allowed_detail / title
      Removed value: -"Allowed Detail"
    • addedOutput schema / $defs / DeductionRules / properties / cleaning
      Added value: +{
      +  "default": [],
      +  "items": {
      +    "$ref": "#/$defs/CleaningRule"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / $defs / DeductionRules / properties / contract_damages
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/ContractDamages"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • changedOutput schema / $defs / DeductionRules / properties / depreciation / default
      Previous value: -"none"New value: +"silent"
    • changedOutput schema / $defs / DeductionRules / properties / depreciation / enum
      Previous value: -[
      -  "required",
      -  "guidance",
      -  "none"
      -]New value: +[
      +  "required",
      +  "guidance",
      +  "silent"
      +]
    • removedOutput schema / $defs / DeductionRules / properties / depreciation / title
      Removed value: -"Depreciation"
    • removedOutput schema / $defs / DeductionRules / properties / depreciation_note / title
      Removed value: -"Depreciation Note"
    • changedOutput schema / $defs / DeductionRules / properties / depreciation_only / items / enum
      Previous value: -[
      -  "unpaid_rent",
      -  "unpaid_utilities",
      -  "cleaning",
      -  "carpet",
      -  "flooring",
      -  "paint",
      -  "blinds_window_coverings",
      -  "appliance",
      -  "fixture_or_hardware",
      -  "wall_or_door_repair",
      -  "key_or_lock",
      -  "late_fees",
      -  "lease_break_fee",
      -  "other_damage",
      -  "other"
      -]New value: +[
      +  "unpaid_rent",
      +  "unpaid_utilities",
      +  "cleaning",
      +  "carpet",
      +  "flooring",
      +  "paint",
      +  "blinds_window_coverings",
      +  "appliance",
      +  "fixture_or_hardware",
      +  "wall_or_door_repair",
      +  "key_or_lock",
      +  "late_fees",
      +  "lease_break_fee",
      +  "moving_and_storage",
      +  "reletting_costs",
      +  "trash_and_abandoned_items",
      +  "other_damage",
      +  "other"
      +]
    • removedOutput schema / $defs / DeductionRules / properties / depreciation_only / title
      Removed value: -"Depreciation Only"
    • removedOutput schema / $defs / DeductionRules / properties / excluded / title
      Removed value: -"Excluded"
    • addedOutput schema / $defs / DeductionRules / properties / mitigation_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DeductionRules / properties / nonstandard_only
      Added value: +{
      +  "default": [],
      +  "items": {
      +    "enum": [
      +      "unpaid_rent",
      +      "unpaid_utilities",
      +      "cleaning",
      +      "carpet",
      +      "flooring",
      +      "paint",
      +      "blinds_window_coverings",
      +      "appliance",
      +      "fixture_or_hardware",
      +      "wall_or_door_repair",
      +      "key_or_lock",
      +      "late_fees",
      +      "lease_break_fee",
      +      "moving_and_storage",
      +      "reletting_costs",
      +      "trash_and_abandoned_items",
      +      "other_damage",
      +      "other"
      +    ],
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / $defs / DeductionRules / properties / nonstandard_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / DeductionRules / properties / normal_wear_excluded / title
      Removed value: -"Normal Wear Excluded"
    • addedOutput schema / $defs / DeductionRules / properties / not_allowed_warning
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / DeductionRules / properties / note / title
      Removed value: -"Note"
    • removedOutput schema / $defs / DeductionRules / title
      Removed value: -"DeductionRules"
    • addedOutput schema / $defs / DepositCap / properties / before_furnished_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / before_months_rent
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / counts_prepaid_rent
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / DepositCap / properties / effective_by
      Added value: +{
      +  "default": "collected",
      +  "enum": [
      +    "collected",
      +    "lease_signed"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / $defs / DepositCap / properties / effective_on
      Added value: +{
      +  "anyOf": [
      +    {
      +      "format": "date",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / excess_remedy
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/ExcessRemedy"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / excludes_pet_deposit
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / DepositCap / properties / furnished_exempt
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / DepositCap / properties / furnished_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / later_after_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / later_months_rent
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / max_rent_usd
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / max_term_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / min_term_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / DepositCap / properties / minimum_usd / title
      Removed value: -"Minimum Usd"
    • removedOutput schema / $defs / DepositCap / properties / months_rent / title
      Removed value: -"Months Rent"
    • removedOutput schema / $defs / DepositCap / properties / note / title
      Removed value: -"Note"
    • addedOutput schema / $defs / DepositCap / properties / pet_allowance_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / prepaid_cap_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / DepositCap / properties / source / title
      Removed value: -"Source"
    • addedOutput schema / $defs / DepositCap / properties / variant_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / variant_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / DepositCap / properties / variant_when
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "small_landlord",
      +        "tenant_age_62_plus",
      +        "month_to_month"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / DepositCap / properties / variants / title
      Removed value: -"Variants"
    • removedOutput schema / $defs / DepositCap / title
      Removed value: -"DepositCap"
    • addedOutput schema / $defs / ExcessRemedy
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "multiple": {
      +      "anyOf": [
      +        {
      +          "exclusiveMinimum": 0,
      +          "type": "number"
      +        },
      +        {
      +          "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +          "type": "string"
      +        }
      +      ]
      +    },
      +    "quote": {
      +      "maxLength": 400,
      +      "type": "string"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "multiple",
      +    "section",
      +    "quote",
      +    "source"
      +  ],
      +  "type": "object"
      +}
    • removedOutput schema / $defs / Exclusion / description
      Removed value: -"A category the statute keeps out of the deposit (Delaware: damage correctable by painting\nand ordinary cleaning): 'no', cited."
    • changedOutput schema / $defs / Exclusion / properties / category / enum
      Previous value: -[
      -  "unpaid_rent",
      -  "unpaid_utilities",
      -  "cleaning",
      -  "carpet",
      -  "flooring",
      -  "paint",
      -  "blinds_window_coverings",
      -  "appliance",
      -  "fixture_or_hardware",
      -  "wall_or_door_repair",
      -  "key_or_lock",
      -  "late_fees",
      -  "lease_break_fee",
      -  "other_damage",
      -  "other"
      -]New value: +[
      +  "unpaid_rent",
      +  "unpaid_utilities",
      +  "cleaning",
      +  "carpet",
      +  "flooring",
      +  "paint",
      +  "blinds_window_coverings",
      +  "appliance",
      +  "fixture_or_hardware",
      +  "wall_or_door_repair",
      +  "key_or_lock",
      +  "late_fees",
      +  "lease_break_fee",
      +  "moving_and_storage",
      +  "reletting_costs",
      +  "trash_and_abandoned_items",
      +  "other_damage",
      +  "other"
      +]
    • removedOutput schema / $defs / Exclusion / properties / category / title
      Removed value: -"Category"
    • removedOutput schema / $defs / Exclusion / properties / note / title
      Removed value: -"Note"
    • removedOutput schema / $defs / Exclusion / properties / quote / title
      Removed value: -"Quote"
    • removedOutput schema / $defs / Exclusion / properties / section / title
      Removed value: -"Section"
    • removedOutput schema / $defs / Exclusion / properties / source / title
      Removed value: -"Source"
    • removedOutput schema / $defs / Exclusion / title
      Removed value: -"Exclusion"
    • addedOutput schema / $defs / Fallback
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "days": {
      +      "exclusiveMinimum": 0,
      +      "type": "integer"
      +    },
      +    "note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "start": {
      +      "default": "vacate",
      +      "enum": [
      +        "vacate",
      +        "termination",
      +        "later_of_vacate_and_termination",
      +        "forwarding_address",
      +        "demand",
      +        "later_of_termination_and_address",
      +        "latest_of_termination_possession_and_address",
      +        "earlier_of_termination_and_surrender",
      +        "surrender_or_termination_first",
      +        "new_tenant_occupancy",
      +        "termination_possession_and_demand",
      +        "claim_notice"
      +      ],
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "days",
      +    "section"
      +  ],
      +  "type": "object"
      +}
    • removedOutput schema / $defs / Forfeiture / description
      Removed value: -"A statute's consequence for a missed duty: the landlord loses the right to keep some or\nall of the deposit. Computed, not relayed: when the trigger is met as of ``as_of`` (the date\npassed and the statement or refund was not sent in time, or a statement sent now would be\nlate), the barred lines become ``allowed: no`` (``depends`` when ``gate`` needs a finding or\nthe category is ``contested``) and the totals are recomputed. Before then the lines stand and\na warning names the date. ``not_in_input`` rows turn on facts the request cannot state and\nare relayed as unknowns whenever something is deducted."
    • removedOutput schema / $defs / Forfeiture / properties / address_relief_days / title
      Removed value: -"Address Relief Days"
    • removedOutput schema / $defs / Forfeiture / properties / bars / title
      Removed value: -"Bars"
    • removedOutput schema / $defs / Forfeiture / properties / condition / title
      Removed value: -"Condition"
    • changedOutput schema / $defs / Forfeiture / properties / contested / items / enum
      Previous value: -[
      -  "unpaid_rent",
      -  "unpaid_utilities",
      -  "cleaning",
      -  "carpet",
      -  "flooring",
      -  "paint",
      -  "blinds_window_coverings",
      -  "appliance",
      -  "fixture_or_hardware",
      -  "wall_or_door_repair",
      -  "key_or_lock",
      -  "late_fees",
      -  "lease_break_fee",
      -  "other_damage",
      -  "other"
      -]New value: +[
      +  "unpaid_rent",
      +  "unpaid_utilities",
      +  "cleaning",
      +  "carpet",
      +  "flooring",
      +  "paint",
      +  "blinds_window_coverings",
      +  "appliance",
      +  "fixture_or_hardware",
      +  "wall_or_door_repair",
      +  "key_or_lock",
      +  "late_fees",
      +  "lease_break_fee",
      +  "moving_and_storage",
      +  "reletting_costs",
      +  "trash_and_abandoned_items",
      +  "other_damage",
      +  "other"
      +]
    • removedOutput schema / $defs / Forfeiture / properties / contested / title
      Removed value: -"Contested"
    • removedOutput schema / $defs / Forfeiture / properties / effective_on / title
      Removed value: -"Effective On"
    • changedOutput schema / $defs / Forfeiture / properties / exempt / items / enum
      Previous value: -[
      -  "unpaid_rent",
      -  "unpaid_utilities",
      -  "cleaning",
      -  "carpet",
      -  "flooring",
      -  "paint",
      -  "blinds_window_coverings",
      -  "appliance",
      -  "fixture_or_hardware",
      -  "wall_or_door_repair",
      -  "key_or_lock",
      -  "late_fees",
      -  "lease_break_fee",
      -  "other_damage",
      -  "other"
      -]New value: +[
      +  "unpaid_rent",
      +  "unpaid_utilities",
      +  "cleaning",
      +  "carpet",
      +  "flooring",
      +  "paint",
      +  "blinds_window_coverings",
      +  "appliance",
      +  "fixture_or_hardware",
      +  "wall_or_door_repair",
      +  "key_or_lock",
      +  "late_fees",
      +  "lease_break_fee",
      +  "moving_and_storage",
      +  "reletting_costs",
      +  "trash_and_abandoned_items",
      +  "other_damage",
      +  "other"
      +]
    • removedOutput schema / $defs / Forfeiture / properties / exempt / title
      Removed value: -"Exempt"
    • removedOutput schema / $defs / Forfeiture / properties / gate / title
      Removed value: -"Gate"
    • removedOutput schema / $defs / Forfeiture / properties / keeps_claim / title
      Removed value: -"Keeps Claim"
    • addedOutput schema / $defs / Forfeiture / properties / not_if_abandoned
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / Forfeiture / properties / note / title
      Removed value: -"Note"
    • removedOutput schema / $defs / Forfeiture / properties / quote / title
      Removed value: -"Quote"
    • removedOutput schema / $defs / Forfeiture / properties / section / title
      Removed value: -"Section"
    • addedOutput schema / $defs / Forfeiture / properties / short_interest_contested
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / Forfeiture / properties / source / title
      Removed value: -"Source"
    • removedOutput schema / $defs / Forfeiture / properties / tenant_notice_relief / title
      Removed value: -"Tenant Notice Relief"
    • removedOutput schema / $defs / Forfeiture / properties / trigger / title
      Removed value: -"Trigger"
    • removedOutput schema / $defs / Forfeiture / properties / verbatim / title
      Removed value: -"Verbatim"
    • removedOutput schema / $defs / Forfeiture / title
      Removed value: -"Forfeiture"
    • removedOutput schema / $defs / Guide / description
      Removed value: -"An official plain-language resource for the state or city (an agency guide)."
    • removedOutput schema / $defs / Guide / properties / accessed / title
      Removed value: -"Accessed"
    • removedOutput schema / $defs / Guide / properties / publisher / title
      Removed value: -"Publisher"
    • removedOutput schema / $defs / Guide / properties / title / title
      Removed value: -"Title"
    • removedOutput schema / $defs / Guide / properties / url / title
      Removed value: -"Url"
    • removedOutput schema / $defs / Guide / title
      Removed value: -"Guide"
    • addedOutput schema / $defs / InterestRule / properties / accrual_floor
      Added value: +{
      +  "anyOf": [
      +    {
      +      "format": "date",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / InterestRule / properties / accrual_floor_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / InterestRule / properties / accrues_after_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / InterestRule / properties / bank_rate_lesser
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / InterestRule / properties / base / title
      Removed value: -"Base"
    • addedOutput schema / $defs / InterestRule / properties / compound
      Added value: +{
      +  "default": "none",
      +  "enum": [
      +    "none",
      +    "annual"
      +  ],
      +  "type": "string"
      +}
    • removedOutput schema / $defs / InterestRule / properties / condition / title
      Removed value: -"Condition"
    • addedOutput schema / $defs / InterestRule / properties / count_last_day
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / InterestRule / properties / due_days
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / InterestRule / properties / due_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / InterestRule / properties / due_start
      Added value: +{
      +  "default": "vacate",
      +  "enum": [
      +    "vacate",
      +    "termination",
      +    "later_of_vacate_and_termination",
      +    "forwarding_address",
      +    "demand",
      +    "later_of_termination_and_address",
      +    "latest_of_termination_possession_and_address",
      +    "earlier_of_termination_and_surrender",
      +    "surrender_or_termination_first",
      +    "new_tenant_occupancy",
      +    "termination_possession_and_demand",
      +    "claim_notice"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / $defs / InterestRule / properties / fee_percent
      Added value: +{
      +  "anyOf": [
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / InterestRule / properties / formula / title
      Removed value: -"Formula"
    • removedOutput schema / $defs / InterestRule / properties / held_until / title
      Removed value: -"Held Until"
    • addedOutput schema / $defs / InterestRule / properties / includes_prepaid_rent
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / InterestRule / properties / legacy_before
      Added value: +{
      +  "anyOf": [
      +    {
      +      "format": "date",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / InterestRule / properties / legacy_interval_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / InterestRule / properties / legacy_rate
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • changedOutput schema / $defs / InterestRule / properties / method / enum
      Previous value: -[
      -  "simple",
      -  "per_window",
      -  "anniversary_years",
      -  "monthly"
      -]New value: +[
      +  "simple",
      +  "monthly_by_year",
      +  "months_to_compliance",
      +  "lease_years",
      +  "per_window",
      +  "anniversary_years",
      +  "monthly"
      +]
    • removedOutput schema / $defs / InterestRule / properties / method / title
      Removed value: -"Method"
    • addedOutput schema / $defs / InterestRule / properties / min_deposit_months_rent
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / InterestRule / properties / min_deposit_usd / title
      Removed value: -"Min Deposit Usd"
    • addedOutput schema / $defs / InterestRule / properties / min_lease_term_months
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / InterestRule / properties / min_tenancy_days / title
      Removed value: -"Min Tenancy Days"
    • removedOutput schema / $defs / InterestRule / properties / min_tenancy_months / title
      Removed value: -"Min Tenancy Months"
    • removedOutput schema / $defs / InterestRule / properties / min_tenancy_strict / title
      Removed value: -"Min Tenancy Strict"
    • removedOutput schema / $defs / InterestRule / properties / min_units / title
      Removed value: -"Min Units"
    • addedOutput schema / $defs / InterestRule / properties / minimum_usd
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / InterestRule / properties / note / title
      Removed value: -"Note"
    • addedOutput schema / $defs / InterestRule / properties / ordinance_coverage
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / InterestRule / properties / payable / title
      Removed value: -"Payable"
    • removedOutput schema / $defs / InterestRule / properties / rate / title
      Removed value: -"Rate"
    • addedOutput schema / $defs / InterestRule / properties / rate_published_by
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / InterestRule / properties / rate_schedule / title
      Removed value: -"Rate Schedule"
    • removedOutput schema / $defs / InterestRule / properties / rate_value / title
      Removed value: -"Rate Value"
    • removedOutput schema / $defs / InterestRule / properties / rate_year / title
      Removed value: -"Rate Year"
    • removedOutput schema / $defs / InterestRule / properties / required / title
      Removed value: -"Required"
    • addedOutput schema / $defs / InterestRule / properties / year_starts
      Added value: +{
      +  "anyOf": [
      +    {
      +      "pattern": "^\\d{2}-\\d{2}$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / InterestRule / title
      Removed value: -"InterestRule"
    • addedOutput schema / $defs / Itemization / properties / after_refund
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / Itemization / properties / days / title
      Removed value: -"Days"
    • removedOutput schema / $defs / Itemization / properties / effective_on / title
      Removed value: -"Effective On"
    • removedOutput schema / $defs / Itemization / properties / months / title
      Removed value: -"Months"
    • addedOutput schema / $defs / Itemization / properties / move_in_statement
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/MoveInStatement"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / Itemization / properties / move_out_list
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/MoveOutList"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / Itemization / properties / note / title
      Removed value: -"Note"
    • addedOutput schema / $defs / Itemization / properties / on_full_refund
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / Itemization / properties / refund_with_list
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / Itemization / properties / required / title
      Removed value: -"Required"
    • removedOutput schema / $defs / Itemization / properties / start / title
      Removed value: -"Start"
    • removedOutput schema / $defs / Itemization / properties / with_refund / title
      Removed value: -"With Refund"
    • removedOutput schema / $defs / Itemization / title
      Removed value: -"Itemization"
    • removedOutput schema / $defs / JurisdictionRef / properties / city / description
      Removed value: -"The city you sent, as given."
    • removedOutput schema / $defs / JurisdictionRef / properties / city / title
      Removed value: -"City"
    • removedOutput schema / $defs / JurisdictionRef / properties / city_overlay / description
      Removed value: -"The covered city whose rules were layered on, if any."
    • removedOutput schema / $defs / JurisdictionRef / properties / city_overlay / title
      Removed value: -"City Overlay"
    • addedOutput schema / $defs / JurisdictionRef / properties / city_rules_checked
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "boolean"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / JurisdictionRef / properties / covered / title
      Removed value: -"Covered"
    • removedOutput schema / $defs / JurisdictionRef / properties / state / title
      Removed value: -"State"
    • removedOutput schema / $defs / JurisdictionRef / properties / state_name / title
      Removed value: -"State Name"
    • removedOutput schema / $defs / JurisdictionRef / properties / verified / description
      Removed value: -"True when the main rule text was read verbatim at the official source."
    • removedOutput schema / $defs / JurisdictionRef / properties / verified / title
      Removed value: -"Verified"
    • removedOutput schema / $defs / JurisdictionRef / title
      Removed value: -"JurisdictionRef"
    • removedOutput schema / $defs / LateFeeRule / description
      Removed value: -"The most a late fee may be, per late payment (or per month), computed from the monthly\nrent: ``flat_usd`` and ``percent`` (of the rent, or of the rent above ``over_usd``) combined\nas the greater, the lesser or the sum; ``rent_tiers`` / ``unit_tiers`` pick the figure by\nrent or building size. ``presumption``: the figure is only a safe harbor (Texas), so a larger\nfee is 'depends'. ``conditional``: no figure can be checked (Massachusetts: nothing until 30\ndays late; Oregon's reasonable flat fee; Wisconsin's nonstandard provision): 'depends' with\nthe text. The engine allows up to the cap for one late payment unless the line says how many\n(``late_payments``); more than one cap without a count is 'depends'."
    • removedOutput schema / $defs / LateFeeRule / properties / combine / title
      Removed value: -"Combine"
    • removedOutput schema / $defs / LateFeeRule / properties / conditional / title
      Removed value: -"Conditional"
    • addedOutput schema / $defs / LateFeeRule / properties / deposit_use
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / LateFeeRule / properties / flat_usd / title
      Removed value: -"Flat Usd"
    • removedOutput schema / $defs / LateFeeRule / properties / note / title
      Removed value: -"Note"
    • removedOutput schema / $defs / LateFeeRule / properties / over_usd / title
      Removed value: -"Over Usd"
    • removedOutput schema / $defs / LateFeeRule / properties / per / title
      Removed value: -"Per"
    • removedOutput schema / $defs / LateFeeRule / properties / percent / title
      Removed value: -"Percent"
    • removedOutput schema / $defs / LateFeeRule / properties / presumption / title
      Removed value: -"Presumption"
    • removedOutput schema / $defs / LateFeeRule / properties / quote / title
      Removed value: -"Quote"
    • removedOutput schema / $defs / LateFeeRule / properties / rent_tiers / title
      Removed value: -"Rent Tiers"
    • removedOutput schema / $defs / LateFeeRule / properties / section / title
      Removed value: -"Section"
    • removedOutput schema / $defs / LateFeeRule / properties / source / title
      Removed value: -"Source"
    • removedOutput schema / $defs / LateFeeRule / properties / unit_tiers / title
      Removed value: -"Unit Tiers"
    • removedOutput schema / $defs / LateFeeRule / properties / verbatim / title
      Removed value: -"Verbatim"
    • removedOutput schema / $defs / LateFeeRule / title
      Removed value: -"LateFeeRule"
    • removedOutput schema / $defs / LeaseBreakRule / description
      Removed value: -"What the statute lets a landlord keep for a tenancy ended early. ``actual_rent``: only\nthe rent actually lost (after mitigation), not a flat fee (Michigan, Indiana, North Carolina);\n``cap_months_rent``: a fee up to ``months_rent`` x rent when the agreement provides it (Oregon\n1.5, Florida 2 with a signed addendum); ``nonstandard_provision``: only under a signed\nnonstandard provision (Wisconsin). Every case is 'depends' (facts the request cannot state);\nthe cap limits the amount."
    • addedOutput schema / $defs / LeaseBreakRule / properties / excludes_later_rent
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • addedOutput schema / $defs / LeaseBreakRule / properties / exclusion_quote
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 400,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LeaseBreakRule / properties / exclusion_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / LeaseBreakRule / properties / keeps_retake_month_rent
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / LeaseBreakRule / properties / months_rent / title
      Removed value: -"Months Rent"
    • removedOutput schema / $defs / LeaseBreakRule / properties / note / title
      Removed value: -"Note"
    • removedOutput schema / $defs / LeaseBreakRule / properties / quote / title
      Removed value: -"Quote"
    • removedOutput schema / $defs / LeaseBreakRule / properties / rule / title
      Removed value: -"Rule"
    • removedOutput schema / $defs / LeaseBreakRule / properties / section / title
      Removed value: -"Section"
    • removedOutput schema / $defs / LeaseBreakRule / properties / source / title
      Removed value: -"Source"
    • removedOutput schema / $defs / LeaseBreakRule / properties / verbatim / title
      Removed value: -"Verbatim"
    • removedOutput schema / $defs / LeaseBreakRule / title
      Removed value: -"LeaseBreakRule"
    • removedOutput schema / $defs / Links / description
      Removed value: -"Where the user gets files. MCP results only; the estimate itself is not stored."
    • removedOutput schema / $defs / Links / properties / downloads / description
      Removed value: -"Format -> URL. POST the property_turnover_scope arguments as JSON."
    • removedOutput schema / $defs / Links / properties / downloads / title
      Removed value: -"Downloads"
    • removedOutput schema / $defs / Links / properties / how_to_get_files / title
      Removed value: -"How To Get Files"
    • removedOutput schema / $defs / Links / properties / web_tool / description
      Removed value: -"The free web tool."
    • removedOutput schema / $defs / Links / properties / web_tool / title
      Removed value: -"Web Tool"
    • removedOutput schema / $defs / Links / properties / web_tool_prefilled / description
      Removed value: -"Opens the web tool with these inputs filled in and estimates them; the user can download the Excel workbook and owner estimate there. Give this link to the user."
    • removedOutput schema / $defs / Links / properties / web_tool_prefilled / title
      Removed value: -"Web Tool Prefilled"
    • removedOutput schema / $defs / Links / title
      Removed value: -"Links"
    • removedOutput schema / $defs / MoveInPhotos / description
      Removed value: -"Photos at the start of the tenancy, for tenancies beginning on or after ``tenancy_from``\n(California 1950.5(g)(1): 2025-07-01). Checked against ``documentation.photos_move_in``."
    • changedOutput schema / $defs / MoveInPhotos / properties / missing / enum
      Previous value: -[
      -  "warn",
      -  "depends"
      -]New value: +[
      +  "warn",
      +  "depends",
      +  "bars"
      +]
    • removedOutput schema / $defs / MoveInPhotos / properties / missing / title
      Removed value: -"Missing"
    • removedOutput schema / $defs / MoveInPhotos / properties / quote / title
      Removed value: -"Quote"
    • removedOutput schema / $defs / MoveInPhotos / properties / section / title
      Removed value: -"Section"
    • removedOutput schema / $defs / MoveInPhotos / properties / source / title
      Removed value: -"Source"
    • removedOutput schema / $defs / MoveInPhotos / properties / tenancy_from / title
      Removed value: -"Tenancy From"
    • removedOutput schema / $defs / MoveInPhotos / title
      Removed value: -"MoveInPhotos"
    • addedOutput schema / $defs / MoveInStatement
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "missing": {
      +      "default": "depends",
      +      "enum": [
      +        "depends",
      +        "bars",
      +        "warn"
      +      ],
      +      "type": "string"
      +    },
      +    "note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "quote": {
      +      "maxLength": 400,
      +      "type": "string"
      +    },
      +    "rent_exempt": {
      +      "default": false,
      +      "type": "boolean"
      +    },
      +    "scope": {
      +      "default": "lines",
      +      "enum": [
      +        "lines",
      +        "all"
      +      ],
      +      "type": "string"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "section",
      +    "quote",
      +    "source"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / MoveOutList
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "business_days": {
      +      "exclusiveMinimum": 0,
      +      "type": "integer"
      +    },
      +    "note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "quote": {
      +      "maxLength": 400,
      +      "type": "string"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "business_days",
      +    "section",
      +    "quote",
      +    "source"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / NotIfAbandoned
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "quote": {
      +      "maxLength": 400,
      +      "type": "string"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "section",
      +    "quote",
      +    "source"
      +  ],
      +  "type": "object"
      +}
    • removedOutput schema / $defs / Note / properties / code / title
      Removed value: -"Code"
    • removedOutput schema / $defs / Note / properties / text / title
      Removed value: -"Text"
    • removedOutput schema / $defs / Note / title
      Removed value: -"Note"
    • addedOutput schema / $defs / PaymentMethod
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "days": {
      +      "anyOf": [
      +        {
      +          "exclusiveMinimum": 0,
      +          "type": "integer"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "effective_on": {
      +      "format": "date",
      +      "type": "string"
      +    },
      +    "kind": {
      +      "enum": [
      +        "electronic_after_notice",
      +        "electronic_if_paid_electronically"
      +      ],
      +      "type": "string"
      +    },
      +    "note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "section": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "kind",
      +    "effective_on",
      +    "section"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / $defs / PenaltyRule / properties / base
      Added value: +{
      +  "default": "withheld",
      +  "enum": [
      +    "withheld",
      +    "wrongfully_withheld",
      +    "entitled_balance",
      +    "exceeds_damages"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / $defs / PenaltyRule / properties / base_high
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "deposit",
      +        "withheld"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / PenaltyRule / properties / base_if_no_statement
      Added value: +{
      +  "anyOf": [
      +    {
      +      "const": "deposit_less_claims",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / PenaltyRule / properties / basis / title
      Removed value: -"Basis"
    • changedOutput schema / $defs / PenaltyRule / properties / condition / enum
      Previous value: -[
      -  "bad_faith",
      -  "willful",
      -  "any_late",
      -  "late",
      -  "any_violation",
      -  "without_reasonable_basis",
      -  "court_discretion"
      -]New value: +[
      +  "bad_faith",
      +  "willful",
      +  "any_late",
      +  "late",
      +  "any_violation",
      +  "without_reasonable_basis",
      +  "court_discretion",
      +  "unpaid_annual_interest"
      +]
    • removedOutput schema / $defs / PenaltyRule / properties / condition / title
      Removed value: -"Condition"
    • addedOutput schema / $defs / PenaltyRule / properties / credited_against_rent
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "rent_due",
      +        "rent_beyond_deposit"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / PenaltyRule / properties / discretionary / title
      Removed value: -"Discretionary"
    • removedOutput schema / $defs / PenaltyRule / properties / fixed_usd / title
      Removed value: -"Fixed Usd"
    • removedOutput schema / $defs / PenaltyRule / properties / forfeits_right_to_withhold_if_late / title
      Removed value: -"Forfeits Right To Withhold If Late"
    • addedOutput schema / $defs / PenaltyRule / properties / interest_in_base
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / PenaltyRule / properties / kind / title
      Removed value: -"Kind"
    • addedOutput schema / $defs / PenaltyRule / properties / late_refund_in_base
      Added value: +{
      +  "default": true,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / PenaltyRule / properties / max_months_rent / title
      Removed value: -"Max Months Rent"
    • removedOutput schema / $defs / PenaltyRule / properties / minimum_usd / title
      Removed value: -"Minimum Usd"
    • removedOutput schema / $defs / PenaltyRule / properties / multiple / title
      Removed value: -"Multiple"
    • addedOutput schema / $defs / PenaltyRule / properties / multiple_if_statement_late
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / PenaltyRule / properties / multiple_is_additional / title
      Removed value: -"Multiple Is Additional"
    • addedOutput schema / $defs / PenaltyRule / properties / no_statement_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / PenaltyRule / properties / not_if_abandoned
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / PenaltyRule / properties / note / title
      Removed value: -"Note"
    • removedOutput schema / $defs / PenaltyRule / properties / per_violation / title
      Removed value: -"Per Violation"
    • removedOutput schema / $defs / PenaltyRule / properties / plus_attorney_fees / title
      Removed value: -"Plus Attorney Fees"
    • addedOutput schema / $defs / PenaltyRule / properties / safe_harbor
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/SafeHarbor"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / PenaltyRule / title
      Removed value: -"PenaltyRule"
    • removedOutput schema / $defs / Photos / properties / effective_on / title
      Removed value: -"Effective On"
    • addedOutput schema / $defs / Photos / properties / gate_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / Photos / properties / kinds / title
      Removed value: -"Kinds"
    • changedOutput schema / $defs / Photos / properties / missing / enum
      Previous value: -[
      -  "warn",
      -  "depends"
      -]New value: +[
      +  "warn",
      +  "depends",
      +  "bars"
      +]
    • removedOutput schema / $defs / Photos / properties / missing / title
      Removed value: -"Missing"
    • removedOutput schema / $defs / Photos / properties / note / title
      Removed value: -"Note"
    • removedOutput schema / $defs / Photos / properties / required / title
      Removed value: -"Required"
    • addedOutput schema / $defs / Photos / properties / scope
      Added value: +{
      +  "default": "lines",
      +  "enum": [
      +    "lines",
      +    "all"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / $defs / Photos / properties / threshold_usd
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "number"
      +    },
      +    {
      +      "pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / Photos / title
      Removed value: -"Photos"
    • removedOutput schema / $defs / Provenance / properties / rule_ids / title
      Removed value: -"Rule Ids"
    • removedOutput schema / $defs / Provenance / properties / ruleset_hash / title
      Removed value: -"Ruleset Hash"
    • removedOutput schema / $defs / Provenance / properties / ruleset_id / title
      Removed value: -"Ruleset Id"
    • removedOutput schema / $defs / Provenance / properties / ruleset_version / title
      Removed value: -"Ruleset Version"
    • removedOutput schema / $defs / Provenance / properties / sources / title
      Removed value: -"Sources"
    • removedOutput schema / $defs / Provenance / title
      Removed value: -"Provenance"
    • removedOutput schema / $defs / RateWindow / description
      Removed value: -"A published rate for a period (San Francisco's March-February year, a Berkeley move-out\nmonth, a Connecticut calendar year)."
    • removedOutput schema / $defs / RateWindow / properties / from / title
      Removed value: -"From"
    • removedOutput schema / $defs / RateWindow / properties / note / title
      Removed value: -"Note"
    • removedOutput schema / $defs / RateWindow / properties / rate_value / title
      Removed value: -"Rate Value"
    • removedOutput schema / $defs / RateWindow / properties / source / title
      Removed value: -"Source"
    • removedOutput schema / $defs / RateWindow / properties / to / title
      Removed value: -"To"
    • removedOutput schema / $defs / RateWindow / title
      Removed value: -"RateWindow"
    • addedOutput schema / $defs / Receipts / properties / gate_note
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • changedOutput schema / $defs / Receipts / properties / missing / enum
      Previous value: -[
      -  "warn",
      -  "depends"
      -]New value: +[
      +  "warn",
      +  "depends",
      +  "bars"
      +]
    • removedOutput schema / $defs / Receipts / properties / missing / title
      Removed value: -"Missing"
    • removedOutput schema / $defs / Receipts / properties / note / title
      Removed value: -"Note"
    • removedOutput schema / $defs / Receipts / properties / required / title
      Removed value: -"Required"
    • addedOutput schema / $defs / Receipts / properties / scope
      Added value: +{
      +  "default": "lines",
      +  "enum": [
      +    "lines",
      +    "all"
      +  ],
      +  "type": "string"
      +}
    • removedOutput schema / $defs / Receipts / properties / threshold_usd / title
      Removed value: -"Threshold Usd"
    • removedOutput schema / $defs / Receipts / title
      Removed value: -"Receipts"
    • removedOutput schema / $defs / RentTier / description
      Removed value: -"A flat late-fee limit for rents up to ``max_rent_usd`` (Iowa: $60 a month up to $700)."
    • removedOutput schema / $defs / RentTier / properties / flat_usd / title
      Removed value: -"Flat Usd"
    • removedOutput schema / $defs / RentTier / properties / max_rent_usd / title
      Removed value: -"Max Rent Usd"
    • removedOutput schema / $defs / RentTier / title
      Removed value: -"RentTier"
    • removedOutput schema / $defs / ReturnRule / properties / alternatives / title
      Removed value: -"Alternatives"
    • removedOutput schema / $defs / ReturnRule / properties / counting / title
      Removed value: -"Counting"
    • removedOutput schema / $defs / ReturnRule / properties / days / title
      Removed value: -"Days"
    • addedOutput schema / $defs / ReturnRule / properties / determination_days
      Added value: +{
      +  "anyOf": [
      +    {
      +      "exclusiveMinimum": 0,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / ReturnRule / properties / determination_section
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / ReturnRule / properties / fallback
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/Fallback"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / ReturnRule / properties / gate / title
      Removed value: -"Gate"
    • removedOutput schema / $defs / ReturnRule / properties / gate_restarts / title
      Removed value: -"Gate Restarts"
    • removedOutput schema / $defs / ReturnRule / properties / holidays / title
      Removed value: -"Holidays"
    • removedOutput schema / $defs / ReturnRule / properties / months / title
      Removed value: -"Months"
    • addedOutput schema / $defs / ReturnRule / properties / not_if_abandoned
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/NotIfAbandoned"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • addedOutput schema / $defs / ReturnRule / properties / payment_method
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/$defs/PaymentMethod"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
    • removedOutput schema / $defs / ReturnRule / properties / rollover / title
      Removed value: -"Rollover"
    • addedOutput schema / $defs / ReturnRule / properties / rollover_days
      Added value: +{
      +  "default": [
      +    "saturday",
      +    "sunday",
      +    "holiday"
      +  ],
      +  "items": {
      +    "enum": [
      +      "saturday",
      +      "sunday",
      +      "holiday"
      +    ],
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • removedOutput schema / $defs / ReturnRule / properties / rollover_source / title
      Removed value: -"Rollover Source"
    • addedOutput schema / $defs / ReturnRule / properties / rollover_unsettled
      Added value: +{
      +  "default": false,
      +  "type": "boolean"
      +}
    • removedOutput schema / $defs / ReturnRule / properties / start / title
      Removed value: -"Start"
    • removedOutput schema / $defs / ReturnRule / properties / start_note / title
      Removed value: -"Start Note"
    • removedOutput schema / $defs / ReturnRule / title
      Removed value: -"ReturnRule"
    • removedOutput schema / $defs / RulesResult / properties / citations / title
      Removed value: -"Citations"
    • removedOutput schema / $defs / RulesResult / properties / covered_cities / description
      Removed value: -"City overlays in this state ('Name, ST')."
    • removedOutput schema / $defs / RulesResult / properties / covered_cities / title
      Removed value: -"Covered Cities"
    • removedOutput schema / $defs / RulesResult / properties / covered_states / title
      Removed value: -"Covered States"
    • removedOutput schema / $defs / RulesResult / properties / disclaimer / title
      Removed value: -"Disclaimer"
    • removedOutput schema / $defs / RulesResult / properties / guides / description
      Removed value: -"Official plain-language guides for this state or city, where we have one."
    • removedOutput schema / $defs / RulesResult / properties / guides / title
      Removed value: -"Guides"
    • removedOutput schema / $defs / RulesResult / properties / research_notes / description
      Removed value: -"Research notes on the rows used: where the text was read, fetch failures, renumbering, history not checked. For checking the sourcing; not warnings."
    • removedOutput schema / $defs / RulesResult / properties / research_notes / title
      Removed value: -"Research Notes"
    • removedOutput schema / $defs / RulesResult / properties / small_claims / description
      Removed value: -"The state courts' small claims page, where we have one."
    • removedOutput schema / $defs / RulesResult / properties / summary / title
      Removed value: -"Summary"
    • removedOutput schema / $defs / RulesResult / properties / warnings / title
      Removed value: -"Warnings"
    • removedOutput schema / $defs / RulesResult / title
      Removed value: -"RulesResult"
    • removedOutput schema / $defs / RunInfo / properties / capability / title
      Removed value: -"Capability"
    • removedOutput schema / $defs / RunInfo / properties / contract_version / title
      Removed value: -"Contract Version"
    • removedOutput schema / $defs / RunInfo / properties / duration_ms / title
      Removed value: -"Duration Ms"
    • removedOutput schema / $defs / RunInfo / properties / engine_version / title
      Removed value: -"Engine Version"
    • removedOutput schema / $defs / RunInfo / properties / id / title
      Removed value: -"Id"
    • removedOutput schema / $defs / RunInfo / properties / operation / title
      Removed value: -"Operation"
    • removedOutput schema / $defs / RunInfo / properties / received_at / title
      Removed value: -"Received At"
    • removedOutput schema / $defs / RunInfo / properties / ruleset_hash / title
      Removed value: -"Ruleset Hash"
    • removedOutput schema / $defs / RunInfo / properties / ruleset_version / title
      Removed value: -"Ruleset Version"
    • removedOutput schema / $defs / RunInfo / title
      Removed value: -"RunInfo"
    • addedOutput schema / $defs / SafeHarbor
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "note": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "quote": {
      +      "maxLength": 600,
      +      "type": "string"
      +    },
      +    "section": {
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    },
      +    "when": {
      +      "const": "no_forwarding_address",
      +      "default": "no_forwarding_address",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "section",
      +    "quote",
      +    "source"
      +  ],
      +  "type": "object"
      +}
    • removedOutput schema / $defs / StateRules / properties / applicability / title
      Removed value: -"Applicability"
    • removedOutput schema / $defs / StateRules / properties / deposit_cap_months_rent / title
      Removed value: -"Deposit Cap Months Rent"
    • removedOutput schema / $defs / StateRules / properties / forfeiture / title
      Removed value: -"Forfeiture"
    • removedOutput schema / $defs / StateRules / properties / notes / title
      Removed value: -"Notes"
    • removedOutput schema / $defs / StateRules / properties / recent_changes / title
      Removed value: -"Recent Changes"
    • removedOutput schema / $defs / StateRules / properties / statute / title
      Removed value: -"Statute"
    • removedOutput schema / $defs / StateRules / title
      Removed value: -"StateRules"
    • removedOutput schema / $defs / UnitTier / description
      Removed value: -"A percentage for buildings up to ``max_units`` (Texas: 12% up to four units)."
    • removedOutput schema / $defs / UnitTier / properties / max_units / title
      Removed value: -"Max Units"
    • removedOutput schema / $defs / UnitTier / properties / percent / title
      Removed value: -"Percent"
    • removedOutput schema / $defs / UnitTier / title
      Removed value: -"UnitTier"
    • removedOutput schema / $defs / UtilityLimit / description
      Removed value: -"Utility charges the statute lets the landlord deduct, by kind (Massachusetts: water only).\nA utility line is 'yes' for these kinds, 'no' for others, 'depends' when the kind is not\ngiven (``utility_kind`` on the line)."
    • removedOutput schema / $defs / UtilityLimit / properties / kinds / title
      Removed value: -"Kinds"
    • removedOutput schema / $defs / UtilityLimit / properties / quote / title
      Removed value: -"Quote"
    • removedOutput schema / $defs / UtilityLimit / properties / section / title
      Removed value: -"Section"
    • removedOutput schema / $defs / UtilityLimit / properties / source / title
      Removed value: -"Source"
    • removedOutput schema / $defs / UtilityLimit / title
      Removed value: -"UtilityLimit"
    • removedOutput schema / properties / client_refs / description
      Removed value: -"Your own ids, echoed when you sent client_refs."
    • removedOutput schema / properties / client_refs / title
      Removed value: -"Client Refs"
    • removedOutput schema / properties / input_hash / description
      Removed value: -"Only with audit=true."
    • removedOutput schema / properties / input_hash / title
      Removed value: -"Input Hash"
    • removedOutput schema / properties / result_hash / description
      Removed value: -"Only with audit=true."
    • removedOutput schema / properties / result_hash / title
      Removed value: -"Result Hash"
    • removedOutput schema / properties / run / description
      Removed value: -"Only with audit=true."
    • removedOutput schema / title
      Removed value: -"DepositSettlementRulesMcpResult"
  10. First observed

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is free; the description adds genuinely new traits: deterministic and source-cited results, plus the fact that a failed pre-check computes and charges nothing. It does not surface the ruleset-pinning/upgrade failure mode, though the schema covers that thoroughly.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with purpose, covered cities, inputs, then exclusions — a sensible order. Slightly dense and mildly redundant ("with citations" then "source-cited"), but nearly every clause carries information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Return contents, scope, exclusions and determinism are covered, and an output schema exists so return values need not be spelled out. The historical "as_of" capability and ruleset-pinning behavior go unmentioned in prose, but the schema documents both in detail.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline applies. The description restates state and city but is silent on as_of, audit, expect_ruleset and serve_pinned, so it adds little semantic value beyond the schema's own descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Looks up the security deposit rules ... for one US state") and bounds scope immediately with "(deposits only)", plus enumerates the covered city ordinances. The agent can distinguish it from deposit_settlement_settle without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit "Not for:" list rules out move-out settlement, evictions, rent collection, rent control, lease renewal and legal advice, and names the alternative sibling (deposit_settlement_settle) with the condition that selects it. Both when-to-use and when-not-to-use are covered.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.