TradeContextReadResult trade.context-read-result@1

Generated at from openvibe-contracts v0.53.0 and openvibe-sdk v0.11.0.

Version
1.0.0
Owner
trade
Visibility
first-party
Status
active
Compatibility
backward
Schema
https://openvibe.network/contracts/trade/context-read-result.v1.json

trade.context-read-result@1: answers of trade.context.read on OpenVibe.Trade. GET /api/v1/instruments/:symbol/context → { instrument, published, disclaimer } (published is the published context revision or null; ?all=1 adds pending drafts for editors and services); GET …/context/input → { workflow, input, deliver_to } (what OpenVibe.AI's trade.summarize_market_context workflow takes: the instrument, numbered sources with freshness, and where to POST the result).

Fields

This schema has no named fields.

Examples

From the contract's own test fixtures: valid ones validate, rejected ones must fail.

Valid: published
{
  "instrument": {
    "id": "ins_01JAB2C3D4E5F6G7H8J9K0MNPQ",
    "symbol": "ACME",
    "name": "Acme Corporation",
    "kind": "equity",
    "exchange": "NASDAQ",
    "cik": "0000123456",
    "currency": "USD",
    "status": "active",
    "url": "https://openvibe.trade/i/ACME",
    "created_at": "2026-09-20T10:00:00.000Z",
    "updated_at": "2026-09-20T10:00:00.000Z"
  },
  "published": {
    "revision": 2,
    "published": true,
    "published_at": "2026-09-25T12:00:00.000Z",
    "written_at": "2026-09-25T11:00:00.000Z",
    "as_of": "2026-09-24T21:05:00.000Z",
    "origin": "ai",
    "body_markdown": "Acme closed at 182.40 USD on 2026-09-24 [1].",
    "body_html": "<p>Acme closed at 182.40 USD on 2026-09-24 [1].</p>",
    "text": "Acme closed at 182.40 USD on 2026-09-24 [1].",
    "cites": [
      {
        "kind": "observation",
        "id": "obs_01JAB2C3D4E5F6G7H8J9K0MNPQ",
        "observation": {
          "id": "obs_01JAB2C3D4E5F6G7H8J9K0MNPQ",
          "metric": "close",
          "value": "182.40",
          "unit": "USD",
          "currency": "USD",
          "period": "2026-09-24",
          "observed_at": "2026-09-24T20:00:00.000Z",
          "retrieved_at": "2026-09-24T21:05:00.000Z",
          "recorded_at": "2026-09-24T21:05:02.000Z",
          "max_age_sec": 172800,
          "source": {
            "key": "example-quotes",
            "item_id": null,
            "url": "https://quotes.example.com/ACME",
            "ref": "ACME:2026-09-24:close"
          },
          "freshness": {
            "stale": false,
            "stale_since": null,
            "reason": null,
            "source_status": "healthy",
            "source_last_success_at": "2026-09-24T21:05:00.000Z"
          }
        }
      }
    ],
    "authorship": {
      "mode": "ai"
    },
    "disclosure": "AI-generated, reviewed by a person",
    "review": {
      "decision": "approved",
      "reviewed_at": "2026-09-25T12:00:00.000Z",
      "reviewer": "usr_01JAB2C3D4E5F6G7H8J9K0MNPQ"
    },
    "needs_review": false
  },
  "disclaimer": "Information only — not investment advice; no trading here."
}
Rejected: no-published
{
  "instrument": {
    "id": "ins_01JAB2C3D4E5F6G7H8J9K0MNPQ",
    "symbol": "ACME",
    "name": "Acme Corporation",
    "kind": "equity",
    "exchange": "NASDAQ",
    "cik": "0000123456",
    "currency": "USD",
    "status": "active",
    "url": "https://openvibe.trade/i/ACME",
    "created_at": "2026-09-20T10:00:00.000Z",
    "updated_at": "2026-09-20T10:00:00.000Z"
  },
  "disclaimer": "x"
}

Validate

const contracts = require('openvibe-contracts');
contracts.validate('trade.context-read-result@1', value);   // { valid, errors: [{ path, message }] }