Chapter 2: A Transaction in the Dark – The Front-Running Fencer

The library study room smelled like old books and someone’s forgotten microwave popcorn. Jesse arrived ten minutes early, which was unusual for him. He’d spent the morning pacing his bedroom, running through questions he wanted to ask, then deciding he didn’t know enough to ask good questions, then deciding that was exactly why he needed to show up.

Study Room C was at the end of a narrow hallway, behind a door with a fogged glass window. Jesse pushed it open and found a long table, six chairs, a whiteboard on wheels, and absolutely no Nia.

He sat down. Checked his phone. 2:52 PM. Eight minutes early. Maybe too early.

He pulled out his own laptop—an older model with a sticker of a pixelated dragon on the lid—and opened the mempool viewer he’d been obsessing over for the past three days. The transactions scrolled past in a blur of green and gray. Sender addresses. Recipient addresses. Amounts. Gas fees. Timestamps.

He still didn’t fully understand what he was looking at. But he understood enough to know that something was wrong with the system. And he understood that Nia might be the only person he knew who could explain it.

The door banged open.

Nia rolled in like a small hurricane—laptop bag sliding off one shoulder, a half-empty energy drink balanced on top of a stack of notebooks, her hair escaping from a messy bun in seventeen different directions. She was wearing an oversized hoodie that said VALIDATOR IN TRAINING: WILL WORK FOR GAS in faded letters.

“You’re early,” she said, dumping her stuff on the table.

“So are you,” Jesse said.

“I’m not early. I’m exactly on time. You’re just early.” She pulled out a chair, spun it around backward, and sat straddling it with her arms folded across the back. “Okay. Show me what happened.”

Jesse blinked. “Don’t you want to, like, introduce yourself first? Or ask how I’m doing?”

Nia looked at him over her glasses. “You got front-run on a rare artifact sale. You’ve been staring at a mempool viewer for three days. You messaged a near-stranger for help. How do you think you’re doing?”

“Not great,” Jesse admitted.

“Exactly. So skip the small talk. Show me the transaction.”

Jesse turned his laptop toward her. He’d kept the block explorer open from the Emberheart sale—Block #4,821,033, the one that had ruined his week.

Nia leaned forward, squinting at the screen. Her fingers flew across the trackpad, scrolling through the transaction list, expanding details, muttering under her breath. “Yep. Yep. Uh-huh. Classic.”

“Classic what?”

She didn’t answer immediately. Instead, she pulled out her own laptop—a much nicer one, covered in stickers that Jesse didn’t recognize: cryptographic symbols, validator node addresses, a cartoon fox wearing a hoodie—and set it next to his.

“Okay,” she said. “Lesson one. You know how when you submit a transaction, it doesn’t go straight into a block?”

“It goes into the mempool,” Jesse said. “I learned that much.”

“Good. You’re ahead of most victims.” She opened a program on her laptop—a mempool viewer that made Jesse’s look like a toy. It showed a live feed of pending transactions, but with extra columns he’d never seen before: Time since first seen, Fee per unit of computation, Estimated inclusion time.

“This is the mempool,” she said. “The waiting room. Every transaction that hasn’t been confirmed yet lives here. Validators look at this list and decide which transactions to put in the next block.”

Jesse nodded. He knew this part.

“Here’s what you don’t know.” Nia pointed to a column labeled Gas Fee. “Validators get paid two things: the base fee, which is the minimum cost to use the network, and the priority fee, which is a tip you pay to encourage a validator to pick your transaction. Higher priority fee = faster inclusion. Usually.”

“Usually?”

“Because validators are competing against each other. The one who builds the next block gets to choose which transactions go in. They’ll pick the most profitable ones first. That’s just math. But here’s where it gets ugly.” She pulled up a second window—a historical view of the mempool from the exact moment of the Emberheart sale. “Watch.”

The screen showed a simulation. Transactions appeared in the mempool one by one, color-coded by type. Jesse’s transaction—he recognized his wallet address—appeared at 14:32:01.000, just one second after the sale started.

“That’s you,” Nia said. “You submitted first. Look at your gas fee.”

Jesse looked. He’d paid a priority fee of 0.5 credits—a reasonable tip, he’d thought. Enough to get included quickly but not so much that he was wasting money.

“Now watch what happens at 14:32:01.500,” Nia said.

Half a second after Jesse’s transaction appeared, another transaction materialized in the mempool. Same recipient address. Same artifact purchase. Same amount of credits. But the gas fee was higher: 0.6 credits.

“That’s The Seeker,” Jesse said.

“That’s A Seeker,” Nia corrected. “There are dozens of them. Maybe hundreds. They watch the mempool constantly, looking for profitable transactions. When they see someone trying to buy a limited artifact, they copy the transaction and resubmit it with a higher gas fee.”

Jesse watched as more transactions appeared—not just from The Seeker, but from other addresses he didn’t recognize. A bidding war unfolded in milliseconds. Each new transaction had a slightly higher gas fee than the last. By the time the next block was built, Jesse’s original transaction—the one that had arrived first—was buried at the bottom of the mempool, with the lowest fee.

“Validators don’t order by arrival time,” Nia said. “They order by gas fee. The Seeker knew that. So it outbid you. Not by a lot—just enough to jump ahead.”

“But I was first,” Jesse said again, hearing the whine in his own voice.

“Doesn’t matter. First doesn’t matter. Only the fee matters.” Nia closed her laptop. “That’s how you lost your sword.”


Jesse sat in silence for a moment. The whiteboard on wheels seemed to stare at him. He wanted to be angry at Nia, but she was just the messenger. And she looked tired, he noticed. Dark circles under her eyes. The energy drink was her third of the day, probably.

“So what you’re telling me,” he said slowly, “is that the entire system is designed to reward whoever pays the most. Not whoever shows up first. Not whoever wants it more. Just whoever has the deepest pockets.”

“Now you’re getting it.”

“That’s not fair.”

Nia laughed. It wasn’t a happy laugh. “Fair? You want fair? Fair doesn’t pay validators’ electricity bills. Fair doesn’t keep the network secure. Fair is a concept for kindergarteners and philosophers. The network runs on incentives.”

Jesse stood up. Started pacing the small room. “But the sale was advertised as first-come, first-served. The creator said it would be fair. Everyone assumed—”

“Everyone assumed wrong.” Nia’s voice was flat. “The creator can say whatever they want. They don’t control the validators. They don’t control the mempool. The only way to guarantee first-come, first-served is to build an entirely different system. And nobody has.”

Jesse stopped pacing. He turned to face her. “You keep saying ‘nobody.’ But you’re a validator operator. Couldn’t you just… order by arrival time? Ignore the gas fees?”

Nia was quiet for a long moment. She picked up her energy drink, took a sip, made a face like it had gone warm, and set it down again.

“Yeah,” she said finally. “I could. My brother and I, we run a small validator pool. Three nodes in his bedroom closet. We could decide to order every block by timestamp instead of gas fee. It’s technically possible.”

“So why don’t you?”

“Because then we’d go bankrupt.”

Jesse frowned. “What do you mean?”

Nia opened her laptop again, clicked through a few screens, and turned it toward him. A dashboard showed something called Validator Revenue—a graph that looked like a ski slope heading downward.

“This is our revenue from last month,” she said, pointing to the line. “See that drop in the middle of the month? That’s when we tried to be fair. We ordered by arrival time for three days.”

“What happened?”

“Users stopped sending us transactions. Why would they? We were slower than other validators. Our blocks took longer to fill because we weren’t prioritizing high-fee transactions. Our inclusion times were garbage. So people started choosing different validators—ones that played the gas game.” She pointed to the bottom of the graph. “We lost about forty percent of our revenue in three days. My brother almost shut down the whole operation.”

Jesse sat back down. “So you went back to playing the game.”

“We went back to surviving.” Nia’s voice was hard, but her eyes looked guilty. “Look, I didn’t make the rules. I just run a node. If I refuse to participate in the gas auction, someone else will. The Seeker doesn’t care which validator includes its transactions. It just cares that someone does. And there’s always someone who will.”


The study room felt smaller now. Jesse looked at the whiteboard and had a sudden urge to write something on it—something big and angry, like THIS SYSTEM IS BROKEN.

Instead, he asked, “So what happened to my transaction exactly? Step by step. I want to see it.”

Nia nodded, seemingly relieved to have something technical to focus on. “Okay. Step one: you submit your transaction. It enters the mempool with a timestamp and a gas fee.”

She pulled up the block again—Block #4,821,033—and expanded the details.

“Step two: The Seeker sees your transaction in the mempool. Its code recognizes that you’re trying to buy a limited-edition artifact. It calculates exactly how much higher it needs to bid to beat you.”

“How does it know my gas fee?” Jesse asked. “The mempool is public?”

“Completely public. Anyone can see every pending transaction. That’s the problem.” Nia pointed to the screen. “The Seeker submits its own transaction with a higher fee. Then it watches to see if anyone outbids it. This all happens in milliseconds.”

Jesse watched as Nia scrolled through the block. Near the top of the block—position #4 out of 187 transactions—was The Seeker’s first purchase. Then another. Then another. Fifteen total, scattered through the top twenty positions.

“Step three,” Nia continued. “A validator—not our pool, by the way—starts building the next block. They look at the mempool and sort transactions by gas fee, highest to lowest. The Seeker’s transactions are near the top because they bid higher than you.”

“Why didn’t anyone outbid The Seeker?” Jesse asked. “If it’s just a gas auction, someone richer could have jumped ahead of the bot.”

“They could have. And sometimes they do. But The Seeker is programmed to keep bidding until it’s no longer profitable. It has a maximum price—a point where buying the artifact would cost more than the artifact is worth. Most human users don’t have that kind of patience or capital.” Nia shrugged. “The Seeker usually wins because it never gets tired and it never gets emotional.”

“Step four,” she said, pointing to the bottom of the block. “Your transaction finally gets included—in position #173 out of 187. By then, all fifteen swords that The Seeker wanted are gone. The sale contract sees that there are zero copies left. Your transaction fails.”

Jesse stared at the screen. His transaction looked so small down there. A tiny failure buried under a mountain of successful bot purchases.

“So that’s it,” he said. “I lost because I didn’t pay enough. Because a machine saw me coming and cut in line. And the validators who processed that block made more money because they let it happen.”

“That’s it,” Nia agreed.

“And your validator pool does this too.”

It wasn’t a question. But Nia answered anyway.

“Sometimes,” she said quietly. “Not the sandwich attacks—those are worse. But front-running? Yeah. We do it. Not because we want to. Because if we don’t, we can’t compete.”

Jesse looked at her. She looked back. For a moment, neither of them spoke.

Then Jesse said, “Show me how to beat it.”

Nia blinked. “What?”

“You heard me. You know how this works. You know why it’s broken. So show me how to fight back. There has to be a way.”

Nia opened her mouth, closed it, opened it again. “I don’t know if there’s a way. I’ve been thinking about this for a year. Everything I try, the bots adapt.”

“Then we try something else.” Jesse leaned forward. “You said your pool tried to be fair and it failed. So it’s not that fairness is impossible. It’s that fairness isn’t profitable. Those are two different problems.”

Nia was staring at him now, really looking at him for the first time.

“Who are you again?” she asked.

“I’m the guy who just lost a sword to a bot,” Jesse said. “And I’m not going to let that be the end of the story.”

Nia laughed again—a real laugh this time, surprised and slightly unhinged. “You’re insane.”

“Probably. But you’re the one who agreed to meet me in a library study room to explain mempool mechanics to a stranger. So what does that make you?”

She didn’t have an answer for that.

Instead, she pulled out a marker from her bag, stood up, and wrote on the whiteboard in big block letters:

HOW TO BEAT THE SEEKER

Then she turned to Jesse, marker still in hand.

“Okay,” she said. “You want to fight? Let’s start with the basics. But fair warning—this is going to hurt your brain.”

Jesse pulled his chair closer to the whiteboard.

“Good,” he said. “My brain could use the workout.”

Table of contents:
Introduction
Chapter 1: The Mempool
Chapter 2: A Transaction in the Dark
Chapter 3: The Gas Auction <<<<<< NEXT
Chapter 4: The Sandwich Attack
Chapter 5: The Priority Fee War
Chapter 6: A Fair Ordering Protocol
Chapter 7: The Commit-Reveal Scheme
Chapter 8: The Encrypted Mempool
Chapter 9: The Time-Weighted Consensus
Chapter 10: A Just Sequence

Loading