Asoba Ona Documentation

Interface Layer

The Interface Layer displays operational status, risk scores, and active work orders using deterministic templates to eliminate hallucination and allow users to examine model confidence and trace data sources directly.


Overview

The Interface Layer provides the user-facing components of the Ona Platform. It displays operational status, risk scores, and active work orders using deterministic templates rather than generative text to eliminate hallucination. Users can examine model confidence and trace data sources directly, ensuring transparency and trust in AI-driven decisions.

Key Capabilities:


Admin Dashboard Data Service

The ui/data-service.js module maintains a unified cache that the admin dashboard consumes, providing consistent data access across all interface components.

Performance Metrics

computeSitePerformanceMetrics() aggregates nowcast series into customer- and site-level snapshots. Helper methods provide consistent data access:

Features:

Anomaly Consolidation

buildAnomalyIssueIndex() and buildOODAActivityFeed() merge detections, diagnostics, issues, maintenance plans, and manual actions to keep interface components aligned with terminal API state.

Components:

Forecast Comparison

buildForecastComparison() aligns forecast output with actual production, computes deltas, and feeds the “Forecast vs Actual” chart without additional UI-side processing.

Features:

Mode Switching

Switching the dashboard between API and Demo mode simply selects a different population path for the cache; the UI logic reads from the same getters in both cases.

Benefits:

Refresh Cycle

Manual refresh (and the five-minute auto-refresh) triggers refreshAllData(), which rebuilds caches once and dispatches a dataRefreshed event that all widgets listen to. Charts no longer simulate data—they render directly from the cached series.

Refresh Features:


Frontend UI API Integration

The Interface Layer connects to backend APIs through a comprehensive integration layer that provides complete request/response schemas and data structures.

DataService Wrapper Methods

The DataService provides wrapper methods for all Terminal API endpoints:

Asset Management:

Fault Detection:

Diagnostics:

Maintenance:

Return Types

All DataService methods return consistent data structures:

{
  success: boolean,
  data: object | array,
  metadata: {
    request_id: string,
    timestamp: string,
    version: string
  },
  errors: array
}

Frontend Module APIs

Performance Module:

Issues Module:

Dashboard Module:

Maintenance Module:

Service APIs

CacheService:

StateService:

TimerService:

Component APIs

ChartComponent:

MetricCard:


Operational Status Display

Real-Time Status

The Interface Layer displays real-time operational status for all assets:

Risk Scores

Energy-at-risk (EAR) calculations are displayed for each asset:

Active Work Orders

The interface displays all active work orders with:


Deterministic Templates

No Generative Text

The Interface Layer uses deterministic templates rather than generative text to eliminate hallucination risks:

Template Examples

Status Messages:

Risk Descriptions:

Work Order Descriptions:


Model Confidence Examination

Confidence Indicators

Users can examine model confidence for all predictions:

Data Source Tracing

Users can trace data sources directly:

Transparency Features


User Interface Components

Dashboard Views

Overview Dashboard:

Asset Detail View:

Maintenance View:

Analytics View:

Interactive Features


Integration with Control Layer

The Interface Layer communicates with the Control Layer through:


Performance Characteristics

Load Times

Responsiveness

Browser Compatibility


Next Steps


Get Help & Stay Updated

Contact Support

For technical assistance, feature requests, or any other questions, please reach out to our dedicated support team.

Email Support Join Our Discord

Subscribe to Updates

* indicates required