Enterprise

Your AI vendors
can’t verify
their own work.

Refinery is the independent check that sits between AI optimisation and production deployment. Built for the audit trails, compliance mandates, and operational risk controls that regulated financial institutions require.

Book the PoC conversation →
SR 11-7 · SS1/23 · DORA Article 28
19Checks across dual-layer engine
SHA-256Chain of custody on every audit PDF
100%Recall: zero divergences missed on benchmark corpus
0Mandatory cloud dependencies

01 · Chief Risk Officer

The compliance layer your board needs

Regulatory Compliance

SR 11-7, SS1/23, DORA Art. 28: three jurisdictions, one control

SR 11-7 (US Federal Reserve) requires independent model validation evidence. SS1/23 (Bank of England) requires proportionate model risk management. DORA Article 28 (EU, enforceable January 2025) requires independent verification of material ICT changes. If the same vendor that modifies your COBOL also verifies it, regulators will reject it. Refinery is structurally independent, not owned by IBM, not by any AI vendor in your stack.

Audit Trail

An unalterable record your auditors can take to the board

Every Refinery audit produces a structured Change Contract PDF with a SHA-256 hash computed over the binary output. The hash is written to the database record alongside the PDF path. The document cannot be altered without invalidating the hash.

// Change Contract PDF structure
Cover:       Verdict badge · program · ref · date
Section 1:   Executive summary · 10-check methodology
Section 2:   Bob's AI risk narrative · remediation
Section 3:   CPU evidence · AST features · blast radius
Section 4:   Divergence log · sign-off block · SHA-256
Immutable Sign-off

A signature that cannot be overwritten

When a CRO signs off on a change in the Refinery portal, the sign-off endpoint returns HTTP 409 Conflict on any subsequent write attempt. The record locks permanently. CRO name, timestamp, and stated approval reason are stored immutably.

Precision & Recall

Benchmark results on the synthetic corpus

Refinery ships a runnable precision/recall benchmark (scripts/benchmark.py). On the current corpus: 100% recall, every semantic divergence was caught. 0% false alarm rate, no safe optimisation was incorrectly blocked.

$ python scripts/benchmark.py
True  Positives (TP) : 3   (divergences caught)
False Positives (FP) : 0   (safe changes blocked)
True  Negatives (TN) : 4   (safe changes passed)
False Negatives (FN) : 0   (divergences missed)
Recall               : 100.0%
False Alarm Rate     : 0.0%

02 · Head of Core Banking

The operational risk check your team has been missing

S0C7 Abend Prevention

The crash your compiler won't warn you about

COBOL changes frequently introduce 0C7 abend risk by converting WORKING-STORAGE fields to COMP-3 (packed decimal) without checking whether downstream programs expect display format. A compiler won't catch this. The crash happens at midnight, inside a batch run.

HIGH DATA_TYPE  WS-BALANCE-AMT
  original: PIC S9(11)V99
  modified: PIC S9(11)V99 COMP-3
  note: 0C7 abend risk, downstream expects display
ROI Calculation

Every audit report shows the MIPS saving automatically

IBM Z software licensing is billed per MIPS. Every Refinery audit report automatically computes the estimated saving per 100 MIPS/month from the CPU delta. COMP-3 conversions are credited at 6% CPU reduction per field.

03 · CISO

No core data leaves your perimeter

Deployment Architecture

Pure on-premise. No mandatory cloud dependency.

Refinery's core audit engine is Python + SQLite + Docker. There is no mandatory connection to any external service. COBOL source files are read from local disk, analysed in-process, and the result is written to a local SQLite database.

$ docker compose up refinery-api
Refinery API listening on 0.0.0.0:8080
Database: sqlite:///portal.db (local)
External calls: none in audit mode
Air-Gapped LLM

Bob's AI narrative runs locally via Ollama

Bob's risk narrative layer supports four LLM providers. For air-gapped environments, the Ollama local provider routes all inference to a locally-running LLM, with no API call, no data egress, no external dependency.

BOB_PROVIDER=local   # Ollama, no egress
BOB_PROVIDER=ibm_bob # watsonx, requires API key
BOB_PROVIDER=demo    # no LLM at all
Data Sovereignty

Your COBOL never leaves your network

In full air-gapped mode, Refinery makes zero outbound network calls. COBOL source is read from local disk. The semantic engine runs in-process. PDFs are written to local storage. Core financial data, business logic, and production database definitions stay inside your secure network.

Enterprise Engagement

How a Tier-1 bank
buys Refinery

We don’t expect a purchase order from first contact. A top-tier bank will run a Paid Proof of Concept against a real, non-clearing application. Here’s exactly what that looks like.

Week 1-2

You give us the code

A snapshot of one isolated COBOL application: HR payroll, internal reporting, a non-clearing batch pipeline. No production systems, no clearing logic required. We sign the NDA before you send a single file.

Week 2-4

We run the full stack

We deploy Refinery inside your environment, index the estate, run the dual-layer audit engine against your code, and produce a full set of Change Contract PDFs with real blast radius scores.

Week 4

You see what was missed

We present the findings: real FLAGGED verdicts on AI-modified versions of your code, with the specific semantic divergences identified by layer. If Refinery catches nothing real, we say so.

We won’t bill you until Refinery proves it catches something your current process would have missed. If the engine finds zero real divergences in your code, that’s a result too. It means your AI tooling is cleaner than average, and we’ll tell you that.