@isomorph.ai/app-sdk 2.4.0 → 2.5.0
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.
- package/README.md +1 -1
- package/dist/runtime.js +3 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -396,7 +396,7 @@ const computerUse = createComputerUseTool({ runKey: ctx.runId ?? `my-job/${ctx.s
|
|
|
396
396
|
// Add { computerUse } to generateText's tools. It returns { status: 'done' | 'failed', summary, finalUrl, downloads }.
|
|
397
397
|
```
|
|
398
398
|
|
|
399
|
-
-
|
|
399
|
+
- Hosted, the tool posts to its App Gateway (`ISOMORPH_GATEWAY_URL`, `/_harbour/computer-use/...`) with the workload token; the gateway and governance carry the call into Harbour's account (data plane ADR 0103). Only a runtime with no gateway URL calls the task API at `ISOMORPH_COMPUTER_USE_URL` directly (region `ISOMORPH_COMPUTER_USE_REGION`, default `us-east-1`), signed with SigV4 as its own role; Provision no longer sets those (ADR 0110).
|
|
400
400
|
- It starts the task with `POST /tasks`, then checks `POST /tasks/check` every 5 s until the task is `done`, `failed` or `waiting_for_input`. Waiting returns immediately; end the app job rather than holding a worker while a person signs in.
|
|
401
401
|
- It calls `progress(step count, note)` on every new step and at least once a minute, so the job's lease does not run out.
|
|
402
402
|
- When `cancelled()` turns true it sends `POST /tasks/cancel` once and keeps checking until the task has `failed`.
|
package/dist/runtime.js
CHANGED
|
@@ -885,7 +885,9 @@ export class Runtime {
|
|
|
885
885
|
const owner = context.user.id;
|
|
886
886
|
switch (name) {
|
|
887
887
|
case PING_ACTION: {
|
|
888
|
-
|
|
888
|
+
// `hooks` is what the local gateway's hooks entrance serves under `isomorph dev` (data plane ADR 0112).
|
|
889
|
+
const hooks = this.inventory.jobs.flatMap((job) => job.trigger?.type === 'webhook' ? [{ job: job.name, provider: job.trigger.provider }] : []);
|
|
890
|
+
const answer = { ok: true, mode: this.options.mode, actions: this.inventory.actions, trusted: this.inventory.trusted, exposed: this.inventory.exposed, jobs: this.inventory.jobs.map((job) => job.name), hooks };
|
|
889
891
|
return this.options.mode === 'gate' ? { ...answer, loadFailures: await this.loadFailures() } : answer;
|
|
890
892
|
}
|
|
891
893
|
case ENQUEUE_ACTION: {
|