style(web): add space before passphrase divider (#208) - #210
Conversation
Implementation evidence — Issue #208Exact HEAD: Change
Regression coverageProduction Chrome layout smoke verifies:
Behavior preservationNo Recovery Package, Recovery Passphrase, Trusted Browser, authorization, secret persistence/logging, Factory Reset, Device, Protocol, or Vault behavior changed. Exact-head CI
Collision / staleness
Implementation has not approved or merged this PR. |
miso-develop
left a comment
There was a problem hiding this comment.
Review disposition: READY_FOR_INTEGRATION
Reviewed exact PR head 0b271a9c293e9478ebc4b0363f17f7e7637f0ee4 against Issue #208, parent usability spec #137, and the integrated #203 Security & Recovery divider baseline.
No blocking finding identified.
Change verification:
- Production change is limited to
web/src/style.css; the only other changed file is focused production Chrome layout coverage. - Shared
.security-subsectionbaseline remains unchanged at:margin-top: 28px;padding-top: 24px;- one
1px solid #e5e5e5top border.
- Only the stable semantic identity
[data-security-subsection="change-passphrase"]receives the increased pre-divider separation. - Desktop/default top margin is
48px, satisfying the >=40px requirement. - At <=560px, top margin is reduced only to
40px, still greater than generic subsection spacing and not collapsed. - Because
margin-topbelongs to the subsection container whoseborder-topis the divider, the added whitespace is correctly placed above the divider, not between divider and heading. - Divider-to-heading spacing remains the existing 24px padding.
- No second border,
hr, card, wrapper, or localized-text selector was introduced. - Recovery Package retains the generic 28px subsection spacing.
Behavior/security preservation:
security-panel.tsis unchanged.- Recovery Package import/export behavior is unchanged.
- Recovery Passphrase input clearing, enable/disable state, authorization, Trusted Browser state handling, browser-state locking, and security-mutation guards are unchanged.
- Factory Reset danger boundary is unchanged.
- No Device, Protocol, Vault, TOTP, credential persistence/logging, or runtime behavior is changed.
Responsive/localization/layout verification:
- Existing EN/JA heading/localization assertions remain in the production layout smoke.
- Desktop smoke asserts Change Recovery Passphrase margin >=40px and greater than Recovery Package's 28px.
- The single neutral CSS divider and absence of decorative
hrremain asserted. - Narrow 540px production layout asserts >=40px spacing, greater-than-generic separation, and no horizontal overflow.
- #203 sticky-header, major-section divider, Factory Reset, Firmware divider, and async Build information layout coverage remains in the same smoke suite.
Exact-head CI independently checked:
- Foundation #933: SUCCESS.
- Web unit suite: 38 files / 300 tests passed.
- Linux production Chrome smoke: SUCCESS.
- normal Web build / lockfile verification: SUCCESS.
- Windows Chrome smoke: SUCCESS.
- firmware regressions and isolated ESP-IDF build/package validation: SUCCESS.
- Security #936: SUCCESS, including repository security scan and existing release/security contracts.
Staleness/collision:
- Handoff HEAD matches current PR HEAD.
- PR is open, non-draft, and mergeable.
- Current
mainadvanced from PR base40f7061eb89dcc676599d7f74f1b45037e589ea2to3432bcda8af5a4c4a09bafadebec9ae1484f9460. - The intervening main commit changes only
README.mdandREADME.ja.md; it does not overlapweb/src/style.cssor the layout smoke. - PR #206 owns Web Serial transport files only and does not overlap #208.
No additional Security review or physical Human Gate is required for this presentation-only spacing adjustment.
READY_TO_MERGEHEAD: Integration reconstruction:
STATE: READY_TO_MERGE |
INTEGRATEDPR: #210 Integration evidence:
STATE: INTEGRATED |
Closes #208
Parent spec: #137
Change
.security-subsectionbaseline at 28pxdata-security-subsection="change-passphrase"identity from [Task][Web] Keep header visible and normalize Recovery/Firmware dividers #203hr, card, or markup wrapperRegression coverage
Production Chrome layout smoke now verifies:
hris introducedPreserved behavior
No changes to:
Base / collision
40f7061eb89dcc676599d7f74f1b45037e589ea2web/src/style.cssor Provisioning layout smokeExact-head CI evidence pending.