{
  "manifestVersion": 1,
  "name": "delivery-obligation",
  "description": "A pending delivery obligation created at activation (M12) for a component classified as delivery work. Milestone 13 will turn these into delivery projects and work packages; this is not a project, and nothing is scheduled or fulfilled. A delivery package may mark it handed over through the contracts package's declared delivery-obligations capability; nothing else may change it.",
  "fields": [
    {
      "name": "sourceKey",
      "type": "string",
      "unique": true,
      "writable": "managed"
    },
    {
      "name": "contractId",
      "type": "string",
      "index": true,
      "writable": "managed"
    },
    {
      "name": "contractLineId",
      "type": "string",
      "index": true,
      "writable": "managed"
    },
    {
      "name": "orderId",
      "type": "string",
      "index": true,
      "writable": "managed"
    },
    {
      "name": "orderComponentId",
      "type": "string",
      "index": true,
      "writable": "managed"
    },
    {
      "name": "status",
      "type": "enum",
      "values": [
        "pending_handover",
        "handed_over"
      ],
      "writable": "managed"
    },
    {
      "name": "label",
      "type": "string",
      "writable": "managed"
    },
    {
      "name": "componentKey",
      "type": "string",
      "writable": "managed"
    },
    {
      "name": "sku",
      "type": "string",
      "writable": "managed"
    },
    {
      "name": "chargeType",
      "type": "enum",
      "values": [
        "one_time",
        "recurring"
      ],
      "writable": "managed"
    },
    {
      "name": "interval",
      "type": "enum",
      "values": [
        "month",
        "year"
      ],
      "writable": "managed"
    },
    {
      "name": "intervalCount",
      "type": "integer",
      "writable": "managed"
    },
    {
      "name": "quantity",
      "type": "integer",
      "writable": "managed"
    },
    {
      "name": "netAmountCents",
      "type": "integer",
      "writable": "managed"
    },
    {
      "name": "currency",
      "type": "string",
      "writable": "managed"
    },
    {
      "name": "productId",
      "type": "string",
      "writable": "managed"
    },
    {
      "name": "productVersionId",
      "type": "string",
      "writable": "managed"
    },
    {
      "name": "provider",
      "type": "string",
      "writable": "managed"
    },
    {
      "name": "activationId",
      "type": "string",
      "writable": "managed"
    },
    {
      "name": "handoverRef",
      "type": "string",
      "index": true,
      "writable": "managed"
    },
    {
      "name": "handedOverAt",
      "type": "timestamp",
      "writable": "managed"
    }
  ]
}
