Runs and comments
The panel of a unit: staging a procedure and its metadata, Start and what it validates, Hold, Resume, Stop and Abort, the live cards, comments, the single commands, the run file, and the automation and agent paths.
A unit's panel (Process > Models > a model > Operate > the unit > a panel, and the same panel on the View page when it is marked Show on View) is where a run is staged, started, steered and watched. Which cards it draws, and in which order, is arranged once on the model under Visualization > Panels; every unit of the model then operates through the same surface. Watching needs only the tree. Every command on the panel takes Run procedures; without it the panel opens with the notice "You can watch this unit's run state here, but starting or steering it needs the 'Run procedures' permission." and draws no lifecycle button at all.
A card the station gives nothing to show is left out rather than drawn empty: the Single commands card needs a datalog or an instant recipe on the model, the Channels card a readable channel, the Metadata card a staged procedure that prompts a field (or nothing staged yet), and an embedded dashboard something placed on it. A panel that arranges no card reads "This panel draws no card. Choose its cards on the model's Panels row, under Visualization."
The interlock banner
When the model observes an external stop (Automation), the unit's interlock stands above every card and draws nothing while it is Normal. Otherwise it is a banner titled Interlock tripped (loud), Interlock awaiting reset or Interlock unavailable, with the reason, the source's name, its value and its quality. While it is not Normal no new Start, Resume, snapshot, evaluation or recipe apply is admitted on the unit. A trip ends the run in progress through the ordinary end path, as Aborted with verdict NOK and the termination reason Interlock, and nobody is named as having ended it. The latch survives a restart. Rearm appears only in Awaiting reset, needs Run procedures, a source that reads good and safe and a unit no run owns; it clears the latch, is journaled with the operator's name, and never restarts the aborted run.
The Run card
The head of the card carries a lamp: Recording (green), Preparing (caution) or Not recording.
| Field | What it is | Values / default | Effect |
|---|---|---|---|
| Procedure | The procedure staged for the next Start. | "(none)" plus every procedure of the model, alphabetically; nothing staged by default, and staging resets when the app starts. | Staging is station-wide: every screen of this unit, the Next.Procedure point and the Operate card show the same choice. Staging a procedure that pins an alias set applies that set to the unit at Start; a pin that cannot be applied leaves the previous staging in place and says why on the card. The picker is greyed without Run procedures and while the runtime is stopped. |
The lifecycle buttons, in the order drawn. Hold and Resume are left out when the staged procedure is Controlled or Instant, because only a Temporal run has a window to freeze; with nothing staged all five are drawn.
| Command | What it does | Greyed when (situation) | Not drawn when (role) |
|---|---|---|---|
| Start | Starts the staged procedure on this unit. | The unit is busy, no procedure is staged, the runtime is stopped, the interlock is not Normal, or the station is refusing writes. | Without Run procedures. |
| Hold | Freezes the temporal window at the last setpoint; the datalog keeps recording. | No run is Running, or the running procedure is not Temporal. | Without Run procedures; the staged procedure is Controlled or Instant. |
| Resume | Releases the hold and carries the window on. | No run is Held, or the interlock is not Normal. | Without Run procedures; the staged procedure is Controlled or Instant. |
| Stop | Ends the run cleanly and freezes it as history, from Running or from Held. | No run owns the unit. | Without Run procedures. |
| Abort | Ends the run as aborted; the finalization block still runs. | No run is Running or Held. | Without Run procedures. |
A refused command writes its reason on the card ("No procedure is staged. Pick one first."), and two standing lines under the buttons say why the station or the unit is not accepting commands: "Runtime stopped", and the interlock's reason.
Start, and what it validates
Start consumes the unit's staging and refuses everything before it takes any resource. In order: the unit is reserved (a second Start on the same unit is refused); the staged procedure must still exist ("The staged procedure no longer exists. Pick one again.") and the staging must not have moved while Start waited for an engineering edit to finish ("The staged procedure or metadata changed while Start was waiting. Review the prepared run and retry."); the procedure must pass the gate its own page shows ("Nothing to run: this procedure references neither a datalog nor a recipe.", "Temporal mode needs a duration. Set one.", "Instant mode needs an instant recipe (or none). A temporal profile has no single tick.", "The recipe profile (n ms) is longer than the temporal window (m ms).", and the production-output checks); every armed occurrence must have a valid condition; at least one datalog channel must resolve to a bound source on this unit ("No datalog channel resolves to a bound source on unit 'X'."); the prompted metadata must be complete and typed ("Metadata field 'X' is required.", "Metadata field 'X' must be numeric.") and every sequential field must be able to compose (a missing unit or procedure code refuses the Start); the interlock must be Normal; and every source the recipe writes must be free (a source held by another unit's run refuses the Start by channel and holding unit). Only then are the sequential counters reserved, the run file created with the metadata already written into it, and the engines launched; the Start labels and Start reports the procedure emits go out as the run materializes (Emitting labels and reports).
The Metadata card
The card is headed "What the next run of 'Procedure' is recorded under. A field marked * is prompted by every procedure." and draws one entry per metadata field the staged procedure prompts, in the procedure's order; with nothing staged it reads "Stage a procedure and the fields it prompts appear here."
| Field kind | What the card draws | Effect |
|---|---|---|
| Text | An entry box. | Written to the station-wide staging as you type; Start records it into the run file. A required field (marked *) refuses an empty Start. |
| Numeric | An entry box. | The same, and Start refuses a value that is not a number. |
| Sequential | A read-only preview of the identifier the counter would compose now, or "Reserved at start" when no counter state exists yet. | Nothing is reserved by looking: the definitive value is reserved at Start, so a counter shared by several units may move before then. |
Staging is consumed by Start, not cleared: the entries stay as defaults for the next run of the same procedure. Entries typed for another procedure stay in the staging area but are inert, since Start reads only the fields of the staged procedure. The boxes are greyed without Run procedures and while the runtime is stopped.
The Run state card
Three readouts: State (Running, Held, Saving, Completed, Aborted, Failed, or "Preparing" while the unit is reserved and "Idle" when nothing owns it), Cycle ("2 / 10" for a cyclic run, "Not cycling" otherwise; left out entirely when the staged procedure is Controlled or Instant) and Verdict (the evaluation's live verdict, kept readable after the run ends until the next run starts; "None" when nothing has been judged).
What each end does
| Ending | Recording | Recipe | Verdict and state |
|---|---|---|---|
| Stop | Sampling stops after the finalization block ran, so the safe-state transition is in the datalog. | The finalization setpoints are written. | The evaluation closes its open windows and folds: OK, NOK, Indeterminate, or None without an evaluation. Completed. |
| Abort | The same. | The finalization setpoints are written. | NOK whatever was judged. Aborted. |
| The window ends (Temporal) or the row is recorded (Instant) | The same. | The finalization setpoints are written. | As Stop. Completed; nobody is named as having ended it. |
| A recipe write fails with the failure policy Abort | The same. | Finalization still runs. | NOK. Aborted. |
| The interlock trips | The same. | Finalization still runs. | NOK. Aborted, termination reason Interlock. |
| The runtime stops | Every run not yet sealed is aborted. | Finalization still runs. | NOK. Aborted. |
| An unrecoverable error | Sampling stops; no finalization. | Nothing more is written. | None. Failed. |
Closing the application ends nothing: a Running or Held run resumes at the next launch, a temporal profile held at its persisted segment and cycle, and the datalog carries on in the same file.
The Channels card
The unit's readable channels on one live chart, each series labelled by the name in force on this unit (an alias shows live) and drawn in the colour and band the model declares on the channel, with the chart toolbar every chart carries (Charts). It shows the live values whether or not a run records; a line under the drawing says how much history the chart retains.
The Comments card
The card is headed "Comments · Procedure · Unit" while a run is active and "Comments · no
active run" otherwise; an idle unit shows no timeline, and a finished run takes its notes
from Histories. Each recorded line shows its time, its phase (Run or
Post-run) and its text, with two gestures: Edit rewrites it in place (Enter saves, Esc
cancels; a blank or unchanged text leaves the record alone, and a rewrite stamps the edit
instant), and Delete takes two presses, the first arming the line ("Delete this
comment? This cannot be undone.") and the second removing it. The box at the foot ("Add a
comment…") and Add record a new line stamped with the instant and the operator signed
in on this screen (the station when nobody is). All three gestures need Run procedures and
an active run. The same append is available to dashboards and agents through the unit's
Commands.Comment point (The unit address space).
The Occurrences card
The occurrence episodes of this unit, active ones first, each with its status, its two clocks (active time and signal loss) and the message frozen with it; the head counts the active episodes. What an episode is, and how its clocks are derived, is on Occurrences.
The Productivity card
The unit's production activity over Today or the rolling window (a segmented control in the head): productivity, yield and typical elapsed time, the output ledger, the completion outcomes and a per-procedure table. What counts and how it is computed is Productivity.
The Single commands card
One isolated command on the unit, outside any procedure. A row appears only where the model declares what it fires from.
| Row | Controls | What it does | Greyed when |
|---|---|---|---|
| Snapshot | A datalog picker and Capture | Records one datalog row now as a finished Instant run in Histories, named "Snapshot · datalog". | The unit is busy, the interlock is not Normal, the runtime is stopped, a single command is still running, or without Run procedures. |
| Evaluate now | A datalog picker, an evaluation picker and Evaluate | Records one row and judges it against the evaluation now; the run is named "Evaluate · evaluation" and carries the moment's verdict. Drawn only when the model has both a datalog and an evaluation. | The same. |
| Apply recipe | A picker of the model's instant recipes and Apply | Writes the recipe's setpoints once through the write funnel under a short-lived lock; no run is recorded, the journal is the record. A source held by a live run refuses it. | The interlock is not Normal, the runtime is stopped, an apply is still running, or without Run procedures. It stays available while the unit records. |
Snapshots and evaluations prompt no metadata, reserve no counter and never count toward production. Outcomes land in the action feed ("Snapshot recorded. See Histories.", "Evaluated. The verdict is recorded in Histories.", "Recipe applied.").
Dashboards as cards
A panel may embed any dashboard of the model as a card, at the height chosen on the panel. The card runs the model's definition resolved for this unit, exactly as the unit's own dashboard node does, and its command components need Run procedures only.
The datalog
While a run records, the datalog named by its procedure writes one
application-level snapshot per interval: every recorded channel, in declared column order,
each value paired with a Good or Unavailable flag. The row promises coherent application
observation, not simultaneous physical acquisition: source devices refresh at their own
rates. An unavailable source or an unconvertible value is stored as a gap; a correctly
received NaN or engineering sentinel stays Good. A shorter interval does not get there
through the screen: the datalog's Snapshot interval field refuses a value below 50 ms
("Enter a number of at least 50.") and puts the box back to the interval in force. An
interval that reaches a run by any other path is used as-is down to 50 ms, and anything
lower is treated as 50 ms.
The run file
The run file is the complete record: stable model, unit and procedure identities and names, the model revision, the frozen channel layout with each column's resolved chart ink, the metadata values, the as-executed recipe writes, criterion results, occurrence events, comments, chart annotations, production records, label artifacts and report registrations. The frozen context is captured at Start and never mutated; the finalizer only adds the outcome: verdict, terminal state, finish time, who ended the run and, where an interlock ended it, the termination reason. Deleting the model, unit or procedure never touches a recorded run. Browsing, exporting and regenerating documents from run files is Histories.
The automation path
A unit whose automation is enabled takes the same lifecycle from the field: a rising edge on the Boolean source bound to Start, Hold, Resume, Stop or Abort fires that command. Abort wins over Stop on the same poll, and any other pair of simultaneous edges is refused as conflicting. An automated Start resolves its procedure from the fixed choice or the numeric selector and its metadata from the configured sources without touching the operator's staging, and is admitted only when the unit is ready for Start. The result is written back to the return mapped as CommandResult: 0 Idle, 1 Accepted, 2 UnitNotReady, 3 InvalidSelection, 4 InvalidMetadata, 5 IncompatibleCommand, 6 ConflictingCommands, 7 InternalFailure. A run the automation admitted lists in Histories with the Automation badge, records the automation as responsible, and names it as the one who ended it after an automated Stop or Abort.
Agents and dashboards
The embedded agent server drives the same lifecycle through its Process operate tools
(start, stop, hold, resume, abort, comment, snapshot, evaluate, recipe apply), journaled
as Agent and recorded as Agent in the run (Agent access). A dashboard reaches it
through the unit's command points: a Button on Commands.Start disables itself while the
readiness reads false, an Input on Next.<Field> stages a value, and the Procedure picker
component stages a procedure (The unit address space).
What this surface does not do
It configures nothing: channels, bindings, metadata, the interlock and the automation are edited under Definition; what a run applies, records and judges is composed under Setup. It does not edit a finished run: post-run notes, annotations, exports, reports and labels of a recorded run are Histories. And it never draws a card the station cannot fill.