Project

General

Profile

Actions

User Story #238

open

Epic #3: Implement a secure user authentication system

Feature #160: User Login

As a user, I want to enable and disable TOTP from my profile, so that I can manage my two-factor authentication settings

User Story #238: As a user, I want to enable and disable TOTP from my profile, so that I can manage my two-factor authentication settings

Added by Bricklou 11 days ago. Updated about 2 hours ago.

Status:
In Progress
Priority:
Normal
Assigned To:
Start date:
08/12/2026
Due date:
% Done:

0%

Estimated time:
(Total: 0:00 h)

Description

This user story covers self-service TOTP setup and management from the user profile UI.

Acceptance requirements:

  • Users can initiate TOTP setup: the app generates a secret and displays a QR code and manual entry code
  • Users must confirm with a valid OTP code before TOTP is activated (prevents locking out on misconfigured authenticator)
  • Users can disable TOTP (requires providing a current OTP code or password as confirmation)
  • The profile UI shows the current MFA status (enabled / disabled)

Subtasks 5 (5 open0 closed)

Sub-Task #244: API endpoint: initiate TOTP setup (generate secret, return base32 + otpauth URL)In ProgressBricklou08/20/2026

Actions
Sub-Task #245: API endpoint: confirm and activate TOTP (verify OTP code before persisting secret)Draft08/12/2026

Actions
Sub-Task #247: API endpoint: disable TOTP (requires current OTP code or password confirmation)In ProgressBricklou08/20/2026

Actions
Sub-Task #248: Frontend: TOTP setup wizard (QR code display, manual entry, confirmation code input)Draft08/12/2026

Actions
Sub-Task #249: Frontend: MFA management section in user profile (enable/disable/status)Draft08/12/2026

Actions

Updated by Bricklou 11 days ago Actions #1

  • Subtask #244 added

Updated by Bricklou 11 days ago Actions #2

  • Subtask #245 added

Updated by Bricklou 11 days ago Actions #3

  • Subtask #247 added

Updated by Bricklou 11 days ago Actions #4

  • Subtask #248 added

Updated by Bricklou 11 days ago Actions #5

  • Subtask #249 added

Updated by Bricklou 11 days ago Actions #6

  • Subtask #250 added

Updated by Bricklou 2 days ago Actions #7

  • Subtask deleted (#250)

Updated by Bricklou 2 days ago Actions #8

  • Status changed from Draft to To Do

Updated by Bricklou 2 days ago Actions #9

  • Status changed from To Do to Planned
  • Assigned To set to Bricklou
  • Start date deleted (08/12/2026)

Updated by Bricklou 2 days ago Actions #10

  • Status changed from Planned to In Progress
  • Start date set to 08/20/2026

Updated by Anonymous 2 days ago Actions #11

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous 2 days ago Actions #12

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous 2 days ago Actions #13

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous 2 days ago Actions #14

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous 2 days ago Actions #15

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous 2 days ago Actions #16

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous 2 days ago Actions #17

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 22 hours ago Actions #18

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 20 hours ago Actions #19

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 20 hours ago Actions #20

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 20 hours ago Actions #21

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 19 hours ago Actions #22

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 19 hours ago Actions #23

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 18 hours ago Actions #24

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 18 hours ago Actions #25

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 9 hours ago Actions #26

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 9 hours ago Actions #27

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 8 hours ago Actions #28

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 6 hours ago Actions #29

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 6 hours ago Actions #30

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 6 hours ago Actions #31

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 3 hours ago Actions #32

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 3 hours ago Actions #33

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 2 hours ago Actions #34

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 2 hours ago Actions #35

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 2 hours ago Actions #36

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Updated by Anonymous about 2 hours ago Actions #37

Commit referenced this issue: @45@

https://codeberg.org/api/v1/repos/Bricklou/kubestro/pulls/21

This is a very large PR because it adds a lot of missing bricks required to make the whole workflow works.

Actions

Also available in: PDF Atom