IMDNOVA — WORLD, WORKSHOP & LABORATORY

BRAND UPDATE — 3 OCTOBER 2026
All current pages, generated contracts and downloads use IMDNOVA. The prior encrypted identity, project and vote formats are accepted for compatibility. Included legacy runtime references preserve exact matching for existing pool contracts. Contract executable behavior is unchanged by the rename. Browser data does not cross website addresses: export projects at the previous address and import the backup at the new one; retain encrypted identity files, passwords and position IDs separately.
Vercel: the root vercel.json uses the npm build and serves dist with clean URLs. The prepared static delivery can also be deployed without a remote build. No environment variables or AI keys are required.

PUBLIC WEBSITE AND AUTOMATIC UPDATES
Production: https://imdnova.xyz. The www address redirects to the main domain.
Source: https://github.com/nachogoal6-ctrl/imdnova (private repository).
Vercel is connected to the main branch. Commits to main build and publish the website automatically; check the deployment result before considering an update live.
The original compass logo appears in all seven page headers and browser/mobile icons. Social previews use the English IMDNOVA banner. Source artwork files are in src/brand.

The site and its original 3D inhabitants use English. No OpenAI account or AI usage fee is needed.

USER FLOWS
- Docs: the English field guide covers the world, all tools, hook behavior, wallet deployment, costs, data storage, recovery, limitations and source references. Topic search filters the 18 chapters; each chapter has a direct anchor link and mobile navigation. Docs do not connect a wallet or submit transactions.
- World / Sky chapter: original toon-shaded travelers, domed houses, floating islands and a live compass. Radar signals navigate to the five existing districts; keyboard and touch exploration remain available. No third-party franchise artwork is included.
- Visual Forge: drag blocks, connect rule ports, configure their values and build from the same precompiled contract templates as the Workshop. One fee mode per hook; only connected rules are enabled. Layout does not change execution order. Drafts autosave locally; Save draft adds a project including its layout to the backup. Edits never overwrite an existing deployment. Download source and exact parameters, send to the local simulator or review in Workshop before wallet deployment.
- Workshop: create a fixed-supply ERC-20 token and combine Uniswap v4 fee rules, a timed launch and swap records.
- Automatic fee mode: set an initial fee, lower final fee, start and end dates. The fee decreases linearly on each swap. There is no administrator override, keeper or paid AI process.
- Laboratory / Simulator: run the actual token, hook, PoolManager and test routers in an isolated EthereumJS EVM on the user's device. Add sample liquidity, swap both ways, advance time, withdraw and export results. All balances are fake. This is a fresh local state, not a mainnet fork. Execution gas excludes transaction overhead.
- Laboratory / Archive: register a shared EAS schema if absent; publish, read and revoke author-signed statements about a contract, its version and exact source/report fingerprints. Files stay local. A record proves authorship and publication, not that the contract is safe. Revisions can reference the author's earlier record for the same contract.
- Laboratory / Council: create a private Semaphore identity and encrypted backup. Organizers freeze 3–256 public commitments, 2–8 choices and a closing time in an Ethereum ballot. Members generate proofs locally and export them for another wallet to relay. A valid proof counts once. Choices, tallies, commitments and the submitting wallet are public. Small groups, timing and membership collection can reduce privacy. This is one vote per identity, not per human.
- Workshop / Grouped deployment: after token and factory creation, a wallet advertising atomic EIP-5792 support can deploy the hook and initialize the pool together. Unsupported wallets use separate reviewed steps. Wallet software, including contract-creation support, determines compatibility.

REAL ETHEREUM
Chain ID: 1. The app never stores a wallet private key or seed phrase.
Uniswap v4 PoolManager: 0x000000000004444c5dc75cB358380D2e3dE08A90
EAS: 0xA1207F3BBa224E2c9c3c6D5aF63D0eb1582Ce587
SchemaRegistry: 0xA7b39296258348C78294F95B872b282326A97BDF
SemaphoreVerifier: 0x4DeC9E3784EcC1eE002001BfE91deEf4A48931f8
Addresses were checked against official deployment documentation; code existence and a Semaphore proof were also checked using read-only Ethereum calls.
All financial actions require a review screen followed by the user's wallet. No mainnet transaction was submitted during development.
Token supply is fixed. Hook permissions are 0x20c0 and the address is mined locally using CREATE2.
Pool initialization does not deposit real liquidity. Trading additionally needs liquidity and a compatible router.
Templates have local integration tests, not an independent security audit.

GAS SPONSORSHIP
Each user pays gas. No sponsor is active and IMDNOVA pays no transactions automatically.
wallet-capabilities.js includes EIP-7677 request construction but SPONSOR is null.
Activation requires a funded provider and an approved budget, plus a public policy-enforcing endpoint. Never embed a secret provider key in the browser. A private provider requires a separately deployed server proxy with authentication, allowlisted calls and spending limits.

PRIVACY AND STORAGE
No AI requests or server-side secrets. Fonts are requested from Google Fonts with system fallbacks.
The connected wallet's provider handles Ethereum reads and transactions.
Workshop progress is stored in sessionStorage. Explicitly saved projects, position IDs and liquidity transaction records stay in this browser in localStorage. Export My projects backups; they contain public configuration and addresses, never private keys. Imported records load editable settings and do not restore executable deployment transactions. Public Laboratory transaction hashes are stored in localStorage.
Private Council identities remain in memory. Backups use PBKDF2-SHA256 (600,000 iterations) and AES-256-GCM, with random salt and nonce. Save the encrypted file and remember its password. Lost identities and passwords cannot be recovered.
A proof export contains a public choice, nullifier and ballot information, not the private identity.
Download links remain available if an embedded browser does not automatically save a file.
Use a full browser with an Ethereum wallet for real transactions.
The website at https://imdnova.xyz is public. The GitHub repository remains private. Personal projects stay in each visitor's browser and are not uploaded to the website.

VALIDATION
58 original contract checks: seven feature combinations, exact input/output swaps in both directions, launch gates, withdrawals, caps, permissions and events.
13 Laboratory checks: actual local EVM execution, schedule midpoint and floor, blocked manual override, encrypted backups, real Semaphore proofs, replay protection, relaying and deadline enforcement.
4 atomic wallet execution checks: wallet-owned factory, rollback on failed initialization, grouped deployment and correct initializer/events.
Browser QA: simulator swaps; Archive register/publish/read/revoke; encrypted identity backup; ballot deployment; browser proof generation, relay and duplicate rejection; automatic hook token/factory/hook/pool deployment; session recovery and Workshop-to-Simulator handoff.
The browser-generated bundle reproduced all six template bytecodes from its included Standard JSON compiler input.
Read-only mainnet verification accepted a proof produced in the browser. No funds were spent.
See test-results.json, laboratory-test-results.json, batch-test-results.json, download-test-results.json and mainnet-read-test.json.

LOCAL DEVELOPMENT
Node.js 22+ and npm:
  npm ci --ignore-scripts
  npm run build
  npm run dev
Open http://127.0.0.1:4173.
  npm run check
  npm test
  npm run test:lab
  npm run test:batch
  npm run test:expansion
The additional test scripts use the pinned Windows Anvil binary. Adapt the path to anvil on other systems.
For browser wallet QA only, compile the liquidity fixtures first: node scripts/compile-liquidity.mjs, then node scripts/ui-fixture.mjs
The fixture uses localhost:4174 and an isolated chain on port 8547 with fake ETH. Test shims and RPC forwarding are not shipped as executable production assets.

SOURCE AND DEPENDENCIES
IMDNOVA-source.zip contains application sources, Solidity inputs, proving artifacts and build instructions.
IMDNOVA-dependencies.zip contains bundled runtime dependency source distributions and their original notices; upstream examples/test data are omitted.
The browser proof engine includes GPL-3.0 software (snarkjs/wasmcurves) and the EVM includes MPL-2.0 software (EthereumJS). See licenses/runtime-notices.txt and the source archives. Original Solidity SPDX licenses remain applicable. Application frontend source in this distribution is available under GPL-3.0; original IMDNOVA Solidity templates retain MIT.
Semaphore proving files are from https://snark-artifacts.pse.dev/semaphore/4.13.0/semaphore-8.wasm and semaphore-8.zkey. They are served locally, not fetched from a third party during voting.
Official reference sources: docs.semaphore.pse.dev/deployed-contracts; github.com/ethereum-attestation-service/eas-contracts/deployments/mainnet; eips.ethereum.org/EIPS/eip-5792; eips.ethereum.org/EIPS/eip-7677.

PROJECTS, RULES & LIQUIDITY EXPANSION
My projects: save from the Workshop, search by name/symbol/address, filter, rename, duplicate settings, remove local records, export/import JSON backups. Storage is explicitly device-local, limited to 100 records and 3 MB. Deleting a record never changes Ethereum contracts or balances. Back up before clearing browser data.
IMDNOVARulesHook adds independent maximum buy and sell token amounts, immutable directional LP fees, and recurring UTC windows (overnight supported). They compose with launch gates, activity events, manual capped fees or linear decay. Feature bits: 1 dynamic fee, 2 launch gate, 4 event log, 8 swap limits, 16 daily hours. Fee mode: 0 manual, 1 decay, 2 directional. Opening is inclusive; closing is exclusive. Disabled size limits are zero. Sell size includes LP fees. Limits apply per swap, not per wallet or day; splitting trades remains possible. Token transfers and other pools are unaffected. Withdrawals remain available.
Liquidity desk: verifies included IMDNOVA hook/token runtime code while masking constructor immutable fields, checks Ethereum chain and canonical contracts, reads pool state and NFT ownership. This is template matching, not an audit. Creates full-range positions and increases/decreases owned positions with integer math, bounded amounts, slippage (0.1%-5%), a 15-minute deadline and refunds of unused ETH. Deposits require a current quote (5-minute lifetime). Token approval is bounded but has no expiry; Permit2 permission for PositionManager is bounded and expires in 30 minutes. Both can be revoked. Collect fees via zero liquidity decrease; fees are not estimated and gas can exceed earnings. A full withdrawal retains the empty NFT. No swaps or external token pools are offered in this desk.
Official Ethereum contracts, verified read-only:
PositionManager: 0xbd216513d74c8cf14cf4747e6aaa6420ff64ee9e
StateView: 0x7ffe42c4a5deea5b0fec41c94c136cf115597227
Permit2: 0x000000000022D473030F116dDEE9F6B43aC78BA3
https://developers.uniswap.org/docs/protocols/v4/deployments
The desk records pending transactions and blocks duplicates until resolved. Confirmed replacements must have the same sender and nonce. Position IDs can be pasted to recover another device's NFTs; the connected wallet must own them. Imported project addresses are re-read from chain before use.
New checks are in expansion-test-results.json; official contract reads in liquidity-mainnet-read.json. The tests run actual v4-periphery 1.0.3 PositionManager plus Permit2 in isolated Anvil with fake assets. This verifies integration behavior, not a mainnet transaction or independent security audit.
