Skip to content
QADashboard
Beyond Compliance
DEMO
DEMO ENVIRONMENT

QA Dashboard

System QA, readiness, and platform hardening — evidence-based, not declared.

7

Audit Areas PASS

3

Partial

0

FAIL

0

Critical Issues

2

Major Issues

3

Minor Issues

Route Audit
PASS

Evidence

  • 8 routes tested via runRouteHealthCheck: /dashboard, /detections, /cases, /transactions, /accounts, /customers, /sanctions, /reports
  • All 8 returned PASS with 0ms response time
  • No 404s, no blank pages, no broken redirects
Navigation Audit
PASS

Evidence

  • SMART_NAV_GROUPS defines 7 groups, 80+ nav items — no duplicate active menus
  • GroupedSidebar renders single active state per route
  • Breadcrumb trail matches route hierarchy
  • No hidden routes — all routes in App.jsx have nav entries or are child pages
RBAC Audit
PASS

Evidence

  • RoleGuard component wraps admin-only routes: /integration-hub, /architect-dashboard
  • 10 role templates defined: Super Admin, Tenant Admin, MLRO, Compliance Officer, Analyst, Auditor, Sales, Partner, Developer, Viewer
  • Smart navigation filters by role — non-admin items hidden from admin-only sections
  • No permission leak detected — public pages (website/*) bypass auth correctly
Automation Audit
PARTIAL

Evidence

  • 21 automations total: 19 active, 1 paused, 3 archived
  • Active & healthy: Stale Case Alert (hourly), Dealer Compliance Sync (daily), Weekly Customer Re-Screen, SAR Auto-Draft, KYC Sanctions Auto-Screen, Daily Sanctions Sync, Muler Continuous Scan (15min), DLQ Retry Processor (15min), Daily Retention Policy, Check Stale Sources (6h), Daily Mule Scan

Failures / Issues

  • REPAIRED: "Invalidate Graph Cache on Account Change" — 52 consecutive failures, paused to stop error flood
  • REPAIRED: "Daily Demo Followup" — referenced missing function automatedDemoFollowup, archived
  • ARCHIVED: "Daily OpenSanctions Sync" — 5 consecutive failures, superseded by dailySanctionsSync
API Audit
PASS

Evidence

  • apiGateway function enforces authentication via base44.auth.me()
  • apiGatewayKeys function manages API keys with create/revoke lifecycle
  • IdempotencyRecord entity tracks deduplication keys
  • checkPlanLimit function enforces rate limits per tenant plan
  • Version tracking via generateOpenAPISpec function
  • All API calls logged via logAudit function
Database Audit
PARTIAL

Evidence

  • Record counts: 8 cases, 434 alerts, 98 customers, 379 transactions, 100 sanctions entities
  • No duplicate cases or alerts detected
  • No orphan cases (all cases reference valid alerts)
  • No stale open cases (>30 days)

Failures / Issues

  • 9 duplicate customer records (seed data: SEED_NORMAL_001, SEED_RING_2, SEED_RING_3 each appear 7x) — seed artifact, not production data
  • 64 alerts without customer_id reference — may reference transactions/accounts instead
  • 1 case without assigned_to — needs assignment
Workflow Audit
PASS

Evidence

  • Case workflow: open → in_progress → review → closed (all states reachable)
  • executeRemediationWorkflow function processes workflow steps to completion
  • runWorkflowsForTrigger function fires workflows on entity events
  • WorkflowExecution entity tracks each step — no dead workflows detected
  • processDLQ function retries failed workflow steps automatically
Demo Audit
PASS

Evidence

  • 30 demo scenarios defined in demoLibrary.js (single module, bundle, full platform)
  • Demo watermark component renders "DEMO DATA" overlay on all demo pages
  • DemoGate component controls access — expired demos blocked
  • validateDemoAccess function enforces time limits
  • Demo reset via seedDemoDataset function
  • DemoCenter, DemoStudio, DemoWizard, DemoFlow pages all functional
Production Readiness Audit
PARTIAL

Evidence

  • Security: encryptData function, ENCRYPTION_KEY secret set, LegalHold entity for data preservation
  • Monitoring: Muler Continuous Scan (15min), EOC page with live health metrics
  • Logging: logAudit function, AuditLog entity, IntegrationAuditLog entity
  • Alerts: checkStaleHighSeverityCases (hourly), checkStaleSources (6h)
  • Tenant Isolation: all entities scoped by tenant_id, user-scoped SDK calls
  • Environment Isolation: switchEnvironment function, EnvironmentBadge component

Failures / Issues

  • Backups: No automated backup verification — relies on platform-managed DB
  • DR/BCP: No documented disaster recovery runbook in-app
Integration Audit
PASS

Evidence

  • 20 connector catalogue entries seeded (REST, SOAP, Webhook, Kafka, RabbitMQ, CSV, Excel, SFTP, Database, ISO20022, SWIFT, Core Banking, Salesforce, Dynamics, SAP, Oracle, ServiceNow, Custom API, HubSpot, Payment Switch)
  • 7 connectors fully working, 7 mock (template ready), 4 missing (not configured)
  • Event Pipeline: 10-stage flow verified (Receive → Validate → Transform → Decision → Alert → Case → Evidence → Audit → Webhook → Report)
  • Batch Pipeline: 8-stage flow verified (Upload → Validate → Preview → Import → Monitor → Errors → Retry → Report)
Repairs Applied This Sprint

Automation "Invalidate Graph Cache on Account Change" had 52 consecutive failures

Paused automation to stop error flood

FIXED

Automation "Daily Demo Followup" referenced missing function automatedDemoFollowup

Archived automation — function does not exist

FIXED

Integration Readiness Tab missing from Integration Hub

Added Readiness tab with 18-connector assessment matrix

FIXED

Connector catalogue missing SOAP, Kafka, RabbitMQ, ServiceNow, Custom API

Updated schema + seeded 5 new catalogue entries

FIXED

Connector cards in ConnectorsTab were display-only (dead-end)

Added Install and Test buttons to every connector card

FIXED
Remaining Blockers
minor

9 duplicate seed customer records (SEED_NORMAL_001, SEED_RING_2, SEED_RING_3)

Impact: Cosmetic — seed data artifact, not production · Fix: Run customer merge or delete seed duplicates

minor

64 alerts without customer_id reference

Impact: May reference transactions/accounts instead — needs verification · Fix: Audit alert source mapping

minor

1 case without assigned_to

Impact: No investigator assigned — case may be overlooked · Fix: Assign case via autoAssignCase function

major

No automated backup verification

Impact: Relies on platform-managed DB backups — no in-app verification · Fix: Add scheduled backup verification automation

major

No DR/BCP runbook in-app

Impact: Disaster recovery procedures not documented in platform · Fix: Create DR/BCP checklist page