feat: allow configurable maximum active leases per property - #65
Merged
aakvatech merged 1 commit intoAug 18, 2026
Conversation
aakvatech
approved these changes
Aug 18, 2026
aakvatech
merged commit Aug 18, 2026
a1bb0b2
into
Aakvatech-Limited:version-15-hotfix
2 of 3 checks passed
|
Successfully created backport PR for |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR introduces configurable active lease limits per property in PropMS, allowing properties to hold multiple active leases (defaulting to 1).
Motivation
Previously, lease validation strictly enforced a maximum of 1 active lease per property. This feature allows property managers to configure system-wise or per-property limits (e.g. 2, 3 active leases).
Type of Change
[✓] feat: A new feature
Detailed Changes
Property Management Settings (property_management_settings.json):
- Added max_active_leases (Int, Default: 1) for global system default.
Property (property.json):
-Added max_active_leases (Int, Default: 0) for property-level overrides (0 falls back to system setting).
Lease Validation (lease.py):
-Enforced max_allowed check in Lease.validate() before activating a lease.
-Formatted user-friendly error message dialog.
Verification
[✓] Tested default behavior (1 active lease limit).
[✓] Tested property-level override (2 active leases).
[✓] Verified fallback to system setting when property limit is 0.