Jared Frieden
jared / work / powerops

PowerOps

A back-office desk for energy trading where AI drafts the work and hard-coded rules decide it. Plain-English requests are checked by seven auditable rules before anything commits, every decision is stamped into a log that cannot be quietly edited, and the demo runs live.

live demo, prototype tier Product build · 2026 TypeScriptHonoReactCloudflare Workers + KV
Plain language a command or a variance Intent layer drafts a proposalassumptions declared Seven rules deterministic verdictsplain-English reasons Hash-chain ledger every decision recordedre-verified live Commit or reject nothing hidden either way proposal verdict ledgered

What it is

A multi-vertical energy operations prototype covering natural gas nominations, grid power schedules, and solar PPA settlement, built from a technical blueprint whose central bet is that a system can be as flexible as a language model and as reliable as a rules database. You type "Nominate 12,000 Dth on Sequoia from Willow Hub to Bayview Gate for tomorrow" and an intent layer turns it into a structured proposal, listing every default it applied as an explicit assumption. Seven deterministic rules then judge the proposal, each returning a rule ID and a plain-English reason. A pass commits; a reject changes nothing and shows the full trail. All data is fictional and labeled as such, and the demo is live at powerops.jared-c73.workers.dev.

The governed inbox

The screen opens on what needs a human, ranked by dollars at stake and deadline. Settlement cases, billing exceptions, position alerts, and schedule gaps all land in one inbox, and every resolution is a ledgered decision by a named operator. A seeded scenario engine simulates telemetry, honestly badged as a demo scenario, and closes the loop: variance against committed schedules produces auto-drafted revisions that still walk the same seven rules, and when a committed schedule exceeds projected demand the surplus becomes a priced cashout case instead of a dead end.

Demo telemetry seeded scenarios,badged as demo data Variance vs the committedschedule Auto-draft a revision proposal,assumptions declared Seven rules the same gauntlet,no side door Governed inbox ranked by dollarsat stake + deadline Named operator every resolution isa ledgered decision drift proposal verdict decide surplus over projected demand becomes a priced cashout case instead of a dead end
A morning at the desk: drift shows up priced and ranked, a fix is already drafted and rule-checked, and you close it with your name on the ledger.

Trust as the product

Every state change appends to a SHA-256 hash chain, and the header re-verifies the whole chain after each decision. That check is live, and it earned its keep during the build: wiring it into the UI exposed a race where concurrent requests could fork the chain, which forced ledger appends through a serialized queue.

the verification sweep: after every append, every block is re-checked Decision n−1 carries the SHA-256hash of n−2 Decision n carries the SHA-256hash of n−1 Decision n+1 carries the SHA-256hash of n prev hash prev hash edit one block and every hash after it stops matching. nothing gets quietly rewritten
Why the log cannot be quietly edited: every decision carries the hash of the one before it, and the whole chain is re-verified live after each append.

Shadow billing recomputes each counterparty bill from contract terms, including seasonal tiers, demand charges, and surcharges, and shows the expected math next to the billed number. An EDI parser ingests X12 810 and 867 fixtures through the same loop with structured errors and idempotent re-ingest. A Stripe test-mode client ships dark behind environment flags and refuses live keys outright.

Engineering highlights

  • Neural proposes, symbolic governs. The language layer can suggest anything; only the rules engine can commit. The invariant holds through every surface, including auto-drafted revisions and settlement approvals.
  • 186 unit tests on the deterministic core. Rule verdicts, settlement math, variance detection, EDI parsing, and ledger integrity are all pinned by exact-value tests.
  • One codebase, two runtimes. The same Hono app serves local Node development on a file store and the deployed Worker on KV, behind a single storage interface.
  • Built by the engine this site documents. The prototype went from blueprint to deployed demo in two days, with plans authored by one agent, execution dispatched to another agent CLI, adversarial review swarms between, and every merge gated on independent verification.