Project

Properly

Problem

Landlord operations mix money, vendors, documents, properties, units, and tax season exports. The dangerous failure mode is cross-account leakage.

Core decision

Properly uses tenant-scoped request context and Postgres Row Level Security so account isolation does not depend only on route-level filtering.

Money is represented in integer cents. Files use private object storage paths and validation before they become trusted application records.

Tradeoff

The product is built in vertical slices. Each slice needs API behavior, UI, tenancy, validation, and tests before it counts as done.