3f04911070
feat(billing): plan taxonomy reconciliation + Stripe sync + internal-tester allowlist ( #164 )
...
CI / frontend (push) Successful in 6m40s
Mirror to GitHub / mirror (push) Successful in 7s
CI / e2e (push) Successful in 10m7s
CI / backend (push) Successful in 10m34s
Co-authored-by: Michael Chihlas <michael@resolutionflow.com >
Co-committed-by: Michael Chihlas <michael@resolutionflow.com >
2026-05-11 05:07:07 +00:00
f1be3abcc5
feat: self-serve signup Phase 2 (frontend cutover) ( #162 )
...
CI / e2e (push) Has been cancelled
CI / frontend (push) Has been cancelled
CI / backend (push) Has been cancelled
Mirror to GitHub / mirror (push) Has been cancelled
Co-authored-by: Michael Chihlas <michael@resolutionflow.com >
Co-committed-by: Michael Chihlas <michael@resolutionflow.com >
2026-05-07 18:42:20 +00:00
chihlasm
4037a5213e
fix(admin): use EmailStr for owner_email validation in AdminAccountCreate
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-14 21:25:03 +00:00
chihlasm
0ed5977fee
feat(admin): allow setting owner when creating an account
...
Adds optional owner_email field to the Create Account modal. Superadmin
can specify an existing user's email to assign as account owner at
creation time. Backend 404s with a clear message if the email is unknown.
Error detail now surfaces to the toast instead of a generic message.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-14 14:30:23 +00:00
chihlasm
c5b8229ef6
fix(admin): allow owner and admin account roles in user creation and role management
...
Four places were hardcoded to engineer|viewer only:
- AccountRoleUpdate schema (user.py) — blocked PUT /admin/users/{id}/account-role at the API level
- AdminUserCreate schema (admin.py) — blocked creating users with owner/admin role
- AccountDetailPage role dropdowns (create form + inline member role changer)
- AccountsPage create user role dropdown
Now all four accept the full set: owner, admin, engineer, viewer.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-14 13:24:17 +00:00
chihlasm
a71f082e25
feat: extract admin account management rework from PR 124 ( #138 )
...
* feat: reorganize admin panel around accounts
* feat: expand admin customer account controls
* feat: add admin account detail management
* fix: remove unused admin account icon import
* refactor: design critique fixes for account pages
- Admin accounts: replace dense card grid with compact DataTable
- Account settings: remove redundant hero card, stat grid, header pills
- Fix bg-accent (orange) misuse on decorative elements across 7 files
- Add ConfirmButton for destructive actions (deactivate, remove member)
- Replace single-field modals with inline editing (plan, trial)
- Add contextual help: display code tooltip, improved empty states
- Non-owner aside explanation for hidden owner-only sections
- Admin sidebar: group 11 items into 5 labeled sections
- Rename UsersPage.tsx → AccountsPage.tsx to match route
- Fix border radius consistency, hide zero-count badges
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* fix: use get_admin_db for all new admin account endpoints
All admin endpoints query across tenants without a tenant context.
get_db (app-role, subject to RLS) was never imported and would crash
at runtime — replace all 6 occurrences with get_admin_db (BYPASSRLS).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-13 04:44:51 -04:00
chihlasm
ad59446332
feat: user management — admin create, password reset, archive/delete, quick invite
...
Phase 1: must_change_password enforcement + change password endpoint/page
Phase 2: Admin user creation (M365-style) with temp password
Phase 3: Password reset (self-service forgot + admin-triggered)
Phase 4: User archive (soft delete) + hard delete with precheck
Phase 5: Quick invite from admin Users page
Also fixes:
- Auto-create subscription for accounts missing one
- Hard delete precheck ignores sole-member personal accounts
- Seed script patches tree nodes for validation compliance
Migrations: 031 (must_change_password), 032 (password_reset_tokens), 033 (user soft delete)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-13 01:42:51 -05:00
Michael Chihlas
b570f8415f
feat: implement full admin panel with dashboard, user management, and platform settings
...
Adds complete super_admin panel with 9 pages and account owner categories page.
Backend includes 5 new DB tables, ~25 API endpoints, settings manager with
in-memory cache, and 29 integration tests. Frontend includes reusable admin
components (DataTable, Pagination, ActionMenu, etc.) with code-split lazy loading.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-08 06:05:59 -05:00