> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rugfreepump.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Proof of Execution

> Verify the RugFreePump on-chain program through its compilation, deployment, initialization, and execution of every public instruction on Solana.

RugFreePump's core **bonding-curve sale lifecycle** is driven by a dedicated on-chain program deployed natively on Solana.

This page provides a transparent execution record of the program from compilation through deployment and initialization, followed by the execution of every public instruction exposed by the RugFreePump on-chain program.

The resulting Solana transactions and state changes are publicly inspectable, enabling users to independently verify that actions initiated through the RugFreePump dApp are processed by the RugFreePump on-chain program.

**Compile → Deploy → Initialize → Create Pool → Buy → Withdraw → Migrate Liquidity → Claim Token**

> **Network:** Solana Devnet
>
> **Program ID:** `9hpBPEiywp7FPAq5uP253eAZzdJ1Cpd36L5RAYuc9xSw`

## The RugFreePump On-Chain Program

The RugFreePump program contains the core on-chain logic responsible for creating and operating algorithmic bonding-curve sales.

The deployed program contains **64 total instructions**:

* **59 administrative instructions** — restricted to authorized platform administration.
* **5 public instructions** — user-facing entrypoints invoked through the RugFreePump dApp.

The five public instructions define the core bonding-curve sale lifecycle on-chain:

| Instruction | Purpose |
| - | - |
| `create_pool` | Creates a new SPL token mint and establishes its associated bonding-curve sale pool. |
| `buy` | Allows users to purchase tokens from an active bonding-curve sale pool using SOL. |
| `withdraw` | Returns the buyer's contributed SOL when a bonding-curve sale expires or is canceled. |
| `migrate_liquidity` | Migrates the completed bonding-curve sale liquidity into a Raydium CPMM pool. |
| `claim_token` | Allows buyers to claim purchased tokens after successful liquidity migration according to the selected token sale model. |

The restricted administrative instructions are separate from the public user execution flow demonstrated below.

## Program Compilation

Before deployment, the RugFreePump on-chain program is compiled from its source code.

The compilation shown below completes successfully with:

* **0 errors**
* **0 warnings**

This establishes the executable program build that is subsequently deployed to Solana Devnet.

<video controls width="100%">
  <source src="https://mintcdn.com/rugfreepump/JocEgjND9jclKtsF/on-chain-program/media/RugFreePumpClip.webm?fit=max&auto=format&n=JocEgjND9jclKtsF&q=85&s=d7607849f58b6d69b386ef0b99fd490d" type="video/webm" data-path="on-chain-program/media/RugFreePumpClip.webm" />
</video>

## Program Deployment

Following successful compilation, the RugFreePump program is deployed to **Solana Devnet**.

The deployed program is identified on-chain by its Program ID:

```text theme={null}
9hpBPEiywp7FPAq5uP253eAZzdJ1Cpd36L5RAYuc9xSw
```

The Program ID is the public address used to identify the RugFreePump on-chain program on Solana.

### Deployment Transaction

The deployment transaction is publicly available for independent inspection:

[View deployment transaction on Solscan](https://solscan.io/tx/4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV?cluster=devnet)

> **Transaction signature:** `4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV`

## Program Initialization

Following deployment, the program is initialized through the RugFreePump administrative interface.

Initialization establishes the required global on-chain state and protocol configuration before public operations can be performed.

The demonstration below shows the initialization process being submitted through the RugFreePump administrative interface and confirmed on Solana Devnet.

<video controls width="100%">
  <source src="https://mintcdn.com/rugfreepump/JocEgjND9jclKtsF/on-chain-program/media/RugFreePumpClip.webm?fit=max&auto=format&n=JocEgjND9jclKtsF&q=85&s=d7607849f58b6d69b386ef0b99fd490d" type="video/webm" data-path="on-chain-program/media/RugFreePumpClip.webm" />
</video>

Following initialization, the program is prepared to process the public instructions used by the RugFreePump dApp.

### Initialization Transaction

The initialization transaction is publicly available for independent inspection:

[View initialization transaction on Solscan](https://solscan.io/tx/4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV?cluster=devnet)

> **Transaction signature:** `4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV`

## Public Instruction Execution

The five public instructions can be invoked through the RugFreePump dApp.

Each operation follows a directly inspectable on-chain execution path:

**RugFreePump dApp → RugFreePump On-Chain Program → Solana Transaction → Transaction Signature**

The transaction signature provides a direct way to inspect the resulting execution independently of the dApp's interface.

### 1. Create Pool

The `create_pool` instruction creates a new SPL token mint and establishes its associated bonding-curve sale pool on-chain.

The demonstration below shows the operation initiated through the RugFreePump dApp and confirmed on Solana Devnet.

<video controls width="100%">
  <source src="https://mintcdn.com/rugfreepump/JocEgjND9jclKtsF/on-chain-program/media/RugFreePumpClip.webm?fit=max&auto=format&n=JocEgjND9jclKtsF&q=85&s=d7607849f58b6d69b386ef0b99fd490d" type="video/webm" data-path="on-chain-program/media/RugFreePumpClip.webm" />
</video>

#### On-Chain Transaction

[View `create_pool` transaction on Solscan](https://solscan.io/tx/4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV?cluster=devnet)

> **Transaction signature:** `4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV`

### 2. Buy

The `buy` instruction allows users to purchase tokens from an active RugFreePump bonding-curve sale using SOL.

The demonstration below shows a token purchase initiated through the RugFreePump dApp, signed through the user's wallet, and confirmed on Solana Devnet.

<video controls width="100%">
  <source src="https://mintcdn.com/rugfreepump/JocEgjND9jclKtsF/on-chain-program/media/RugFreePumpClip.webm?fit=max&auto=format&n=JocEgjND9jclKtsF&q=85&s=d7607849f58b6d69b386ef0b99fd490d" type="video/webm" data-path="on-chain-program/media/RugFreePumpClip.webm" />
</video>

#### On-Chain Transaction

[View `buy` transaction on Solscan](https://solscan.io/tx/4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV?cluster=devnet)

> **Transaction signature:** `4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV`

### 3. Withdraw

The `withdraw` instruction handles the return of the buyer's contributed SOL when a bonding-curve sale expires or is canceled.

The demonstration below shows the withdrawal operation initiated through the RugFreePump dApp and confirmed on Solana Devnet.

<video controls width="100%">
  <source src="https://mintcdn.com/rugfreepump/JocEgjND9jclKtsF/on-chain-program/media/RugFreePumpClip.webm?fit=max&auto=format&n=JocEgjND9jclKtsF&q=85&s=d7607849f58b6d69b386ef0b99fd490d" type="video/webm" data-path="on-chain-program/media/RugFreePumpClip.webm" />
</video>

#### On-Chain Transaction

[View `withdraw` transaction on Solscan](https://solscan.io/tx/4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV?cluster=devnet)

> **Transaction signature:** `4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV`

### 4. Migrate Liquidity

When a bonding-curve sale reaches its completion conditions, the `migrate_liquidity` instruction transfers the completed sale liquidity into a Raydium CPMM pool.

Successful liquidity migration enables purchased tokens to become claimable according to the sale's selected Token Unlocked (TU) or Token Locked (TL) model.

The demonstration below shows the migration initiated through the RugFreePump dApp and confirmed on Solana Devnet.

<video controls width="100%">
  <source src="https://mintcdn.com/rugfreepump/JocEgjND9jclKtsF/on-chain-program/media/RugFreePumpClip.webm?fit=max&auto=format&n=JocEgjND9jclKtsF&q=85&s=d7607849f58b6d69b386ef0b99fd490d" type="video/webm" data-path="on-chain-program/media/RugFreePumpClip.webm" />
</video>

#### On-Chain Transaction

[View `migrate_liquidity` transaction on Solscan](https://solscan.io/tx/4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV?cluster=devnet)

> **Transaction signature:** `4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV`

### 5. Claim Token

After successful liquidity migration, the `claim_token` instruction allows buyers to claim their purchased tokens according to the sale's selected token sale model.

For **Token Unlocked (TU)** sales, purchased tokens become fully claimable immediately after successful liquidity migration.

For **Token Locked (TL)** sales, purchased tokens become claimable gradually according to the token unlock schedule established for the sale.

The demonstration below shows the token claiming operation initiated through the RugFreePump dApp and confirmed on Solana Devnet.

<video controls width="100%">
  <source src="https://mintcdn.com/rugfreepump/JocEgjND9jclKtsF/on-chain-program/media/RugFreePumpClip.webm?fit=max&auto=format&n=JocEgjND9jclKtsF&q=85&s=d7607849f58b6d69b386ef0b99fd490d" type="video/webm" data-path="on-chain-program/media/RugFreePumpClip.webm" />
</video>

#### On-Chain Transaction

[View `claim_token` transaction on Solscan](https://solscan.io/tx/4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV?cluster=devnet)

> **Transaction signature:** `4gD3UQr3TerrjkeK8wSL1BVLs2R2fuEzVbZC3BGGDtwhDk2EKFbqa5qFMpyi7ePotA9gsk9Nhe9wKtD4RRrdJgzV`

## Verify the Program on Solana

RugFreePump is designed so that its core user-facing operations are executed directly by the on-chain program rather than being represented solely by dApp-level state.

The program has a public Program ID, and the transactions generated by its public instructions are recorded directly on Solana and remain independently inspectable.

Every public operation demonstrated on this page includes its corresponding transaction signature, allowing users to inspect the actual on-chain execution independently of the RugFreePump dApp.

Users can verify the Program ID, inspect the transaction details, and review the resulting on-chain state directly through Solscan.

This provides a clear separation between the dApp interface and the underlying execution layer: the dApp provides the interface for constructing and submitting transactions, while Solana records the resulting execution as a publicly inspectable ledger record.

### About the Verification Environment

The demonstrations on this page were performed exclusively on **Solana Devnet**.

Devnet provides a public Solana environment for demonstrating the deployed program and its public operations without requiring real funds.

The Program ID and transaction signatures shown above correspond to publicly accessible Devnet records and can be independently inspected through Solscan.

This page demonstrates the deployment, initialization, and execution of the RugFreePump on-chain program. It is not an independent security audit, formal verification, or guarantee that the program is free from vulnerabilities.

For production mainnet interactions, users should verify that the Program ID presented by the official RugFreePump dApp matches the officially published production Program ID and review the transaction details presented by their wallet before approving a transaction.

The objective is straightforward: make the on-chain layer of RugFreePump transparent and independently inspectable, giving users the ability to verify the program identity and actual transaction execution rather than relying solely on dApp-level claims.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.