Skip to content

Latest commit

Β 

History

History
179 lines (148 loc) Β· 27.7 KB

File metadata and controls

179 lines (148 loc) Β· 27.7 KB

πŸš€ Amerati Brainlife Platform β€” Page-by-Page Agile User Stories Report

Project Title: Amerati Brainlife Orchestration & Analytics Dashboard
Date: July 31, 2026
Framework: Standard Agile User Stories / ClickUp Sprint Tracking
Target Audience: Executive Leadership, Product Owners & Employers


πŸ” 1. Login & Authentication Page (src/components/Login.tsx)

# Feature / Deliverable Formal Agile User Story (As a... I want... So that...) ClickUp Status
1.1 Local Credential Authentication As an administrator, I want to log in using my local username and password credentials so that I can securely access the platform dashboard. βœ… Completed
1.2 Single Sign-On (SSO) Integration As a researcher, I want to authenticate using my Google, GitHub, or ORCID identity providers so that I can sign in seamlessly without creating a new password. βœ… Completed
1.3 JWT Session Token Generation As a security engineer, I want the system to generate and store a secure JSON Web Token (brainlife_token) upon login so that my session remains authenticated across page reloads. βœ… Completed
1.4 Glassmorphism Visual Branding As a user, I want a high-contrast dark theme login card with ambient glowing background orbs and official Brainlife branding so that the interface feels modern and professional. βœ… Completed
1.5 Form Validation & Error Alerts As a user, I want instant visual error alerts when entering invalid credentials so that I know why my login attempt failed. βœ… Completed
1.6 Session Auto-Redirect As an authenticated user, I want to be automatically redirected to the Orchestration Dashboard upon successful login so that I can start working immediately. βœ… Completed

πŸŽ›οΈ 2. Executive Orchestration Dashboard Page (App.tsx, KpiCards.tsx, ExecutionTimeline.tsx, TaskTable.tsx)

# Feature / Deliverable Formal Agile User Story (As a... I want... So that...) ClickUp Status
2.1 Executive KPI Summary Cards As an executive, I want top KPI summary cards for Running (10), Succeeded (81), Failed (15), and Queued (0) tasks so that I can evaluate platform workload health at a glance. βœ… Completed
2.2 Host Connection Alert Banner As an operator, I want a prominent warning banner notifying me when a cluster host is unreachable (osgconnect cluster is unreachable) so that I can respond to network disruptions immediately. βœ… Completed
2.3 Live Execution Timeline Chart As an HPC engineer, I want a 1-hour live execution timeline displaying service lanes, a 10-minute timestamp grid (10:10 to Now), and sharp non-blurry glowing status bars so that I can monitor live task executions. βœ… Completed
2.4 1-Hour Live Overview Panel As an admin, I want a side summary panel showing 1-hour live task counts for Running, Succeeded, Failed, and Queued states so that I can assess recent workload volume. βœ… Completed
2.5 Embedded Compute Node Grid As a cluster operator, I want a real-time compute resource grid embedded on the main dashboard so that I can verify cluster node statuses without navigating away. βœ… Completed
2.6 "View More Active Resources" Action As an HPC operator, I want a "View More Active Resources" navigation button beneath the dashboard resource grid so that I can quickly jump to the dedicated Compute Resources page. βœ… Completed
2.7 Recent Tasks Execution Table As a system operator, I want a Recent Tasks table on the main dashboard displaying real-time task statuses, Task IDs, services, projects, instance IDs, cluster resources, runtimes, created timestamps, started timestamps, messages, and user owners so that I can monitor live execution records without leaving the dashboard. βœ… Completed
2.8 "View All Tasks β†—" Direct Navigation As a user, I want a "View all tasks β†—" navigation link on the Recent Tasks section header so that I can quickly jump to the full Tasks page with complete multi-field filtering and pagination. βœ… Completed
2.9 Spotlight Search Launcher As a user, I want a global search bar and Cmd + K keyboard shortcut launcher so that I can instantly search tasks, services, and resources from anywhere on the dashboard. βœ… Completed
2.10 Real-Time System Status Footer Bar As an administrator, I want a sticky bottom status bar displaying System Uptime (15d 6h 22m), Total Recent Tasks Count (50), Active Users Count (1), and API Health Status (Healthy) so that I can monitor overall platform health at all times. βœ… Completed
2.11 Real-Time Background Polling Service As a system administrator, I want background polling services to automatically refresh task states every 5 seconds so that the dashboard always displays live operational data. βœ… Completed

πŸ’» 3. Compute Resources Page (ResourcesView.tsx, ResourceGrid.tsx)

# Feature / Deliverable Formal Agile User Story (As a... I want... So that...) ClickUp Status
3.1 Page Header & Subtitle As an HPC admin, I want a clear Compute Resources header and descriptive subtitle ("Connected compute nodes & cluster health") so that I know the primary focus of the page. βœ… Completed
3.2 Cluster Category Filter Tabs As an administrator, I want filter tabs for All Clusters, Online, Offline / Errors, SSH Clusters, and AWS Environments so that I can isolate specific infrastructure categories. βœ… Completed
3.3 Resource Search Input As a user, I want a search input ("Search resource name or type...") to quickly find compute resources so that I can locate specific nodes instantly. βœ… Completed
3.4 Resource Node Grid Cards As an HPC admin, I want grid cards displaying cluster title, protocol tag (ssh), online status badge (+ ONLINE), connectivity test status message ("Resource tested successfully"), and short cluster ID so that I can audit individual nodes. βœ… Completed
3.5 Individual Node Connection Test Button As a systems engineer, I want a "Test Connection" action button on each resource card so that I can test SSH connectivity for individual nodes on demand. βœ… Completed
3.6 Visual Card Selection Focus Ring As an admin, I want a glowing cyan active border around the selected resource card so that I know which cluster is currently loaded in the inspector panel. βœ… Completed
3.7 Resource Details & Operational Health Box As an operator, I want an inspector header showing cluster title, type, green shield icon, and System Operational status badge so that I can verify node health. βœ… Completed
3.8 CPU & Memory Utilization Gauges As a system administrator, I want CPU utilization (54%) and Memory utilization (57%) progress bars in the inspector panel so that I can monitor hardware workload levels. βœ… Completed
3.9 SSH Latency & Disk Fill Indicators As a network engineer, I want numerical indicators for SSH Latency (44 ms) and Disk Fill Percentage (89%) so that I can detect network lag or disk space exhaustion. βœ… Completed
3.10 Task Queue Status & Running Counter As an HPC scheduler, I want a Task Queue Status section displaying running tasks count (β–Ά Running Tasks (0)) so that I can track active executions assigned to the selected cluster. βœ… Completed
3.11 Recent Task History Log List As a developer, I want a Recent History list displaying the last 100 executed tasks (app-noop, timestamps, green success checkmarks) so that I can review recent cluster job history. βœ… Completed
3.12 Sticky System Status Footer Bar As an admin, I want a sticky bottom status bar displaying System Uptime, Total Recent Tasks Count, Active Users Count, and API Health Status so that I can monitor overall platform health at all times. βœ… Completed

βš™οΈ 4. Services Page & Microservices Directory (ServicesView.tsx)

# Feature / Deliverable Formal Agile User Story (As a... I want... So that...) ClickUp Status
4.1 Services Page Header & Subtitle As a microservices engineer, I want a clear Services header and descriptive subtitle ("Search and monitor all orchestration services") so that I know the primary focus of the page. βœ… Completed
4.2 Health Status Filter Pills As an administrator, I want filter pills for All, Healthy (green), Warning (yellow), Critical (red), Offline (gray), Running (cyan pulse), and Stopped (dark) so that I can isolate microservices by operational health state. βœ… Completed
4.3 Category Tier Filters As an HPC architect, I want category filters for All Categories, Validators, Applications, APIs, Workers, Storage, and Schedulers so that I can organize microservices by functional tier. βœ… Completed
4.4 Services Search Input As a developer, I want a search input ("Search services...") to filter microservices instantly by name, version, or primary host so that I can locate specific services. βœ… Completed
4.5 Service Grid Cards As an operator, I want grid cards showing Service Name, Type & Version (VALIDATOR v1.0.0, APPLICATION v1.4.0, API v4.2.1, STORAGE v3.0.1, SCHEDULER v1.9.5), Health Status Badge (+ HEALTHY, ● CRITICAL), Running Tasks Count, Avg Runtime, Primary Host, and Last Failure Timestamp so that I can monitor service operational health. βœ… Completed
4.6 Visual Card Selection Focus Ring As an admin, I want a glowing cyan active border around the selected service card so that I know which microservice is currently loaded in the inspector panel. βœ… Completed
4.7 Service Inspector Header & Metadata As a developer, I want an inspector header showing Service Name, Service ID (ID: srv-1), Status Badge, Version (1.0.0), Owner (Brainlife), Type (Validator), Running Since status, and Last Restart timestamp so that I can audit microservice configuration. βœ… Completed
4.8 Health Metrics Cards Grid As an SRE, I want four health metric cards in the inspector displaying Health Score (100%), Availability (100%), Error Rate (0%), and Avg Runtime (2 hours) so that I can benchmark service performance. βœ… Completed
4.9 Current Activity Breakdown As a system operator, I want a Current Activity breakdown showing real-time counters for Running (0), Queued (0), Failed (0), and Completed (0) tasks assigned to the service. βœ… Completed
4.10 Service Dependency Flow Diagram As a software architect, I want a visual dependency flow diagram (Scheduler βž” brainlife/validator-neuro-track) and a Dependency Health indicator so that I can trace upstream and downstream service dependencies. βœ… Completed
4.11 Cluster Distribution Progress Bar As an HPC engineer, I want a Cluster Distribution progress bar showing active worker allocations (1 worker) so that I can audit cluster node deployment. βœ… Completed
4.12 Active Execution Flow Timeline As a developer, I want a step-by-step Execution Flow timeline (Job Received βž” Resource Allocated βž” Completed Execution βž” Results Verification βž” Finalized) so that I can verify pipeline execution stages. βœ… Completed
4.13 Performance Metrics & Sparkline Graphs As a data analyst, I want 30-day performance telemetry displaying Success Rate (100% with sparkline), Runtime Trend (2 hours with sparkline), Daily Throughput (218/Day), and Queue Trend (5 min) so that I can evaluate long-term service performance. βœ… Completed
4.14 Sticky System Status Footer Bar As an admin, I want a sticky bottom status bar displaying System Uptime, Total Recent Tasks Count, Active Users Count, and API Health Status so that I can monitor overall platform health at all times. βœ… Completed

⚑ 5. All Task Workflows Page (TasksView.tsx, TaskTable.tsx)

# Feature / Deliverable Formal Agile User Story (As a... I want... So that...) ClickUp Status
5.1 Tasks Page Header & Subtitle As a workflow engineer, I want a clear All Task Workflows header and descriptive subtitle ("Search and inspect history of workflow executions") so that I understand the operational purpose of the page. βœ… Completed
5.2 Top Summary Metric Cards Bar As an executive, I want top metric cards for Total Tasks Monitored (50 / 100% Volume), Task Success Rate (80% Optimal), Active Compute Tasks (8 Run | 0 Queue), and Task Failures (3 / 6.0% Rate) so that I can evaluate workflow health at a glance. βœ… Completed
5.3 Task Execution Status Donut Chart As an operator, I want an interactive SVG Donut chart displaying slice breakdowns for Finished (12), Failed (3), Running (8), and Queued (0) tasks with a center 80% Success KPI so that I can analyze task state distribution visually. βœ… Completed
5.4 Top Applications Workloads Bar Graph As a pipeline lead, I want horizontal progress bars showing top executed applications (validator-neuro-freesurfer, app-freesurfer, app-stage, validator-neuro-track, app-mctotrk) with job counts and success rates so that I can identify heavy workload pipelines. βœ… Completed
5.5 Task Filter Tabs As a user, I want filter tabs to isolate All Tasks, Running, Finished, Failed, Queued, and Cancelled workloads so that I can focus on specific task execution states. βœ… Completed
5.6 Universal Multi-Field Search Input As a user, I want a search input that filters tasks in real time across Task ID, Project Name/ID, Group Name/ID, User Name/ID, Job Name, Datatype, Resource, and Error Messages so that I can locate any workflow execution record instantly. βœ… Completed
5.7 Workflow Tasks Grid Table As an engineer, I want a structured table showing Status, Task ID, Service, Project, Instance ID, Created Timestamp, Start Time, Duration, Message, and User so that I can inspect workflow execution details line by line. βœ… Completed
5.8 Task Telemetry Inspector Header & Metadata As a developer, I want a right-hand inspector panel showing Service Name, Task ID, Status Badge (UNKNOWN), clickable Project link (Epi-p), Instance ID (8a4874), Resource Node link (Unknown βž”), and Owner link (Nikolay βž”) so that I can audit complete task context. βœ… Completed
5.9 Log Status Message Box As a developer, I want a prominent Log Status Message box in the inspector displaying execution messages ("Waiting on dependencies", "Waiting in the queue...", "Waiting for child tasks...") so that I can quickly understand task progress or failure reasons. βœ… Completed
5.10 One-Click Rerun Task Workflow Action As an admin, I want a "β–Ά Rerun Task Workflow" action button in the inspector drawer to re-trigger failed or stuck tasks directly from the UI without using CLI commands. βœ… Completed
5.11 Raw Database JSON Document Viewer As a database administrator, I want an expandable "RAW DATABASE DOCUMENT" accordion in the inspector displaying raw MongoDB JSON structures with syntax highlighting so that I can inspect underlying document schemas. βœ… Completed
5.12 Sticky System Status Footer Bar As an admin, I want a sticky bottom status bar displaying System Uptime (15d 6h 22m), Total Recent Tasks Count (50), Active Users Count (1), and API Health Status (Healthy) so that I can monitor overall platform health at all times. βœ… Completed

🚨 6. Incident Watchdog & Alarm Diagnostics Page (Incidents.tsx)

# Feature / Deliverable Formal Agile User Story (As a... I want... So that...) ClickUp Status
6.1 Incidents Page Header & Subtitle As an SRE engineer, I want a clear Incidents header and descriptive subtitle ("Inspect history of outages, latency spikes, and system alerts") so that I understand the primary focus of the page. βœ… Completed
6.2 Incident Status Filter Tabs As an operator, I want filter tabs for Active Incidents, Resolved History, and All Incidents so that I can isolate current outages from historical incident logs. βœ… Completed
6.3 Real-Time Alarm KPI Cards Bar As a system administrator, I want real-time KPI cards tracking Active Alarms (3), Under Review (2), Resolved Today (1), and Critical Severity (4) alongside an "INCIDENT WATCHDOG ACTIVE" status indicator so that I can evaluate system outage severity instantly. βœ… Completed
6.4 Incident Watchdog Table As an engineer, I want a live alarm table displaying Severity Badge (CRITICAL, WARNING), Alarm Description, Source Node, Status (TRIGGERED, ACKNOWLEDGED), Triggered At timestamp, Active Duration, and Assignee so that I can audit ongoing system incidents. βœ… Completed
6.5 Visual Active Row Highlight As an operator, I want the currently inspected incident row to be highlighted in the table so that I can easily correlate table rows with the inspector panel. βœ… Completed
6.6 Incident Diagnostics Header & Metadata As an SRE, I want a right-hand inspector panel displaying Alarm Title, Incident ID (INC-TASK-088235), Node Resource link, Triggered At timestamp, Active Duration (8m), and Current Assignee (Patrick Filima) so that I can inspect complete incident context. βœ… Completed
6.7 Diagnostic Error Code Box As a developer, I want a dedicated Diagnostics Details code container in the inspector displaying raw error text ("[Diagnostic Error] Failed to fetch task logs: no resource currently available...") so that I can diagnose root causes immediately. βœ… Completed
6.8 Incident Timeline Audit Log As an incident manager, I want a step-by-step Incident Timeline (Incident created βž” Assigned to Patrick Filima βž” Container resource restarted βž” Resolved) with timestamps so that I can trace resolution progress. βœ… Completed
6.9 Assign Task Force Control Dropdown As a team lead, I want an Assign Task Force dropdown selector to assign or reassign incidents to specific engineers (Patrick Filima, Niklas, Unassigned). βœ… Completed
6.10 One-Click Acknowledge & Resolve Actions As an admin, I want Acknowledge and Resolve action buttons in the inspector drawer to update incident statuses in real time. βœ… Completed
6.11 Mapped Task ID Direct Link As a developer, I want a clickable Mapped Task ID link (6a6d0e7fd1b568a3654d9b235 β†—) in the inspector so that I can navigate directly from an incident to its underlying task execution details. βœ… Completed
6.12 AI Incident Failure Doctor As a developer, I want AI to automatically parse stderr stack traces for SSH timeouts or host unreachable errors and suggest failover routing so that outages are resolved faster. 🚧 In Development
6.13 Sticky System Status Footer Bar As an admin, I want a sticky bottom status bar displaying System Uptime (15d 6h 22m), Total Recent Tasks Count (50), Active Users Count (1), and API Health Status (Healthy) so that I can monitor overall platform health at all times. βœ… Completed

πŸ‘₯ 7. Users Management & User Directory Page (UsersView.tsx)

# Feature / Deliverable Formal Agile User Story (As a... I want... So that...) ClickUp Status
7.1 User Directory Table As an administrator, I want a user directory listing usernames, full names, emails, institutions, and registration dates so that I can manage platform accounts. βœ… Completed
7.2 User Profile Inspector As an admin, I want to inspect private/public user profiles and associated task histories so that I can audit user activities. βœ… Completed
7.3 User Search & Institution Filter As an admin, I want to search users by name, email, or institution so that I can locate specific researcher profiles quickly. βœ… Completed

πŸ“Š 8. Analytics & Business Intelligence Page (AnalyticsView.tsx)

# Feature / Deliverable Formal Agile User Story (As a... I want... So that...) ClickUp Status
8.1 Time Window Selector (24h–90d) As an administrator, I want to filter platform analytics by 24h, 7d, 30d, or 90d timeframes so that I can inspect short-term usage spikes or long-term adoption trends. βœ… Completed
8.2 Compare Baseline Mode As a data analyst, I want to toggle a Compare Mode so that I can evaluate current performance metrics against historical baseline periods. βœ… Completed
8.3 Multi-Dimensional Global Filters As a user, I want dropdown filters for All Projects, All Services, and All Resources so that I can slice analytics across specific workloads. βœ… Completed
8.4 CSV & JSON Exporters As a researcher, I want CSV and JSON export buttons to download filtered analytics data for offline grant reporting. βœ… Completed
8.5 Platform Executive KPIs As an executive, I want top KPI summary cards for Platform Uptime (93.47%), Jobs Executed (10,000), Success Rate (78.3%), Failure Rate (21.7%), Avg Queue Time (0m 0s), and Avg Runtime (3h 30m) so that I can verify system stability. βœ… Completed
8.6 Executions Time-Series Chart As an analyst, I want an interactive multi-line time-series chart mapping success, queued, and failed tasks over months so that I can visualize long-term workload trends. βœ… Completed
8.7 Failure Rate Trend Chart As an SRE, I want an area chart displaying percentage failure rate fluctuations over time so that I can identify systemic cluster instability. βœ… Completed
8.8 Average Runtime Line Chart As a compute engineer, I want a line chart tracking average task execution duration over time so that I can identify cluster performance degradation. βœ… Completed
8.9 Hourly Failures Heatmap As an operator, I want a Monday–Friday (08:00–18:00) hourly failure density heatmap matrix so that I can pinpoint recurring failure time windows. βœ… Completed
8.10 Pipeline Performance Table As a pipeline developer, I want a table tracking total runs, success rates, and average runtimes for each validator and application so that I can optimize code performance. βœ… Completed
8.11 Community Overview KPIs As a community manager, I want metrics for Active Institutions (2), Research Labs (2), Active Researchers (2), and Active Collaborations (15) so that I can measure organizational reach. βœ… Completed
8.12 Cumulative Community Statistics As a director, I want aggregate stats for Total Registered Users (5,878), Cumulative Task Workloads (7,704,000), Total Compute Hours (48,920 hrs), and Active Storage Managed (142.5 TB) so that I can demonstrate platform scale. βœ… Completed
8.13 Average Community Benchmarks As a manager, I want mean benchmarks for Avg Registrations/yr (840), Avg Jobs/User (25), Avg Runtime (6h 21m), and Active Retention (94.8%) so that I can evaluate user engagement. βœ… Completed
8.14 Community Growth Timeline As a director, I want a year-over-year bar chart tracking user growth from 2020 to 2026 so that I can present growth trajectories to funding agencies. βœ… Completed
8.15 User Academic Categories As a community lead, I want an SVG Donut chart and 11 breakdown cards for academic roles (Students, Postdocs, Faculty, Clinicians, Industry) so that I can understand user demographics. βœ… Completed
8.16 Country Distribution Donut As a global manager, I want an interactive country adoption donut chart tracking 38 active countries so that I can visualize international adoption. βœ… Completed
8.17 Global Expansion Timeline As a stakeholder, I want a timeline bar chart tracking global expansion from 8 countries in 2020 to 38 countries in 2026 so that I can demonstrate international growth (+375%). βœ… Completed
8.18 38-Country Legend Grid As a user, I want a scrollable grid listing all 38 individual countries with exact user counts and percentage shares so that I can inspect complete country data. βœ… Completed
8.19 Warehouse Apps REST API As an administrator, I want live telemetry from GET /warehouse/app showing all 831 applications, DOIs, GitHub repos, walltimes, and success rates so that I can manage the application catalog dynamically. βœ… Completed
8.20 App Status Metadata Badges As a user, I want DEPRECATED (amber) and REMOVED (red) status badges rendered next to retired applications so that I can avoid using obsolete pipelines. βœ… Completed
8.21 Incremental App Pagination As a user, I want an incremental "Read More (+10 apps)" pagination button with a Show Less toggle so that I can navigate long application lists smoothly without UI lag. βœ… Completed
8.22 Human Cluster Geocoding As an HPC admin, I want raw 24-character MongoDB ObjectIDs mapped to human-readable cluster titles (IU Karst, TACC Stampede2, Bridges-2 GPU, IU Carbonate, Jetstream Cloud, BigRed3, Expanse, Anvil) so that I can easily identify compute nodes. βœ… Completed
8.23 Historical Storage Area Chart As a storage engineer, I want a cyan/purple gradient area chart tracking 142.5 TB of raw input data, output artifacts, and archives so that I can monitor storage accumulation over time. βœ… Completed
8.24 Cluster Load Telemetry As a systems engineer, I want dual progress bars for CPU and RAM allocation across compute clusters so that I can monitor hardware resource utilization. βœ… Completed
8.25 Global Cluster Status Grid As a network engineer, I want a cluster connectivity grid displaying live ping latencies (e.g., 14 ms) and active node capacities so that I can verify cluster network health. βœ… Completed
8.26 Usage Share by Institution As a manager, I want compute workload distribution progress bars grouped by university so that I can audit compute resource allocation across partner institutions. βœ… Completed
8.27 Predictive Outage Sentinel As a systems engineer, I want AI to predict cluster downtime 2 to 4 hours in advance so that incoming workloads can be automatically rerouted away from failing nodes. πŸ” In Review

βš™οΈ 9. Settings & System Preferences Page (Settings.tsx)

# Feature / Deliverable Formal Agile User Story (As a... I want... So that...) ClickUp Status
9.1 API Base Endpoint Switcher As a developer, I want settings controls to switch between Amaretti API, Warehouse API, and Auth API base URLs so that I can test different backend environments. βœ… Completed
9.2 Session JWT Token Manager As an admin, I want to inspect, store, or refresh active session JWT tokens so that I can manage administrative security credentials. βœ… Completed
9.3 Theme & UI Preferences As a user, I want custom theme controls and glassmorphism styling toggles so that I can customize the visual dashboard appearance. βœ… Completed

πŸ“ˆ Executive Deliverables Summary Dashboard

  • Total Requirements Tracked: 92 Page-by-Page User Stories
  • βœ… Completed: 90 Deliverables (97.8% Completion Rate)
  • πŸ” In Review: 1 Deliverable (1.1%)
  • 🚧 In Development: 1 Deliverable (1.1%)