| Filename | Latest commit message | Latest commit date |
|---|---|---|
The reading of the full reading's fixes found (C1) that refusing a member whose clock ran ahead protected only the reset's own session: a session made on that member in the gap, by whoever knew the old password, outlived both the member's ending and the register's notice. issueSessionAfter now ends every session of the account here made before the register's moment or before now, whichever is later, then makes the new one, neither waiting nor refusing; and the register sends its clock with each notice (sentAt), so a member takes the moment by its own clock (as long before now as it was before it was sent), ending the gap's sessions and leaving those made since. The passwordChanged refusal, sent only by the clock checks, goes with them (unreleased). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me> |
||
| .. | ||
| lib | ||
| test | ||
| .gitignore | ||
| analysis_options.yaml | ||
| CHANGELOG.md | ||
| LICENSE | ||
| pubspec.yaml | ||
| README.md | ||
halkyon_base_client
The client of halkyon_base, generated by Serverpod:
what a Halkyon app calls to sign in, to manage its account, and to learn an instance's
basics, under client.base in the app's own client. Never edited by hand; run
serverpod --no-analytics generate in halkyon_base_server instead.
The one exception is SRP-6a's client half (ADR 0017), written by hand beside the
generated code, which the generator leaves alone (it writes only lib/src/protocol/):
package:halkyon_base_client/srp.dart, tested by dart test here. The module's README
says how it pairs with the register's half.
Under the GNU Affero General Public License 3.0 or later.