Part I — Help Guide
Understanding ETP & meldra
What it is, what everything is called, and how the pieces fit together — written for someone using the platform, not building it.
meldra is an agentic data platform for Apache Iceberg smart meter lakehouses. At its center is an AI agent that reads what you're trying to do — in plain English — and carries it out by calling the same tools a data engineer would use by hand: ingest smart meter telemetry, run a query, check grid topology in the graph, or verify ETP cryptographic proofs. Underneath, everything it touches lands in your own cloud storage as Apache Iceberg — verified at the gateway via Moving Target Defense (MTD), versioned, never silently overwritten. You own the storage. Nothing the Agent does is a black box — every step it takes is one of a fixed, visible set of tools.
Speak meldra & ETP
- Apache Iceberg
- The filing format your tables are saved in. A smarter version of a spreadsheet folder that remembers every past version of itself and never silently loses data.
- ETP (EnergyTrust Protocol)
- Patented security layer for smart meter ingestion featuring Moving Target Defense (MTD) routes, deception honeypots, and first-class verification state in Iceberg.
- MPAN
- Meter Point Administration Number — the unique identifier for an electricity smart meter (MPRN for gas).
- Moving Target Defense (MTD)
- Dynamically rotating HTTPS ingress routes derived from time windows and secrets to defeat port scanners.
- Phantom Grid
- An isolated deception honeypot that catches unauthenticated or stale-route probes, returning plausible synthetic data while logging threat intelligence.
- Catalog
- The index that knows which tables exist and where their files live — like a card catalog in a library.
- Warehouse
- The actual storage location (an S3 bucket or local folder in testing) where your table files physically sit.
- Namespace
- A folder for grouping related tables — e.g.
<tenant>__bronze,<tenant>__silver,<tenant>__gold. - Bronze / Silver / Gold
- How "clean" data is. Bronze = raw telemetry as loaded. Silver = conformed and deduplicated. Gold = ready for settlement reporting.
- Snapshot / Time Travel
- Every change is saved as a snapshot. Time Travel lets you view — or restore — the table exactly as it was earlier, useful for settlement dispute audits.
- Schema Evolution
- Adding, removing, or renaming a column without rebuilding the whole table.
- Data Contract
- A rule on a table — e.g. "this column can never be empty." Contracts can block bad data from loading at all.
- Ingestion
- Loading smart meter telemetry data in, from CSV files or connected Head-End Systems (HES).
- RBAC & Column Masking
- Rules about who can see what. A Settlement Analyst might see telemetry, but customer PII or raw MPANs are masked for unauthorized roles.
- Query Lab
- Where you write SQL, run a Python script, or explore topology graph connections directly against your tables.
- DuckDB
- The engine that runs your SQL queries fast over Iceberg Parquet files, without a separate database server.
- The meldra Agent
- An AI agent with a fixed toolbox: ingest telemetry, run a SQL query, analyze a graph, verify ETP proofs.
- Audit Log
- A record of who did what, when, across the platform — including every tool call the Agent makes on your behalf.
How Data Actually Flows
Who Uses Which Tab
AMI / Data Engineer
Connects HES feeds, builds Bronze → Silver → Gold pipelines, sets Data Contracts, monitors micro-batch writes.
Utility Data Architect & CISO
Approves schema changes, sets naming standards, manages 7-year retention locks and PII masking rules.
Settlement Analyst / Ops Engineer
Queries natural language interface, verifies settlement proofs, investigates feeder voltage anomalies.
Admin
Everything above, plus user roles, RBAC policy configuration, and ETP key rotation workflows.
What's Live Today vs. Roadmap
Treat this table as the current source of truth, not the marketing copy.
| Feature | Status |
|---|---|
| ETP Rotating Ingress Route Scrambling (MTD) | Live |
| Nonce CAS Replay Protection & ECDSA Hash Checks | Live |
| Apache Iceberg Ingestion (Micro-batch Parquet) | Live |
| Data Quality Contracts (blocking bad loads) | Live |
| Time Travel / Settlement Proof Snapshots | Live |
| Query Lab — SQL mode | Live |
| Column-level RBAC masking | Live |
| The meldra Agent (plain-English, tool-calling) | Live |
| Audit log | Live |
| Phantom Grid Deception Routing | Live (Harness Demo) |
| Apache AGE Topology Graph | Live (Cypher Query Subset) |
| Daily Merkle Tree Checkpointing & TSA Anchoring | Design Spec (HLD/LLD) |
Getting Started — First 10 Minutes
- Register an account (first account on a fresh instance becomes Admin automatically).
- Verify your email with the code sent to you.
- Go to Ingest, upload a sample smart meter telemetry CSV, review the auto-detected schema, and load it.
- Go to Query Lab, run
SELECT * FROM bronze_ami_readings LIMIT 10against the table. - Go to the Agent and ask: "Show me average consumption by feeder in the last 24 hours".
- Go to Audit to inspect the logged tool call.