mirror of
https://github.com/hanzoai/papers.git
synced 2026-10-29 07:34:31 +00:00
Leadership and team cards, board and founding prose, an AI persona modelled on a named individual, contributor and partner entries, and personal correspondence addresses all named one person. The organisation carries them now. Other people keep their names. Where a card, a board list or a founding line named someone else alongside, they stay exactly as they were; only the one entry was removed, and prose that listed two names now reads with one. Sample and fixture data uses the placeholder name these tests already use elsewhere, so the IAM username defect the notes describe still reads as written. The zoo/yapp MIT notice names the foundation that publishes it.
109 lines
3.5 KiB
TeX
109 lines
3.5 KiB
TeX
% HIP-0302: Hanzo Replicate — Encrypted SQLite Durability for Base Services
|
|
\documentclass[11pt]{article}
|
|
\usepackage{../shared/hanzocover}
|
|
\usepackage[utf8]{inputenc}
|
|
\usepackage{amsmath,amssymb}
|
|
\usepackage{graphicx}
|
|
\usepackage{booktabs}
|
|
\usepackage{hyperref}
|
|
\usepackage{enumitem}
|
|
\usepackage{xcolor}
|
|
\usepackage{float}
|
|
\usepackage{multirow}
|
|
\usepackage{listings}
|
|
\input{../shared/lstlang}
|
|
\usepackage{tikz}
|
|
\usetikzlibrary{shapes,arrows,positioning,fit}
|
|
|
|
\hypersetup{colorlinks=true,linkcolor=black,citecolor=blue,urlcolor=blue}
|
|
|
|
\definecolor{codegreen}{rgb}{0,0.6,0}
|
|
\definecolor{codegray}{rgb}{0.5,0.5,0.5}
|
|
\definecolor{codepurple}{rgb}{0.58,0,0.82}
|
|
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
|
|
|
|
\lstdefinestyle{mystyle}{
|
|
backgroundcolor=\color{backcolour},
|
|
commentstyle=\color{codegreen},
|
|
keywordstyle=\color{codepurple},
|
|
numberstyle=\tiny\color{codegray},
|
|
stringstyle=\color{codegreen},
|
|
basicstyle=\ttfamily\footnotesize,
|
|
breakatwhitespace=false,
|
|
breaklines=true,
|
|
captionpos=b,
|
|
keepspaces=true,
|
|
numbers=left,
|
|
numbersep=5pt,
|
|
showspaces=false,
|
|
showstringspaces=false,
|
|
showtabs=false,
|
|
tabsize=2
|
|
}
|
|
\lstset{style=mystyle}
|
|
|
|
\title{HIP-0302: Hanzo Replicate\\[0.3em]
|
|
{\large Encrypted SQLite Durability\\for Base Services}}
|
|
\author{
|
|
Hanzo AI Research \\
|
|
\textit{Hanzo Industries Inc (Techstars '17)} \\
|
|
\texttt{[email protected]}
|
|
}
|
|
\date{April 2026}
|
|
|
|
\begin{document}
|
|
|
|
\hanzocoverpage
|
|
|
|
% ============================================================================
|
|
% METADATA
|
|
% ============================================================================
|
|
\noindent
|
|
\begin{tabular}{@{}ll}
|
|
\textbf{HIP} & 0302 \\
|
|
\textbf{Title} & Hanzo Replicate --- Encrypted SQLite Durability for Base Services \\
|
|
\textbf{Author} & Hanzo AI (\texttt{[email protected]}) \\
|
|
\textbf{Type} & Standards Track \\
|
|
\textbf{Category} & Infrastructure \\
|
|
\textbf{Status} & Draft \\
|
|
\textbf{Created} & 2026-04-09 \\
|
|
\textbf{Requires} & HIP-0027 (KMS), HIP-0032 (Object Storage), HIP-0065 (Backup \& DR) \\
|
|
\end{tabular}
|
|
|
|
\vspace{1em}
|
|
|
|
% ============================================================================
|
|
% ABSTRACT
|
|
% ============================================================================
|
|
\begin{abstract}
|
|
This proposal specifies how all Hanzo Base-powered services achieve durable
|
|
state persistence through continuous encrypted WAL replication to
|
|
S3-compatible storage. The system comprises two packages:
|
|
\texttt{hanzoai/replicate} (a rebranded Litestream with age encryption
|
|
support) and \texttt{hanzoai/age} (X25519/Curve25519 file encryption). Every
|
|
Base service---IAM, KMS, ATS, BD, TA, Tasks, and all future
|
|
services---deploys \texttt{replicate} as a Kubernetes sidecar that
|
|
continuously streams encrypted WAL frames to \texttt{hanzoai/s3}. The result
|
|
is sub-second RPO, seconds-scale RTO, and zero dependence on centralized
|
|
databases or persistent volume durability.
|
|
\end{abstract}
|
|
|
|
% ============================================================================
|
|
% 1. MOTIVATION
|
|
% ============================================================================
|
|
|
|
\input{sections/01-motivation}
|
|
\input{sections/02-background}
|
|
\input{sections/03-specification}
|
|
\input{sections/04-configuration}
|
|
\input{sections/05-key-management}
|
|
\input{sections/06-deployment}
|
|
\input{sections/07-affected-services}
|
|
\input{sections/08-security-analysis}
|
|
\input{sections/09-migration}
|
|
\input{sections/10-operational-concerns}
|
|
\input{sections/11-post-quantum-security}
|
|
\input{sections/99-references}
|
|
|
|
\end{document}
|