(taskId, assetId)
| 185 | } |
| 186 | |
| 187 | async function _completeTaskOnHub(taskId, assetId) { |
| 188 | const base = String(getHubUrl() || '').replace(/\/+$/, ''); |
| 189 | if (!base) return { ok: false, error: 'hub_url_missing' }; |
| 190 | return _postJson(base + '/a2a/task/complete', { |
| 191 | task_id: taskId, |
| 192 | asset_id: assetId, |
| 193 | node_id: getNodeId(), |
| 194 | }, PUBLISH_TIMEOUT_MS); |
| 195 | } |
| 196 | |
| 197 | /** |
| 198 | * End-to-end ATP task completion driver. |
no test coverage detected