Rate windows were matched by substring (label.includes(key)), so overlapping labels like "Day"/"Weekday" could silently cross-match to the wrong rate. Switched to an exact match. The "split must total 100%" check was advisory-only in the UI and never validated server-side, letting a tariff save with a split that doesn't sum to 100% and permanently mis-cost that meter's usage. Enforced on both the API (POST/PATCH /api/tariffs) and the Save button. Also aligned the app's portal category to 'Hotel' (already correct in auth/src/db.js) here and in stack-init/install-stack.sh, which had both drifted to 'Operations'. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| src | ||
| Dockerfile | ||
| package.json | ||