Commit Graph
2028 Commits
Author SHA1 Message Date
Matysh 04da7eb18f build: refresh rebased settings help bundles
Rebuild both canonical bundle trees after rebasing #86 onto the merged
discovery-filter changes.

Issue: #86
User-Visible: no
Release: v1.70.0-beta.1
2026-08-30 14:53:00 +03:00
claude[bot]andMatysh 00a7d7d43d docs: review document for #86
Issue: #86
User-Visible: no
2026-08-30 14:49:33 +03:00
Matysh cd9bd54801 test: accept 200 percent help baselines
Accept the two reviewed Linux DPR 2 help frames and refresh the two
documentation images changed by the rebased dev bundle.

Issue: #86
User-Visible: no
Release: v1.70.0-beta.1
Baseline-Reviewed: https://github.com/Matysh/houseplan-card/actions/runs/33308795628
2026-08-30 14:49:33 +03:00
Matysh 981b6b25e8 test: add reviewed 200 percent help goldens
Capture the general-settings help surface at 390 CSS pixels and DPR 2 in
both themes, assert its viewport contract, and teach the golden runner to
select a renderer scale per scenario.

Issue: #86
User-Visible: no
2026-08-30 14:49:27 +03:00
claude[bot]andMatysh cd7c53cd97 docs: review document for #86
Issue: #86
User-Visible: no
2026-08-30 14:49:19 +03:00
Matysh 74ec0199fa test: prove settings help at 200 percent zoom
Exercise the effective Chromium renderer contract for 200% browser zoom and
assert that the trigger and tooltip stay visible, the dialog does not gain
horizontal overflow, and opening help leaves stage geometry unchanged.

Issue: #86
User-Visible: no
2026-08-30 14:49:19 +03:00
claude[bot]andMatysh 6dcf1e4345 docs: review document for #86
Issue: #86
User-Visible: no
2026-08-30 14:49:18 +03:00
Matysh 8e4fa54477 docs: accept rebased settings help screenshots
Accept the complete Linux Chromium documentation set captured after rebasing
change also replaces the uncompressed dev set with the pinned oxipng output.

Issue: #86
User-Visible: no
Release: v1.70.0-beta.1
Baseline-Reviewed: https://github.com/Matysh/houseplan-card/actions/runs/33306281294
2026-08-30 14:49:18 +03:00
Matysh 244271835f test: cover cold onboarding settings help
Exercise the real lazy onboarding runtime, verify all five space help controls,
and prove that opening help neither mutates the draft nor eagerly loads the
editor runtime.

Issue: #86
User-Visible: no
2026-08-30 14:49:08 +03:00
claude[bot]andMatysh e5f773ce76 docs: review document for #86
Issue: #86
User-Visible: no
2026-08-30 14:49:08 +03:00
Matysh 26304c8ce2 test: accept reviewed settings help goldens
Accept the six intentional settings-help layout changes from the complete Linux candidate and the two pending furniture-transform scenarios already merged for #383. The remaining 137 baselines stay unchanged.

Issue: #86
User-Visible: no
Release: v1.70.0-beta.1
Baseline-Reviewed: https://github.com/Matysh/houseplan-card/actions/runs/33305056892
2026-08-30 14:49:08 +03:00
Matysh 4e0f84200a fix: satisfy no-new-any gate for settings help
Use the typed i18n key directly for the show-hidden device catalog label and regenerate bundles.

Issue: #86
User-Visible: no
2026-08-30 14:49:08 +03:00
Matysh 30c15a070b feat: add critical settings help content
Add the agreed Party 1 help controls to general, space, marker and device-catalog settings in all four locales, including cold onboarding parity and regression coverage.

Issue: #86
User-Visible: yes
2026-08-30 14:48:56 +03:00
Matysh 802b2dc71b docs: actualize settings help specification
Refresh Party 1 against the current four-locale UI and replace the retired Boundary affordance with zero-thickness wall semantics.

Issue: #86
User-Visible: no
2026-08-30 14:48:37 +03:00
Sergey MatyuninandMatysh 22f22980fc docs: specify critical settings help content
Issue: #86
User-Visible: no
2026-08-30 14:48:37 +03:00
claude[bot] 2b0ac0c091 docs: review document for #44
Issue: #44
User-Visible: no
2026-08-30 11:42:51 +00:00
claude[bot]andCodex 5c027a9f9b docs: review document for #44
Issue: #44
User-Visible: no
2026-08-30 14:30:43 +03:00
Codex e4e1e3705f fix: close CODE-REVIEW-44-r1 M1-M2
M1: the room-climate cache keys on the STORED exclusion array reference
(stable across renders; _excluded builds a fresh Set per call), so
saving new Discovery filters recomputes climate immediately instead of
waiting for an unrelated hass tick.
M2: a device without a platform-bearing entity takes its integration
name from the identifier domain — the excluded reason can no longer
render a raw {integration} placeholder (if the exclusion matched,
at least one of the two names exists).

User-Visible: no
Issue: #44
2026-08-30 14:29:19 +03:00
Codex 34778d81e4 build: refresh bundle trees for #44
User-Visible: no
Issue: #44
2026-08-30 14:06:15 +03:00
Codex 8d431d6ddf feat: discovery filters become visible, explained and previewable (#44)
Light grouping and the excluded-integrations list move from hidden keys
to a Discovery-filters section on the catalog's Available tab: a toggle
(unset = on, the legacy behaviour), searchable integration chips with a
Restore-recommended reset (defaults stored as key absence), and
appear/disappear counters computed by diffing the REAL
seedHiddenBindings/buildDevices outputs — no second copy of the filter.
Saving writes settings once over the ordinary expected_rev path. Every
excluded candidate now names its integration in the catalog. Room
climate follows the same user exclusions through the single
effectiveExcludedIntegrations resolver (spec H2); explicit climate
opt-in stays stronger. The field registry passports both keys as
current supported settings.

User-Visible: yes
Issue: #44
2026-08-30 14:03:35 +03:00
claude[bot] d14cf769d5 docs: review document for #44
Issue: #44
User-Visible: no
2026-08-30 10:51:30 +00:00
Codex 44aa6968f7 docs: #44 spec revision 4 per SPEC-REVIEW-44-r2
User-Visible: no
Issue: #44
2026-08-30 13:48:10 +03:00
claude[bot] 6e6747dc09 docs: review document for #44
Issue: #44
User-Visible: no
2026-08-30 10:45:00 +00:00
Codex ba56876361 docs: #44 spec revision 3 per SPEC-REVIEW-44-r1
User-Visible: no
Issue: #44
2026-08-30 13:39:23 +03:00
claude[bot] df1dbccfdb docs: review document for #44
Issue: #44
User-Visible: no
2026-08-30 10:38:17 +00:00
Codex 3d4c509088 docs: #44 spec revision 2 — discovery filters UI, preview, excluded-integration reason
User-Visible: no
Issue: #44
2026-08-30 13:29:57 +03:00
claude[bot] 8819e390c9 docs: review document for #33
Проверка (CI) / Классификация изменённых файлов (push) Successful in 28s
Проверка (CI) / Предполётные проверки: документация, провенанс, процесс (push) Failing after 1m16s
Проверка (CI) / Переиспользование: это дерево уже проверено (push) Successful in 1m24s
Проверка (CI) / HACS: валидация репозитория (push) Failing after 25s
Проверка (CI) / Hassfest: манифест интеграции (push) Failing after 16s
Проверка (CI) / Бэкенд: pytest в Home Assistant (push) Failing after 8m17s
Проверка (CI) / Фронтенд: типы, юниты, мутанты, синхрон бандла (push) Failing after 10m20s
Проверка (CI) / Смоки в браузере (шард 1 из 3) (push) Skipped
Проверка (CI) / Смоки в браузере (шард 2 из 3) (push) Skipped
Проверка (CI) / Смоки в браузере (шард 3 из 3) (push) Skipped
Проверка (CI) / Смоки: все шарды зелёные (push) Skipped
Проверка (CI) / Golden-кадры против принятых эталонов (push) Skipped
Проверка (CI) / Перф-смок: бюджет времени кадра (push) Skipped
Issue: #33
User-Visible: no
2026-08-30 10:09:14 +00:00
Codex 15fa33b9d9 fix: close CODE-REVIEW-33-r1 M1-M3
M1: the AC7 no-import test scans the whole src tree for the CURRENT dump
name (the old assertion checked the pre-rename string; proven by
execution — a planted fetch now turns it red).
M2: deduplicate the #33 paragraphs in both changelogs and ARCHITECTURE.
M3: the auditor's exit-3 statuses match the spec contract exactly
(migrate-*/deprecated-read); decision-required is live behaviour
awaiting #44, drop-on-validation is the backend's own job.

User-Visible: no
Issue: #33
2026-08-30 13:04:04 +03:00
claude[bot] a7e531787e docs: review document for #33
Issue: #33
User-Visible: no
2026-08-30 09:59:51 +00:00
Codex 572cf92896 build: refresh bundle trees for #33
User-Visible: no
Issue: #33
2026-08-30 12:47:07 +03:00
Codex f43187218f fix: the schema dump must not match the HACS *manifest.json glob (#33)
repo-hygiene caught it: HACS globs *manifest.json over the whole clone
and rejects a repository with two. The dump is scripts/config-schema.json.

User-Visible: no
Issue: #33
2026-08-30 12:45:17 +03:00
Codex 867f476289 feat: schema manifest, parity allow-list and lifecycle fixtures (#33)
The Voluptuous schema is now dumped into a deterministic committed
manifest (265 leaf paths); a pytest fails on drift. A parity test
compares manifest enums with the exported frontend const lists through
a machine-readable allow-list that also refuses to rot. The field
registry gains passports (allow-extra / lovelace-card), enforcedBy
citations for mechanisms that already shipped, and passports for the
v1.68-v1.69 fields; a completeness test bans dead decisions. Lifecycle
fixtures (oldest / current / future) prove lossless loading, and the
config auditor gains the 0/3/2 exit-code contract.

User-Visible: yes
Issue: #33
2026-08-30 12:42:31 +03:00
Codex 24681ee26f feat: schema manifest, parity allow-list and lifecycle fixtures (#33)
The Voluptuous schema is now dumped into a deterministic committed
manifest (265 leaf paths); a pytest fails on drift. A parity test
compares manifest enums with the exported frontend const lists through
a machine-readable allow-list that also refuses to rot. The field
registry gains passports (allow-extra / lovelace-card), enforcedBy
citations for mechanisms that already shipped, and passports for the
v1.68-v1.69 fields; a completeness test bans dead decisions. Lifecycle
fixtures (oldest / current / future) prove lossless loading, and the
config auditor gains the 0/3/2 exit-code contract.

User-Visible: yes
Issue: #33
2026-08-30 12:42:31 +03:00
claude[bot] 1e0e7ccf21 docs: review document for #33
Issue: #33
User-Visible: no
2026-08-30 09:33:39 +00:00
Codex 1c1f9d8ea4 docs: #33 spec revision 3 per SPEC-REVIEW-33-r1
User-Visible: no
Issue: #33
2026-08-30 12:29:11 +03:00
claude[bot] 3653bbf807 docs: review document for #33
Issue: #33
User-Visible: no
2026-08-30 09:26:20 +00:00
Codex 8335191bff docs: #33 spec revision 2 — generated schema manifest, parity allow-list, lifecycle fixtures
User-Visible: no
Issue: #33
2026-08-30 12:17:14 +03:00
claude[bot] e5cef16ad7 docs: review document for #383
Issue: #383
User-Visible: no
2026-08-30 09:14:52 +00:00
Sergey Matyunin b1b1e7439b docs: refresh screenshot fingerprint
Issue: #383
User-Visible: no
2026-08-30 12:00:28 +03:00
claude[bot]andSergey Matyunin 0d5d2896a6 docs: review document for #383
Issue: #383
User-Visible: no
2026-08-30 11:56:35 +03:00
Sergey Matyunin 686557c5cf feat: add smooth furniture transforms
Issue: #383
User-Visible: yes
2026-08-30 11:56:35 +03:00
claude[bot]andSergey Matyunin 4a83bd0540 docs: review document for #383
Issue: #383
User-Visible: no
2026-08-30 11:54:51 +03:00
Sergey Matyunin 2103b86c17 docs: specify furniture transforms
Issue: #383
User-Visible: no
2026-08-30 11:54:51 +03:00
claude[bot] 95115de265 docs: review document for #385
Issue: #385
User-Visible: no
2026-08-30 08:54:32 +00:00
Codex e561e5fc5d fix: drop the unreachable virtual-radio guard, keep honest evidence (#385 r2-M1)
An already-checked radio input fires no change event, so the same-binding
guard on the virtual branch was dead code and its smoke assert vacuous.
Removed both; a comment documents why the reset there is always
legitimate. The candidate-list guard (the reachable path) stays tested.

User-Visible: no
Issue: #385
2026-08-30 11:44:57 +03:00
claude[bot] c872c93516 docs: review document for #385
Issue: #385
User-Visible: no
2026-08-30 08:41:44 +00:00
claude[bot] 2e77fe09a5 docs: review document for #385
Issue: #385
User-Visible: no
2026-08-30 08:24:40 +00:00
Codexandclaude[bot] 223f499e37 fix: audit-lows batch from the v1.69.0 audit (#385)
(a) a same-binding click in the marker dialog is a no-op: the value
source and badge reset only on an actual change of binding (#378 §1.6) —
both the candidate list and the virtual radio.
(b) rewriteMarkerControlReferences no longer plants value_badge /
value_source keys as undefined on markers that never had them.
(v) the expensive release diff proof (2 git-show per src file) runs only
for commits the SAME shared predicate classifies as release — both
disjuncts, including the Release: trailer.
(g) the paired neutralisation formats in space export are documented in
place and pinned by a combined badge+value_source pytest.

User-Visible: yes
Issue: #385
2026-08-30 08:24:40 +00:00
Matysh fbbea47545 ci: name the commit that actually broke golden
Упавший тяжёлый гейт не пишет маркер переиспользования — и правильно, иначе
починка осталась бы незамеченной. Но следствие в том, что следующий коммит
гонит ту же job на тех же входах, падает так же, и письмо «Run failed»
называет его. 29 августа так был назван 0f7b6f5, документ ревью, который не
может изменить ни одного пикселя: сцену без эталона добавил dbbe94ae.

Теперь падение оставляет второй маркер — с тем же ключом, что у маркера
успеха. Совпадение ключа доказывает равенство входов, поэтому повторное
падение может честно сказать «красная с такого-то SHA, этот коммит её не
ронял», а первое — «причина здесь». Само падение по-прежнему не кэшируется:
job прогоняется всегда, меняется только формулировка в notice и summary.

Первопричина записывается только на первом падении: иначе SHA съехал бы на
свидетеля и сообщение перевернулось бы смыслом.

Issue: #386
User-Visible: no
2026-08-30 11:23:35 +03:00
claude[bot] 75d11d7c2e docs: review document for #384
Issue: #384
User-Visible: no
2026-08-30 08:10:21 +00:00