(opts)
| 374 | } |
| 375 | |
| 376 | function buildUnsignedPublishPreviewMessage(opts) { |
| 377 | const assets = [opts.gene, opts.capsule] |
| 378 | .concat(opts.event ? [opts.event] : []) |
| 379 | .filter(Boolean) |
| 380 | .map(asset => { |
| 381 | const copy = cloneJson(asset); |
| 382 | copy.asset_id = computeAssetId(copy); |
| 383 | return copy; |
| 384 | }); |
| 385 | return { |
| 386 | protocol: 'gep-a2a', |
| 387 | protocol_version: '1.0.0', |
| 388 | message_type: 'publish', |
| 389 | message_id: 'msg_preview_' + Date.now(), |
| 390 | sender_id: opts.nodeId || DRY_RUN_NODE_ID, |
| 391 | timestamp: new Date().toISOString(), |
| 392 | payload: { assets }, |
| 393 | }; |
| 394 | } |
| 395 | |
| 396 | function nonPersistedNodeId(deps) { |
| 397 | if (deps && typeof deps.nodeId === 'string' && deps.nodeId.trim()) return deps.nodeId.trim(); |
no test coverage detected