Follow-up from the #84 awaited-signal descriptor review (PR #219).
To avoid an Apex heap blowup, the instance list no longer reads the parked Output__c (a LongTextArea up to ~100KB per row; a 100-row page of inline states can exceed the 6MB synchronous heap). As a result the list now shows a single generic "Awaiting signal at step " indicator for every signal wait, and the full classification (approval / child-completion / generic) + awaited signal name + Send Signal pre-fill live on the detail view only.
The wait type currently lives only inside Output__c (written by WorkflowStepSuspension), so it can't be labeled on the list cheaply.
Proposal: persist a small indexed wait-type field (e.g. Awaited_Signal_Type__c / Awaited_Signal__c) on Workflow_Step_Execution__c (or the instance) at suspension time, so the list can show approval/child/generic — and optionally the awaited name — without selecting the LongTextArea.
Caveats: (1) this touches the engine suspension write path (WorkflowStepSuspension), which is owned by the engine-API stream, not the dashboard stream; (2) it would be null for every ALREADY-suspended instance, so it needs a one-time backfill (or a null-tolerant list label) to be consistent.
Read-only dashboard benefit; medium priority. Relates to #84 / PR #219.
Follow-up from the #84 awaited-signal descriptor review (PR #219).
To avoid an Apex heap blowup, the instance list no longer reads the parked
Output__c(a LongTextArea up to ~100KB per row; a 100-row page of inline states can exceed the 6MB synchronous heap). As a result the list now shows a single generic "Awaiting signal at step " indicator for every signal wait, and the full classification (approval / child-completion / generic) + awaited signal name + Send Signal pre-fill live on the detail view only.The wait type currently lives only inside
Output__c(written byWorkflowStepSuspension), so it can't be labeled on the list cheaply.Proposal: persist a small indexed wait-type field (e.g.
Awaited_Signal_Type__c/Awaited_Signal__c) onWorkflow_Step_Execution__c(or the instance) at suspension time, so the list can show approval/child/generic — and optionally the awaited name — without selecting the LongTextArea.Caveats: (1) this touches the engine suspension write path (
WorkflowStepSuspension), which is owned by the engine-API stream, not the dashboard stream; (2) it would be null for every ALREADY-suspended instance, so it needs a one-time backfill (or a null-tolerant list label) to be consistent.Read-only dashboard benefit; medium priority. Relates to #84 / PR #219.