Skip to content

[Enhancement]: Add full simulation lifecycle state detection (queued, running, failed) #100

@tomvothecoder

Description

@tomvothecoder

Is your feature request related to a problem?

This is a post–Phase 1 (MVP) enhancement.

The current MVP supports manual browser uploads and cron-based detection of completed runs only. It does not track intermediate lifecycle states such as when a run is queued, actively running, or failed. This was intentionally deferred to keep MVP scope focused and deliverable.

Describe the solution you'd like

Enhance simulation lifecycle management to support detection and persistence of full run states, including:

  • Queued
  • Running
  • Failed
  • Completed

This should include:

  • Clear and enforced state transition rules
  • Automatic updates based on job submission, execution start, completion, or failure
  • Timestamp tracking for key lifecycle events
  • Failure metadata (e.g., error message or reason)
  • Consistent exposure of status via the API
  • Clear status indicators in the UI

The goal is to make SimBoard the authoritative system of record for simulation execution state.

Describe alternatives you've considered

  • Continuing to detect only completed runs via cron
  • Inferring state indirectly from logs or filesystem artifacts
  • Relying solely on external schedulers for lifecycle visibility

These approaches limit observability and weaken SimBoard’s role as the central source of truth.

Additional context

This enhancement enables:

  • HPC scheduler integration
  • Diagnostics workflow orchestration
  • Improved operational monitoring
  • Greater transparency for users and administrators

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions