Sergey Matyunin
3bf5a1db26
docs: protect orthogonal ray strips in multi-wall joins
...
Issue: #275
User-Visible: no
2026-08-24 01:18:56 +03:00
Sergey Matyunin
62dd02d823
docs: constrain multi-wall containment to rectilinear nodes
...
Issue: #275
User-Visible: no
2026-08-24 01:04:17 +03:00
Sergey Matyunin
762e9f4b32
docs: specify multi-wall strip containment
...
Issue: #275
User-Visible: no
2026-08-24 00:55:02 +03:00
Sergey Matyunin
c9b8497f58
fix: keep wireless controller face consistent
...
Issue: #274
User-Visible: yes
2026-08-23 22:24:32 +03:00
Sergey Matyunin
9b764277db
docs(spec): define wireless controller presentation parity
...
Issue: #274
User-Visible: no
2026-08-23 22:08:19 +03:00
Sergey Matyunin
21b04ed0c2
spec(walls): tighten multi-wall hole evidence
...
Issue: #272
User-Visible: no
2026-08-23 21:20:28 +03:00
Sergey Matyunin
dd4ebb7401
docs(spec): require hole-free multi-wall joins
...
Issue: #272
User-Visible: no
2026-08-23 21:20:28 +03:00
Sergey Matyunin
154af2692f
docs(spec): define finite multi-wall ray contract
...
Issue: #271
User-Visible: no
2026-08-23 21:06:00 +03:00
Sergey Matyunin
3ab3cdc1e4
docs: record optimizer topology evidence
...
Issue: #273
User-Visible: no
2026-08-23 20:23:08 +03:00
Sergey Matyunin
e2de0dbcc4
spec(optimize): narrow topology island guard
...
Issue: #273
User-Visible: no
2026-08-23 20:03:50 +03:00
Sergey Matyunin
b5fbe633a6
docs(spec): handle topology-adjacent thickness islands
...
Issue: #273
User-Visible: no
2026-08-23 19:41:22 +03:00
Sergey Matyunin
5fa2dc2893
docs: mark child re-add ready for review
...
Issue: #262
User-Visible: no
2026-08-23 16:41:15 +03:00
Sergey Matyunin
8cdf6b4894
fix: restore one child of a deleted device
...
Issue: #262
User-Visible: yes
2026-08-23 16:32:12 +03:00
Sergey Matyunin
7b3ea3769a
docs: specify child entity re-add lifecycle
...
Issue: #262
User-Visible: no
2026-08-23 16:19:48 +03:00
Sergey Matyunin
0d0a9dd87a
docs: record rebased implementation evidence
...
Issue: #261
User-Visible: no
2026-08-23 15:41:55 +03:00
Sergey Matyunin
0dc6c39784
fix: retain bounded T-junction masonry
...
Issue: #261
User-Visible: yes
2026-08-23 15:35:27 +03:00
Sergey Matyunin
9f6efd0c11
docs: specify multi-wall wedge repair
...
Issue: #261
User-Visible: no
2026-08-23 15:35:26 +03:00
Sergey Matyunin
b9a5f6c4e4
docs(spec): define stable wall key round-trip
...
Issue: #258
User-Visible: no
2026-08-23 14:18:10 +03:00
Sergey Matyunin
bfdeb493cb
fix: preserve wall thickness across partial resize
...
Issue: #253
User-Visible: yes
2026-08-23 11:42:43 +03:00
Sergey Matyunin
d9f7861c05
docs: specify lossless wall resize
...
Issue: #253
User-Visible: no
2026-08-23 11:19:47 +03:00
Sergey Matyunin and claude[bot]
eefe0fab94
docs: clarify orphan cleanup invariant
...
Issue: #252
User-Visible: no
2026-08-23 08:06:22 +00:00
Sergey Matyunin and claude[bot]
63db3ae4c6
docs: specify orphan layout cleanup
...
Issue: #252
User-Visible: no
2026-08-23 08:06:22 +00:00
Sergey Matyunin
2cb7c73cad
fix: separate controller and target availability
...
Issue: #251
User-Visible: yes
2026-08-23 08:08:17 +03:00
Sergey Matyunin
903bc0a345
docs(spec): separate controller and target availability
...
Issue: #251
User-Visible: no
2026-08-23 08:07:29 +03:00
Sergey Matyunin and claude[bot]
29904df6ee
fix: bound multi-wall junction bevels
...
Issue: #249
User-Visible: yes
2026-08-23 03:47:19 +00:00
Sergey Matyunin and claude[bot]
cb745c2035
docs(spec): address #249 review findings
...
Issue: #249
User-Visible: no
2026-08-23 03:47:19 +00:00
Sergey Matyunin and claude[bot]
5276cfdb15
docs(spec): define bounded multi-wall junctions
...
Issue: #249
User-Visible: no
2026-08-23 03:47:19 +00:00
Sergey Matyunin
2c776b0c6d
docs: specify opening centerline invariant
...
Issue: #250
User-Visible: no
2026-08-23 01:46:22 +03:00
Sergey Matyunin
cbdd5a7e73
fix: keep Optimize idempotent across storage reload
...
Issue: #248
User-Visible: yes
2026-08-23 01:13:27 +03:00
Sergey Matyunin
4d73d031a4
docs: specify optimize write-reload idempotence
...
Issue: #248
User-Visible: no
2026-08-23 00:56:25 +03:00
Sergey Matyunin
6a151d1ead
fix: preserve markers when deleting final space
...
Issue: #244
User-Visible: yes
2026-08-23 00:35:48 +03:00
Sergey Matyunin
f6f877e393
fix(spaces): repair orphaned plan references
...
Issue: #244
User-Visible: yes
2026-08-23 00:34:55 +03:00
Sergey Matyunin
dcfabcc8ef
docs(spec): state touch and kiosk impact
...
Close SPEC-REVIEW-244-r1 M1 by making restored-marker parity in desktop, touch, kiosk, and Static explicit while retaining the desktop-first editor contract.
Issue: #244
User-Visible: no
2026-08-23 00:34:32 +03:00
Sergey Matyunin
d34c7563e3
docs(spec): define orphan space reference recovery
...
Specify deterministic Optimize and import repair, safe marker detachment, guarded space deletion, and invalid default-floor feedback for issue #244 .
Issue: #244
User-Visible: no
2026-08-23 00:34:32 +03:00
Sergey Matyunin
0033138ab2
docs: specify centered opening symbols
...
Issue: #242
User-Visible: no
2026-08-22 20:08:48 +03:00
Sergey Matyunin
133fdc9c10
docs(spec): define reliable space tab drop target
...
Issue: #243
User-Visible: no
2026-08-22 19:40:31 +03:00
Sergey Matyunin
9410be6028
docs(spec): prove decor above room hover
...
Issue: #231
User-Visible: no
2026-08-22 18:19:42 +03:00
Sergey Matyunin
e023adbbe5
docs(spec): define decor layer composition
...
Issue: #231
User-Visible: no
2026-08-22 18:10:43 +03:00
Sergey Matyunin
b76f89a282
docs: define English Optimize failure copy
...
Issue: #199
User-Visible: no
2026-08-22 16:08:04 +03:00
Sergey Matyunin
0ac63b6296
docs: specify Optimize geometry preflight
...
Issue: #199
User-Visible: no
2026-08-22 15:58:53 +03:00
Sergey Matyunin
d5725c2fab
docs: specify coordinate storage invariant
...
Issue: #224
User-Visible: no
2026-08-22 14:28:22 +03:00
Sergey Matyunin
e8b3c861b2
docs(spec): add proof matrix for grid scale
...
Issue: #239
User-Visible: no
2026-08-22 12:59:18 +03:00
Sergey Matyunin
4c065f5ec4
docs(spec): define grid-scale visual invariance
...
Issue: #239
User-Visible: no
2026-08-22 12:49:46 +03:00
Sergey Matyunin
5582e9a35d
docs(spec): define opening inner-distance guides
...
Issue: #238
User-Visible: no
2026-08-22 12:24:49 +03:00
Sergey Matyunin
e44b3c97b0
docs: specify plan drawing repairs
...
Issue: #228
User-Visible: no
2026-08-22 10:55:08 +03:00
Matysh
bc8c368db9
docs(spec): keep a passage full length, read thickness atomically
...
Spec review r1 returned two blocking findings and both were right.
A measured side that is itself a passage would have been shortened by its
neighbouring walls, while insetContour — the very function the area label
already uses — treats that joint as a flat cap and shortens nothing. Length
and area would have diverged again, at a different boundary, which is the
defect this task exists to remove. The zero rule now comes first and returns
the full centreline length for an open side.
The thickness source was wrong as a matter of fact, not of taste: an
existing test shows thicknessCmAt returns 0 for a whole-edge query against a
partially set thickness, so a split-thickness edge would have silently
stopped shortening. Half-depths now come from roomWallProfile, the atomic
profile that innerContourForRoom already uses for the area, so one edge is
resolved by one mechanism.
Two acceptance criteria and two mutation guards added for the closed
findings.
Issue: #233
User-Visible: no
2026-08-22 03:20:06 +03:00
Matysh
77fa698a27
docs(spec): register the #233 spec in the index
...
Issue: #233
User-Visible: no
2026-08-22 03:00:05 +03:00
Matysh
7b0747888c
docs(spec): measure resize labels between wall faces
...
Issue: #233
User-Visible: no
2026-08-22 02:58:37 +03:00
Matysh and Sergey Matyunin
b2024c6626
docs(spec): state that i18n is untouched, name the zero case
...
The spec review found the i18n section missing outright — the analysis
comment claimed it was untouched, the document itself said nothing, and a
DoR section cannot be inferred from a comment. It now says so explicitly,
and adds that the absence of i18n files from the diff is part of the
contract rather than an accident.
The waived Low is closed too: the old wallChainSegments treated a recorded
zero as valid while the new contract requires strictly positive values, so
zero is now named in the AC1 examples instead of being derivable from the
prose.
Issue: #234
User-Visible: no
2026-08-21 19:41:37 +03:00
Matysh and Sergey Matyunin
f4098fcf09
docs(spec): register the #234 spec in the index
...
Issue: #234
User-Visible: no
2026-08-21 19:41:37 +03:00