Changelog
Chronological change log from walking skeleton to present.
Changelog
All notable changes to the SolSoul protocol, programs, SDK, and frontend.
[Unreleased] — Exponential Curve + Soul Engine v2
Protocol
- BREAKING: Replaced CPMM bonding curve with sato-style exponential curve
T = K·(1−e^(−R/S))S = 500 SOL,K = 21Mtokens- No graduation threshold, no AMM migration, no liquidity extraction
- Curve runs forever with permanent 0.1% lock fee
- BREAKING: Removed graduation, migration, and Raydium adapter code
- BREAKING: Removed CPMM constant-product math, slippage, virtual reserves
- Simplified
BondingCurveAccountto 57 bytes (mint, cumulative_sol, total_minted, self_deprecated, last_interaction_slot) - Added
GlobalConfigPDA for pause/unpause governance (renounceable) - Added
renounce_admininstruction for immutable governance
Soul Engine
- Added three-layer extensible renderer architecture:
- Layer 1: Renderer programs (built-in + community)
- Layer 2: Engine Core (seed derivation, dispatch, assembly)
- Layer 3: Algorithm Registry (built-in IDs + community registry)
- Added
RendererRegistryEntryPDA for community renderer registration - Added
RenderBufferPDA for external renderer CPI output - Added
register_renderer/unregister_rendererinstructions - Added
solsoul-renderer-sdkcrate withRenderContext,SvgWriter,ColorPalette - Built-in renderers now use independent function-pointer dispatch
Renderers
- Removed (non-mathematical): neonpuff, soulpuff, monochrome, hexagram, signal, unicorn
- Retained (mathematical): fractal, field, lattice, chaos, harmonic, pixel_fractal, pixel_art
- Fractal renderer: IFS affine transforms with 10K iterations
- Chaos renderer: Lorenz/Rössler/Aizawa strange attractors
- Harmonic renderer: Fourier synthesis with 8 harmonics
- Field renderer: Perlin-noise curl fields with particle advection
- Lattice renderer: 17 wallpaper group symmetry patterns
- PixelFractal renderer: 32×32 IFS pixel blocks
- PixelArt renderer: Value noise + cellular automata 8-bit aesthetic
Fees
- Reduced buy fee from 1% to 0.1% (lock fee, permanently locked in curve PDA)
- Removed sell fee (0%)
- Launch fee remains 0.03 SOL
- Fee recipient removed (lock fee is non-extractable)
Frontend
- Radical UI simplification (Apple-style minimal design)
- Navigation reduced from 6 to 4 core items: Explore / Market / Souls / Launch
- TokenFeedRow: card grid with hero Soul image + floating price badge
- SoulGalleryCard: art-forward vertical cards (name + rarity + CTA only)
- Responsive grid layout (1→2→3→4 columns)
- Removed GenerationRulesCard from profile/gallery noise
Documentation
- Added
WHITEPAPER.md— protocol whitepaper - Added
docs/soul-engine.md— Soul Engine technical specification - Added
docs/renderers.md— Mathematical renderer catalog - Updated
README.mdwith new architecture and milestones - Updated
docs/testing.mdwith new test matrix - Updated
docs/deploy.mdwith three-program deployment flow
[2026-05-01] — PD18 Security Hardening
Security
- Added
SEC.F1flash-loan protection (same-slot check) - Added
SEC.F2sell ratio limit (token_in / remaining_supply ≤ 2) - Added
SEC.F3Transfer Hook reject-only invariant - Added
SEC.F4Raydium CP-Swap migration fail-closed - Added
SEC.F5dust dominance ratio gate (disabled by default)
Programs
- Added
pause/unpauseinstructions withGlobalConfigauthority check - Added
self_deprecatedsafety valve at 99% of K
[2026-04-28] — Renderer Cleanup
Renderers
- Removed 6 illustration-themed renderers (neonpuff, soulpuff, monochrome, hexagram, signal, unicorn)
- Kept 7 mathematical renderers
- Updated
ArtThemeenum to mathematical-only variants - Updated trait snapshots and test fixtures
[2026-04-25] — Soul Engine Phase 3
Programs
- Added
RenderBufferPDA for external renderer output - Added
invoke_external_rendererCPI with signed seeds - Added
copy_render_buffer_svgfor buffer → SoulAccount transfer
[2026-04-20] — Soul Engine Phase 2
Programs
- Added
RendererRegistryEntryPDA - Added
register_rendererinstruction (0.1 SOL fee) - Added
unregister_rendererinstruction (admin-gated)
[2026-04-15] — Soul Engine Phase 1
Programs
- Added
engine/mod.rs+engine/registry.rs - Added 10 built-in renderer function-pointer registry
- Added
render_builtin_with_traitsdispatch
[2026-04-10] — Pixel Renderers
Programs
- Added
pixel_fractalrenderer (32×32 IFS pixel blocks) - Added
pixel_artrenderer (value noise + 8-bit palette)
[2026-04-01] — Exponential Curve Refactor
Programs
- Added
math.rswithexp_neg()(8-term Taylor) andsolve_exp_inverse()(binary search) - Added
CURVE_S = 500 SOL,CURVE_K = 21Mtokens - Rewrote
buy.rswith lock fee → curve PDA - Rewrote
sell.rswith hard binding validation - Removed
migrate.rs,amm_*.rsadapter files - Removed
graduation.rsintegration test
[2026-03-20] — Initial Walking Skeleton
Programs
- Bonding curve with CPMM (constant-product market maker)
- Soul generator with basic SVG rendering
- Transfer Hook prototype
- Token-2022 integration
SDK
- TypeScript SDK with PDA helpers and instruction builders
Frontend
- Next.js 14 App Router with i18n
- Wallet integration (Phantom)
- Launch form, token detail, gallery, profile pages
Format based on Keep a Changelog.