spec: align user-authentication password requirement with ASCII 8-72 policy (WealthLedger/specs#46) #47

Merged
codex-bot merged 1 commits from spec/46-ascii-password-policy into develop 2026-10-16 10:47:41 +03:00
Owner

Summary

Спецификация user-authentication приведена к принятой password policy: регистрация — 8–72 печатных ASCII-символа, вход — непустой пароль до 72 UTF-8 байтов.

Linked Issue

Refs WealthLedger/specs#46
Refs WealthLedger/backend#60

Парная правка: WealthLedger/docs#46 (отдельный PR).

Changes

  • Requirement «Регистрация пользователя»: пароль без trim и нормализации, 8–72 печатных ASCII (U+0020–U+007E), прочие символы отвергаются, обязательных классов символов нет. Прежнее «12–72 UTF-8 байтов» удалено.
  • Requirement «Вход пользователя»: пароль непустой и не длиннее 72 UTF-8 байтов; минимум и набор символов не проверяются, чтобы пользователи с прежним паролем могли войти.
  • Новые сценарии: границы длины при регистрации, недопустимые символы, пробелы пароля не изменяются, вход с прежним не-ASCII паролем, пароль при входе длиннее 72 байтов.

Verification

  • npm run verify → pass.
  • npm run check:openspec → pass.
  • openspec validate --specs --strict --store wealth-ledger-specs → 32 passed, 0 failed. Предупреждения INFO о длине текста требований есть и у не изменённых требований.
  • Ограничения: сверено с реализацией по влитым PR backend#109 и frontend#89, не end-to-end.

Breaking Changes (если есть)

Нет. Спецификация описывает уже влитое в develop поведение.

## Summary Спецификация `user-authentication` приведена к принятой password policy: регистрация — 8–72 печатных ASCII-символа, вход — непустой пароль до 72 UTF-8 байтов. ## Linked Issue Refs WealthLedger/specs#46 Refs WealthLedger/backend#60 Парная правка: WealthLedger/docs#46 (отдельный PR). ## Changes - Requirement «Регистрация пользователя»: пароль без trim и нормализации, 8–72 печатных ASCII (U+0020–U+007E), прочие символы отвергаются, обязательных классов символов нет. Прежнее «12–72 UTF-8 байтов» удалено. - Requirement «Вход пользователя»: пароль непустой и не длиннее 72 UTF-8 байтов; минимум и набор символов не проверяются, чтобы пользователи с прежним паролем могли войти. - Новые сценарии: границы длины при регистрации, недопустимые символы, пробелы пароля не изменяются, вход с прежним не-ASCII паролем, пароль при входе длиннее 72 байтов. ## Verification - `npm run verify` → pass. - `npm run check:openspec` → pass. - `openspec validate --specs --strict --store wealth-ledger-specs` → 32 passed, 0 failed. Предупреждения INFO о длине текста требований есть и у не изменённых требований. - Ограничения: сверено с реализацией по влитым PR backend#109 и frontend#89, не end-to-end. ## Breaking Changes (если есть) Нет. Спецификация описывает уже влитое в `develop` поведение.
codex-bot added 1 commit 2026-10-16 10:11:54 +03:00
spec: align user-authentication password requirement with ASCII 8-72 policy (WealthLedger/specs#46)
Conventional commits / commits (pull_request) Successful in 11s
Specs security / security (pull_request) Successful in 7s
Specs verify / verify (pull_request) Successful in 10s
a82b127e2b
Register accepts 8-72 printable ASCII characters without trimming or
normalization; login only requires a non-empty password of at most 72 UTF-8
bytes so accounts created under the previous policy can still sign in.
Refs WealthLedger/backend#60.
codex-bot merged commit 1bd6181585 into develop 2026-10-16 10:47:41 +03:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: WealthLedger/specs#47