Add authentication and user management — Phase 3: Required Changes #40

Closed
opened 2026-05-28 00:47:22 +00:00 by Mark · 2 comments
Owner

Phase 3: Required Changes

  1. Authentication

    • Login/logout functionality
    • JWT token management
    • Session handling
    • Password reset flow
  2. Authorization

    • Role-based access (admin, operator, viewer)
    • Permission checks on API calls
    • UI element visibility based on role
  3. User Management

    • Create/edit/delete users
    • API key management
    • Audit logging

Decomposed from docker_backup#3

## Phase 3: Required Changes 1. **Authentication** - Login/logout functionality - JWT token management - Session handling - Password reset flow 2. **Authorization** - Role-based access (admin, operator, viewer) - Permission checks on API calls - UI element visibility based on role 3. **User Management** - Create/edit/delete users - API key management - Audit logging --- _Decomposed from [docker_backup#3](https://forgejo.tail018ac4.ts.net/Mark/docker_backup/issues/3)_
Author
Owner

⏸ Needs Decision

Blocking factors:

  • Didn't meet auto-approve criteria — scope=medium, risk=medium, spec=partial

Scope: medium Risk: medium Spec: partial Type: feature
Summary: Add authentication and user management — Phase 3: Required Changes
Suggestion: needs investigation
Rationale:

Action: Review each blocking factor above. Remove blocked:needs-decision label to route back to triage.

## ⏸ Needs Decision **Blocking factors:** - **Didn't meet auto-approve criteria** — scope=medium, risk=medium, spec=partial --- **Scope:** medium **Risk:** medium **Spec:** partial **Type:** feature **Summary:** Add authentication and user management — Phase 3: Required Changes **Suggestion:** needs investigation **Rationale:** **Action:** Review each blocking factor above. Remove `blocked:needs-decision` label to route back to triage.
Author
Owner

⏸ Needs Decision

What needs to be decided?

  • Should this be split into smaller sub-issues? If yes, remove the blocked:needs-decision label and the triage will create a decomposition issue.
  • Do you want to proceed despite the risk? If yes, remove the blocked:needs-decision label and the triage will approve it.

Blocking factors:

  • Large scope — may need decomposition into phased sub-issues
  • High risk — needs human sign-off before proceeding

Scope: large Risk: high Spec: aligned Type: feature
Summary: Add complete authentication system with JWT-based login/logout, RBAC (admin/operator/viewer), and user management CRUD with API keys and audit logging.
Suggestion: This is too large for a single pass — decompose into sub-issues: (1) auth module (login page, JWT, sessions, state store), (2) authorization layer (route guards, permission middleware, UI visibility), (3) user management pages (CRUD table, API key management, audit log viewer). Build auth first so downstream pieces have a foundation to build on.
Rationale: SCOPE=large: Authentication touches the API layer, routing, state management, multiple new pages (login, user admin, API keys), and RBAC modifiers across existing UI — conservatively 15+ files. RISK=high: Security-sensitive code (JWT, passwords, RBAC) with no test framework configured means no regression safety net; auth bugs are hard to retrofit. SPEC=aligned: Explicitly decomposed from existing issue #3 and fits the project's shadcn/ui + Zustand architecture.

To unblock: Remove the blocked:needs-decision label. The triage will apply the appropriate outcome based on your choice above.

## ⏸ Needs Decision **What needs to be decided?** - **Should this be split into smaller sub-issues?** If yes, remove the `blocked:needs-decision` label and the triage will create a decomposition issue. - **Do you want to proceed despite the risk?** If yes, remove the `blocked:needs-decision` label and the triage will approve it. **Blocking factors:** - **Large scope** — may need decomposition into phased sub-issues - **High risk** — needs human sign-off before proceeding --- **Scope:** large **Risk:** high **Spec:** aligned **Type:** feature **Summary:** Add complete authentication system with JWT-based login/logout, RBAC (admin/operator/viewer), and user management CRUD with API keys and audit logging. **Suggestion:** This is too large for a single pass — decompose into sub-issues: (1) auth module (login page, JWT, sessions, state store), (2) authorization layer (route guards, permission middleware, UI visibility), (3) user management pages (CRUD table, API key management, audit log viewer). Build auth first so downstream pieces have a foundation to build on. **Rationale:** SCOPE=large: Authentication touches the API layer, routing, state management, multiple new pages (login, user admin, API keys), and RBAC modifiers across existing UI — conservatively 15+ files. RISK=high: Security-sensitive code (JWT, passwords, RBAC) with no test framework configured means no regression safety net; auth bugs are hard to retrofit. SPEC=aligned: Explicitly decomposed from existing issue #3 and fits the project's shadcn/ui + Zustand architecture. **To unblock:** Remove the `blocked:needs-decision` label. The triage will apply the appropriate outcome based on your choice above.
Mark 2026-06-15 05:50:41 +00:00
Sign in to join this conversation.
No description provided.