Skip to content

Technical trust

A consolidation result should arrive with its path.

Exasum binds exact financial decisions to source facts, effective configuration, live authority, and historical versions, then preserves the released evidence as canonical bytes.

Financial representation
Exact decimal strings
Business judgement
Owned domain decisions
Historical evidence
Sealed and append-only

Evidence lineage

The explanation travels with the number

Each stage fixes the coordinates required by the next. A published result can be inspected from retained evidence instead of reconstructed from today's mutable setup.

  1. 01

    Source

    Sealed rows, provenance, and stable coordinates

  2. 02

    Meaning

    Published charts, dimensions, and mapping paths

  3. 03

    Inputs

    Effective rates, ownership, scope, and rules

  4. 04

    Decision

    Conversion, aggregation, NCI, and eliminations

  5. 05

    Publication

    Classified results, exceptions, and lineage

  6. 06

    Release

    Approved manifest and print-artifact digests

Exact arithmetic

ISO 4217 LIST ONE
165 PINNED CURRENCIES

Precision belongs to the currency, not the interface

Money and rates never pass through binary floating point. API values are decimal strings, database values are exact numerics, and each supported currency carries the precision at which money may be accepted and rounded.

Currency precision boundaryExact string contract
CurrencyMinor unitAcceptedRejected
USD2"1250.45""1250.451"
JPY0"1250""1250.5"
KWD3"1250.455""1250.4551"
CLF4"1250.4550""1250.45501"

Conversion identity

Rounding never becomes missing money

converted = half_even(source × rate) + residual

The selected rate and explicit residual are retained in lineage, so the identity can be replayed exactly.

Conservation

Every amount is carried or named

Split mappings conserve their source contribution. Ownership paths add exactly. Accepted elimination entries sum to zero. Out-of-tolerance differences remain discrepancies instead of disappearing into an adjustment.

Decision integrity

The strongest available mechanism owns each guarantee

Types and pure decisions carry business meaning; PostgreSQL independently defends critical storage invariants; integration evidence proves the real path reaches both.

01

One source of judgement

A deterministic financial answer from validated, owned inputs is a synchronous domain decision. HTTP and database code acquire authority and facts, then persist that owned outcome without recalculating it.

02

Immutable historical meaning

Source snapshots, charts, mappings, ownership, group scope, rates, eliminations, publications, and releases are sealed or append-only. A correction creates later evidence.

03

Independent database defence

Foreign keys, checks, row-level security, transition guards, deferred completeness contracts, and restricted database roles independently reject critical invalid states.

04

Executable evidence

Domain vectors prove decisions; real-database and router contracts prove the production path; browser journeys prove the visible workflow reaches those mechanisms.

Authority and transactions

Permission is resolved where the decision happens

A session snapshot is not standing authorization. Workspace scope, entity visibility, and the required typed permission are resolved inside the transaction that locks decision facts and performs the guarded write.

  1. 01

    Begin transaction

    No decision read occurs before the transaction exists.

  2. 02

    Resolve live authority

    Lock the session, account, membership, role, and entity scope required by the typed permission.

  3. 03

    Set workspace scope

    Set app.workspace_id transaction-locally before every workspace-scoped read or write.

  4. 04

    Load and lock facts

    Acquire the exact revisions and states used by the domain command.

  5. 05

    Decide once

    Call the synchronous owned-input transition or financial decision.

  6. 06

    Guard and attribute

    Write against expected revision/state and append actor-attributed audit before commit.

Exact release

The approved report is a versioned document

Release pins the group, book, period, primary and comparative publications, section order and commentary, presentation policy, attachments, approval, and release attribution.

The server renders a self-contained HTML artifact, hashes it, embeds its digest and byte length in canonical newline-terminated JSON, hashes those exact manifest bytes, and verifies stored evidence on download.

Abbreviated report-package-manifest/2 shape
{
  "schema": "https://exasum.com/schemas/report-package-manifest/v2",
  "package": {
    "version_id": "<immutable version id>",
    "group_id": "<reporting group id>",
    "period": "2026-07-31",
    "title": "Northstar July board package"
  },
  "presentation": {
    "unit": "units",
    "decimal_places": 2
  },
  "publications": [{
    "role": "primary",
    "consolidation_version_id": "<sealed publication id>"
  }],
  "artifacts": [{
    "renderer_version": "report-package-print-html/1",
    "sha256_digest": "<SHA-256>",
    "byte_length": 28416
  }],
  "release": {
    "approved_by": "<reviewer id>",
    "released_by": "<releaser id>",
    "renderer_version": "report-package-manifest/2"
  }
}

Independent evidence

One implementation is not one source of confidence

Ported financial rules are compared with the established OCaml behavior and independent F# scenarios. Domain vectors, database attacks, router contracts, race probes, accessibility scans, and browser journeys exercise different failure boundaries.

Domain vectors

Exact examples, properties, boundary cases, and exhaustive state transitions.

Database contracts

Real restricted-role sessions probe constraints, RLS, immutability, races, and guarded writes.

Router contracts

Production HTTP paths prove authentication, DTO strictness, transaction ordering, and exact response evidence.

Browser journeys

Keyboard, accessibility, visual, and full close-to-release scenarios exercise the customer-visible path.

This is repository evidence for an open engineering preview. It is not a certification, assurance report, production-operations claim, or service-level commitment.