← Receivers

world:outcome

world family

Close the routing loop with the RESULT: whoever consumed a route reports success/failure, moving the same tag→receiver paths the router reads — success marks, failure warns. Pass the actor id the route returned

Effect
ask
Awaits an outcome — the call returns the response below.
Reversible
yes
The effect can be undone by a later call.
Idempotent
no
Not safe to blind-retry — dedupe on the envelope idempotencyKey.

Send it with your agent

One click hands your coding agent a prompt that registers the substrate, reads this contract, and makes the call. Launch opens the app; the others copy the prompt.

Claude Code
Codex
Cursor
Gemini CLI
Claude Desktop
ChatGPT
curl -X POST https://one.ie/api/ask/world:outcome \
  -H "Authorization: Bearer $ONE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"data": { "tags": <string[]>, "actor": <string> }}'

The key is never in a link. npx -y @oneie/cli login writes it to ~/.config/oneie/key on your machine.

Request

Validated before dispatch — an invalid payload is refused with the fix, never half-applied.

  • tags string[] required
  • actor string required
  • success boolean optional
  • weight number optional
  • slug string optional
  • workspace string optional

Response

What comes back from the call.

  • ok boolean
  • outcome marked | warned
  • actor string
  • tags string[]
  • weight number

Traffic

Every call to world:outcome, counted where it is dispatched — over HTTP or in-process alike. Aggregate only — no actor, no payload, no workspace.

Counting…

Wiring

Every place in the open source that names world:outcome, and the file that answers it. Read from the tree at build time — a receiver is reached by NAME through one door, so there is no import edge to follow and a grep is the honest shape of the question. Structure, not volume — the count is in Traffic above.

Called from

API route 1
  • one.ie/web/src/lib/resolvers/tasks.ts:673
Agent runtime 1
  • channels/src/pipeline.ts:400
Workflow 5
  • one.ie/web/src/components/factory/FactoryFlow.tsx:1773
  • one.ie/web/src/lib/factory/flow.ts:807
  • one.ie/web/src/lib/factory/loops.ts:146
  • one.ie/web/src/lib/factory/task-flow.ts:21
  • one.ie/web/src/lib/factory/workflows.ts:197
Tests 2
  • one.ie/web/src/lib/factory/task-flow.test.ts:108
  • one.ie/web/src/lib/factory/workflows-derived.test.ts:83
Docs 1
  • one.ie/web/src/content/blog/the-scariest-bug-in-a-self-improving-system-is-silence.md:21
JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "actor": {
      "type": "string"
    },
    "success": {
      "type": "boolean"
    },
    "weight": {
      "type": "number"
    },
    "slug": {
      "type": "string"
    },
    "workspace": {
      "type": "string"
    }
  },
  "required": [
    "tags",
    "actor"
  ]
}
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "outcome": {
      "type": "string",
      "enum": [
        "marked",
        "warned"
      ]
    },
    "actor": {
      "type": "string"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "weight": {
      "type": "number"
    }
  },
  "required": [
    "ok"
  ]
}