@parall/parel-channel 1.57.2 → 1.58.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -342,7 +342,16 @@ async function planApprovalDecided(ctx, approvalId, chatId, actor) {
342
342
  if (!approval?.id)
343
343
  return STALE;
344
344
  const statusLabel = approval.status === 'approved' ? 'Approved' : 'Rejected';
345
- const execInfo = approval.execution_status ? ` | execution: ${approval.execution_status}` : '';
345
+ // A failed execution names its cause on the same line — the agent must not
346
+ // need a second read to tell a version conflict from anything else.
347
+ // agent-core's formatApprovalExecution and the server's Go materializer
348
+ // render the identical suffix; keep the three in sync.
349
+ const execError = approval.execution_error
350
+ ? ` | error: ${sanitizeMeta(approval.execution_error)}`
351
+ : '';
352
+ const execInfo = approval.execution_status
353
+ ? ` | execution: ${approval.execution_status}${execError}`
354
+ : '';
346
355
  const resolvedChat = chatId ?? approval.chat_id;
347
356
  const lines = [`[Event: approval.decided]`];
348
357
  lines.push(`[Approval: prll://${approval.id}]`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@parall/parel-channel",
3
- "version": "1.57.2",
3
+ "version": "1.58.1",
4
4
  "description": "Parall channel plugin for the parel runtime — lets a parel agent treat Parall as a managed_ws channel (receive dispatches, reply via the Parall API)",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -508,6 +508,7 @@ interface ApprovalRow {
508
508
  title?: string;
509
509
  status?: string;
510
510
  execution_status?: string;
511
+ execution_error?: string | null;
511
512
  chat_id?: string;
512
513
  decided_by?: string;
513
514
  decision_reason?: string | null;
@@ -532,7 +533,16 @@ async function planApprovalDecided(
532
533
  if (!approval?.id) return STALE;
533
534
 
534
535
  const statusLabel = approval.status === 'approved' ? 'Approved' : 'Rejected';
535
- const execInfo = approval.execution_status ? ` | execution: ${approval.execution_status}` : '';
536
+ // A failed execution names its cause on the same line — the agent must not
537
+ // need a second read to tell a version conflict from anything else.
538
+ // agent-core's formatApprovalExecution and the server's Go materializer
539
+ // render the identical suffix; keep the three in sync.
540
+ const execError = approval.execution_error
541
+ ? ` | error: ${sanitizeMeta(approval.execution_error)}`
542
+ : '';
543
+ const execInfo = approval.execution_status
544
+ ? ` | execution: ${approval.execution_status}${execError}`
545
+ : '';
536
546
  const resolvedChat = chatId ?? approval.chat_id;
537
547
 
538
548
  const lines = [`[Event: approval.decided]`];