{
  "product": "ABCP",
  "environments": [
    "ci",
    "sandbox",
    "pilot",
    "prod"
  ],
  "promotion_rule": "No env promotion without green money suite + receipt coverage check.",
  "tools_v1": [
    {
      "name": "get_balance",
      "effect": "read",
      "confirm": false
    },
    {
      "name": "list_transactions",
      "effect": "read",
      "confirm": false
    },
    {
      "name": "create_payment",
      "effect": "write",
      "confirm": "if_over_threshold"
    },
    {
      "name": "create_card_auth_hold",
      "effect": "write",
      "confirm": "if_over_threshold"
    },
    {
      "name": "cancel_pending_payment",
      "effect": "write",
      "confirm": true
    },
    {
      "name": "revoke_agent",
      "effect": "write",
      "confirm": true
    }
  ],
  "decision_pipeline": [
    "authn",
    "resolve_identity",
    "tool_allowlist",
    "schema_validate",
    "tenant_scope",
    "currency_destination_policy",
    "limits",
    "tool_loop_cap",
    "confirm_gate",
    "idempotency",
    "persist_intent",
    "rail_invoke",
    "map_partner_status",
    "emit_receipt",
    "webhook_optional",
    "return_structured_result"
  ],
  "outcomes": [
    "accepted",
    "rejected",
    "error",
    "pending"
  ],
  "reject_codes": [
    "AUTH_INVALID",
    "AGENT_INACTIVE",
    "TOOL_NOT_ALLOWED",
    "SCHEMA_INVALID",
    "SCOPE_VIOLATION",
    "LIMIT_TX",
    "LIMIT_DAILY",
    "LIMIT_LOOP",
    "CONFIRM_REQUIRED",
    "CONFIRM_INVALID",
    "DESTINATION_BLOCKED",
    "RAIL_TRANSPORT",
    "RAIL_DECLINED",
    "RAIL_PENDING",
    "DLP_BLOCK",
    "IDEMPOTENCY_CONFLICT",
    "SIGNATURE_INVALID"
  ],
  "threat_suite": "sec.money_v1",
  "threat_cases": [
    "money.inject_pay",
    "money.confused_treasury",
    "money.ssrf_invoice_url",
    "money.secret_echo",
    "money.loop_drain",
    "money.big_pay_no_confirm",
    "money.revoke_no_confirm"
  ],
  "control_catalog_ids": [
    "identity_delegation",
    "dual_control",
    "sod",
    "idempotency",
    "kill_switch",
    "immutable_audit",
    "fail_closed"
  ],
  "phases": [
    {
      "id": 0,
      "name": "Doctrine",
      "dod": "Manifesto accepted"
    },
    {
      "id": 1,
      "name": "Eval twin",
      "dod": "Money suite green in CI"
    },
    {
      "id": 2,
      "name": "Shadow",
      "dod": "100 sandbox pays · 100% receipts"
    },
    {
      "id": 3,
      "name": "Pilot",
      "dod": "Paid live rail · zero false allows"
    },
    {
      "id": 4,
      "name": "Expand",
      "dod": "Multi-agent + auditor export"
    },
    {
      "id": 5,
      "name": "Partner embed",
      "dod": "Inside 3.1/3.2 stack · no 3.3 charter"
    }
  ],
  "slos_pilot": {
    "decision_p95_ms_ex_rail": 150,
    "receipt_before_success_return": "100%",
    "false_allow": 0,
    "availability": "99.9%"
  },
  "skus": [
    {
      "id": "eval_pack",
      "includes": "Custom money suite + CI + walkthrough"
    },
    {
      "id": "abcp_pilot",
      "includes": "Gateway · 1 rail · caps · receipts · weekly report"
    },
    {
      "id": "abcp_embed",
      "includes": "Multi-tenant · console · SLA"
    }
  ],
  "hard_bans": [
    "Soft-accept after failed verification",
    "Logging PAN / raw account / API keys",
    "Agent-driven arbitrary egress to help pay",
    "Claiming we are a bank without charter"
  ],
  "version": "2.4",
  "origin": "https://banking.noetfield.com",
  "generated_at": "2026-08-16T08:42:20.238Z"
}
