All projects

Institutional portfolio operations

MANDATE.

Portfolio implementation and control, made traceable.

Mandate reconciles fragmented portfolio data, evaluates effective-dated controls, and produces an auditable path from rebalance intent to authorized handoff.

Status
Synthetic product concept
Role
Systems design and build, solo
Stack
Next.js · TypeScript · Zod · Vitest
Affiliation
Independent. No firm, no client data

The product

The Mandate account view for the synthetic Alder Family Tax-Managed Equity SMA: a blocked readiness verdict, the scenario rail, three blocking controls with owner and client impact, and a dependency-ordered next-actions panel.
One synthetic account, mid-rebalance. The verdict, the control that produced it, the evidence behind that control, and the action that clears it are all on one screen.Open at full size ↗
  1. 01

    Readiness

    Blocked · 3 controls

  2. 02

    Blocking control

    DATA-FRESH-001 · Fail

  3. 03

    Evidence

    Source 2.7 d old vs an 18 h window

  4. 04

    Next action

    Owned, and it unblocks 4 controls

The problem

The answer is spread across seven systems.

Material sources

  • Custodian holdings
  • Internal accounting
  • Model portfolio
  • Security master
  • Mandate document
  • Tax-lot ledger
  • Transaction history

MANDATE.

Reconcile · evaluate · order · authorize

One canonical account state

Recorded facts · append-only events · one derived projection

A rebalance decision depends on facts distributed across custodians, policy documents, tax context, model data, and human approvals. Readiness gets asserted because reconstructing it is slower than the trading window. Mandate makes the reconstruction the product.

Mandate's data lineage view: each source snapshot listed with its as-of time, age, freshness window, state, and the controls it feeds, with the custodian holdings file marked stale.
Fresh, complete, and consistent are different properties. One stale source is visible here, along with every control waiting downstream of it.Open at full size ↗

The product insight

An account is not ready or not ready by opinion.

Readiness is derived.

Facts

Recorded, sourced, timestamped

Effective-dated controls

Versioned policy, not opinion

Dependencies

What must be trusted first

Human authority

Who may release, and against what

The current mandate state

Re-derived on every new fact · never edited by hand

Blocked, and why

Blocked

3 unresolved controls

  • DATA-FRESH-001

    Custodian position file is stale against its freshness window

  • MANDATE-RESTRICT-004

    A proposed buy conflicts with a verified client exclusion

  • TAX-BASIS-003

    A selected sell lot has no usable cost basis

Mandate does not simply flag the portfolio. It exposes which control failed, the evidence behind it, the policy version in force, the required resolution, and who must authorize release.

Mandate's portfolio impact view after the restricted buy is substituted, showing model deviation moving from 8.00% to 4.61% alongside turnover, residual cash, largest single name, buy and sell value, and a projected realized result still reported as unknown.
Complying with the restriction cost index-tracking accuracy, and the product says so. Resolution is not a completion checkbox; it is a change with a price, approved against the projection it produces.Open at full size ↗

State transition

Same account. Same policy. New evidence. New state.

  1. 01

    Blocked

    3 unresolved controls. 5 more report they could not evaluate and name the dependency they are waiting on.

    Fresh source ingested, authoritative record named

  2. 02

    Needs authorized review

    No blockers remain. Three warnings are carried on the record rather than cleared, including a documented wash-sale review.

    Portfolio manager authorization, with a reason

  3. 03

    Handoff approved

    A checksummed synthetic package bound to one exact projection version. It says approved. It never says executed.

Each step appends real domain events and re-runs the same projection. Readiness changes because the facts changed, not because a screen advanced.

Control trace

One control, and everything behind its verdict.

The blocker that most other controls on this account are waiting on, as the product publishes it.

Control
DATA-FRESH-001Material source freshness
Version
v1.4.0Effective Jan 01, 2026 → open
Verdict
FailRequirement: rebalance blocker
Input
Custodian position fileAs of Mar 13, 2026, 21:00 UTC
Measured
2.7 days oldAgainst an 18-hour window
Source class
Product assumptionIllustrative, not any firm’s policy
Owner
Data StewardResolution is owned, not unassigned
Next action
Request and ingest a fresh snapshotClearing it unblocks 4 controls
Authority
Release requires a portfolio managerBound to the resulting projection

Verdict and requirement are separate axes. The same finding can be a hard stop under one mandate and a warning under another, which is why the catalog records both.

Mandate's decision trace: every control listed with its version, verdict, requirement class, reason, owner, and a link to the evidence and calculation behind each result.
Every control on the account, with the evidence drawer one click away. Nothing here is summarized into a score.Open at full size ↗
Mandate's control registry: twelve effective-dated controls, each with version, effective interval, owner, source class, severity mapping, test count, and the outcome it produced on the flagship account.
The registry is read-only by design. Source class records where each rule came from — regulatory guidance or an explicit product assumption — so a reviewer can tell a definition from an invention.Open at full size ↗

How it works

Reconcile. Control. Authorize.

  1. 01

    Reconcile

    Fragmented evidence becomes one canonical account state, with every fact carrying its source and age.

  2. 02

    Control

    Effective-dated deterministic rules evaluate readiness. Unknown stays unknown; a contradiction stays a contradiction.

  3. 03

    Authorize

    A named human releases material action, bound to the exact projection they reviewed.

Mandate's operator work queue, grouping accounts by what to resolve first, with each action showing the control, how many downstream controls it unblocks, its owner, and its deadline.
Ordering comes from a dependency graph in the domain layer, not a column sort. An action that unblocks four controls outranks an older one that unblocks nothing.Open at full size ↗

Architecture

Facts are recorded. Decisions are derived. People release.

  1. 01

    Source data

    Seven material feeds, each with an as-of time and a checksum

  2. 02

    Canonical account state

    Recorded facts and an append-only event log. Nothing derived is stored

  3. 03

    Control engine

    Versioned, effective-dated, dependency-aware

  4. 04

    Readiness

    Derived, never asserted

  5. 05

    Resolution plan

    Ordered by what each action unblocks

  6. 06

    Authorized handoff

    Checksummed, projection-bound, synthetic

Scope

What is built, and what is stood in for.

Built

  • Canonical, event-sourced account state
  • Deterministic control evaluation
  • Effective-dated, versioned rules
  • Event replay and deterministic reset
  • Dependency-aware resolution planning
  • Reproducible decision trace
  • Projection-bound approvals and invalidation
  • Checksummed handoff state

Simulated

  • Custodian and accounting feeds
  • OMS and execution venue
  • Tax system integration
  • External compliance tooling
  • Named approver identities

Implementation

Under the hood.

Canonical state
One normalized source of truth for the rebalance case. It stores facts and events, never readiness.
Projection engine
Readiness is re-derived from the current event state and an injected clock, never mutated by hand.
Effective-dated controls
Each rule carries a version, effective interval, scope, owner, source class, and named tests.
Append-only events
Every past decision stays reconstructable, and reset rebuilds an identical baseline.
Decision trace
Every material outcome links to its evidence, rule version, result, and the human who acted.

Boundary

What Mandate does not do.

  • Optimize portfolios
  • Route or execute trades
  • Replace the order management system
  • Act as a tax engine
  • Let AI override a control outcome

The boundary is the product decision. Models propose trades, controls evaluate readiness, authorized people release the handoff — and the handoff is a synthetic package, never an order.

Why it exists

A control problem, not an analytics problem.

Observation

Portfolio implementation fails less from a shortage of analytics than from fragmented state, inconsistent controls, and unclear ownership.

Product decision

Build an orchestration and control layer rather than another optimizer, and prove it on one account type deeply enough that the real failure modes appear.

Effective-dated controls
12Effective-dated controls
States in the flagship path
6States in the flagship path
Synthetic accounts evaluated
11Synthetic accounts evaluated
Synthetic data
100%Synthetic data

See the system run.

Mandate is a working synthetic portfolio-control prototype, built to show how an institutional rebalance workflow can be made explicit, traceable, and governable.

Independent engineering case study. Every account, security, price, tax lot, policy, feed, and person in it is synthetic. Not affiliated with, endorsed by, or derived from any asset manager, custodian, index provider, broker, tax adviser, or trading venue. Thresholds are illustrative product assumptions, not any firm's policy. Nothing here is investment, legal, or tax advice, and the product never creates, routes, or executes an order.