← All ADRs

ADR-005 — Build the IBOR layer in-house over buying Eagle / Aladdin / SS&C

Status: Accepted (POC). Buy-side options remain open for ABOR (not IBOR) and for non-heterogeneous funds. Date: 2026-05-28.

Context

The substrate's whole reason to exist is canonical, bitemporal, polymorphic position tracking across four asset classes that no single vendor IBOR handles natively. Four serious vendor options exist for the IBOR layer:

  1. BNY Mellon Eagle PACE / ABOR / IBOR — strong on liquid securities, fund accounting, traditional asset manager workflows. Used by many alts managers as ABOR + book-of-record layer.
  2. BlackRock Aladdin — institutional-quality risk + portfolio management. Best-in-class for liquid + traded derivatives. Coverage of physical-commodity / direct-RE / reinsurance is thin.
  3. SS&C Geneva — fund administrator–shaped; strong on private fund GP/LP accounting; weaker on heterogeneous direct holdings.
  4. State Street Alpha (with Charles River + IBOR services) — broker/custodian-bundled, similar pattern to Eagle, less depth on private credit / RE / physical commodity. Northern Trust offers similar bundled solutions via Front Office Solutions; the same coverage gap applies.

SRHG's book spans NatGas wells (working interest math, decline curves, severance/ad-valorem), reinsurance treaties (XoL reinstatement bookkeeping, sliding-scale commissions), SFR portfolios (NOI + cap-rate-driven valuation), and crypto derivatives (Black-76 + margin posting). No vendor IBOR models all four natively. Every vendor would require custom extensions for at least three of the four — and those extensions would live in the vendor's schema, not in our code.

Decision

Build srDB as the canonical IBOR substrate. Keep ABOR external (vendor, or hand-off to the fund administrator) — see ADR-003: Shadow IBOR vs Replacement. The substrate is the operational + analytics layer, not the legal source of truth for fund accounting.

The custom build is justified by three concrete properties no vendor offers together:

  1. Schema-as-code under our control. Adding a fifth asset class is a PR. With a vendor, it's a roadmap conversation that takes 18 months and produces a stored-procedure extension we don't own.
  2. First-principles engineering identities in our codebase. Well DCF (pipelines/derive_series.py), treaty XoL payout with reinstatement bookkeeping (pipelines/treaty_xol.py), SFR NOI with hurricane impairment, Black-76 — all hand-written by us, traceable, testable, modifiable. Vendor "extensions" are black-box modules with support contracts.
  3. Agent-first tool surface. srdb_mcp/ exposes the substrate to an agent runtime in 9 typed tools. Wrapping a vendor IBOR's API in a similar surface is possible but the API contract is the vendor's, not ours.

Consequences

Positive:

  • Heterogeneous coverage from day one. The substrate handles all four asset classes equally well because it was designed for that.
  • Vendor risk goes to zero on the IBOR layer. The data + code are ours.
  • Iteration velocity is on engineering hiring, not vendor roadmap.
  • The agent-first surface is native, not bolted on a vendor API.

Negative:

  • Custom code is a team to maintain. The hiring plan is part of this decision (see ADR-006 candidate Phase 2 ADR on team shape).
  • We don't get vendor-provided ops out of the box: SLAs, regulatory certifications, 24/7 support, established audit firm familiarity.
  • Reconciliation discipline against the external ABOR (vendor or fund admin) is non-optional. The 4-table reconciliation model + break carry-forward in pipelines/reconcile_abor.py is the cost we pay for not being the system of record.

Alternatives Considered

  • Eagle PACE as full IBOR + custom extensions for the four asset classes. Workable but the extensions cost 12–18 months and produce schema in Eagle's account, not in our git. Loses the schema-as-code property we treat as load-bearing for team velocity. Reasonable if SRHG ever standardizes on Eagle for accounting and wants substrate-level reuse.
  • Aladdin for liquid + derivatives only, srDB for the rest. Two systems with two reconciliation surfaces. Doubles the ops cost; loses cross-asset queries (the substrate's headline). Possible if regulatory pressure forces Aladdin for one asset class; default position is to resist the split.
  • Geneva for fund accounting (which is really ABOR), srDB as IBOR substrate. This is the actual Phase 2 path. Geneva or the existing fund admin owns ABOR; srDB is the operational substrate that reconciles to it. ADR-003 already commits to this.
  • State Street Alpha / Northern Trust custody-bundled. Optimized for traditional alts managers with smaller heterogeneity. Wrong shape for SRHG's book; same private-credit and physical-commodity gaps as Eagle.