Appearance
F-014: Properties & History โ
Status: ๐ Planning ยท Priority: P1 ยท Updated: Mar 4, 2026
Summary โ
Persistent property entities separate from listings. A property represents a physical rental unit (e.g., "Apt 4B at 123 Rue Saint-Denis") that exists whether or not it's currently listed. Enables rental history, landlord portfolio management, re-listing convenience, and cross-platform deduplication. Foundation for Building Profiles (F-012) and Market Analytics (F-013).
Requirements โ
- [ ]
propertiestable with address, unit, coordinates, neighborhood, type, bedrooms, bathrooms, area, landlord - [ ]
property_idnullable FK onlistings - [ ] Backfill migration: create properties from existing listings, link back
- [ ] Landlord "My Properties" dashboard section
- [ ] Re-list action: create new listing pre-filled from property + previous listing
- [ ] Scraper integration: match imported listings to existing properties by address
- [ ] Notes migrate from listing-level to property-level
Design โ
See product analysis for full entity model and migration strategy.
Entity hierarchy:
Building (optional, groups units at same address)
โโโ Property (persistent physical unit)
โโโ Listing (time-bound rental offer, 0..N per property)Gradual introduction (4 steps):
- Thin
propertiestable + FK on listings + backfill migration - Landlord portfolio view ("My Properties" with re-list action)
- Scraper integration (match imports to existing properties)
- Move persistent fields up (bedrooms, parking, etc. โ property level)
Open design decisions:
- Address normalization strategy for Montreal's varied formats
- Property ownership transfer (property managers change)
- Scraped properties owned by system user, claimable by landlords
- Notes migration: listing-level โ property-level (keep inquiry notes on listings)
- Image split: property gallery vs. listing marketing photos โ start simple, split later
- Enforce max one active listing per property?
Discussion Notes โ
Feb 20, 2026 โ
- Initial deep-dive proposal
- Decided on gradual introduction over big-bang refactor
- Identified as foundation for F-012 (Buildings) and F-013 (Analytics)
Mar 4, 2026 โ
- Created Dev Log entry, carrying forward product analysis
Implementation Notes โ
Not yet started.