MorphoGrid FlowOS · field guide

Nineteen ways to turn scattered files into a working data flow.

FlowOS is the multi-file side of MorphoGrid: reconcile, combine, route, validate and deliver datasets without setting up a database. This guide shows what each option solves, what goes in, how it is configured and what comes out.

19purpose-built workspaces
Localbrowser-first processing
Optionalrecipe cleanup per input
No DBfiles in, files out

01 · Combine & compare

Make several files agree on what happened.

01

Reconcile

Match expected and actual records, then isolate differences.

Pain point

Two teams send nearly identical lists, and finding missing or changed rows becomes a brittle VLOOKUP exercise.

Use case

Compare a claims register with insurer confirmations before month-end sign-off.

Input · expected / actual
ClaimExpectedActual
C-1011,2001,200
C-102850900
Configure
  1. Optional recipe on either file
  2. Match on Claim
  3. Compare Amount
Sample output
ClaimStatusDelta
C-101Matched0
C-102Changed+50

Outcome: an inspectable exception list and reconciliation export, while both originals remain untouched.

02

Reconcile+

Handle less-perfect matching with composite keys and tolerances.

Pain point

Invoice IDs repeat across lines and harmless rounding differences create noisy mismatches.

Use case

Reconcile supplier invoices against the ledger using invoice and line number together.

Input
InvoiceLineTotal
INV-9199.99
INV-9245.00
Configure
  1. Keys: Invoice + Line
  2. Tolerance: 0.05
  3. Choose duplicate handling
Sample output
KeyResult
INV-9 · 1Within tolerance
INV-9 · 2Missing right
03

Multi-file canvas

Prepare each input, then join or append them visually.

Pain point

Every source needs different cleanup before combining, which a single linear recipe cannot express.

Use case

Clean orders and customer masters independently, then enrich orders with customer region.

Inputs
Customer_IDTotal
001420
customer idRegion
001West
Canvas
  1. Trim/rename with input recipes
  2. Connect both nodes
  3. Join on normalized ID
Sample output
Customer_IDTotalRegion
001420West
04

Union+

Stack files even when headers are not perfectly aligned.

Pain point

Monthly exports use different casing, spacing or spelling for the same fields.

Use case

Combine regional sales extracts into one quarterly dataset with source lineage.

Inputs
Customer IDNet Sales
A12250
customer_idNetSales
B07310
Configure
  1. Map equivalent headers
  2. Fill absent fields with blanks
  3. Add source filename
Sample output
Customer IDNet SalesSource
A12250Jan.xlsx
B07310Feb.csv
05

Enrich

Add trusted reference attributes to a working dataset.

Pain point

A transaction file contains codes but not the names, owners or categories needed to interpret it.

Use case

Add policyholder and broker details to a loss-run export.

Primary + lookup
PolicyLoss
P-448,500
PolicyBroker
P-44Northstar
Configure
  1. Preview both files
  2. Apply optional recipes
  3. Select key and lookup fields
Sample output
PolicyLossBroker
P-448,500Northstar

02 · Design & run

Turn one-off work into a visible, reusable process.

06

AI flow

Describe an outcome and receive a draft workflow to review.

Pain point

Users know the result they need, but not which nodes should be chained.

Use case

Turn “clean files, join customers, route high-value exceptions” into a starter flow.

Input prompt
Clean orders and customers.
Join on customer_id.
Route totals over 10,000.
Draft plan
  1. Input + recipe nodes
  2. Join node
  3. Route + output nodes
Sample output
Orders ─┐
        ├─ Join → Route → Review.csv
Clients ┘           └──→ Standard.csv

Important: AI creates a draft. You review mappings, rules and filenames before running it.

07

Graph

Build a workflow by connecting configurable blocks.

Pain point

A process spanning several inputs and outputs is hard to understand as a flat form.

Use case

Model weekly lead processing as input → clean → enrich → split → output.

Input
leads.csv
owners.xlsx
recipe: Normalize CRM export
Configure
  1. Select a block to edit it
  2. Connect compatible ports
  3. Name each output
Graph
Leads → Clean ─┐
Owners ────────┴→ Enrich → Split
                         ↙      ↘
                  assigned.csv unowned.csv
08

Library

Keep reusable graphs discoverable and versioned.

Pain point

A useful workflow exists only in one browser session or an ambiguously named download.

Use case

Save approved month-end workflows with descriptions and revision notes.

Save
Name: AP month-end
Tags: finance, monthly
Note: Added tax validation
Manage
  1. Search by name or tag
  2. Inspect versions
  3. Export/import definitions
Library card
AP month-end · v3
6 nodes · updated today
[Open] [Export]
09

Run graph

Bind current files to a saved graph and inspect each node.

Pain point

A repeatable workflow still needs proof that this month’s inputs ran correctly.

Use case

Run the approved AP graph against the latest invoice and supplier files.

Inputs
Graph: AP month-end v3
Invoices: AP_2026-08.xlsx
Suppliers: vendor_master.csv
Execute
  1. Bind each input file
  2. Run supported graph nodes
  3. Inspect counts and errors
Sample result
NodeRowsStatus
Clean2,490Passed
Exceptions31Ready

03 · Route & calculate

Express business logic without hiding it in formulas.

10

Split flow

Divide one file into named outputs using clear conditions.

Pain point

Teams repeatedly filter a master export and copy rows into separate files by hand.

Use case

Split claims into high-value review, open claims and closed claims.

Input
ClaimStatusAmount
C1Open15,000
C2Closed900
Routes
  1. Amount ≥ 10000 → high_value.xlsx
  2. Status = Open → open.csv
  3. Otherwise → closed.csv
Sample output
FileRows
high_value.xlsx1
closed.csv1

Cleanup first: normalize status and amount with an optional recipe before conditions run.

11

Route+

Use nested AND, OR and NOT logic with route priority.

Pain point

Real exception logic uses overlapping conditions, which can send a row to the wrong owner.

Use case

Route urgent high-value open cases, excluding known test accounts.

Rule
(Amount > 10000 AND Status = "Open")
AND NOT Account starts with "TEST"
Configure
  1. Build nested groups
  2. Order route priority
  3. Name each output
Sample output
RouteRows
Urgent review14
Standard queue207
Excluded tests5
ƒ
12

Expressions

Create calculated fields from readable formulas.

Pain point

Business calculations are buried in copied formulas and become difficult to audit.

Use case

Convert invoice amounts and label material variances.

Input
AmountFXBudget
1003.67350
Expressions
  1. Local = Amount * FX
  2. Variance = Local - Budget
  3. Flag = IF(Variance > 0,"Over","OK")
Sample output
LocalVarianceFlag
36717Over
13

Branches

Separate accepted, exception and incomplete records.

Pain point

Good records, genuine exceptions and incomplete rows need different treatment.

Use case

Branch service tickets into within-SLA, breached and missing-due-date queues.

Input
TicketHoursDue
T13024
T28
Branches
  1. Hours ≤ Due → accepted
  2. Hours > Due → breached
  3. Due is blank → incomplete
Sample output
BranchTicket
BreachedT1
IncompleteT2

04 · Govern & test

Know what changed, what is expected and what failed.

14

Contracts

Check incoming files against an expected structure.

Pain point

A vendor silently renames or removes a column and the process fails later.

Use case

Validate the weekly payroll input before transformations run.

Expected contract
employee_id · required text
pay_date · required date
gross_pay · required number
Candidate
  1. Employee ID
  2. PayDate
  3. Gross Pay
  4. Notes
Compatibility
FieldResult
employee_idMapped
gross_payType check
NotesExtra
15

Parameters

Replace hard-coded values with named run inputs.

Pain point

Changing month, region or threshold requires editing several rules.

Use case

Prepare one regional sales configuration for each reporting month.

Template
Month = {{report_month}}
Region = {{region}}
Threshold = {{min_sales}}
Run values
  1. 2026-08
  2. West
  3. 10,000
Resolved preview
Month = 2026-08
AND Region = West
AND Sales ≥ 10000

Current scope: parameter configurations can be previewed and exported for repeatable setup.

16

Lineage

Explain how an output value was derived.

Pain point

A reviewer sees a number but cannot tell which source field and steps produced it.

Use case

Trace a normalized claim amount from raw text to final reporting value.

Source
loss_run.csv · row 48
Amount = " AED 1,250.00 "
Trace
  1. Trim text
  2. Remove currency/comma
  3. Cast to number
Output
Claim_Amount = 1250
Origin: loss_run.csv · row 48
17

Tests

Run repeatable assertions before trusting an output.

Pain point

A recipe can produce the wrong result when source data changes shape.

Use case

Protect a finance cleanup with row-count, null and total checks.

Assertions
Rows ≥ 1,000
Invoice_ID blanks = 0
Amount sum = 2,450,000 ± 1
Run
  1. Load test file
  2. Apply recipe
  3. Compare expected results
Sample output
TestStatus
Row floorPass
No blank IDsFail · 3
TotalPass

05 · Deliver at scale

Package the result so the next person can use and trust it.

18

Deliver

Bundle transformed data with useful supporting artifacts.

Pain point

A bare output file does not explain the cleanup, warnings or counts behind it.

Use case

Hand an audit-ready claims dataset to a reviewer with profile and workflow context.

Input
claims_raw.xlsx
Recipe: Monthly claims standard
Format: XLSX + CSV
Package
  1. Select formats
  2. Include audit details
  3. Name the delivery
Sample ZIP
claims_clean.xlsx
claims_clean.csv
profile.json
workflow.json
README.txt
19

Batch

Apply the same preparation to a collection of files.

Pain point

The same cleanup must be repeated for twenty branches, periods or vendors.

Use case

Normalize every branch’s monthly sales export and download results together.

Inputs
DXB_sales.csv
AUH_sales.csv
SHJ_sales.csv
Recipe: Branch sales standard
Batch run
  1. Queue multiple files
  2. Apply chosen recipe per file
  3. Review individual status
Sample output
FileRowsStatus
DXB_clean.csv812Ready
AUH_clean.csv604Ready
SHJ_clean.csv0Review

Start with the ugly file.

Clean each input, make the flow visible, and keep the output understandable.