Research assumptions
- Rents model three common segments: HCMC inner-city rooms, Hanoi serviced studios, and Binh Duong worker/logistics rooms.
- Utility prices are rounded landlord billing rates for demo validation, not a legal resale-price claim.
- Renter names, phone numbers, identity numbers, bank accounts, addresses, and emails are demo-only synthetic data.
- Source references used for ranges and naming patterns: EVN average electricity-price adjustment, EVN tenant-room electricity billing context, SAWACO clean-water customer-service context, Vietnam rental listings, and Vietnam government 2026 wage-floor update.
Seed locally
Start the backend first:output/demo-suite-<run_id>.json.
Each run appends a new demo snapshot under the same organization. Use a fresh
database or override ANHOME_DEMO_USERNAME when you want isolated dashboard
totals.
Seed public listing search data
Issue #30 adds a dedicated public renter-search testing corpus. This mode uses the same live API path as the regular demo seed and creates only synthetic data: testing owners, testing properties, testing rooms, public listing overlays, and visibility controls. Preview the deterministic data shape without writing anything:ANHOME_ALLOW_PUBLIC_LISTING_SEED=yes and a
temporary QA password are provided, and it refuses production-like API URLs.
Use a fresh ANHOME_DEMO_RUN_ID for every corpus snapshot; fixed run-id reruns
fail before writes when the previous public corpus is still visible. The corpus
creates:
- 3 synthetic active owner organizations.
- 46 public published vacant listings total.
- 23 public published vacant listings in Cần Thơ (
province_code=92). - 23 public published vacant listings in Ho Chi Minh City (
province_code=79). - 4 represented wards in Cần Thơ and 4 represented wards in Ho Chi Minh City.
- A valid Cần Thơ empty-state ward (
ward_code=31299, Xã Phong Điền) with zero seeded public rooms. - Unpublished, occupied, maintenance, and hidden controls that must not appear on public renter APIs.
Demo account
Validation endpoints
tenant_link.public_token when at least one issued invoice exists. Validate the public tenant portal with:
Seed coverage
Each run creates:- 3 properties across HCMC, Hanoi, and Binh Duong.
- 15 rooms with occupied, vacant, and maintenance states.
- 12 renters and active leases.
- Billing settings, default recurring fees, payment accounts, meter readings for two 2026 periods.
- Draft, issued, paid, partially paid, overdue, and reconciled invoices.
- Manual cash/bank payments and one manual reconciliation match.
- Admin and public tenant maintenance tickets.
- Dashboard, reports, and CSV export validation previews.