Release v1.71.0

Issue: #51
Release: v1.71.0
User-Visible: no
This commit is contained in:
Sergey Matyunin
2026-09-04 03:16:27 +03:00
parent 5a7c98264a
commit 7c4cb187fe
28 changed files with 224 additions and 162 deletions
+30
View File
@@ -2,6 +2,36 @@
## Unreleased
## v1.71.0 — 2026-09-04
- The Background editor can now upload and reuse private PNG, JPEG, WebP and
safe SVG images, then place, resize, mirror, rotate, replace and layer them
like furniture without wall magnetism; missing files keep a repairable
placeholder and portable exports retain integrity metadata without embedding
image bytes ([#51](https://github.com/Matysh/houseplan-card/issues/51)).
- Robot vacuums with several maps can now assign and calibrate each map against
its own floor, route the live position and trail there while leaving the dock
in place, and explain unassigned or ambiguous active maps instead of guessing
where to draw them
([#162](https://github.com/Matysh/houseplan-card/issues/162)).
- General settings can hide the room information window without disabling its
highlight, furniture snaps to the visible physical wall face, and the HACS
catalog now names the integration simply **House Plan**
([#426](https://github.com/Matysh/houseplan-card/issues/426),
[#445](https://github.com/Matysh/houseplan-card/issues/445),
[#444](https://github.com/Matysh/houseplan-card/issues/444)).
- Confirmation and **Help & feedback** flows now fail safely across missing
spaces, delayed previews, edited retries, mixed compatible versions and
malformed nested data; Home Assistant Area tracking and rejected General,
device or calibration saves also preserve the last confirmed plan
([#417](https://github.com/Matysh/houseplan-card/issues/417),
[#418](https://github.com/Matysh/houseplan-card/issues/418),
[#419](https://github.com/Matysh/houseplan-card/issues/419),
[#420](https://github.com/Matysh/houseplan-card/issues/420),
[#423](https://github.com/Matysh/houseplan-card/issues/423),
[#439](https://github.com/Matysh/houseplan-card/issues/439),
[#442](https://github.com/Matysh/houseplan-card/issues/442)).
## v1.71.0-beta.4 — 2026-09-04
- Furniture now snaps its back edge to the visible physical wall surface rather
+32
View File
@@ -8,6 +8,38 @@
## Не выпущено
## v1.71.0 — 2026-09-04
- В редакторе подложки теперь можно загружать и повторно использовать закрытые
PNG, JPEG, WebP и безопасные SVG, а затем размещать, менять размер, отражать,
вращать, заменять и раскладывать их по слоям как мебель, но без магнита к
стенам; для пропавшего файла сохраняется восстанавливаемая рамка, а переносной
экспорт хранит данные целостности без встраивания байтов
([#51](https://github.com/Matysh/houseplan-card/issues/51)).
- Роботу с несколькими картами теперь можно сопоставить и откалибровать каждую
карту на своём этаже: живая позиция и след рисуются там, а док остаётся на
месте; для несопоставленной или неоднозначной активной карты план показывает
точную причину вместо попытки угадать этаж
([#162](https://github.com/Matysh/houseplan-card/issues/162)).
- В общих настройках можно скрыть информационное окно комнаты, не отключая её
подсветку; мебель примагничивается к видимой физической грани стены, а в
каталоге HACS интеграция теперь называется просто **House Plan**
([#426](https://github.com/Matysh/houseplan-card/issues/426),
[#445](https://github.com/Matysh/houseplan-card/issues/445),
[#444](https://github.com/Matysh/houseplan-card/issues/444)).
- Подтверждения и **«Помощь и обратная связь»** теперь безопасно завершаются при
пропавшем пространстве, позднем превью, изменённом повторе, совместимых
смешанных версиях и некорректных вложенных данных; отслеживание HA-зон и
отклонённые сохранения общих настроек, устройства или калибровки также
сохраняют последний подтверждённый план
([#417](https://github.com/Matysh/houseplan-card/issues/417),
[#418](https://github.com/Matysh/houseplan-card/issues/418),
[#419](https://github.com/Matysh/houseplan-card/issues/419),
[#420](https://github.com/Matysh/houseplan-card/issues/420),
[#423](https://github.com/Matysh/houseplan-card/issues/423),
[#439](https://github.com/Matysh/houseplan-card/issues/439),
[#442](https://github.com/Matysh/houseplan-card/issues/442)).
## v1.71.0-beta.4 — 2026-09-04
- Мебель теперь примагничивается задней гранью к видимой физической поверхности
+9 -9
View File
@@ -1,18 +1,18 @@
<!-- release: v1.71.0-beta.4 -->
<!-- release: v1.71.0 -->
## Основное
- Вторую и последующие карты робота теперь можно безопасно добавить после выбора этажа; пустой список маршрутов остаётся пустым, а удалённые пространства и лишний обход устройств обрабатываются корректно ([#441](https://github.com/Matysh/houseplan-card/issues/441), [#443](https://github.com/Matysh/houseplan-card/issues/443)).
- Если Home Assistant отклоняет сохранение устройства или калибровки робота, план атомарно возвращается к подтверждённому состоянию, сохраняя открытый редактор и введённый черновик для повтора ([#442](https://github.com/Matysh/houseplan-card/issues/442)).
- Мебель теперь примагничивается к видимой физической поверхности стены с учётом локальной толщины и стороны общей стены, а не проваливается в кладку из-за привязки к оси ([#445](https://github.com/Matysh/houseplan-card/issues/445)).
- В редакторе подложки теперь можно загружать и повторно использовать закрытые PNG, JPEG, WebP и безопасные SVG; информационное окно комнаты отключается отдельно от подсветки, а мебель примагничивается к видимой грани стены ([#51](https://github.com/Matysh/houseplan-card/issues/51), [#426](https://github.com/Matysh/houseplan-card/issues/426), [#445](https://github.com/Matysh/houseplan-card/issues/445)).
- Робот с несколькими картами теперь показывает живую позицию и след на сопоставленном этаже, оставляет док на месте и объясняет, почему неоднозначную или ненастроенную карту нельзя отобразить ([#162](https://github.com/Matysh/houseplan-card/issues/162)).
- Подтверждения, обращения в поддержку, отслеживание HA-зон и отклонённые сохранения теперь безопасно сохраняют подтверждённые данные при сбоях и гонках ([#417](https://github.com/Matysh/houseplan-card/issues/417), [#418](https://github.com/Matysh/houseplan-card/issues/418), [#419](https://github.com/Matysh/houseplan-card/issues/419), [#420](https://github.com/Matysh/houseplan-card/issues/420), [#423](https://github.com/Matysh/houseplan-card/issues/423), [#439](https://github.com/Matysh/houseplan-card/issues/439), [#442](https://github.com/Matysh/houseplan-card/issues/442)).
- Мелкие исправления и улучшения.
## Highlights
- A robot vacuum's second and later maps can now be added safely after choosing a floor; an empty route list stays empty, while deleted spaces and unnecessary device scans are handled correctly ([#441](https://github.com/Matysh/houseplan-card/issues/441), [#443](https://github.com/Matysh/houseplan-card/issues/443)).
- If Home Assistant rejects a device or robot-calibration save, the plan atomically restores its confirmed state while keeping the editor and entered draft ready for another attempt ([#442](https://github.com/Matysh/houseplan-card/issues/442)).
- Furniture now snaps to the visible physical wall surface with the local thickness and shared-wall side taken into account, instead of entering the masonry through centreline snapping ([#445](https://github.com/Matysh/houseplan-card/issues/445)).
- The Background editor can now upload and reuse private PNG, JPEG, WebP and safe SVG images; the room information window can be disabled independently of its highlight, and furniture snaps to the visible wall face ([#51](https://github.com/Matysh/houseplan-card/issues/51), [#426](https://github.com/Matysh/houseplan-card/issues/426), [#445](https://github.com/Matysh/houseplan-card/issues/445)).
- A robot vacuum with several maps now shows its live position and trail on the assigned floor, keeps the dock in place, and explains why an ambiguous or unconfigured map cannot be drawn ([#162](https://github.com/Matysh/houseplan-card/issues/162)).
- Confirmations, support reports, Home Assistant Area tracking and rejected saves now preserve confirmed data safely through failures and races ([#417](https://github.com/Matysh/houseplan-card/issues/417), [#418](https://github.com/Matysh/houseplan-card/issues/418), [#419](https://github.com/Matysh/houseplan-card/issues/419), [#420](https://github.com/Matysh/houseplan-card/issues/420), [#423](https://github.com/Matysh/houseplan-card/issues/423), [#439](https://github.com/Matysh/houseplan-card/issues/439), [#442](https://github.com/Matysh/houseplan-card/issues/442)).
- Small fixes and improvements.
[Полный список изменений на русском](https://github.com/Matysh/houseplan-card/blob/v1.71.0-beta.4/docs/CHANGELOG.ru.md)
· [Full changelog in English](https://github.com/Matysh/houseplan-card/blob/v1.71.0-beta.4/docs/CHANGELOG.md)
[Полный список изменений на русском](https://github.com/Matysh/houseplan-card/blob/v1.71.0/docs/CHANGELOG.ru.md)
· [Full changelog in English](https://github.com/Matysh/houseplan-card/blob/v1.71.0/docs/CHANGELOG.md)
+2 -2
View File
@@ -21,8 +21,8 @@ metadata). Only an explicit owner-approved emergency hotfix may skip this gate.
| Item | State |
|---|---|
| Version | **v1.71.0-beta.4** everywhere (manifest, const.py, package.json, CARD_VERSION) |
| Current local cycle | v1.71.0-beta.4 fixes adding and removing multi-floor robot routes (#441, #443), atomically rolls rejected device and robot-calibration writes back to server-confirmed state (#442), snaps furniture to the physical wall face (#445), and improves the HACS storefront copy (#444). Publish only after exact-SHA Validate is green. |
| Version | **v1.71.0** everywhere (manifest, const.py, package.json, CARD_VERSION) |
| Current local cycle | v1.71.0 is the promotion-only stable candidate for the published beta.1–beta.4 line: reusable private background images (#51), multi-floor vacuum map routing (#162), the room-tooltip option (#426), physical wall-face furniture snapping (#445), HACS naming (#444), and the reviewed reliability work. Publish stable only after exact-SHA Validate and Full Performance are green on the same `main` SHA. |
| Hidden Labs Stage | #89 Stage 1 ships in v1.63.0-beta.1. #122 Stage 2 ships in v1.64.0 and evolves the same hidden, expiring `iso` experiment with matte walls, a low exterior floor edge, restrained shared shadows and live vertical door/window/gate panels. Flat remains default; editors and `houseplan-space-card` remain flat; live floor effects and HA actions remain unchanged. Public activation remains a separate task. |
| Workflow | Superseded 2026-08-12: the pre-1.62 rule of "local edits without tests or commits" is **dead** — since release 1.62 every product change follows `PROCESS.md` (issue in `S5-ready`+, branch `issue/<NN>-slug`, trailers on every commit, review pipeline; `AGENTS.md` is the summary). Release mechanics below remain current. A requested pre-release gets a production build plus the smallest targeted unit/smoke set covering the changed surfaces, one tested `dev` commit/tag and a GitHub Release with `prerelease=true`; `main` stays untouched. The complete local frontend/backend/smoke gate runs only before a stable release, after which `main` is fast-forwarded to the exact tested `dev` SHA and the GitHub Release uses `prerelease=false`. Release bodies are short and bilingual (Russian first); every bullet links its GitHub issue (#NN) so the #328 rules stay machine-checkable. A STABLE body aggregates the changelog since the PREVIOUS STABLE release (never since the last beta): features/fixes described across the line's beta changelogs must appear, while bugs that were introduced and fixed strictly inside the beta line (never shipped in any stable) are excluded — draft with `npm run release:notes -- <tag>`, curate by hand, then `npm run release:notes -- <tag> --verify` must pass. `Мелкие исправления и улучшения` / `Small fixes and improvements` is allowed only when the range really contains user-visible work not itemised in the body; a single-issue hotfix ships without it (the verifier enforces this). Every body ends with separate links to the Russian and English changelogs. Open or partially delivered issues are never presented as shipped. Telegram announcements are sent only for stable releases; beta and RC publication is silent. `docs/RELEASE-NOTES.md` is the current canonical body instance; `npm run release:prerelease -- <tag> --issues=… --yes` is the primary local publication path and the manual `Publish prerelease` workflow is its GitHub-only equivalent once present on `main`. Nothing is copied to the home instance by hand |
| GitHub | https://github.com/Matysh/houseplan-card — [Issues](https://github.com/Matysh/houseplan-card/issues) are the canonical task records; their labels carry priority and workflow status (`PROCESS.md` §9). GitHub Projects is no longer used. `main` carries stable releases; pre-release tags may point directly at `dev`. Work lands on `dev` and is merged into `main` for a stable release, so `dev` is normally equal to or ahead of `main`, never behind. Push via SSH key `ha_jb` (remote git@github.com:…); API releases via the fine-grained PAT in `~/.git-credentials` (Contents R/W, issued 2026-07-23) |