Files
papers/lux-evm-precompiles/sections/11-precompile-upgrade-process.tex
zeekay 4a753bb639 papers: reorganize into per-paper dirs, add Antje Worring as co-author
Restructured from flat .tex/.pdf files into per-paper subdirectories.
Added Antje Worring as co-author on all papers.
Synced PDFs to pdfs/ for download site.
2026-04-18 21:50:07 -07:00

41 lines
1.7 KiB
TeX

\section{Precompile Upgrade Process}
\label{sec:upgrade}
\subsection{Adding New Precompiles}
New precompiles are added through the Lux Improvement Proposal (LIP) process:
\begin{enumerate}
\item \textbf{LIP Draft}: Specification of interface, gas model, and security analysis.
\item \textbf{Reference Implementation}: Go implementation in the Lux VM codebase.
\item \textbf{Audit}: External security audit for cryptographic correctness.
\item \textbf{Testnet Deployment}: 30-day testing period on Lux testnet.
\item \textbf{Governance Vote}: Supermajority validator approval.
\item \textbf{Mainnet Activation}: Scheduled activation at a future block height.
\end{enumerate}
\subsection{Appchain-Specific Precompiles}
Individual appchains can enable additional precompiles not available on the primary network:
\begin{definition}[Custom Appchain Precompile]
A appchain creator can register custom precompiles at addresses \texttt{0x03...01} through \texttt{0x03...FF} in their appchain's VM configuration. These precompiles run only on that appchain and do not affect other chains.
\end{definition}
Example use cases:
\begin{itemize}
\item Gaming appchains: Verifiable random function (VRF) precompile for provably fair randomness.
\item DeFi appchains: Fixed-point arithmetic precompile for precise financial calculations.
\item AI appchains: Tensor operation precompile for on-chain ML inference verification.
\end{itemize}
\subsection{Deprecation Policy}
Precompiles are never removed (backward compatibility) but can be deprecated:
\begin{enumerate}
\item Gas cost increased to discourage new usage.
\item Warning emitted in node logs.
\item Replacement precompile documented.
\end{enumerate}