Commit graph

316 commits

Author SHA1 Message Date
Ashwin Kumar Sivakumar
7ae59fee20 fix: admin panel bugs found in QA audit
All checks were successful
build-and-release / build (push) Successful in 59s
- users: wire suspend/block buttons to PATCH /api/admin/users/:id/status
  (previously only mutated local state, reverted on refresh); add
  load/action error banners instead of silently emptying the table
- [...module]: stop rendering a dead localhost:9201 iframe for legacy
  modules when VITE_LEGACY_ADMIN_ORIGIN isn't configured (it never is
  in production); show a clear "not available" message instead
- dashboard: surface a banner when /api/admin/dashboard/metrics fails
  instead of silently showing "No Data" on every widget
- credit: fix stray extra closing </Show> tag that broke the whole
  file's JSX parse; restore missing API/authHeaders module helpers
  dropped in a previous refactor (AI Credits handlers referenced them
  but they were undefined); replace a dead, broken exportLedgerCsv/
  filteredLedger implementation with one matching actual call sites;
  fix activeTab type/tab keys so the Balance & Ledger and Platform
  Ledger tabs were actually reachable (they compared against 'balance'
  /'platform' but the tab buttons only ever set 'ledger')
- roles: surface errors when fetching a role's permissions for edit
  fails, instead of silently swallowing them
- runtime-roles: surface fetch/delete errors instead of silently
  swallowing them or presenting fallback sample data as if real

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-13 18:24:44 +05:30
Ashwin Kumar Sivakumar
98a41d833a fix(ci): push gitops updates via GitHub instead of direct-to-Forgejo
Some checks failed
build-and-release / build (push) Failing after 57s
GITOPS_PAT auth was failing against Forgejo. GitHub is the source of
truth for nxtgauge-gitops; push there and let sync-to-forgejo.yml
relay to Forgejo, which Flux actually watches.
2026-07-12 23:00:58 +05:30
Ashwin Kumar Sivakumar
697a4b0d92 fix(ci): use GITOPS_PAT for gitops push, not never-configured SSH secrets
Some checks failed
build-and-release / build (push) Failing after 1m34s
Same fix as nxtgauge-frontend-solid: GITEOPS_REPO/GITEOPS_SSH_KEY were
never configured as repo secrets. Switch to an HTTPS clone with
GITOPS_PAT, matching nxtgauge-backend-rust's already-working workflow.
2026-07-12 18:37:20 +05:30
Ashwin Kumar Sivakumar
7f4351550a fix(ci): tolerate whitespace in buildx metadata-file digest grep
Some checks failed
build-and-release / build (push) Failing after 1m39s
Same fix as nxtgauge-frontend-solid: buildx writes its metadata file
pretty-printed, so the compact ":"-only grep pattern never matched,
failing the build-and-push step right after a successful push and
skipping the GitOps-release step. Match backend-rust's
whitespace-tolerant pattern.
2026-07-12 18:32:57 +05:30
Ashwin Kumar Sivakumar
f94dafdf7c fix(ci): detect docker gateway instead of hardcoding 127.0.0.1
Some checks failed
build-and-release / build (push) Failing after 1m17s
Same fix as nxtgauge-backend-rust and nxtgauge-frontend-solid: every
build here has been failing with "Cannot connect to the Docker daemon
at tcp://127.0.0.1:2375" since the job container is nested inside the
runner pod's dind sidecar. Detect the real gateway from
/proc/net/route instead of hardcoding loopback.
2026-07-12 18:28:38 +05:30
Ashwin Kumar Sivakumar
ef8f4410c7 fix: dead Add Note buttons and no-op row click in admin review pages
Some checks failed
build-and-release / build (push) Failing after 1m16s
- verification/[id].tsx: "Add Note" in the Reviewer Notes panel had no
  onClick — wired to the existing POST /api/admin/verifications/:id/notes
  endpoint.
- approval/index.tsx: Decision Notes textarea was uncontrolled and its
  "Add Note" button was a no-op; there's no standalone notes endpoint
  for approval_requests, so the textarea is now bound to state and its
  value is sent as the rejection reason when the reviewer rejects
  (the only channel the backend currently supports).
- support.tsx: removed a no-op onClick={() => {}} on the case row —
  the row isn't actually clickable, only the adjacent "View" link is
  (though that link's target route doesn't exist yet — flagged
  separately, out of scope here).
2026-07-12 17:59:03 +05:30
Ashwin Kumar Sivakumar
e78b7c2642 fix: Update Dockerfile to use ci.nxtgauge.com registry
Some checks failed
build-and-release / build (push) Failing after 1m3s
2026-07-08 03:37:18 +05:30
Ashwin Kumar Sivakumar
78b6558539 fix: Storybook import path for onboarding-management
- Update import from non-existent onboarding-management to onboarding-schemas/index
2026-07-06 22:02:39 +05:30
Ashwin Kumar Sivakumar
a5bfe63f78 ci: remove GitHub Actions workflow - using Forgejo CI exclusively
Some checks failed
build-and-release / build (push) Failing after 1m11s
- Remove build-and-deploy-forgejo.yml from GitHub Actions
- Forgejo CI at ci.nxtgauge.com now handles all builds and deployments
- All images pushed to Forgejo registry (ci.nxtgauge.com/ashwin/*)
2026-07-06 04:19:48 +05:30
Ashwin Kumar Sivakumar
fa9e221fe3 fix(ci): switch from GHCR to Forgejo registry
Some checks failed
build-and-release / build (push) Failing after 1m15s
- Update workflow to push to ci.nxtgauge.com/ashwin/nxtgauge-admin-solid
- Use FORGEJO_USERNAME and FORGEJO_TOKEN secrets
- Fix gitops repo cloning to use x-access-token
2026-07-06 03:49:11 +05:30
Ashwin Kumar Sivakumar
43d181bf5a fix: JSX structure in credit.tsx
Some checks failed
build-and-release / build (push) Failing after 1m11s
- Fix nested tag structure: AI Credits tab was incorrectly nested inside Platform Ledger section
- Close Platform Ledger section before starting AI Credits tab
- Move AI Credits tab to be a sibling of Platform Ledger tab, not a child
- Wrap AI Credits content in proper section element for consistent styling

Fixes build errors in admin-solid
2026-07-06 03:04:14 +05:30
Ashwin Kumar Sivakumar
578fb2c5a1 fix: JSX structure in credit.tsx
Some checks failed
build-and-release / build (push) Failing after 1m10s
- Fix nested tag structure: AI Credits tab was incorrectly nested inside Platform Ledger section
- Close Platform Ledger section before starting AI Credits tab
- Move AI Credits tab to be a sibling of Platform Ledger tab, not a child
- Wrap AI Credits content in proper section element for consistent styling
2026-07-06 02:49:39 +05:30
Ashwin Kumar Sivakumar
059c7569c4 feat: Add AI Credits admin UI on high-performance branch (Task 2)
Some checks failed
build-and-release / build (push) Failing after 1m10s
- pricing.tsx: AI Credit Packages tab
- credit.tsx: AI Credits panel with Balance/Ledger/Adjust/Reconcile
2026-07-06 01:49:44 +05:30
Ashwin Kumar Sivakumar
2d02d5f26f ci(forgejo): update admin build pipeline
Some checks failed
build-and-release / build (push) Failing after 0s
2026-07-03 19:51:38 +05:30
Ashwin Kumar Sivakumar
b7023648a6 ci: sync GitHub pushes to Forgejo
Some checks failed
build-and-release / build (push) Failing after 0s
2026-07-03 18:58:29 +05:30
Tracewebstudio Dev
69079caa1d feat: admin invoice/credit/pricing UI overhaul with auth token injection
Some checks failed
build-and-release / build (push) Failing after 0s
- Inject Bearer token from sessionStorage into all API requests
- Add typed API helpers for invoices, credits, discounts, ledger, orders, pricing, tax
- Overhaul invoice, credit, pricing, tax admin routes with full CRUD UI
- Remove committed log files

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-02 13:51:08 +02:00
Ashwin Kumar Sivakumar
2f042bbc15 Merge branch 'high-performance' of https://github.com/Traceworks2023/nxtgauge-admin-solid into high-performance 2026-07-02 06:51:14 +05:30
Ashwin Kumar Sivakumar
4623d7c371 Update Dockerfile 2026-07-02 06:51:03 +05:30
Tracewebstudio Dev
22fe140987 Refine admin Razorpay gateway screen 2026-06-26 21:08:26 +02:00
Ashwin Kumar Sivakumar
d13fc3218a Update Forgejo admin publish workflow 2026-06-17 03:28:45 +05:30
Ashwin Kumar Sivakumar
becc90b48c fix(ci): isolate gitops checkout dir 2026-06-16 03:29:01 +05:30
Ashwin Kumar Sivakumar
34f7bf744c fix(ci): retry gitops sync pushes 2026-06-16 01:26:32 +05:30
Ashwin Kumar Sivakumar
15df115504 fix(ci): run admin deploys on self-hosted runners 2026-06-16 00:50:03 +05:30
Ashwin Kumar Sivakumar
41b3bf3e1d Merge remote high-performance: keep local AI management page and resolve conflicts 2026-06-15 06:19:36 +05:30
Ashwin Kumar Sivakumar
446152648f feat(ai): add AI management page and sidebar link 2026-06-15 06:19:17 +05:30
Tracewebstudio Dev
f511a3c31a feat: add AI management page to admin panel
New AI Management page (/admin/ai-management):
- Overview tab: AI users, daily/monthly generations, active plans
- User Usage tab: searchable table with plan, usage, addon balance
- Plans tab: grid of available AI plans

Sidebar:
- Added AI Management nav item with Sparkles icon

Dashboard:
- Added kpi_ai_users widget
- Added kpi_ai_generations_today widget

Files:
- src/routes/admin/ai-management.tsx (new)
2026-06-14 20:28:38 +02:00
Ashwin Kumar Sivakumar
8ad3f091aa fix(ci): deploy via gitops from github actions 2026-06-14 23:05:23 +05:30
Ashwin Kumar Sivakumar
d32afaed0b fix(ci): use lowercase ghcr image names 2026-06-14 22:57:54 +05:30
Ashwin Kumar Sivakumar
7dfa08f148 ci: deploy admin via github actions and ghcr 2026-06-14 22:48:56 +05:30
Ashwin Kumar Sivakumar
5422cf4af0 fix(ci): deploy admin via immutable gitops release
Some checks failed
build-and-release / build (push) Failing after 3s
2026-06-14 05:52:49 +05:30
Ashwin Kumar Sivakumar
a1bbff87b1 chore: rebuild all
Some checks failed
build-and-push / build (push) Failing after 2s
2026-06-13 18:32:15 +05:30
Ashwin Kumar Sivakumar
bd29c678cd fix: remove push preflight from forgejo mirror sync 2026-06-11 19:29:41 +05:30
Ashwin Kumar Sivakumar
9037b1a694 fix: trigger forgejo mirror sync via api 2026-06-11 19:14:46 +05:30
Ashwin Kumar Sivakumar
915b088284 fix: use basic auth for forgejo sync 2026-06-11 18:56:39 +05:30
Ashwin Kumar Sivakumar
dff45b83cc fix: use existing forgejo mirror secrets 2026-06-11 18:19:10 +05:30
Ashwin Kumar Sivakumar
26c6140c74 fix: point forgejo sync to ashwin namespace 2026-06-11 18:00:03 +05:30
Ashwin Kumar Sivakumar
75a93cf476 chore: migrate ci naming to forgejo 2026-06-11 17:17:42 +05:30
Ashwin Kumar Sivakumar
4b59338d2c chore: trigger rebuild 2026-06-08 21:22:40 +05:30
Tracewebstudio Dev
ee45ea44db Resolve conflicts: remove Woodpecker CI, use Gitea
Some checks failed
build-and-push / build (push) Failing after 0s
2026-05-08 15:41:06 +02:00
Tracewebstudio Dev
394046fdb3 Update admin session, gateway, jobs/leads routes, login, and add API me endpoint 2026-05-08 15:34:46 +02:00
Tracewebstudio Dev
0e44cfa181 Update Woodpecker CI/CD configuration 2026-05-08 15:34:39 +02:00
Tracewebstudio Dev
b117514df7 chore: trigger gitea pipeline 2026-05-05 20:26:49 +02:00
Tracewebstudio Dev
6e848d221f ci: trigger rebuild 2026-05-05 18:54:26 +02:00
Tracewebstudio Dev
198da5f492 ci: skip gitops update if GITEOPS_REPO secret not set 2026-05-01 18:46:04 +02:00
Tracewebstudio Dev
f76cab8545 ci: update gitops with new SHA on each build (auto-deploy) 2026-05-01 11:04:23 +02:00
Tracewebstudio Dev
55aab42470 ci: add post-push registry prune (keep latest 1 SHA build) 2026-05-01 10:10:30 +02:00
Tracewebstudio Dev
7f2d17bade chore: trigger gitea pipeline 2026-05-01 00:17:44 +02:00
Tracewebstudio Dev
ac03dbc5e3 chore: trigger gitea pipeline 2026-05-01 00:14:33 +02:00
Tracewebstudio Dev
71427fcefb fix(ci): use docker socket instead of dind host 2026-04-30 22:54:24 +02:00
Tracewebstudio Dev
6766fdc95e chore: trigger gitea pipeline 2026-04-30 22:51:27 +02:00