▮ Log
What mutated
What mutated, newest first. Each entry describes a change to this repository. Entries never describe on-chain events; those live on the stats page.


- 2026-09-29 · v0.7.0
Graduated strains trade in real Uniswap V4 pools (local lab)
MUTATIONLAB MODE- The local lab now runs real Uniswap V4 code at Robinhood Chain's addresses: PoolManager, StateView, V4Quoter, Permit2 and Universal Router 2.1.2, the version deployed on chain 4663. Graduation seeds a real pool.
- In the lab, you can buy and sell a graduated strain from its page: approve, a Permit2 allowance for the router, then the swap, quoted live by the V4Quoter. Production pool trading stays off until the fork test passes against the deployed contracts.
- After graduation, fees follow Pons's rules in the lab. Sells pay the hook in the host, which the feeder sweeps and burns. Buys pay it in the strain, which waits for the Pons operator (AWAITING PONS SWEEP).
- A graduated strain's volume and transaction count now include its pool swaps.
- Price charts: every strain page charts its price in the host, one point per trade, from curve and pool logs, with buys and sells marked and a table view. Charts keep readable text on phones.
- Static analysis: Slither, forge lint and Aderyn over the contracts. All findings were reviewed and none needed a code change. The triage is in the audit pack, and pnpm analyze re-runs it.
- 2026-09-29 · v0.6.0
Play on localhost: one command, lab wallet, field manual
MUTATIONLAB MODE- pnpm dev runs the whole game on localhost. With Foundry installed it starts a local chain with the real VIRUS contracts and demo specimens. Without Foundry it opens a read-only view of Robinhood Chain.
- Lab test account (local lab only, never in production builds): connect and play without installing a wallet. The local chain signs, so no key exists anywhere. It connects only when you choose to.
- How to play: an eight-level field manual, from finding a host to topping the high scores, plus the controls.
- Accessibility: every key page passes an automated WCAG 2.1 A/AA check (axe), both disconnected and as a connected player. CRT scanlines are lighter and turn off for high-contrast preferences. Log links are underlined, and progress bars and alerts are announced properly. The end-to-end suite now fails on any serious violation.
- Contract tests for every launch failure path in the coordinator: branch coverage rose from 60% to 97%, with 134 contract tests in total.
- 2026-09-29 · v0.5.0
Launch prep: rehearsal, readiness, security fixes, hosting
MUTATIONLAB MODE- Deployment rehearsal (pnpm rehearse). The real deploy script runs on throwaway local chains: the mainnet gate refuses without the approval phrase, both owners accept, and wiring, pauses and delays are checked. Nothing touches a real network.
- Readiness check (pnpm readiness). One command reports every deployment gate as met, waiting or needing a human, with the next step for each. It never prints an RPC key.
- Internal security review of the contracts. It found no critical, high or medium issues. Three low findings were fixed: feeding can no longer be frozen by a failed Pons read; the registry accepts only genuine feeders, so a replaced coordinator cannot forge burns; and an empty feed now reports its outcome. Admin proposals now expire 7 days after their delay. This is not an audit.
- Review pack for an independent reviewer: scope, threat model, the internal review record, and known issues.
- Hosting: Docker images for the site and the indexer, with Postgres via Docker Compose. Strict security headers. Builds refuse a keyed public RPC URL, and servers keep RPC keys out of their logs. Adds a sitemap, error pages and a health endpoint.
- Outbreak map: every host and strain as one live network, with lineage highlighting and a list view.
- Player profiles: a developer's strains, badges and rank. The terminal opens them with open 0x… or open me.
- High scores gain a Last 7 days season, read from the chain.
- WalletConnect for mobile wallets. It turns on when a WalletConnect project ID is set.
- CI workflow for GitHub Actions: contract tests, size limits, the deployment rehearsal, type checks, unit tests, the production build and the lab end-to-end run.
- 2026-09-29 · v0.4.0
Game layer: high scores, achievements, terminal, live alerts
MUTATIONLAB MODE- High scores page: most lethal strains, hosts under attack, most decorated strains and top infectors. Burns are ranked by share of each host's own supply, never by raw amounts across different tokens. Your own strains are highlighted when your wallet is connected.
- Achievements on every strain page: Patient zero, First blood, Lethal I–III, Carrier, Superspreader, Deep tissue and Breakout, with progress bars. Each is a pure function of registry and Pons state, computed in your browser.
- Terminal: press ` or >_ for a read-only command line (scan, open, infect, top, tail, fx, snd). It never signs or sends anything.
- Live alerts pop up when a strain is inoculated or fed while the site is open. Only new blocks are watched; history is never replayed.
- Share on X opens a draft in your own X account. Strain links get a social card drawn from the strain's sprite and its on-chain name, host and burn share.
- Page titles for strains and hosts now carry the token symbol.
- 2026-09-29 · v0.3.0
Every specimen alive: live feeds, trees and burn curves
MUTATIONLAB MODE- Specimen DNA: each strain and host gets its own look (body, spikes, colours, coin metal), derived from its contract address. The look is cosmetic only.
- Infection log: a live feed of inoculations, feeds and developer claims read from registry events, on the home page, the stats page and every strain page.
- Strain pages open on an animated specimen window: the strain feeding on its host, with fees shown as a stream. The on-chain logo appears only when it is a valid PNG.
- Host pages show their strains in orbit, plus tabs for the full infection tree, a burn ledger with a cumulative burn chart, and the fee route.
- Burn curves on the stats page: one step chart per host, in that host's own token, with hover readouts and a table view.
- Optional 8-bit sound effects (off by default, SND switch in the header), synthesised in the browser.
- A pixel page header on every page; tighter phone layouts for the specimen windows and the log.
- Tests for the read-only RPC proxy (write methods blocked, batch and size caps, per-IP rate limit) and for specimen DNA.
- 2026-09-29 · v0.2.0
Infected terminal: visual redesign
MUTATIONLAB MODE- Dark CRT look: phosphor green, toxic magenta, cyan and amber on near-black, pixel type, OS-window panels, bevelled pixel buttons.
- New pixel-art renderer: sprites are shaded 3D primitives with lighting, dithering, coloured outlines and a neon rim light, rendered at much higher pixel counts.
- Animated pixel backdrop behind every page: circuit board with data pulses, hex rain, drifting viruses and glitch bands, with an FX ON/OFF switch and reduced-motion support.
- Hero infection map: trades move as packets from ETH to hosts to viruses, then the fee splits into a burn furnace with live fire, the dev terminal and the treasury vault. Marked as a schematic.
- Three animated game panels, a live stat bar under the hero, and much tighter spacing throughout.
- New $VIRUS mark, favicon, app icons and social card from the same renderer.
- 2026-09-29 · v0.1.0
First culture: lab build
MUTATIONLAB MODE- VirusRegistry, VirusFeeder (one immutable clone per strain), VirusFeederFactory, VirusLaunchCoordinator and VirusTreasury, with unit, fuzz, invariant and fork tests. Nothing deployed to Robinhood Chain.
- Economics solved live against Pons: the creator tax is computed so the feeder receives 0.80% of volume, split 50% burn, 30% developer, 20% treasury. Parity with Parasite is shown as EXACT or PONS-NATIVE with the delta.
- Host register reads Pons pair approvals and runs checks A to H. Unapproved launch tokens show as SPECIMEN FOUND / PAIRING NOT YET APPROVED BY PONS.
- Four-step inoculation with pinned Pons economics digest and creator tax, and a strain logo cultured into 512 on-chain bytes.
- Routed buys (up to three hops), each hop quoted live with a non-zero minimum and signed as a separate step.
- FEED NOW, developer claims and COMPLETE MIGRATION exposed to anyone, as the contracts allow.
- Reorg-safe indexer and fifteen documentation sections, including the Parasite to VIRUS differences.
- Launch is disabled in this build. Pons V2 launch access is restricted, so VIRUS runs in LAB MODE.
- Production build verified with launch disabled and no VIRUS addresses: the site reads Pons live, fails closed to LAB MODE and shows empty states instead of invented figures.