Skip to content

feat(admin): add operational dashboard API - #327

Merged
dDevAhmed merged 2 commits into
DigiNodes:mainfrom
Leemxiey:BE-035-operational-dashboard-api
Aug 31, 2026
Merged

feat(admin): add operational dashboard API#327
dDevAhmed merged 2 commits into
DigiNodes:mainfrom
Leemxiey:BE-035-operational-dashboard-api

Conversation

@Leemxiey

Copy link
Copy Markdown

BE-035 — Implement Backend Operational Dashboard API

Closes #302

@dDevAhmed

Copy link
Copy Markdown
Contributor

reslove conflicts @Leemxiey

…shboard API)

- Combine admin.module.ts imports and modules from both branches
- Include ProtocolAdminService/Controller, FeatureFlagsModule, BullModule.registerQueue from main
- Keep NotificationModule, MetricsModule, Claim entity from BE-035 branch
- Combine notification.service.ts methods: getWebhookMetrics and resolveChannels from BE-035, getUnreadCount from main
- Add NotificationType to imports in notification.service.ts
@Leemxiey

Leemxiey commented Aug 2, 2026

Copy link
Copy Markdown
Author

Closes #302

Copy link
Copy Markdown
Contributor

@Leemxiey the current head bf84889a325bc222a4c22efc0bfb44a1b01826a9 remains conflict-blocked and its CI run failed.

Please rebase onto current main, resolve the admin/metrics/notifications conflicts, and rerun the full build, lint, tests, and security checks. The operational dashboard endpoints must be authenticated and role-restricted, must not expose secrets or sensitive user data, and must consume health/projection metrics without adding protocol mutation authority.

Push the corrected head and request another review once CI is green.

@dDevAhmed
dDevAhmed merged commit be27b22 into DigiNodes:main Aug 31, 2026

Copy link
Copy Markdown
Contributor

@Leemxiey PR #327 was merged at head bf84889a325bc222a4c22efc0bfb44a1b01826a9 despite the unresolved review. Please open a focused remediation PR or request a maintainer-approved revert:

  • Required CI failed, the head remained conflict-blocked, and there is no approving human review for these admin/operational endpoints.
  • Protocol counts are incorrect: activeClaims already counts finalized: false, but pendingClaims subtracts all finalized claims from it; resolvedClaims = total - pending - finalized then compounds the error. Derive every lifecycle count from canonical indexed states and add partition/invariant tests.
  • Health data includes hardcoded database.latencyMs: 0 and collapses dependency failures to only “degraded,” so the dashboard can present fabricated latency and insufficiently fail closed. Measure real bounded latency and distinguish unhealthy/unavailable/unknown.
  • Every narrow endpoint calls getOperationalSummary(), triggering all database, Redis, queue, notification, webhook, metrics, and claim queries. Split collectors, bound/timeout dependency calls, and test partial dependency failure so one slow subsystem cannot hang every admin endpoint.
  • Prove class-level authentication/role enforcement for each new route and ensure requestsByRoute, queue/webhook details, and infrastructure status are sanitized.

Please rebase the remediation onto current main, run full build/lint/tests/security checks, and obtain explicit authentication/operations maintainer approval before #302 is treated as completed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

BE-035 — Implement Backend Operational Dashboard API

3 participants