Running a Scenario

Once you click Start Run in the Scenario Editor, NeuroSim immediately begins the initialization sequence and takes you to the Run Initialization screen to monitor progress.


Initialization

During initialization, Core sends each plugin its configuration and waits for the plugin to confirm it is ready. This is where plugins validate their parameters, allocate resources, and connect to whatever systems they need before simulation begins.

Screenshot placeholder: Run Initialization screen showing a mix of pending, success, and failed plugin statuses.

Each plugin in the run is listed with a status icon:

IconStatusMeaning
SpinnerPendingWaiting for the plugin to respond
Green checkmarkSuccessPlugin initialized and is ready
Red XFailedPlugin reported an error during initialization
Amber triangleTimeoutPlugin did not respond within 30 seconds

If a plugin fails or times out, its error message (if any) is shown beneath the plugin name.

Initialization outcomes

After all plugins have responded (or timed out), initialization reaches a terminal state:

All plugins succeeded → Active The run transitions to Active automatically and you are redirected to the Dashboard, where the scenario appears in the Active Scenarios section.

Some plugins succeeded, some failed → Partial An amber banner appears with two options:

  • Continue Partial Run — proceed with only the plugins that succeeded. The run will be in Partial status.
  • Abort Run — cancel and clean up. No run data is kept.

All plugins failed → Failed A red banner appears. Only the Abort Run option is available.

Aborting during initialization

At any point while plugins are still pending, an Abort button is available at the bottom of the screen to cancel the run before it starts.


Monitoring a Live Run

Once the run is active, return to the Dashboard. Expand the scenario card in the Active Scenarios section, then expand the run row to see the live view.

Screenshot placeholder: Expanded active run on the Dashboard showing plugin badges, command buttons, and live event stream.

Plugin status badges

Each plugin that participated in initialization is shown with a colored badge:

  • Green — initialized successfully and active
  • Red — failed or timed out during initialization
  • Gray — pending (should not persist once initialization is complete)

Issuing commands

If any plugins declared capabilities, a Commands section appears below the plugin status badges. Each capability is shown as a button labeled with the capability name, grouped under the plugin it belongs to.

Click a command button to send that command to the plugin immediately. Commands are sent fire-and-forget — NeuroSim does not wait for a specific response before re-enabling the button.

Command buttons are disabled for any plugin that failed initialization, since that plugin is not running and cannot receive commands.

Live event stream

The live events panel shows the 50 most recent messages from the scenario's Kafka topic, updating in real time as the simulation runs. Each row shows:

ColumnContents
TimeTimestamp in HH:MM:SS
TypeMessage type (e.g., data, ack, ctrl)
SenderThe plugin that sent the message
FromSource address field from the message headers
ToDestination address field from the message headers
PayloadFirst 80 characters of the message payload

This view is intentionally limited to the most recent 50 events. For full history, filtering, and payload inspection, click View full history to open the Historical Run View (available even while the run is still active).


Stopping a Run

Click the Stop button on the run row in the Dashboard to end the run. The run transitions to Stopping while plugins wind down, then to Stopped or Completed.

Stopped runs are preserved in full — all their event history is retained and available for analysis in the Historical Run View.


Re-running a Scenario

Once a run completes, its definition is locked. To run the same scenario again:

  • From the Dashboard's Historical Runs section, click Run Again on the definition header. This starts a new run from the existing (locked) definition immediately.
  • To run with modified configuration, use Use as Template instead, which creates a new editable definition pre-populated with the same settings.