How som3adr/hotelrunner-daily works
This repository combines a read-only HotelRunner daily reporting tool with a broader hostel-operations manager workflow. The main report path fetches and caches reservations, builds operational summaries and conflict audits, then writes Markdown and an HTML dashboard; it explicitly does not modify bookings. The wider source tree also indicates Telegram delivery and Q&A, morning operations, and reservation-monitoring capabilities. The sampled excerpts support the normalization and several rule-engine responsibilities, but not all wiring among these wider features, so uncertain links are omitted.
Main entry points: manager_report.py Manager report · hotelrunner_daily_summary.py Daily report runner · operations_monitor.py Operations monitor · morning_delivery.py Morning delivery
Components 24
Daily report
- Daily report runner
hotelrunner_daily_summary.py - Reservation cache
- Manual room blocks
hotelrunner_blocks.example.json - Markdown report
- HTML dashboard
- Reservation audit
hotelrunner_daily_summary.py
Operations rules
- Normalized reservations
data_model.py - Extras classification
extras_engine.py - Conflict detection
conflict_engine.py - Meal entitlements
meal_engine.py - Transfer planning
transfer_engine.py - Checkout settlement
settlement_engine.py - Manager report
manager_report.py
Messaging
- Morning delivery
morning_delivery.py - Telegram bot
telegram_bot.py - Telegram sender
telegram_send.py - Operations monitor
operations_monitor.py - Operations Q&A
operations_qa.py - Alert state
alert_state.py
External services
- HotelRunner
- Google Sheets
- Telegram
- Gemini client
gemini_client.py
Other components
- Operator
Connections 23
- Operator → Daily report runner: runs
- Daily report runner → HotelRunner: fetches reservations
- Daily report runner → Reservation cache: reads and updates
- Daily report runner → Manual room blocks: reads optional blocks
- Daily report runner → Markdown report: writes report
- Daily report runner → HTML dashboard: writes dashboard
- Daily report runner → Reservation audit: writes audit
- Manager report → Reservation cache: loads reservations
- Manager report → Google Sheets: loads Sunrise data
- Manager report → Normalized reservations: normalizes records
- Manager report → Extras classification: classifies extras
- Manager report → Conflict detection: checks conflicts
- Manager report → Meal entitlements: computes meals
- Manager report → Transfer planning: checks transfers
- Manager report → Checkout settlement: checks settlements
- Morning delivery → Manager report: builds briefing
- Morning delivery → Telegram sender: dispatches briefing
- Telegram sender → Telegram: sends messages
- Operations monitor → HotelRunner: checks updates
- Operations monitor → Alert state: reads and updates
- Operations monitor → Telegram: sends alerts
- Telegram bot → Operations Q&A: handles questions
- Operations Q&A → Gemini client: requests answers