MEMOREPAIR: Barrier-First Cascade Repair in Agentic Memory

Extracted source text · arXiv 2605.07242

\clearpage
\newpage
\appendix


\addcontentsline{toc}{part}{Appendix} 
\etocsettocstyle{\section*{Appendix Contents}}{} 
\etocsetnexttocdepth{subsection} 
\localtableofcontents
\bigskip

\newpage
\section{Notation}
\label{app:notation}

\begin{table}[h]
\centering
\footnotesize
\setlength{\tabcolsep}{4pt}
\renewcommand{\arraystretch}{1.05}
\begin{tabular}{@{}p{0.30\linewidth}p{0.64\linewidth}@{}}
\toprule
\textbf{Symbol} & \textbf{Meaning} \\
\midrule

$\mathcal{G}=(V,E^{\mathrm{inf}},E^{\mathrm{sem}})$
& Artifact graph with influence edges for repair scope and semantic edges for retrieval. \\

$(u,v)\in E^{\mathrm{inf}}$
& Artifact $v$ was produced using artifact $u$ as causal support. \\

$e=(F,\tau,\Delta)$
& Repair event with invalidated roots $F$, update type
$\tau\in\{\mathsf{delete},\mathsf{correct},\mathsf{migrate}\}$, and update data $\Delta$. \\

$X_\Delta$
& Fresh replacement artifacts materialized for correction events. \\

$C(F),D(F)$
& Affected cascade $\mathrm{Reach}(F;E^{\mathrm{inf}})$ and descendants $C(F)\setminus F$;
$\mathrm{Reach}$ includes the zero-hop roots in $F$. \\

$\kappa_e,\mathsf{Ret}(e)$
& Post-event interface and retained valid support in the post-event artifact universe. \\

$B_\rho$
& Hidden set for repair plan $\rho$, initialized to $C(F)$. \\

$\Phi_\mu^e$
& Event-indexed mode map assigning each affected descendant a mode in
$\{\mathsf{remove},\mathsf{recompute},\mathsf{regen},\mathsf{param}\}$. \\

$\mu_i$
& Repair mode assigned to descendant $i$. \\

$\Psi_e(i)=q_i$
& Graph-to-contract map returning
$q_i=(\mu_i,\pi_i,P_i,v_i,w_i,c_i)$. \\

$\pi_i$
& Repair operator for candidate $q_i$. \\

$P_i$
& Affected descendants whose repaired successors are consumed by $\pi_i$;
root replacements and interface updates are supplied through
$\mathsf{Ret}(e)$ and $\kappa_e$, not through $P_i$. \\

$D^+(F)$
& Non-removed candidate index set
$\{i\in D(F):\mu_i\neq\mathsf{remove}\}$. \\

$\bar P_i$
& Repairable required predecessors, $\bar P_i=P_i\cap D^+(F)$. \\

$v_i,w_i,c_i$
& Executability flag, candidate value, and normalized repair-operator cost. \\

$v_i^{(0)},\mathcal E_0$
& Initial executability flag before validation retry, and initially executable set
$\mathcal E_0=\{i\in D^+(F):v_i^{(0)}=1\}$. \\

$Q_\rho$
& Candidate family for repair plan $\rho$, $Q_\rho=\{q_i:i\in D^+(F)\}$. \\

$E^{\mathrm{req}}$
& Repair-dependency graph;
$(j,i)\in E^{\mathrm{req}}$ iff $j\in\bar P_i$, meaning $j$ must be staged before repairing $i$. \\

$z_i$
& Fresh successor version constructed for withdrawn artifact $i$. \\

$\mathrm{Validate}_i(z_i)$
& Validation oracle for successor $z_i$. \\

$\mathcal S_i,\mathrm{Prov}(z)$
& Neural-skill support multiset and artifact provenance of support example $z$. \\

$\mathsf{For}_i(e),\mathsf{New}_i(e),\mathsf{Ref}_i(e)$
& Invalidated, replacement, and retained reference support for parametric repair. \\

$\rho=(B_\rho,Q_\rho,S_\rho,R_\rho)$
& Repair plan: hidden set, candidate family, selected set, and republished successors. \\

$S_\rho,R_\rho$
& Selected candidate set and validated republished successor set. \\

$x_i,\lambda$
& Binary selection variable and repair--cost tradeoff parameter. \\

$\mathrm{Repair}(x),\mathrm{Cost}(x)$
& Scalarized objective terms:
$\mathrm{Repair}(x)=\sum_{i\in D^+(F)}w_i x_i$ and
$\mathrm{Cost}(x)=\sum_{i\in D^+(F)}c_i x_i$.\\

% $\mathrm{Cost}_{\mathrm{exec}}(\rho)$ &
% Reported realized normalized repair-operator Cost:
% $\mathrm{Cost}_{\mathrm{exec}}(\rho)=\sum_{i\in \Aexec} c_i$. \\
\bottomrule
\end{tabular}
\caption{Notation used in \textsc{MemoRepair}.}
\label{tab:notation-app}
\end{table}




\newpage
\section{Additional Experiments and Implementation Details}
\label{app:supplementary}

\subsection{Reproducibility Details}
\label{app:reproducibility}

\subsubsection{Hardware and Software}
\label{app:hardware-software}

All experiments are conducted on a single Ubuntu 22.04 server with
Python 3.12, PyTorch 2.8.0, and CUDA 12.8, equipped with
4$\times$ NVIDIA RTX 4090D, 18 vCPUs (AMD EPYC 9754), 128~GB RAM, and
a 500~GB SSD. Two base models are loaded locally through
\texttt{transformers}/\texttt{peft}/\texttt{bitsandbytes} under 4-bit
NF4 quantisation (bf16 compute, double quant): \textsc{LLaMA-7B}
(\texttt{huggyllama/llama-7b}) for parameter-level operator
experiments on the released \textsc{ToolLLaMA-7b-LoRA-v1} adapter,
and \textsc{Llama-3-8B-Instruct} for the cascade-side LoRA fine-tune
ablation. Both fit alongside their trainable LoRA adapter on a single
24~GB device. The 120B teacher
(\textsc{GPT-OSS-120B}), used for the prompt- and chain-repair stages
and as the validator backbone, is served via an OpenAI-compatible
\texttt{/chat/completions} endpoint with temperature~$0$ for
deterministic generation.


\subsubsection{Dataset Statistics}
\label{app:dataset-stats}

We use the public ToolBench and MemoryArena releases. From ToolBench we
draw all queries in groups G1, G2, and G3, which correspond to
single-tool, intra-category, and intra-collection multi-tool tasks
respectively. For the neural-skill stage we load up to $120$ queries
per skill, aggregate them by tool family, and keep the top three
families by frequency. Each query produces one ChatML
\texttt{(system, user, assistant)} triple from the first
\texttt{function\_call} in its answer trace; we use a stratified
val/train split with seed~$42$ (typically $0.20$/$0.80$, raised to
$0.25$/$0.75$ when per-skill data falls below the validation-coverage
threshold). The artifact-kind
distribution follows the four-way taxonomy of
Section~\ref{subsec:problem-setup}
(\texttt{record}, \texttt{cache}, \texttt{summary}, \texttt{skill}),
with \texttt{skill}s further partitioned into
\texttt{neural}/\texttt{prompt}/\texttt{chain}. In our cascade
statistics and case studies we aggregate \texttt{record},
\texttt{cache}, and \texttt{summary} into the operational
\texttt{CACHE} bucket and report \texttt{skill} separately, mirroring
the artifact-kind columns of Tables~\ref{tab:ma-deletion-anatomy}
and~\ref{tab:internal_main}. The chain-skill stage
cycles three migration scenarios
(\textit{nested-to-flat}, \textit{field-rename}, \textit{auth-change}).
MemoryArena cascades use the same projection and include $\mathsf{migrate}$ events, where the post-event interface $\kappa_e$ is updated and migrated successors are exposed to the validation oracle. MemoryArena draws from all five public subsets (\texttt{bundled\_shopping}, \texttt{progressive\_search}, \texttt{group\_travel\_planner}, \texttt{formal\_reasoning\_math}, \texttt{formal\_reasoning\_phys}) for a total of $701$ tasks.

Table~\ref{tab:cascade-stats} reports per-event sizes for the
invalidated root set $F$, the affected cascade $C(F)$, and the
repairable descendant set $D^{+}(F)$, together with the number of
events evaluated per benchmark and event type. Ranges are min--max
across events.


\begin{table}[!ht]
\centering\footnotesize
\setlength{\tabcolsep}{4.5pt}
\renewcommand{\arraystretch}{1.05}
\begin{tabular}{llcccc}
\toprule
\textbf{Benchmark} & \textbf{Event} &
$|F|$ & $|C(F)|$ & $|D^{+}(F)|$ & \textbf{\# events} \\
\midrule
\multirow{3}{*}{ToolBench}
& Deletion    & 1--8  & 12--128 & 9--96   & 276 \\
& Correction  & 1--6  & 10--112 & 8--84   & 276 \\
& Migration   & 1--5  & 14--124 & 11--94  & 276 \\
\midrule
\multirow{3}{*}{MemoryArena}
& Deletion    & 1--6  & 5--118  & 0--95   & 701 \\
& Correction  & 1--5  & 8--58   & 6--42   & 701 \\
& Migration   & 1--4  & 10--66  & 8--48   & 701 \\
\bottomrule
\end{tabular}
\caption{Per-event cascade statistics (min--max ranges).
MemoryArena Deletion is heavy-tailed: its $|D^{+}(F)|$ upper bound is
set by \texttt{progressive\_search} events.}
\label{tab:cascade-stats}
\end{table}

\subsubsection{Hyperparameters}
\label{app:hyperparameters}

\textbf{Repair tradeoff.}
The cost-aware selector uses $\lambda=0.3$ as the default tradeoff.
The Pareto sweep in Section~\ref{sec:experiment} covers
$\lambda \in \{0.1, 0.3, 1, 3, 10, 30\}$, plus the two endpoints
\emph{Remove all} ($\lambda \to \infty$) and \emph{Repair all}
($\lambda = 0$).

\textbf{LoRA fine-tune.}
The neural-skill stage uses two base models, one per experiment
stage. \emph{Operator-side experiments}
(Table~\ref{tab:parametric_operators}) run parameter-level repair
operators on the released \textsc{ToolBench/ToolLLaMA-7b-LoRA-v1}
adapter, which is itself a LoRA fine-tune of
\textsc{huggyllama/llama-7b}; we therefore load
\textsc{LLaMA-7B} as the base model for these runs to match the
released adapter's architecture. \emph{Cascade-side LoRA training}
(Figure~\ref{fig:parametric_pipeline} and the per-skill ablation
runs) trains fresh LoRA adapters on
\textsc{Llama-3-8B-Instruct} from the per-skill retain/forget
partitions; no cross-base adapter transfer is performed.
LoRA rank $r=8$, $\alpha=16$, dropout $0.05$, target modules
$\{\mathrm{q\_proj}, \mathrm{k\_proj}, \mathrm{v\_proj},
\mathrm{o\_proj}\}$. Optimization uses AdamW with $\text{lr}=10^{-4}$,
weight decay $0$, gradient clip $1.0$, and a cosine schedule with
$20$ warmup steps; batch size $16$, gradient accumulation $1$, and at
most $200$ steps with early stopping on validation loss (evaluated
every $25$ steps, patience $3$). Sequences are truncated at $2048$
tokens. Each per-skill seed is offset to $42 + i$ where $i$ indexes
the skill. Statistical variation in
Section~\ref{app:std-tables} is reported over global seeds
$\{42, 43, 44\}$, applied uniformly to data sampling, optimizer
state, and operator initialisation.

\textbf{Operator-side hyperparameters.}
All operators share the same training budget: at most $80$ steps,
batch size $4$, $\text{lr}=5\times 10^{-5}$, AdamW, gradient clip
$1.0$, sequence length $1024$, and 4-bit NF4 quantisation with bf16
compute and double-quant. The reference wall time for relative
compute is $120$~seconds (LUNE), so LUNE has relative compute $1.0$
by construction and the others are reported as
$\text{wall}/120\,\mathrm{s}$; LUNE serves only as the relative-compute
reference and is not tuned to favor \textsc{MemoRepair}.

\paragraph{Operator settings.}
For fairness, all parameter-level operators use the same training
budget and optimization setup. Operator-specific hyperparameters are
fixed globally across datasets, events, and seeds, with no per-event
tuning. For operators with recommended settings in prior work we
follow the corresponding default configuration; otherwise we choose
from a small held-out grid over the neural-skill validation split and
then freeze the selected configuration for all reported results. The
grids are $\beta\in\{0.05,0.1,0.2\}$ for NPO/SimNPO,
$\lambda_{\text{retain}}\in\{0.5,1.0,2.0\}$, RMU layer
$\in\{8,16,24\}$ with $c,\alpha\in\{0.5,1.0,2.0\}$, and the
forget/retain weights for BLUR, LUNE, and OOO in $\{0.5,1.0,2.0\}$.
SBU uses a two-phase suppress-then-boost split under the shared step
budget, and Full retrain runs the LoRA fine-tune defaults on the
retain partition.


\paragraph{Validation thresholds.}
Schema, safety, and sandbox checks are pass/fail. Task regression
requires every held-out probe to pass. Param-mode republication uses
$\tau_{\mathrm{FSP}}=\tau_{\mathrm{RU}}=80$. For reporting,
$\mathrm{ValPass}\%$ is the percentage of evaluated parametric successors
satisfying both $\mathrm{FSP}\ge80$ and $\mathrm{RU}\ge80$.


\subsubsection{Metrics}
\label{app:metric-details}

For each benchmark--event cell, Rep.\% is computed as
$
100\cdot
\frac{\sum_{e\in\mathcal{E}} |R_{\rho,e}|}
     {\sum_{e\in\mathcal{E}} |D^+_e(F)|}.
$
Events with $D^+_e(F)=\emptyset$ contribute zero to both sums. If the aggregate
denominator is zero, we report Rep.\ $=0$ and treat the cell as having no
publication opportunity. The denominator $D^+(F)$ contains all non-remove
repair contracts, including candidates that are statically non-executable after
candidate construction. A candidate enters $R_{\rho,e}$ only after its successor
passes the applicable validation checks. Thus \emph{Repair all} is an
executability-and-validation publication ceiling, not a $100\%$ publication
baseline.

For Cost, each candidate cost $c_i$ is normalized against the initially
executable set $E_0=\{i\in D^+(F):v_i^{(0)}=1\}$, following
Appendix~\ref{app:candidate-instantiation}. If $E_0=\emptyset$, no repair
operator is executed and the reported Cost is $0$. Otherwise, reported Cost
sums $c_i$ over executed repair operators, including attempts whose outputs
later fail validation; statically non-executable candidates and the withdrawal
barrier are not charged.

Leak\% and Stale-use\% are measured after the repair plan completes unless
otherwise stated. The withdrawal ablation in Table~\ref{tab:ablations} reports
repair-interval exposure, and the validation rows report validation false-pass
rates rather than post-repair action-level stale use.

For $\Delta$Task, $U_t$ denotes affected artifacts without a validated
republished successor, and $L_t$ denotes affected artifacts whose stale version
remains visible to task $t$. These sets may overlap: \emph{No action} can incur
both the missing-repair penalty and the stale-serving penalty, while
\emph{Remove all} incurs only the missing-repair penalty. For neural skills,
FSP and RU follow Appendix~\ref{app:validation-details}: if $a_i^F$ and $a_i^R$
are next-token accuracies reported in percentage points on the forget and
retain splits, then $\mathrm{FSP}_i=100-a_i^F$ and $\mathrm{RU}_i=a_i^R$. A
parametric successor passes validation when both exceed the fixed thresholds.

% ----------------------------------------------------------------
\subsection{Statistical Variation}
\label{app:std-tables}

Tables~\ref{tab:internal_std} and~\ref{tab:external_std} repeat
Tables~\ref{tab:internal_main} and~\ref{tab:external_main} of the main
paper, reporting each cell as mean~$\pm$~std over three seeds. Means
coincide with the main-paper values.

% Compact mean ± std cell: mean at normal size, ±std small and tucked to the right.
\providecommand{\msd}[2]{#1\,\raisebox{-0.25ex}{\tiny$\pm$#2}}

\begin{table}[!ht]
    \centering\footnotesize
    \setlength{\tabcolsep}{3pt}
    \begin{tabular}{l@{\hskip 3pt}rrr@{\hskip 6pt}rrr@{\hskip 6pt}rrr}
    \toprule
    \multirow{2}{*}{\textbf{Method}} &
    \multicolumn{3}{c}{\textbf{Deletion}} &
    \multicolumn{3}{c}{\textbf{Correction}} &
    \multicolumn{3}{c}{\textbf{Migration}} \\
    \cmidrule(lr){2-4}\cmidrule(lr){5-7}\cmidrule(lr){8-10}
    & Rep. & Cost & $\Delta$Task
    & Rep. & Cost & $\Delta$Task
    & Rep. & Cost & $\Delta$Task \\
    \midrule
    \multicolumn{10}{c}{\textbf{\textit{ToolBench}}} \\
    \midrule
    No action
    & -- & -- & \msd{$\text{-}2.78$}{0.12}
    & -- & -- & \msd{$\text{-}2.78$}{0.12}
    & -- & -- & \msd{$\text{-}5.61$}{0.21} \\

    \rowcolor{gray!12} Remove all
    & \msd{0.0}{0} & \msd{0.00}{0} & \msd{$\text{-}1.96$}{0.09}
    & \msd{0.0}{0} & \msd{0.00}{0} & \msd{$\text{-}1.96$}{0.09}
    & \msd{0.0}{0} & \msd{0.00}{0} & \msd{$\text{-}4.47$}{0.16} \\

    Repair all
    & \msd{24.6}{1.1} & \msd{1.00}{0} & \msd{$\text{-}1.54$}{0.06}
    & \msd{48.8}{1.4} & \msd{1.00}{0} & \msd{$\text{-}1.05$}{0.08}
    & \msd{38.7}{1.7} & \msd{1.00}{0} & \msd{$\text{-}2.98$}{0.13} \\

    \rowcolor{gray!12} Barrier+Greedy
    & \msd{20.3}{1.3} & \msd{0.72}{0.05} & \msd{$\text{-}1.68$}{0.09}
    & \msd{41.2}{2.0} & \msd{0.62}{0.04} & \msd{$\text{-}1.20$}{0.06}
    & \msd{31.4}{1.4} & \msd{0.76}{0.06} & \msd{$\text{-}3.28$}{0.15} \\

    \rowcolor{blue!10} \textsc{MemoRepair}
    & \msd{22.4}{0.9} & \msd{0.61}{0.04} & \msd{$\text{-}1.60$}{0.08}
    & \msd{45.1}{1.7} & \msd{0.57}{0.02} & \msd{$\text{-}1.11$}{0.05}
    & \msd{36.5}{1.1} & \msd{0.66}{0.05} & \msd{$\text{-}3.06$}{0.12} \\

    \midrule
    \multicolumn{10}{c}{\textbf{\textit{MemoryArena}}} \\
    \midrule
    No action
    & -- & -- & \msd{$\text{-}4.44$}{0.17}
    & -- & -- & \msd{$\text{-}4.44$}{0.17}
    & -- & -- & \msd{$\text{-}3.86$}{0.17} \\

    \rowcolor{gray!12} Remove all
    & \msd{0.0}{0} & \msd{0.00}{0} & \msd{$\text{-}4.00$}{0.15}
    & \msd{0.0}{0} & \msd{0.00}{0} & \msd{$\text{-}4.00$}{0.15}
    & \msd{0.0}{0} & \msd{0.00}{0} & \msd{$\text{-}3.58$}{0.12} \\

    Repair all
    & \msd{5.5}{0.9} & \msd{1.00}{0} & \msd{$\text{-}3.74$}{0.18}
    & \msd{35.6}{2.2} & \msd{1.00}{0} & \msd{$\text{-}2.91$}{0.13}
    & \msd{18.4}{1.4} & \msd{1.00}{0} & \msd{$\text{-}3.18$}{0.10} \\

    \rowcolor{gray!12} Barrier+Greedy
    & \msd{4.2}{1.0} & \msd{0.70}{0.08} & \msd{$\text{-}3.90$}{0.17}
    & \msd{28.6}{1.9} & \msd{0.83}{0.06} & \msd{$\text{-}3.17$}{0.15}
    & \msd{14.2}{1.5} & \msd{0.71}{0.04} & \msd{$\text{-}3.34$}{0.14} \\

    \rowcolor{blue!10} \textsc{MemoRepair}
    & \msd{5.1}{0.7} & \msd{0.62}{0.06} & \msd{$\text{-}3.79$}{0.16}
    & \msd{33.1}{1.8} & \msd{0.76}{0.05} & \msd{$\text{-}2.98$}{0.12}
    & \msd{17.0}{1.2} & \msd{0.64}{0.06} & \msd{$\text{-}3.23$}{0.11} \\

    \bottomrule
    \end{tabular}
    \caption{Repair-policy comparison with per-cell mean$\pm$std over
    three seeds; means coincide with Table~\ref{tab:internal_main}.
    Leak\,\%\ and Stale\,\%\ are omitted (constant by construction).}
    \label{tab:internal_std}
\end{table}

  \begin{table}[!ht]
    \centering\footnotesize
    \setlength{\tabcolsep}{4pt}
    \begin{tabular}{l@{\hskip 3pt}rrr@{\hskip 6pt}rrr@{\hskip 6pt}rrr}
    \toprule
    \multirow{2}{*}{\textbf{System}} &
    \multicolumn{3}{c}{\textbf{Deletion}} &
    \multicolumn{3}{c}{\textbf{Correction}} &
    \multicolumn{3}{c}{\textbf{Migration}} \\
    \cmidrule(lr){2-4}\cmidrule(lr){5-7}\cmidrule(lr){8-10}
    & Leak & Stale & $\Delta$Task
    & Leak & Stale & $\Delta$Task
    & Leak & Stale & $\Delta$Task \\
    \midrule
    \multicolumn{10}{c}{\textbf{\textit{ToolBench}}} \\
    \midrule
    No action
    & \msd{100}{0} & \msd{100}{0} & \msd{$\text{-}2.78$}{0.12}
    & \msd{100}{0} & \msd{100}{0} & \msd{$\text{-}2.78$}{0.12}
    & \msd{100}{0} & \msd{100}{0} & \msd{$\text{-}5.61$}{0.21} \\

    \rowcolor{gray!12} Mem0
    & \msd{74.6}{1.8} & \msd{93.8}{0.9} & \msd{$\text{-}2.61$}{0.10}
    & \msd{80.2}{1.5} & \msd{95.6}{0.7} & \msd{$\text{-}2.66$}{0.12}
    & \msd{91.3}{0.9} & \msd{98.9}{0.4} & \msd{$\text{-}5.46$}{0.19} \\

    Zep/Graphiti
    & \msd{69.8}{2.0} & \msd{92.4}{1.1} & \msd{$\text{-}2.54$}{0.11}
    & \msd{76.5}{1.7} & \msd{94.1}{0.8} & \msd{$\text{-}2.59$}{0.10}
    & \msd{89.1}{1.0} & \msd{98.4}{0.5} & \msd{$\text{-}5.39$}{0.18} \\

    \rowcolor{gray!12} MemR$^{3}$
    & \msd{85.2}{1.2} & \msd{98.6}{0.4} & \msd{$\text{-}2.72$}{0.08}
    & \msd{87.4}{1.0} & \msd{98.9}{0.3} & \msd{$\text{-}2.74$}{0.09}
    & \msd{92.6}{0.7} & \msd{99.6}{0.2} & \msd{$\text{-}5.48$}{0.16} \\

    A-MEM
    & \msd{72.1}{2.1} & \msd{92.7}{1.0} & \msd{$\text{-}2.56$}{0.12}
    & \msd{79.4}{1.6} & \msd{95.0}{0.7} & \msd{$\text{-}2.63$}{0.11}
    & \msd{90.6}{0.8} & \msd{98.7}{0.5} & \msd{$\text{-}5.42$}{0.18} \\

    \rowcolor{gray!12} O-Mem
    & \msd{88.7}{0.9} & \msd{99.4}{0.3} & \msd{$\text{-}2.73$}{0.08}
    & \msd{88.9}{0.8} & \msd{99.6}{0.2} & \msd{$\text{-}2.74$}{0.10}
    & \msd{93.1}{0.6} & \msd{99.7}{0.1} & \msd{$\text{-}5.51$}{0.17} \\

    TierMem
    & \msd{88.4}{1.0} & \msd{99.2}{0.4} & \msd{$\text{-}2.72$}{0.09}
    & \msd{88.6}{0.9} & \msd{99.5}{0.2} & \msd{$\text{-}2.74$}{0.08}
    & \msd{93.0}{0.5} & \msd{99.7}{0.1} & \msd{$\text{-}5.50$}{0.16} \\

    \rowcolor{blue!10} \textsc{MemoRepair}
    & \msd{0}{0} & \msd{0}{0} & \msd{$\text{-}1.60$}{0.08}
    & \msd{0}{0} & \msd{0}{0} & \msd{$\text{-}1.11$}{0.05}
    & \msd{0}{0} & \msd{0}{0} & \msd{$\text{-}3.06$}{0.12} \\

    \midrule
    \multicolumn{10}{c}{\textbf{\textit{MemoryArena}}} \\
    \midrule
    No action
    & \msd{100}{0} & \msd{100}{0} & \msd{$\text{-}4.44$}{0.17}
    & \msd{100}{0} & \msd{100}{0} & \msd{$\text{-}4.44$}{0.17}
    & \msd{100}{0} & \msd{100}{0} & \msd{$\text{-}3.86$}{0.17} \\

    \rowcolor{gray!12} Mem0
    & \msd{78.6}{2.3} & \msd{94.8}{1.0} & \msd{$\text{-}4.31$}{0.17}
    & \msd{82.4}{1.9} & \msd{96.1}{0.8} & \msd{$\text{-}4.18$}{0.15}
    & \msd{91.7}{1.1} & \msd{98.0}{0.6} & \msd{$\text{-}3.72$}{0.14} \\

    Zep/Graphiti
    & \msd{73.9}{2.5} & \msd{93.2}{1.2} & \msd{$\text{-}4.25$}{0.18}
    & \msd{78.1}{2.1} & \msd{94.6}{0.9} & \msd{$\text{-}4.07$}{0.16}
    & \msd{88.4}{1.3} & \msd{97.3}{0.7} & \msd{$\text{-}3.65$}{0.13} \\

    \rowcolor{gray!12} MemR$^{3}$
    & \msd{86.7}{1.4} & \msd{98.3}{0.5} & \msd{$\text{-}4.39$}{0.16}
    & \msd{88.2}{1.2} & \msd{98.7}{0.4} & \msd{$\text{-}4.31$}{0.15}
    & \msd{93.5}{0.9} & \msd{99.1}{0.3} & \msd{$\text{-}3.79$}{0.12} \\

    A-MEM
    & \msd{75.4}{2.2} & \msd{93.6}{1.1} & \msd{$\text{-}4.27$}{0.18}
    & \msd{80.3}{1.8} & \msd{95.2}{0.8} & \msd{$\text{-}4.12$}{0.16}
    & \msd{90.5}{1.2} & \msd{97.6}{0.6} & \msd{$\text{-}3.68$}{0.14} \\

    \rowcolor{gray!12} O-Mem
    & \msd{89.6}{1.0} & \msd{99.5}{0.3} & \msd{$\text{-}4.42$}{0.14}
    & \msd{90.1}{0.9} & \msd{99.6}{0.2} & \msd{$\text{-}4.36$}{0.13}
    & \msd{94.3}{0.7} & \msd{99.5}{0.2} & \msd{$\text{-}3.83$}{0.11} \\

    TierMem
    & \msd{89.2}{1.1} & \msd{99.3}{0.4} & \msd{$\text{-}4.41$}{0.15}
    & \msd{89.8}{0.9} & \msd{99.5}{0.3} & \msd{$\text{-}4.35$}{0.14}
    & \msd{93.9}{0.8} & \msd{99.4}{0.2} & \msd{$\text{-}3.82$}{0.12} \\

    \rowcolor{blue!10} \textsc{MemoRepair}
    & \msd{0}{0} & \msd{0}{0} & \msd{$\text{-}3.79$}{0.16}
    & \msd{0}{0} & \msd{0}{0} & \msd{$\text{-}2.98$}{0.12}
    & \msd{0}{0} & \msd{0}{0} & \msd{$\text{-}3.23$}{0.11} \\

    \bottomrule
    \end{tabular}
    \caption{Cascade-unaware comparison with per-cell mean$\pm$std
    over three seeds; means coincide with Table~\ref{tab:external_main}.
    Rep.\ and Cost\ are omitted (Rep.\,$=0$ and Cost\ undefined by
    construction).}
    \label{tab:external_std}
  \end{table}

% ----------------------------------------------------------------
\subsection{MemoryArena Deletion Cascade Anatomy}
\label{app:memoryarena-cascade-anatomy}

% To explain why MemoryArena deletion has the lowest Rep.\ ceiling
% ($5.5\%$) among the six (benchmark, event) combinations, we decompose
% the cascade $D^+(F)$ by \texttt{ArtifactKind} and tabulate, for each
% kind, how many descendants are structurally repairable under our
% operator set. Each kind defaults to a repair mode determined by how
% the artifact was produced: deterministic recomputations from a fixed
% input set (records, finals) default to \textsc{Exact}, while
% accumulative artifacts that aggregate support over time (skills)
% default to \textsc{Unlearn}. In this appendix, \textsc{Exact} denotes deterministic recomputation, and
% \textsc{Unlearn} denotes the parametric repair mode used for neural skills.

To explain why MemoryArena deletion has the lowest Rep.\ ceiling
($5.5\%$) among the six benchmark--event settings, we decompose
$D^+(F)$ by \texttt{ArtifactKind} and report which descendants are
structurally repairable. In this appendix, \textsc{Exact} denotes
deterministic recomputation, while \textsc{Unlearn} denotes parametric
repair for neural skills. Records and final answers default to
\textsc{Exact}; skills that aggregate support over time default to
\textsc{Unlearn}.

\begin{table}[!ht]
    \centering\footnotesize
    \setlength{\tabcolsep}{5pt}
    \begin{tabular}{lrrrl}
    \toprule
    \textbf{Kind} & $|D^+(F)|$ & \textbf{Republished} & \textbf{Rate} & \textbf{Dominant mode} \\
    \midrule
    \texttt{CACHE}\ (records, finals) & 160 & 0  & $0.0\%$  & \textsc{Exact}\,(missing parent) \\
    \texttt{SKILL}\ (memory\_skill)   & 22  & 10 & $45.5\%$ & \textsc{Unlearn} \\
    \midrule
    \textbf{Total}                    & \textbf{182} & \textbf{10} & $\mathbf{5.5\%}$ & -- \\
    \bottomrule
    \end{tabular}
    \caption{Per-kind anatomy of a single representative MemoryArena
    deletion event aggregated across the five subsets, not the
    event-level macro average underlying Tables~\ref{tab:internal_main}
    and~\ref{tab:cascade-stats}. Republished count is the number of
    validated successors under \emph{Repair all}.}
    \label{tab:ma-deletion-anatomy}
\end{table}

\paragraph{\texttt{CACHE} entries are structurally unrepairable.}
The 160 \texttt{CACHE} descendants, namely intermediate records and
final answers, are downstream products generated \emph{from} the
deleted artifact; recomputing them requires the deleted artifact as
input.
Once the parent is withdrawn, the recompute path is unavailable and
no \emph{validated} substitute is producible. Consequently every
\texttt{CACHE} candidate is quarantined at candidate-construction
time, and the Rep.\ contribution from this kind is \emph{exactly}
zero by structural argument, not by stochastic selector failure.

\paragraph{\texttt{SKILL} entries are repairable through
\textsc{Unlearn}.} The 22 \texttt{SKILL} descendants
(\texttt{memory\_skill} entries) use \textsc{Unlearn} as their
dominant mode: instead of recomputing from the deleted parent, the
operator emits a contract-restricted version that excises the deleted
support from the skill's retained reference set $\mathsf{Ref}_i(e)$.
Because \textsc{Unlearn} does not require the deleted parent to be
present, it sidesteps the structural infeasibility that defeats
\textsc{Exact} on \texttt{CACHE}. Of the 22 candidates, $10$ pass $\mathrm{Validate}_i$ on the
contract-restricted output, yielding a within-kind Rep.\ rate of
$45.5\%$. The remaining $12$ fail $\mathrm{Validate}_i$, indicating
that excising the deleted support degrades the skill below the
validator's coverage threshold; \textsc{MemoRepair} correctly retains
the withdrawal in this case rather than republishing a degraded
successor.

\paragraph{Aggregate ceiling.}
Weighting by cascade size, the deletion-cascade Rep.\ ceiling is
$10 / 182 \approx 5.5\%$, matching the \emph{Repair all} entry in
Table~\ref{tab:internal_main}. The headline rate is therefore not
evidence of repair-policy weakness; it reflects the structural
distribution of \texttt{ArtifactKind} in the cascade.
\textsc{MemoRepair} attains $5.1/5.5 \approx 93\%$ of this ceiling at
Cost $0.62$, matching the ceiling-recovery ratio it achieves on the
higher-Rep.\ MemoryArena correction and migration events.

\clearpage
% ----------------------------------------------------------------
  \newpage
  \section{Case Studies}
  \label{app:case-studies}

    To make the contract concrete, we walk through four local repair
    events from our evaluation: three successful repairs (a deletion
    on ToolBench, a correction on ToolBench, and a migration on
    MemoryArena) and one structural failure mode (a deletion on
    MemoryArena \texttt{progressive\_search}). Each case reports the
    event, the cascade structure, the per-descendant repair decision
    made by \textsc{MemoRepair}, and the outcome metrics.

  % ===== shared macros for case studies =====
  \definecolor{modecolor}{HTML}{2A4FA8}      % dark blue for mode names
  \definecolor{successgreen}{HTML}{2D7F4F}   % success
  \definecolor{failurered}{HTML}{C0392B}     % failure
  \newcommand{\mde}[1]{\textcolor{modecolor}{\textsc{#1}}}
  \newcommand{\tagsuccess}{\hfill\textcolor{successgreen}{\textbf{\checkmark\,Success}}}
  \newcommand{\tagfailure}{\hfill\textcolor{failurered}{\textbf{$\boldsymbol{\times}$\,Structural failure}}}

  % ----------------------------------------------------------------
  \subsection{\textcolor{blue}{Case 1: Deletion of a deprecated tool function (ToolBench)}}
  \label{app:case-deletion}

  \paragraph{Event.}
  The ToolBench finance tool \texttt{finnhub\_realtime\_stock\_price}
  (host \texttt{finnhub-realtime-stock-price.p.rapidapi.com}), with
  endpoints \texttt{Quote}, \texttt{Candles}, and
  \texttt{Stock\,Symbols}, is removed from the registry. We denote the
  removed tool by $f_{\text{quote}}$. The deletion event sets
  $F=\{f_{\text{quote}}\}$, no replacement artifact, and contract delta
  empty.

  \paragraph{Cascade ($|D^+(F)|=11$).}
  \begin{itemize}[leftmargin=*,itemsep=1pt]
  \item 4 cached \texttt{api\_call\_record} artifacts (responses to
  prior queries against the \texttt{Quote} and \texttt{Candles}
  endpoints).
  \item 3 derived summaries (\texttt{cached\_summary}) that aggregate
  the deleted tool's outputs together with two other tools.
  \item 1 prompt skill (\texttt{skill\_prompt}) for ``daily-market
  briefing''.
  \item 1 chain skill (\texttt{skill\_chain}) that calls
  \texttt{finnhub\_realtime\_stock\_price.Quote} as step~3 of a 5-step
  procedure.
  \item 2 neural skills (\texttt{skill\_neural}) trained on traces that
  include $f_{\text{quote}}$ outputs.
  \end{itemize}

  \paragraph{\textsc{MemoRepair} decisions.}
  \begin{itemize}[leftmargin=*,itemsep=1pt]
  \item 4 \texttt{api\_call\_record}s: quarantined under \mde{exact} mode
  (missing parent, no replacement) and withdrawn from service.
  \item 3 \texttt{cached\_summary}s: \mde{regen} executable using the
  remaining two tools' outputs as retained inputs; all 3 successors
  pass the validation oracle and re-enter service.
  \item 1 \texttt{skill\_prompt}: \mde{regen} against retained background
  context; passes validation; republished.
  \item 1 \texttt{skill\_chain}: rewritten by patching out step~3 and
  re-binding the downstream chain to a substitute tool; sandbox
  execution passes; republished.
  \item 2 \texttt{skill\_neural}s: \mde{unlearn} with non-empty forget /
  reference sets; both pass post-repair regression bound; republished.
  \end{itemize}

  \paragraph{Outcome.}
  $\text{Leak}=0$, $\text{Stale}=0$, $\text{Rep.}=63.6\%$
  (7 of 11 republished), $\text{Cost}=0.71$,
  $\Delta\text{Task}=-1.40$ (vs.\ $-2.78$ for No action and $-1.96$ for
  Remove all). Withdrawal alone closes the leak; min-cut selection
  keeps republication to validated successors. \tagsuccess


  % ----------------------------------------------------------------
  \subsection{\textcolor{blue}{Case 2: Correction of an API argument schema (ToolBench)}}
  \label{app:case-correction}

  \paragraph{Event.}
  The ToolBench travel tool \texttt{flight\_data\_v2} (host
  \texttt{travelpayouts-travelpayouts-flight-data-v1.p.rapidapi.com})
  corrects its \texttt{depart\_date} schema: the parameter, previously
  documented inconsistently across endpoints (variously
  \texttt{STRING}, \texttt{STRING (yyyy-mm)}, and
  \texttt{DATE\,(YYYY-MM-DD)} in the released tool spec), is normalized
  to ISO \texttt{YYYY-MM-DD} for all endpoints. We denote the
  corrected tool by $f_{\text{flight}}$. The correction event sets
  $F=\{f_{\text{flight}}\}$, \texttt{replacement\_artifact} = same
  kind/contexts/metadata as $f_{\text{flight}}$ with corrected version
  hash, and an empty contract delta.

  \paragraph{Cascade ($|D^+(F)|=8$).}
  \begin{itemize}[leftmargin=*,itemsep=1pt]
  \item 5 \texttt{api\_call\_record}s issued against
  \texttt{flight\_data\_v2} with the legacy non-ISO date format.
  \item 1 \texttt{cached\_summary} of recent flight queries.
  \item 1 \texttt{skill\_chain} that issues
  \texttt{depart\_date} arguments.
  \item 1 \texttt{skill\_neural} fine-tuned on flight planning traces.
  \end{itemize}

  \paragraph{\textsc{MemoRepair} decisions.}
  \begin{itemize}[leftmargin=*,itemsep=1pt]
  \item 5 \texttt{api\_call\_record}s: \mde{exact} recompute against the
  replacement (which carries the corrected schema). 4 of 5 are
  initially executable and succeed under the corrected schema; 1 has a
  retained \texttt{depart\_date} argument in a non-ISO custom locale
  that the replacement schema cannot interpret, fails the executability
  precheck ($v_i^{(0)}=0$), and is quarantined at candidate
  construction without invoking \mde{exact} recompute.
  \item 1 \texttt{cached\_summary}: \mde{regen} against the 4 successful
  records plus retained context; passes validation; republished.
  \item 1 \texttt{skill\_chain}: argument rebinding to ISO format;
  sandbox replay over 5 anchor calls returns matching outputs;
  republished.
  \item 1 \texttt{skill\_neural}: \mde{unlearn} with the legacy-format
  records as forget set, ISO records as reference; passes regression
  bound; republished.
  \end{itemize}

  \paragraph{Outcome.}
  $\text{Leak}=0$, $\text{Stale}=0$, $\text{Rep.}=87.5\%$
  (7 of 8 republished), $\text{Cost}=0.78$,
  $\Delta\text{Task}=-0.92$ (vs.\ $-2.78$ for No action and $-1.96$ for
  Remove all). The single barrier-side quarantine demonstrates that
  the executability precheck catches retained-input incompatibilities
  before \mde{exact} is invoked, so the operator cost is not charged
  for unrepairable candidates. \tagsuccess


  % ----------------------------------------------------------------
  \subsection{\textcolor{blue}{Case 3: Migration of an attribute schema (MemoryArena)}}
  \label{app:case-migration}

  \paragraph{Event.}
  In the MemoryArena \texttt{bundled\_shopping} subset, the
  \texttt{electronics\_item} category has its attribute schema
  migrated: free-form attribute strings (e.g.\ \texttt{``50-inch''},
  \texttt{``4K HD''}, \texttt{``LED screen''}) are normalized to
  structured key-value attributes (e.g.\
  \texttt{\{size:\,50-inch, resolution:\,4K, panel:\,LED\}}) under a
  new schema. We denote the migrated schema by $c_{\text{elec}}$. The
  migration event sets $F=\{c_{\text{elec}}\}$, no replacement
  artifact, and contract delta records the attribute schema rewrite.

  \paragraph{Cascade ($|D^+(F)|=14$).}
  \begin{itemize}[leftmargin=*,itemsep=1pt]
  \item 12 \texttt{api\_call\_record}s capturing webshop interactions
  whose product-selection answers carry legacy free-form attribute
  strings.
  \item 1 \texttt{cached\_result} (final consolidated bundle for the
  affected task).
  \item 1 \texttt{skill\_neural} (memory skill summarising
  electronics-bundle preferences across affected tasks).
  \end{itemize}

  \paragraph{\textsc{MemoRepair} decisions.}
  \begin{itemize}[leftmargin=*,itemsep=1pt]
  \item 12 \texttt{api\_call\_record}s: \mde{exact} recompute under
  the post-event migrated contract supplied through $\kappa_e$. 11 of
  12 are initially executable and re-derive their attribute lists into
  the structured key-value form with schema validation passing; one
  record contains a free-form attribute (\texttt{``smart TV''}) that
  has no canonical key under the migrated schema, fails the
  executability precheck ($v_i^{(0)}=0$), and is quarantined at
  candidate construction without invoking \mde{exact} recompute.
  \item 1 \texttt{cached\_result}: \mde{exact} recompute against the staged
  records; passes validation; republished.
  \item 1 \texttt{skill\_neural}: \mde{unlearn} with the
  legacy-contract view of the affected traces as forget set, and the
  remaining retained traces re-rendered under the post-migration
  contract $\kappa_e$ as reference. The reference set is the same
  $\mathsf{Ref}_i(e)=\mathcal S_i\setminus \mathsf{For}_i(e)$ from
  Section~\ref{subsec:problem-setup}; no new training examples are
  materialized. Passes regression and republished.
  \end{itemize}

  \paragraph{Outcome.}
  $\text{Leak}=0$, $\text{Stale}=0$, $\text{Rep.}=92.9\%$
  (13 of 14 republished), $\text{Cost}=0.69$,
  $\Delta\text{Task}=-2.05$ (vs.\ $-3.86$ for No action and $-3.58$ for
  Remove all).
  Migration retains the original artifact, which is why this case
  recovers $>90\%$ of the cascade; this contrasts with the
  deletion-on-MemoryArena setting where the deleted anchor provides
  no replacement and \mde{exact} recompute is structurally infeasible
  (Appendix~\ref{app:memoryarena-cascade-anatomy}). \tagsuccess


  % ----------------------------------------------------------------
  \subsection{\textcolor{red}{Case 4: Deletion with empty retained support — failure mode (MemoryArena
  \texttt{progressive\_search})}}
  \label{app:case-failure}

  \paragraph{Event.}
  On the MemoryArena \texttt{progressive\_search} subset, each task
  consists of $\sim$8 sequential subquestions that all resolve to a
  single anchor entity (e.g., the task at \texttt{id=0} chains nine
  biographical clues onto one named individual). The deletion event
  removes a foundational entity record $r_{\text{anchor}}$ that serves
  as this shared answer target across an affected task cluster. Every
  record in the chain is conditioned on $r_{\text{anchor}}$, and the
  neural memory skill is trained exclusively on traces that reference
  this entity. The deletion event sets $F=\{r_{\text{anchor}}\}$, no
  replacement artifact, and contract delta empty.

  \paragraph{Cascade ($|D^+(F)|=79$).}
  \begin{itemize}[leftmargin=*,itemsep=1pt]
  \item 63 \texttt{api\_call\_record}s recording every subquestion
  resolution in the affected cluster, each with $r_{\text{anchor}}$ as
  a load-bearing parent.
  \item 8 \texttt{cached\_result}s (per-task final consolidated
  answers).
  \item 8 \texttt{skill\_neural}s (memory skills fine-tuned exclusively
  on traces from these tasks).
  \end{itemize}

  \paragraph{\textsc{MemoRepair} decisions.}
  \begin{itemize}[leftmargin=*,itemsep=1pt]
  \item 63 \texttt{api\_call\_record}s: all 63 quarantined under \mde{exact}
  mode, since the deleted entity has no replacement and deterministic
  recompute cannot fabricate a missing answer target.
  \item 8 \texttt{cached\_result}s: all 8 quarantined because their staged
  record predecessors are themselves quarantined, so the staged-input
  check fails.
  \item 8 \texttt{skill\_neural}s: all 8 quarantined under the
  \emph{empty reference support} guard, since every retained training
  example referenced the deleted entity, leaving
  $\mathsf{Ref}_i(e)=\emptyset$, and the contract refuses to fit
  on an empty reference set.
  \end{itemize}

  \paragraph{Outcome.}
  $\text{Leak}=0$, $\text{Stale}=0$, $\text{Rep.}=0\%$
  (no validated successor publishable; all $79$ descendants are
  structurally quarantined), $\text{Cost}=0.00$,
  $\Delta\text{Task}=-4.00$ (vs.\ $-4.44$ for No action). Repair
  coverage collapses to zero, but withdrawal alone still recovers
  $0.44$ task points by preventing stale serving; the barrier-first
  contract continues to deliver its lower-bound guarantee even when
  the selector has nothing to publish. \tagfailure


  % ----------------------------------------------------------------
  \paragraph{Discussion.}
  Case~4 marks the structural boundary of the \textsc{MemoRepair}
  contract. The \texttt{progressive\_search} subset concentrates the
  entire retained training support of the neural skill inside the
  chain that the deleted entity anchors, so the deletion
  simultaneously (i)~removes the only parent of every cached record,
  making \mde{exact} infeasible without a replacement, and
  (ii)~empties the $\mathsf{Ref}_i(e)$ set of every neural skill,
  triggering \mde{unlearn}'s executability guard. No selector
  (repair-all, greedy, or min-cut) can publish a validated successor
  in this regime: the contract has no successor to publish. The
  contract's refusal to fabricate parents or fit on empty reference
  support is what prevents silent hallucination of repaired state.

  What \textsc{MemoRepair} provides here is the
  \emph{withdrawal lower bound}. The $0.44$-point $\Delta$Task gain
  over No action arises entirely from the barrier, with the selector
  inactive. This isolates a property of barrier-first design that is
  masked when withdrawal and selection both contribute: when nothing
  is republishable, the barrier still bounds downstream regression.
  Methods that conflate withdrawal with selection, for instance
  greedy without a withdrawal contract, cannot deliver this guarantee:
  they either leak stale records or fabricate replacements that fail
  validation. The per-kind breakdown in
  Appendix~\ref{app:memoryarena-cascade-anatomy} shows that
  \texttt{progressive\_search} is the unique MemoryArena subset where
  both \mde{exact} and \mde{unlearn} executability guards trigger
  simultaneously.






\newpage

\section{Provenance Projection and Repair Dependencies}
\label{app:provenance-details}

The implementation may record a finer-grained execution--artifact graph
\[
\mathcal{G}_{\mathrm{prov}}
=
(\mathcal{X}\cup\mathcal{A},E_{\mathrm{prov}}),
\]
where $\mathcal{X}$ denotes execution events and $\mathcal{A}$ denotes
artifact records. \textsc{MemoRepair} first projects this log onto durable
artifacts $V\subseteq\mathcal{A}$, yielding a raw artifact-level
influence graph
\[
\mathcal{G}_{\mathrm{raw}}
=
(V,E^{\mathrm{inf}}_{\mathrm{raw}},E^{\mathrm{sem}}).
\]
A raw influence edge $(u,v)\in E^{\mathrm{inf}}_{\mathrm{raw}}$ is added
when $\mathcal{G}_{\mathrm{prov}}$ contains evidence that artifact $v$
was produced using artifact $u$ as causal support. Semantic relations are
recorded separately in $E^{\mathrm{sem}}$ and do not enter cascade
localization.

Iterative memory updates can create cycles in
$E^{\mathrm{inf}}_{\mathrm{raw}}$. We therefore condense the strongly
connected components of $(V,E^{\mathrm{inf}}_{\mathrm{raw}})$ before
reachability is computed. Let
\[
\mathcal{H}
=
(V_{\mathrm{scc}},E^{\mathrm{inf}}_{\mathrm{scc}})
\]
be this SCC condensation, and let $[v]$ denote the SCC containing
artifact $v$. For a root set $F$, define
\[
[F]=\{[f]:f\in F\}.
\]
Cascade localization is computed on $\mathcal H$ and lifted back to
artifacts:
\[
C(F)
=
\bigcup_{S\in \mathrm{Reach}([F];E^{\mathrm{inf}}_{\mathrm{scc}})} S,
\qquad
D(F)=C(F)\setminus F .
\]
Thus an artifact is affected in the raw graph exactly when its SCC is
reachable from a root SCC in the condensed graph. In the main text, we
write this lifted operation compactly as
$\mathrm{Reach}(F;E^{\mathrm{inf}})$.

The repair-dependency graph $E^{\mathrm{req}}$ has a different meaning
from influence provenance. For a candidate $q_i$, the set
$P_i\subseteq D(F)$ contains only affected descendants whose repaired
successors are explicitly consumed by the repair operator $\pi_i$; root
replacements and interface updates are supplied through
$\mathsf{Ret}(e)$ and $\kappa_e$ rather than through $P_i$. The
repair-time dependency graph is
\[
E^{\mathrm{req}}
=
\{(j,i):i\in D^+(F),\,j\in P_i\cap D^+(F)\}.
\]
An edge $(j,i)\in E^{\mathrm{req}}$ states that the repaired successor of
$j$ must be staged before the successor of $i$ can be executed. Thus
$E^{\mathrm{req}}$ is induced by the local repair contracts
$\Psi_e(i)$, not by all provenance links.





\clearpage
\newpage

\section{Candidate Instantiation}
\label{app:candidate-instantiation}

\paragraph{Mode matching.}
The mode-assignment map $\Phi_\mu^e$ is deterministic. A neural skill
whose training support intersects $C(F)$ and admits nonempty
$(\mathsf{For}_i(e),\mathsf{Ref}_i(e))$ partitions is assigned
$\mathsf{param}$. A deterministic cache or materialized artifact with a
valid replay trace under $\kappa_e$ is assigned $\mathsf{recompute}$.
A summary, prompt skill, or chain procedure with sufficient retained
support is assigned $\mathsf{regen}$. If none of these conditions holds,
the artifact is assigned $\mathsf{remove}$. These rules are fixed across
events and benchmarks.

\paragraph{Predecessor requirements.}
For each candidate $q_i$, $P_i\subseteq D(F)$ contains only affected
descendants whose repaired successors are explicitly consumed by
$\pi_i$. Root replacements and interface updates are supplied through
$\mathsf{Ret}(e)$ and $\kappa_e$, not through $P_i$. For recomputation,
$P_i$ is read from the replay trace and restricted to affected
descendants. For regeneration, $P_i$ contains affected summaries, caches,
or procedure components used in the regeneration context. For
chain-skill regeneration, $P_i$ also includes affected API-contract or
cached-output descendants required by the sandbox harness. Semantic
retrieval edges are never included.

Let $v_i^{(0)}$ denote the executability flag after static candidate
filtering and before validation retry. Candidates with unavailable,
non-repairable, or cyclic requirements are assigned $v_i^{(0)}=0$.
Selection retries may later set $v_i\leftarrow0$ after validation
failure, but the normalized value and cost terms below remain fixed.

\paragraph{Cost and value.}
Let
\[
\mathcal E_0=\{i\in D^+(F):v_i^{(0)}=1\}
\]
be the initially executable candidate set. Candidate cost is the
normalized resource cost of its repair operator:
\[
\tilde c_i=
\alpha_{\mathrm{tool}}n_i^{\mathrm{tool}}
+\alpha_{\mathrm{tok}}n_i^{\mathrm{tok}}
+\alpha_{\mathrm{gpu}}t_i^{\mathrm{gpu}}
+\alpha_{\mathrm{sand}}t_i^{\mathrm{sand}},
\qquad
c_i=\frac{\tilde c_i}
{\sum_{j\in\mathcal E_0}\tilde c_j+\epsilon}.
\]
Here $n_i^{\mathrm{tool}}$ is the number of replayed tool calls,
$n_i^{\mathrm{tok}}$ is the number of LLM tokens used for regeneration,
$t_i^{\mathrm{gpu}}$ is GPU time for parametric repair, and
$t_i^{\mathrm{sand}}$ is sandbox execution time. The coefficients
$\alpha$ are fixed before evaluation.

Candidate value is a fixed trace-derived score:
\[
\tilde w_i=
\log(1+n_i^{\mathrm{use}})
+\log\!\left(
1+
\left|
(\mathrm{Reach}(i;E^{\mathrm{inf}})\setminus\{i\})\cap D(F)
\right|
\right)
+\frac{n_i^{\mathrm{probe}}}
{\max_{j\in\mathcal E_0} n_j^{\mathrm{probe}}+\epsilon}.
\]
For nondegenerate events,
\[
w_i=\frac{\tilde w_i}
{\sum_{j\in\mathcal E_0}\tilde w_j+\epsilon}.
\]
Here $n_i^{\mathrm{use}}$ counts historical retrieval or execution, the
reachability term measures affected downstream fan-out, and
$n_i^{\mathrm{probe}}$ counts held-out probes referencing $i$. If all
$\tilde w_j$ are zero over $\mathcal E_0$, we use uniform values over
$\mathcal E_0$.

\paragraph{Parametric support construction.}
For a neural skill $i$, let $\mathcal S_i$ denote the support multiset
used to train its current parameters, and let $\mathrm{Prov}(z)$ be the
artifact provenance of support example $z\in\mathcal S_i$. In the
notation of Section~\ref{subsec:problem-setup}, $\mathcal S_i$
corresponds to the training support set $D_i$; we use $\mathcal S_i$
here to emphasise that all operations below are multiset operations. We define
\[
\mathsf{For}_i(e)
=
\{z\in\mathcal S_i:\mathrm{Prov}(z)\cap C(F)\neq\varnothing\}.
\]
For correction events, replacement support is materialized from the
correction payload:
\[
\mathsf{New}_i(e)=
\begin{cases}
\mathrm{Materialize}(X_\Delta,i), & \tau=\mathsf{correct},\\
\varnothing, & \tau\in\{\mathsf{delete},\mathsf{migrate}\}.
\end{cases}
\]
The retained reference support is
\[
\mathsf{Ref}_i(e)
=
(\mathcal S_i\setminus \mathsf{For}_i(e))\cup \mathsf{New}_i(e).
\]
A parametric candidate is executable only when
$\mathsf{For}_i(e)$ and $\mathsf{Ref}_i(e)$ are both nonempty and the
chosen parameter-level repair operator can consume this pair.





\newpage
\section{Validation Oracle Implementation}
\label{app:validation-details}

The oracle $\mathrm{Validate}_i(z_i)\in\{0,1\}$ from
Section~\ref{subsec:withdrawal-barrier} runs three coverage levels:
\emph{schema-only}, \emph{task-regression-only}, and \emph{full}.
Main-paper experiments use \emph{full}; the other two appear only in the
validation-coverage ablation (Table~\ref{tab:ablations}).

\textbf{Cascade precheck.}
The oracle first rejects any successor whose declared parents intersect
the still-hidden cascade $B_\rho=C(F)$, except for fresh correction
replacements in $X_\Delta$. For $\mathsf{param}$ successors, it also
rejects any successor whose training support still references a hidden
artifact.

\textbf{Per-artifact checks.}
\emph{Schema} applies to $\mathsf{recompute}$ and $\mathsf{regen}$
successors, including regenerated chain skills. The rendered value must
contain every key in the artifact's declared required-output schema,
populated from the ToolBench tool contract or the MemoryArena structured
output schema. Successors with no declared schema skip the schema check
but must still pass all other applicable checks.

\emph{Task regression} replays held-out probes: $25\%$ of per-skill
ChatML triples for neural skills, held-out demonstrations for prompt
skills, and scenario inputs for chain skills. A probe passes when the
gold function name and all gold argument keys are present in the
prediction.

\emph{Safety} rejects values whose safety probe fails or that contain a
blocked output token, such as leaked legacy field names or stale OAuth
tokens. \emph{Sandbox} applies only to chain skills: it executes the
rewritten function in an isolated Python subprocess under a 5-second
timeout and requires every scenario input to return cleanly.

\textbf{Parametric checks.}
For $\mathsf{param}$ successors, let $a_i^F$ and $a_i^R$ be next-token
accuracy on the forget and retain splits of
$(\mathsf{For}_i(e),\mathsf{Ref}_i(e))$, masked at the prompt prefix. We
define
\[
\mathrm{FSP}_i=100-a_i^F,\qquad
\mathrm{RU}_i=a_i^R.
\]
A parametric successor passes validation when
\[
\mathrm{FSP}_i\ge\tau_{\mathrm{FSP}},
\qquad
\mathrm{RU}_i\ge\tau_{\mathrm{RU}},
\]
with $\tau_{\mathrm{FSP}}=\tau_{\mathrm{RU}}=80$. For reporting,
$\mathrm{ValPass}\%$ is the percentage of evaluated parametric
successors satisfying both thresholds.

\textbf{Composition and quarantine.}
Full validation requires all applicable checks to pass. A failed
candidate is not republished and is marked non-executable
($v_i\leftarrow0$). The selector is rerun on the updated candidate
family, which removes descendants requiring the failed candidate unless
they remain feasible through another predecessor-closed selection.
Candidates that remain unselected after the final iteration stay
withdrawn.
% ================================================================










\newpage


\section{Proof of Theorem~\ref{thm:cost-aware-repair}}
\label{app:proof-cost-aware-repair}

Fix a repair event $e$, a candidate family
$Q_\rho=\{q_i:i\in D^+(F)\}$, the current executability flags
$\{v_i\}$, and a tradeoff parameter $\lambda\ge0$. For each
$i\in D^+(F)$, let $x_i\in\{0,1\}$ indicate whether candidate $q_i$ is
selected. The scalarized repair-selection problem is
\[
\max_x
\sum_{i\in D^+(F)} w_i x_i
-
\lambda
\sum_{i\in D^+(F)} c_i x_i
\]
subject to
\[
x_i\le v_i,\qquad
x_i\le x_j\ \ \forall j\in \bar P_i,\qquad
x_i\in\{0,1\}.
\]
Here $\bar P_i=P_i\cap D^+(F)$ is the set of repairable required
predecessors. If $P_i\setminus D^+(F)\neq\varnothing$, then $i$ has a
non-repairable requirement and is encoded by setting $v_i=0$.

Define
\[
p_i \triangleq w_i-\lambda c_i .
\]
Then the objective becomes
\[
\max_x\ \sum_{i\in D^+(F)} p_i x_i .
\]
Let
\[
\mathcal V \triangleq D^+(F).
\]
For any feasible binary vector $x$, define
\[
U(x)\triangleq \{i\in\mathcal V:x_i=1\}.
\]
The constraints $x_i\le v_i$ imply
\[
U(x)\subseteq \mathcal V_{\mathrm{exec}},
\qquad
\mathcal V_{\mathrm{exec}}\triangleq\{i\in\mathcal V:v_i=1\}.
\]
The predecessor-closure constraints imply
\[
i\in U(x)\Longrightarrow \bar P_i\subseteq U(x).
\]
Therefore feasible selections are exactly the executable
predecessor-closed subsets $U\subseteq\mathcal V$, and the problem is
equivalent to
\[
\max_{U\subseteq\mathcal V}\ \sum_{i\in U}p_i
\]
subject to
\[
U\subseteq \mathcal V_{\mathrm{exec}},
\qquad
i\in U\Rightarrow \bar P_i\subseteq U.
\]

We now reduce this maximum-weight predecessor-closure problem to a
minimum $s$--$t$ cut. Construct a directed capacitated network with node
set
\[
\mathcal N\triangleq \{s,t\}\cup\mathcal V,
\]
where $s$ is the source and $t$ is the sink. For each $i\in\mathcal V$:
\begin{enumerate}[leftmargin=*,label=(\roman*)]
    \item if $p_i>0$, add an edge $s\to i$ with capacity $p_i$;
    \item if $p_i<0$, add an edge $i\to t$ with capacity $-p_i$;
    \item if $p_i=0$, add no reward edge incident to $i$.
\end{enumerate}
Let
\[
W^+\triangleq \sum_{i:p_i>0}p_i,
\qquad
M>W^+ .
\]
For every non-executable node $i$ with $v_i=0$, add an exclusion edge
$i\to t$ of capacity $M$. For every required predecessor
$j\in\bar P_i$, add a dependency edge $i\to j$ of capacity $M$.
Although $E^{\mathrm{req}}$ is oriented from prerequisite to dependent
for execution, these min-cut dependency edges are oriented from the
dependent to the prerequisite so that selecting $i$ forces selecting
$j$.

Now consider any $s$--$t$ cut $(S,T)$ with $s\in S$ and $t\in T$, and
define
\[
U(S)\triangleq S\cap\mathcal V .
\]
The contribution of positive-reward edges is
\[
\sum_{i:p_i>0,\ i\notin U(S)}p_i
=
W^+-
\sum_{i\in U(S),\,p_i>0}p_i.
\]
The contribution of negative-reward edges is
\[
\sum_{i:p_i<0,\ i\in U(S)}(-p_i).
\]
Combining these finite reward-edge contributions gives
\[
W^+-\sum_{i\in U(S)}p_i.
\]

If $U(S)$ contains a non-executable node $i$ with $v_i=0$, then the
exclusion edge $i\to t$ is cut and incurs capacity $M$. If $U(S)$
contains a node $i$ but omits a required predecessor $j\in\bar P_i$,
then the dependency edge $i\to j$ is cut and also incurs capacity $M$.
Thus
\[
\operatorname{Cap}(S,T)
=
W^+-\sum_{i\in U(S)}p_i
+
M\,N_{\mathrm{pen}}(S),
\]
where $N_{\mathrm{pen}}(S)$ is the number of cut $M$-capacity penalty
edges.

If $N_{\mathrm{pen}}(S)\ge1$, then
\[
\operatorname{Cap}(S,T)
\ge
W^+-\sum_{i\in U(S)}p_i+M.
\]
Since
\[
\sum_{i\in U(S)}p_i
\le
\sum_{i:p_i>0}p_i
=
W^+,
\]
we have
\[
\operatorname{Cap}(S,T)\ge M>W^+.
\]
The trivial cut
\[
S=\{s\},\qquad T=\mathcal N\setminus\{s\}
\]
has capacity exactly $W^+$, because it cuts only the edges $s\to i$ with
$p_i>0$. Hence any cut with a penalty edge cannot be minimum. Therefore
every minimum cut induces an executable predecessor-closed set $U(S)$.

For any cut with no penalty edge, we have
\[
\operatorname{Cap}(S,T)
=
W^+-\sum_{i\in U(S)}p_i.
\]
Since $W^+$ is constant, minimizing cut capacity is equivalent to
maximizing
\[
\sum_{i\in U(S)}p_i
=
\sum_{i\in U(S)}(w_i-\lambda c_i),
\]
which is exactly the scalarized repair objective.

Conversely, given any executable predecessor-closed subset
$U\subseteq\mathcal V$, define
\[
S(U)=\{s\}\cup U,
\qquad
T(U)=\mathcal N\setminus S(U).
\]
Because $U$ is feasible, no $M$-capacity penalty edge is cut, and the
resulting cut capacity is
\[
W^+-\sum_{i\in U}p_i.
\]
Thus feasible repair sets and cuts without penalty edges correspond up
to the constant offset $W^+$. Therefore a minimum $s$--$t$ cut yields an
optimal executable predecessor-closed repair set. This proves the
theorem.

\clearpage
\newpage

\section{Full execution algorithm}
\label{app:full-execution-algorithm}

Algorithm~\ref{alg:memo-repair-full} gives the full execution
procedure. Candidate construction is handled by the graph-to-contract
map $\Psi_e$ defined in Appendix~\ref{app:candidate-instantiation}. The
selection step runs on the full candidate family $Q_\rho$, including
non-executable candidates, so that closure constraints on their
dependents remain explicit.

\begin{algorithm}[!ht]
\caption{\textsc{MemoRepair} (full execution)}
\label{alg:memo-repair-full}
\begin{algorithmic}[1]
\REQUIRE Repair event $e=(F,\tau,\Delta)$, memory graph $\mathcal{G}$,
interface $\kappa$, acknowledgement timeout $T_{\mathrm{ack}}$, tradeoff parameter $\lambda$
\ENSURE Hidden set $B_\rho$, candidate family $Q_\rho$, selected set $S_\rho$, republished successors $R_\rho$

\STATE Compute post-event interface $\kappa_e$
\STATE Compute affected cascade $C(F)$, descendants $D(F)$, and retained support $\mathsf{Ret}(e)$
\STATE Set hidden set $B_\rho\leftarrow C(F)$ and enforce withdrawal barrier on $B_\rho$

\STATE Assign modes
$\mu_i=\Phi_\mu^e(i;\mathcal G,\mathsf{Ret}(e),\kappa_e)$ for all $i\in D(F)$
\STATE Set
\[
D^+(F)\leftarrow \{i\in D(F):\mu_i\neq\mathsf{remove}\}
\]
\STATE Build candidate family
\[
Q_\rho \leftarrow \{\Psi_e(i):i\in D^+(F)\}
\]
\STATE For each $q_i\in Q_\rho$, compute
\[
\bar P_i\leftarrow P_i\cap D^+(F).
\]
If $P_i\setminus D^+(F)\neq\varnothing$, set $v_i\leftarrow0$.
\STATE Build
\[
E^{\mathrm{req}}\leftarrow
\{(j,i):i\in D^+(F),\,j\in\bar P_i\}.
\]
\STATE Mark candidates in cyclic repair requirements non-executable
\STATE Initialize $R_\rho\leftarrow\varnothing$

\REPEAT
    \STATE Solve \eqref{eq:scalarized-selection}--\eqref{eq:binary} on $Q_\rho$ to obtain
    $S_\rho=\{i:x_i=1\}$
    \STATE Topologically order the executable subgraph induced by $S_\rho$
    \STATE Initialize staged successor map $Z\leftarrow\varnothing$
    \STATE Initialize temporary successor set $R_{\mathrm{tmp}}\leftarrow\varnothing$
    \STATE Initialize failure set $F_{\mathrm{tmp}}\leftarrow\varnothing$

    \FOR{each selected descendant $i\in S_\rho$ in topological order}
        \IF{$\bar P_i\not\subseteq \operatorname{dom}(Z)$}
            \STATE Add $i$ to $F_{\mathrm{tmp}}$ and keep $i$ withdrawn
        \ELSE
            \STATE Execute $\pi_i$ using $\mathsf{Ret}(e)$, $\kappa_e$, and staged predecessors
            $\{Z[j]\}_{j\in\bar P_i}$ to obtain successor $z_i$
            \IF{$\mathrm{Validate}_i(z_i)=1$}
                \STATE Set $Z[i]\leftarrow z_i$ and add $(i,z_i)$ to $R_{\mathrm{tmp}}$
            \ELSE
                \STATE Add $i$ to $F_{\mathrm{tmp}}$ and keep $i$ withdrawn
            \ENDIF
        \ENDIF
    \ENDFOR

    \FOR{each $i\in F_{\mathrm{tmp}}$}
        \STATE Set $v_i\leftarrow0$
    \ENDFOR
\UNTIL{$F_{\mathrm{tmp}}=\varnothing$}

\STATE Set $R_\rho\leftarrow R_{\mathrm{tmp}}$
\STATE Batch-republish all successors in $R_\rho$
\RETURN $(B_\rho,Q_\rho,S_\rho,R_\rho)$
\end{algorithmic}
\end{algorithm}

\subsection{Complexity and Scope}
\label{app:complexity-guarantees}

\textbf{Complexity.}
Cascade localization costs $O(|V|+|E^{\mathrm{inf}}|)$. Barrier broadcast has control-message cost $O(|\mathcal R_e|)$ over
reachable replicas, with payload $O(|\mathcal R_e||C(F)|)$ if hidden
artifact identifiers are transmitted explicitly. Instantiating local repair contracts
$\{\Psi_e(i):i\in D(F)\}$ costs $O(|D(F)|)$ excluding operator execution
time. Building $E^{\mathrm{req}}$ and detecting cyclic requirements costs
$O(|D^+(F)|+|E^{\mathrm{req}}|)$, or $O(|D^+(F)|^2)$ in the dense case.
With push--relabel, one min-cut call costs
\[
O(|Q_\rho|^3)\le O(|D^+(F)|^3).
\]
Each failed execution round marks at least one previously executable
candidate non-executable. The retry loop therefore runs at most
$|D^+(F)|$ times, giving worst-case selector-and-retry complexity
\[
O(|D^+(F)|^4),
\]
again excluding the cost of external repair operators such as LLM
regeneration, sandbox execution, or parameter-level repair.

\begin{assumption}[Monotone merge]
\label{asm:merge}
Each replica maintains grow-only sets $A$ (added), $B$ (hidden), and
$T$ (deleted). Merge is componentwise union, and visibility at replica
$r$ is
\[
\mathsf{Vis}_r(x)=\mathbf{1}[x\in A_r\setminus(B_r\cup T_r)].
\]
All updates are eventually delivered, and fenced replicas merge the
current barrier state before returning to service.
\end{assumption}

\begin{proposition}[Localization preservation under SCC condensation]
\label{prop:localization}
Let $\mathcal{G}_{\mathrm{raw}}$ be the raw durable-artifact influence
graph and let $\mathcal{G}_{\mathrm{cond}}$ be its SCC condensation. For
any root set $F$ and durable artifact $v$, $v$ is reachable from some
$f\in F$ in $\mathcal{G}_{\mathrm{raw}}$ if and only if the SCC
containing $v$ is reachable from some SCC containing a root in $F$ in
$\mathcal{G}_{\mathrm{cond}}$.
\end{proposition}


\begin{proof}[Proof]
Let \(G_{\mathrm{raw}}=(V_{\mathrm{raw}},E_{\mathrm{raw}})\) be the raw
durable-artifact influence graph, and let
\(G_{\mathrm{cond}}=(V_{\mathrm{cond}},E_{\mathrm{cond}})\) be its SCC
condensation. Write \(u\leadsto v\) if there exists a directed path
from \(u\) to \(v\) in \(G_{\mathrm{raw}}\), and let \([u]\) denote the
strongly connected component containing \(u\). For a root set
\(F\subseteq V_{\mathrm{raw}}\), define
\[
[F]\triangleq \{[f]:f\in F\}.
\]
By construction,
\[
V_{\mathrm{cond}}=\{[u]:u\in V_{\mathrm{raw}}\},
\]
and there is an edge \(([a],[b])\in E_{\mathrm{cond}}\) if and only if
\([a]\neq [b]\) and there exist \(u\in [a]\), \(v\in [b]\) such that
\((u,v)\in E_{\mathrm{raw}}\).

We must show that for any root set \(F\subseteq V_{\mathrm{raw}}\) and
any artifact \(v\in V_{\mathrm{raw}}\),
\[
\exists f\in F:\ f\leadsto v \text{ in } G_{\mathrm{raw}}
\quad\Longleftrightarrow\quad
\exists f\in F:\ [f]\leadsto [v] \text{ in } G_{\mathrm{cond}}.
\]

Assume first that there exists \(f\in F\) such that \(f\leadsto v\) in
\(G_{\mathrm{raw}}\). Then there is a directed path
\[
f=u_0\to u_1\to \cdots \to u_\ell=v.
\]
Projecting this path onto SCC labels gives
\[
[u_0],[u_1],\ldots,[u_\ell].
\]
After removing repeated consecutive labels, we obtain a sequence
\[
C_0,C_1,\ldots,C_m
\]
with \(C_0=[f]\), \(C_m=[v]\), and \(C_r\neq C_{r+1}\) for all \(r\).
For each transition \(C_r\to C_{r+1}\), there exists an edge
\((u_k,u_{k+1})\in E_{\mathrm{raw}}\) with \(u_k\in C_r\) and
\(u_{k+1}\in C_{r+1}\), hence
\((C_r,C_{r+1})\in E_{\mathrm{cond}}\). Therefore
\[
[f]=C_0\leadsto C_m=[v]
\]
in \(G_{\mathrm{cond}}\).

For the reverse direction, assume \([f]\leadsto [v]\) in
\(G_{\mathrm{cond}}\) for some \(f\in F\). Then there is a path
\[
[f]=C_0\to C_1\to \cdots \to C_m=[v]
\]
in \(G_{\mathrm{cond}}\).

If \(m=0\), then \([f]=[v]\), so \(f\) and \(v\) lie in the same SCC
and hence \(f\leadsto v\) in \(G_{\mathrm{raw}}\).

Now suppose \(m\ge 1\). By the definition of condensation edges, for
each \(r=0,\ldots,m-1\), there exist vertices \(a_r\in C_r\) and
\(b_r\in C_{r+1}\) such that
\[
(a_r,b_r)\in E_{\mathrm{raw}}.
\]
Because each \(C_r\) is strongly connected, any two vertices inside
\(C_r\) are mutually reachable. Hence inside \(C_0\) there is a path
from \(f\) to \(a_0\), inside each intermediate component \(C_r\) there
is a path from \(b_{r-1}\) to \(a_r\), and inside the final component
\(C_m=[v]\) there is a path from \(b_{m-1}\) to \(v\). Concatenating
these intra-SCC paths with the inter-SCC edges \((a_r,b_r)\) yields a
directed path from \(f\) to \(v\) in \(G_{\mathrm{raw}}\).

It follows that
\[
v\in C_{\mathrm{raw}}(F)
\quad\Longleftrightarrow\quad
[v]\in C_{\mathrm{cond}}([F]),
\]
where
\[
C_{\mathrm{raw}}(F)\triangleq
\{u\in V_{\mathrm{raw}}:\exists f\in F,\ f\leadsto u\},
\]
and
\[
C_{\mathrm{cond}}([F])\triangleq
\{C\in V_{\mathrm{cond}}:\exists f\in F,\ [f]\leadsto C\}.
\]
Equivalently,
\[
C_{\mathrm{raw}}(F)=\bigcup_{C\in C_{\mathrm{cond}}([F])} C.
\]
Therefore, SCC condensation preserves descendant localization exactly,
modulo replacing each SCC by its meta-node. This proves the
proposition.

\end{proof}


\begin{proposition}[Service-withdrawal isolation on reachable replicas]
\label{prop:isolation}
Under Assumption~\ref{asm:merge}, once an artifact enters $B$ or $T$ on
a reachable serving replica, no later merge makes that same artifact
visible again.
\end{proposition}

\begin{proof}[Proof]

Under Assumption~\ref{asm:merge}, each replica \(r\) maintains three
grow-only sets,
\[
A_r,\qquad B_r,\qquad T_r,
\]
where \(A_r\) is the set of added artifacts, \(B_r\) is the set of
hidden artifacts, and \(T_r\) is the set of deleted artifacts. Replica
merge is defined componentwise by set union: if the local state before
merge is \((A_r,B_r,T_r)\) and the incoming state is
\((A_{r'},B_{r'},T_{r'})\), then the post-merge state is
\[
A_r^{+}=A_r\cup A_{r'},\qquad
B_r^{+}=B_r\cup B_{r'},\qquad
T_r^{+}=T_r\cup T_{r'}.
\]
In particular, \(B_r\) and \(T_r\) are monotone: once an identifier
enters either set, it cannot be removed by any future merge.

Visibility at replica \(r\) is
\[
\mathsf{Vis}_r(x)=\mathbf{1}\!\left[x\in A_r\setminus(B_r\cup T_r)\right].
\]
Equivalently, \(\mathsf{Vis}_r(x)=1\) if and only if
\(x\in A_r\), \(x\notin B_r\), and \(x\notin T_r\).

Suppose that at some time an artifact \(x\) enters \(B_r\cup T_r\) on a
reachable replica \(r\). Since both \(B_r\) and \(T_r\) evolve only by
set union, every later local state and every later merged state still
satisfies
\[
x\in B_r\cup T_r.
\]
Hence
\[
\mathsf{Vis}_r(x)=0
\]
at that time and at all subsequent times. Therefore, once \(x\) is
hidden or deleted at replica \(r\), no future merge can make that same
artifact visible again on that replica.

At the beginning of repair event \(e\), the system computes
\[
B_\rho \leftarrow C(F)
\]
and propagates \(B_\rho\) to all reachable replicas. A reachable replica
acknowledges the barrier only after every artifact in \(B_\rho\) has
become non-servable locally. If a replica fails to acknowledge within
the timeout \(T_{\mathrm{ack}}\), it is fenced and removed from the
serving set until it reconnects and merges the current barrier state.
Consequently, every replica that remains reachable and allowed to serve
during the repair epoch satisfies
\[
C(F)=B_\rho\subseteq B_r.
\]
By the monotonicity proved above, every artifact \(x\in C(F)\) then
satisfies
\[
\mathsf{Vis}_r(x)=0
\]
throughout the repair interval on every reachable serving replica.

Thus, once an artifact enters \(B_r\) or \(T_r\) on a reachable
replica, no subsequent merge can make that same artifact visible again.
This does not preclude later publication of a validated fresh successor
version $z_i$ with a new artifact identifier; it only rules out
re-exposure of the original hidden or deleted artifact $x$ by merge.
\end{proof}


\textbf{Scope.}
The guarantees are store-level guarantees and require complete influence
provenance for cascade localization. For
$\mu_i\in\{\mathsf{recompute},\mathsf{regen}\}$, fresh successors are
constructed from retained valid support, staged repaired predecessors,
and the post-event interface $\kappa_e$. Recomputation applies only to
deterministic descendants. Regeneration produces validated successors
from retained support but does not claim exact causal subtraction. For
$\mu_i=\mathsf{param}$, exact parameter-level erasure is claimed only
when the chosen parameter-level repair operator provides such a
guarantee.



\newpage
\section{Broader Impact}
\label{sec:impact}

\textsc{MemoRepair} is designed to make persistent agent memories easier to keep current after deletions, corrections, or interface migrations. In systems that reuse summaries, cached tool outputs, procedures, or learned skills across sessions, it gives operators a clear way to identify affected descendants, take them out of service, rebuild valid successors, and republish only checked artifacts. This can improve reliability, reduce accidental reuse of outdated memory, and make memory updates easier to audit in deployed agentic systems. The same mechanism depends on accurate provenance and validation: missing influence edges or
incorrect checks can leave stale descendants unrepaired or republish faulty successors, so deployment
should keep audit logs and avoid treating store-level repair as a complete privacy or correctness guarantee.

\section*{NeurIPS Paper Checklist}

% %%% BEGIN INSTRUCTIONS %%%
% The checklist is designed to encourage best practices for responsible machine learning research, addressing issues of reproducibility, transparency, research ethics, and societal impact. Do not remove the checklist: {\bf The papers not including the checklist will be desk rejected.} The checklist should follow the references and follow the (optional) supplemental material.  The checklist does NOT count towards the page
% limit. 

% Please read the checklist guidelines carefully for information on how to answer these questions. For each question in the checklist:
% \begin{itemize}
%     \item You should answer \answerYes{}, \answerNo{}, or \answerNA{}.
%     \item \answerNA{} means either that the question is Not Applicable for that particular paper or the relevant information is Not Available.
%     \item Please provide a short (1--2 sentence) justification right after your answer (even for \answerNA). 
%    % \item {\bf The papers not including the checklist will be desk rejected.}
% \end{itemize}

% {\bf The checklist answers are an integral part of your paper submission.} They are visible to the reviewers, area chairs, senior area chairs, and ethics reviewers. You will also be asked to include it (after eventual revisions) with the final version of your paper, and its final version will be published with the paper.

% The reviewers of your paper will be asked to use the checklist as one of the factors in their evaluation. While \answerYes{} is generally preferable to \answerNo{}, it is perfectly acceptable to answer \answerNo{} provided a proper justification is given (e.g., error bars are not reported because it would be too computationally expensive'' or ``we were unable to find the license for the dataset we used''). In general, answering \answerNo{} or \answerNA{} is not grounds for rejection. While the questions are phrased in a binary way, we acknowledge that the true answer is often more nuanced, so please just use your best judgment and write a justification to elaborate. All supporting evidence can appear either in the main paper or the supplemental material, provided in appendix. If you answer \answerYes{} to a question, in the justification please point to the section(s) where related material for the question can be found.

% IMPORTANT, please:
% \begin{itemize}
%     \item {\bf Delete this instruction block, but keep the section heading ``NeurIPS Paper Checklist"},
%     \item  {\bf Keep the checklist subsection headings, questions/answers and guidelines below.}
%     \item {\bf Do not modify the questions and only use the provided macros for your answers}.
% \end{itemize} 
 

% %%% END INSTRUCTIONS %%%


\begin{enumerate}[leftmargin=*]

\item {\bf Claims}
    \item[] Question: Do the main claims made in the abstract and introduction accurately reflect the paper's contributions and scope?
    \item[] Answer: \answerYes{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
    \item[] Justification: The abstract and introduction outline the main claims. Details are provided in the following sections.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the abstract and introduction do not include the claims made in the paper.
        \item The abstract and/or introduction should clearly state the claims made, including the contributions made in the paper and important assumptions and limitations. A \answerNo{} or \answerNA{} answer to this question will not be perceived well by the reviewers. 
        \item The claims made should match theoretical and experimental results, and reflect how much the results can be expected to generalize to other settings. 
        \item It is fine to include aspirational goals as motivation as long as it is clear that these goals are not attained by the paper. 
    \end{itemize}

\item {\bf Limitations}
    \item[] Question: Does the paper discuss the limitations of the work performed by the authors?
    \item[] Answer: \answerYes{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
    \item[] Justification: The paper discusses limitations in Section~\ref{sec:conclusion}.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the paper has no limitation while the answer \answerNo{} means that the paper has limitations, but those are not discussed in the paper. 
        \item The authors are encouraged to create a separate ``Limitations'' section in their paper.
        \item The paper should point out any strong assumptions and how robust the results are to violations of these assumptions (e.g., independence assumptions, noiseless settings, model well-specification, asymptotic approximations only holding locally). The authors should reflect on how these assumptions might be violated in practice and what the implications would be.
        \item The authors should reflect on the scope of the claims made, e.g., if the approach was only tested on a few datasets or with a few runs. In general, empirical results often depend on implicit assumptions, which should be articulated.
        \item The authors should reflect on the factors that influence the performance of the approach. For example, a facial recognition algorithm may perform poorly when image resolution is low or images are taken in low lighting. Or a speech-to-text system might not be used reliably to provide closed captions for online lectures because it fails to handle technical jargon.
        \item The authors should discuss the computational efficiency of the proposed algorithms and how they scale with dataset size.
        \item If applicable, the authors should discuss possible limitations of their approach to address problems of privacy and fairness.
        \item While the authors might fear that complete honesty about limitations might be used by reviewers as grounds for rejection, a worse outcome might be that reviewers discover limitations that aren't acknowledged in the paper. The authors should use their best judgment and recognize that individual actions in favor of transparency play an important role in developing norms that preserve the integrity of the community. Reviewers will be specifically instructed to not penalize honesty concerning limitations.
    \end{itemize}

\item {\bf Theory assumptions and proofs}
    \item[] Question: For each theoretical result, does the paper provide the full set of assumptions and a complete (and correct) proof?
    \item[] Answer: \answerYes{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
\item[] Justification: The main theoretical result is stated in
Theorem~\ref{thm:cost-aware-repair}; the full min-cut proof is in
Appendix~\ref{app:proof-cost-aware-repair}, with scope and replica
assumptions in Appendix~\ref{app:complexity-guarantees}.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the paper does not include theoretical results. 
        \item All the theorems, formulas, and proofs in the paper should be numbered and cross-referenced.
        \item All assumptions should be clearly stated or referenced in the statement of any theorems.
        \item The proofs can either appear in the main paper or the supplemental material, but if they appear in the supplemental material, the authors are encouraged to provide a short proof sketch to provide intuition. 
        \item Inversely, any informal proof provided in the core of the paper should be complemented by formal proofs provided in appendix or supplemental material.
        \item Theorems and Lemmas that the proof relies upon should be properly referenced. 
    \end{itemize}

    \item {\bf Experimental result reproducibility}
    \item[] Question: Does the paper fully disclose all the information needed to reproduce the main experimental results of the paper to the extent that it affects the main claims and/or conclusions of the paper (regardless of whether the code and data are provided or not)?
    \item[] Answer: \answerYes{}% Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
    \item[] Justification: Section~\ref{sec:experiment} and
    Appendix~\ref{app:reproducibility} describe the experimental setup.
    \begin{itemize}
        \item The answer \answerNA{} means that the paper does not include experiments.
        \item If the paper includes experiments, a \answerNo{} answer to this question will not be perceived well by the reviewers: Making the paper reproducible is important, regardless of whether the code and data are provided or not.
        \item If the contribution is a dataset and\slash or model, the authors should describe the steps taken to make their results reproducible or verifiable. 
        \item Depending on the contribution, reproducibility can be accomplished in various ways. For example, if the contribution is a novel architecture, describing the architecture fully might suffice, or if the contribution is a specific model and empirical evaluation, it may be necessary to either make it possible for others to replicate the model with the same dataset, or provide access to the model. In general. releasing code and data is often one good way to accomplish this, but reproducibility can also be provided via detailed instructions for how to replicate the results, access to a hosted model (e.g., in the case of a large language model), releasing of a model checkpoint, or other means that are appropriate to the research performed.
        \item While NeurIPS does not require releasing code, the conference does require all submissions to provide some reasonable avenue for reproducibility, which may depend on the nature of the contribution. For example
        \begin{enumerate}
            \item If the contribution is primarily a new algorithm, the paper should make it clear how to reproduce that algorithm.
            \item If the contribution is primarily a new model architecture, the paper should describe the architecture clearly and fully.
            \item If the contribution is a new model (e.g., a large language model), then there should either be a way to access this model for reproducing the results or a way to reproduce the model (e.g., with an open-source dataset or instructions for how to construct the dataset).
            \item We recognize that reproducibility may be tricky in some cases, in which case authors are welcome to describe the particular way they provide for reproducibility. In the case of closed-source models, it may be that access to the model is limited in some way (e.g., to registered users), but it should be possible for other researchers to have some path to reproducing or verifying the results.
        \end{enumerate}
    \end{itemize}


\item {\bf Open access to data and code}
    \item[] Question: Does the paper provide open access to the data and code, with sufficient instructions to faithfully reproduce the main experimental results, as described in supplemental material?
    \item[] Answer: \answerYes{}% Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
    \item[] Justification: The implementation code is included in the supplementary materials.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that paper does not include experiments requiring code.
        \item Please see the NeurIPS code and data submission guidelines (\url{https://neurips.cc/public/guides/CodeSubmissionPolicy}) for more details.
        \item While we encourage the release of code and data, we understand that this might not be possible, so \answerNo{} is an acceptable answer. Papers cannot be rejected simply for not including code, unless this is central to the contribution (e.g., for a new open-source benchmark).
        \item The instructions should contain the exact command and environment needed to run to reproduce the results. See the NeurIPS code and data submission guidelines (\url{https://neurips.cc/public/guides/CodeSubmissionPolicy}) for more details.
        \item The authors should provide instructions on data access and preparation, including how to access the raw data, preprocessed data, intermediate data, and generated data, etc.
        \item The authors should provide scripts to reproduce all experimental results for the new proposed method and baselines. If only a subset of experiments are reproducible, they should state which ones are omitted from the script and why.
        \item At submission time, to preserve anonymity, the authors should release anonymized versions (if applicable).
        \item Providing as much information as possible in supplemental material (appended to the paper) is recommended, but including URLs to data and code is permitted.
    \end{itemize}


\item {\bf Experimental setting/details}
    \item[] Question: Does the paper specify all the training and test details (e.g., data splits, hyperparameters, how they were chosen, type of optimizer) necessary to understand the results?
    \item[] Answer: \answerYes{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
\item[] Justification: Section~\ref{sec:experiment} gives the experimental
setup, with dataset statistics in Appendix~\ref{app:dataset-stats},
hyperparameters in Appendix~\ref{app:hyperparameters}.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the paper does not include experiments.
        \item The experimental setting should be presented in the core of the paper to a level of detail that is necessary to appreciate the results and make sense of them.
        \item The full details can be provided either with the code, in appendix, or as supplemental material.
    \end{itemize}

\item {\bf Experiment statistical significance}
    \item[] Question: Does the paper report error bars suitably and correctly defined or other appropriate information about the statistical significance of the experiments?
    \item[] Answer: \answerYes{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
\item[] Justification: The main results are reported as means over three
seeds, and Appendix~\ref{app:std-tables} reports the corresponding per-cell
standard deviations.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the paper does not include experiments.
        \item The authors should answer \answerYes{} if the results are accompanied by error bars, confidence intervals, or statistical significance tests, at least for the experiments that support the main claims of the paper.
        \item The factors of variability that the error bars are capturing should be clearly stated (for example, train/test split, initialization, random drawing of some parameter, or overall run with given experimental conditions).
        \item The method for calculating the error bars should be explained (closed form formula, call to a library function, bootstrap, etc.)
        \item The assumptions made should be given (e.g., Normally distributed errors).
        \item It should be clear whether the error bar is the standard deviation or the standard error of the mean.
        \item It is OK to report 1-sigma error bars, but one should state it. The authors should preferably report a 2-sigma error bar than state that they have a 96\% CI, if the hypothesis of Normality of errors is not verified.
        \item For asymmetric distributions, the authors should be careful not to show in tables or figures symmetric error bars that would yield results that are out of range (e.g., negative error rates).
        \item If error bars are reported in tables or plots, the authors should explain in the text how they were calculated and reference the corresponding figures or tables in the text.
    \end{itemize}

\item {\bf Experiments compute resources}
    \item[] Question: For each experiment, does the paper provide sufficient information on the computer resources (type of compute workers, memory, time of execution) needed to reproduce the experiments?
    \item[] Answer: \answerYes{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
\item[] Justification: Appendix~\ref{app:hardware-software} reports the
hardware and software setup.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the paper does not include experiments.
        \item The paper should indicate the type of compute workers CPU or GPU, internal cluster, or cloud provider, including relevant memory and storage.
        \item The paper should provide the amount of compute required for each of the individual experimental runs as well as estimate the total compute. 
        \item The paper should disclose whether the full research project required more compute than the experiments reported in the paper (e.g., preliminary or failed experiments that didn't make it into the paper). 
    \end{itemize}
    
\item {\bf Code of ethics}
    \item[] Question: Does the research conducted in the paper conform, in every respect, with the NeurIPS Code of Ethics \url{https://neurips.cc/public/EthicsGuidelines}?
    \item[] Answer: \answerYes{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
    \item[] Justification: The research uses public benchmarks and released model/checkpoint assets, preserves submission anonymity, and does not involve human-subject data collection or procedures that deviate from the NeurIPS Code of Ethics.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the authors have not reviewed the NeurIPS Code of Ethics.
        \item If the authors answer \answerNo, they should explain the special circumstances that require a deviation from the Code of Ethics.
        \item The authors should make sure to preserve anonymity (e.g., if there is a special consideration due to laws or regulations in their jurisdiction).
    \end{itemize}


\item {\bf Broader impacts}
    \item[] Question: Does the paper discuss both potential positive societal impacts and negative societal impacts of the work performed?
    \item[] Answer: \answerYes{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
    \item[] Justification: The paper discusses broader impacts in Appendix~\ref{sec:impact}.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that there is no societal impact of the work performed.
        \item If the authors answer \answerNA{} or \answerNo, they should explain why their work has no societal impact or why the paper does not address societal impact.
        \item Examples of negative societal impacts include potential malicious or unintended uses (e.g., disinformation, generating fake profiles, surveillance), fairness considerations (e.g., deployment of technologies that could make decisions that unfairly impact specific groups), privacy considerations, and security considerations.
        \item The conference expects that many papers will be foundational research and not tied to particular applications, let alone deployments. However, if there is a direct path to any negative applications, the authors should point it out. For example, it is legitimate to point out that an improvement in the quality of generative models could be used to generate Deepfakes for disinformation. On the other hand, it is not needed to point out that a generic algorithm for optimizing neural networks could enable people to train models that generate Deepfakes faster.
        \item The authors should consider possible harms that could arise when the technology is being used as intended and functioning correctly, harms that could arise when the technology is being used as intended but gives incorrect results, and harms following from (intentional or unintentional) misuse of the technology.
        \item If there are negative societal impacts, the authors could also discuss possible mitigation strategies (e.g., gated release of models, providing defenses in addition to attacks, mechanisms for monitoring misuse, mechanisms to monitor how a system learns from feedback over time, improving the efficiency and accessibility of ML).
    \end{itemize}
    
\item {\bf Safeguards}
    \item[] Question: Does the paper describe safeguards that have been put in place for responsible release of data or models that have a high risk for misuse (e.g., pre-trained language models, image generators, or scraped datasets)?
    \item[] Answer: \answerNA{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
    \item[] Justification: The paper does not release a new high-risk pretrained model, scraped dataset, image generator, or other dual-use asset requiring controlled-release safeguards. Experiments use public benchmarks and released checkpoints.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the paper poses no such risks.
        \item Released models that have a high risk for misuse or dual-use should be released with necessary safeguards to allow for controlled use of the model, for example by requiring that users adhere to usage guidelines or restrictions to access the model or implementing safety filters. 
        \item Datasets that have been scraped from the Internet could pose safety risks. The authors should describe how they avoided releasing unsafe images.
        \item We recognize that providing effective safeguards is challenging, and many papers do not require this, but we encourage authors to take this into account and make a best faith effort.
    \end{itemize}

\item {\bf Licenses for existing assets}
    \item[] Question: Are the creators or original owners of assets (e.g., code, data, models), used in the paper, properly credited and are the license and terms of use explicitly mentioned and properly respected?
    \item[] Answer: \answerYes{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
    \item[] Justification: Existing benchmarks, datasets, model checkpoints, and baseline systems are cited in the paper.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the paper does not use existing assets.
        \item The authors should cite the original paper that produced the code package or dataset.
        \item The authors should state which version of the asset is used and, if possible, include a URL.
        \item The name of the license (e.g., CC-BY 4.0) should be included for each asset.
        \item For scraped data from a particular source (e.g., website), the copyright and terms of service of that source should be provided.
        \item If assets are released, the license, copyright information, and terms of use in the package should be provided. For popular datasets, \url{paperswithcode.com/datasets} has curated licenses for some datasets. Their licensing guide can help determine the license of a dataset.
        \item For existing datasets that are re-packaged, both the original license and the license of the derived asset (if it has changed) should be provided.
        \item If this information is not available online, the authors are encouraged to reach out to the asset's creators.
    \end{itemize}

\item {\bf New assets}
    \item[] Question: Are new assets introduced in the paper well documented and is the documentation provided alongside the assets?
    \item[] Answer: \answerYes{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
    \item[] Justification: The code used to conduct our experiments is included in the supplementary material.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the paper does not release new assets.
        \item Researchers should communicate the details of the dataset\slash code\slash model as part of their submissions via structured templates. This includes details about training, license, limitations, etc. 
        \item The paper should discuss whether and how consent was obtained from people whose asset is used.
        \item At submission time, remember to anonymize your assets (if applicable). You can either create an anonymized URL or include an anonymized zip file.
    \end{itemize}

\item {\bf Crowdsourcing and research with human subjects}
    \item[] Question: For crowdsourcing experiments and research with human subjects, does the paper include the full text of instructions given to participants and screenshots, if applicable, as well as details about compensation (if any)? 
    \item[] Answer: \answerNA{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
    \item[] Justification: The paper does not involve crowdsourcing or human-subject experiments. 
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the paper does not involve crowdsourcing nor research with human subjects.
        \item Including this information in the supplemental material is fine, but if the main contribution of the paper involves human subjects, then as much detail as possible should be included in the main paper. 
        \item According to the NeurIPS Code of Ethics, workers involved in data collection, curation, or other labor should be paid at least the minimum wage in the country of the data collector. 
    \end{itemize}

\item {\bf Institutional review board (IRB) approvals or equivalent for research with human subjects}
    \item[] Question: Does the paper describe potential risks incurred by study participants, whether such risks were disclosed to the subjects, and whether Institutional Review Board (IRB) approvals (or an equivalent approval/review based on the requirements of your country or institution) were obtained?
    \item[] Answer: \answerNA{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
    \item[] Justification: The paper does not involve human-subject participants.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the paper does not involve crowdsourcing nor research with human subjects.
        \item Depending on the country in which research is conducted, IRB approval (or equivalent) may be required for any human subjects research. If you obtained IRB approval, you should clearly state this in the paper. 
        \item We recognize that the procedures for this may vary significantly between institutions and locations, and we expect authors to adhere to the NeurIPS Code of Ethics and the guidelines for their institution. 
        \item For initial submissions, do not include any information that would break anonymity (if applicable), such as the institution conducting the review.
    \end{itemize}

\item {\bf Declaration of LLM usage}
    \item[] Question: Does the paper describe the usage of LLMs if it is an important, original, or non-standard component of the core methods in this research? Note that if the LLM is used only for writing, editing, or formatting purposes and does \emph{not} impact the core methodology, scientific rigor, or originality of the research, declaration is not required.
    %this research? 
    \item[] Answer: \answerNA{} % Replace by \answerYes{}, \answerNo{}, or \answerNA{}.
    \item[] Justification: LLM is used for manuscript review, wording refinement, and clarity checks.
    \item[] Guidelines:
    \begin{itemize}
        \item The answer \answerNA{} means that the core method development in this research does not involve LLMs as any important, original, or non-standard components.
        \item Please refer to our LLM policy in the NeurIPS handbook for what should or should not be described.
    \end{itemize}

\end{enumerate}
\section{Experiments}
\label{sec:experiment}

% All numbers in Tables~\ref{tab:internal_main} and~\ref{tab:external_main}
% are means over three seeds; per-cell standard deviations are reported in
% Appendix~\ref{app:std-tables} (Tables~\ref{tab:internal_std}
% and~\ref{tab:external_std}).

\paragraph{Benchmarks.}
We evaluate \textsc{MemoRepair} on ToolBench and MemoryArena. \textbf{ToolBench}~\citep{qin2023toolllm}, executed via StableToolBench~\citep{guo2024stabletoolbench}, provides tool-use
trajectories with API calls, cached outputs, and executable procedures.
For parametric repair, we use the released ToolLLaMA-7B LoRA checkpoint
trained on ToolBench data as a ToolBench-derived neural artifact
\citep{toolllama_lora_hf}. \textbf{MemoryArena}~\citep{memoryarena2026} provides long-horizon
memory trajectories with preferences, episodic records, and retrieval
traces.

\textbf{Event and cascade statistics.}
Cascades range from single-tool deletions with a few dependents to
collection-level migrations affecting tens of artifacts, yielding
nondegenerate selection instances. 

% Appendix~\ref{app:dataset-stats}, Table~\ref{tab:cascade-stats}, reports
% per-event ranges for $|F|$, $|C(F)|$, $|D^+(F)|$ and
% event counts.
 

% \textbf{Metrics.}
% \textbf{Leak\%} ($\downarrow$) is the fraction of $C(F)$ still servable
% after repair. \textbf{Stale-use\%} ($\downarrow$) is the fraction of
% post-event actions that depend on invalidated information.
% \textbf{Rep.\%} ($\uparrow$) is the validated publication rate
% $|R_\rho|/|D^+(F)|$, where $\mathrm{Validate}_i$ runs four pass/fail
% checks (schema, task-regression probes, safety, and sandbox replay;
% Appendix~\ref{app:validation-details}); if $D^+(F)=\varnothing$, we
% report Rep.\ $=0$. \emph{Repair all} can have Rep.\ below $100\%$ for
% two reasons: (i)~successors that fail $\mathrm{Validate}_i$ remain
% withdrawn, and (ii)~candidates whose required parents have no
% post-event substitute are statically non-executable
% ($v_i^{(0)}=0$) and contribute to $|D^+(F)|$ without ever being
% attempted (Appendix~\ref{app:memoryarena-cascade-anatomy}).
% \textbf{Cost} ($\downarrow$) is normalized executed repair-operator cost. Appendix~C defines
% each candidate cost $c_i$ by normalizing its raw operator cost against the initially executable
% candidate set $E_0=\{i\in D^+(F) : v_i^{(0)}=1\}$.
% For a completed repair plan, reported Cost sums $c_i$ over repair
% operators actually executed, including candidates that later fail
% validation; the withdrawal barrier itself is not charged.
% \textbf{$\Delta$Task}~($\uparrow$) is the change in mean task-resolution
% rate, in percentage points: each task scores
% $1-(|\text{unresolved}|+\tfrac12|\text{stale}|)/|\text{affected}|$ on its
% affected artifacts (and $1$ if untouched), where unresolved artifacts
% remain in the cascade and stale artifacts remain visible. The two
% sets are not exclusive: under \emph{No action}, descendants are both
% unresolved (no successor) and stale (still served), incurring the
% combined penalty $1+\tfrac12$, whereas under \emph{Remove all} they
% are unresolved but withdrawn, incurring only the unresolved penalty.
% $\Delta$Task is the mean across tasks minus $1$, scaled to percent.
% Negative values indicate degradation. For neural skills, \textbf{FSP\%} measures forget-set suppression success,
% \textbf{RU\%} measures retained utility, and \textbf{Val.\ pass\%} is the
% fraction of parametric successors satisfying both thresholds.

\paragraph{Metrics.}
We report exposure, successor publication, and downstream task effects.
\textbf{Leak\%} ($\downarrow$) is the fraction of affected artifacts in $C(F)$
that remain servable after repair. \textbf{Stale-use\%} ($\downarrow$) is the
fraction of post-event action traces that use invalidated information.
\textbf{Rep.\%} ($\uparrow$) is the validated republication rate over
non-remove repair contracts, micro-averaged over events as
$100\sum_e |R_{\rho,e}|/\sum_e |D^+_e(F)|$. \textbf{Cost} ($\downarrow$)
is normalized executed repair-operator cost, excluding the withdrawal barrier.
\textbf{$\Delta$Task} ($\uparrow$) is a diagnostic task score, reported in
percentage points. For task $t$, let $A_t$ be the affected artifacts used by
the task, $U_t\subseteq A_t$ those without a validated successor, and
$L_t\subseteq A_t$ those whose stale version remains visible. We set $s_t=1$
when $A_t=\emptyset$ and otherwise
$
s_t = 1-\frac{|U_t|+\frac12|L_t|}{|A_t|}.
$
We report $100(\mathbb{E}_t[s_t]-1)$. The sets $U_t$ and $L_t$ may overlap:
\emph{No action} can be penalized for both missing repair and stale serving,
whereas \emph{Remove all} is penalized only for missing repair. For neural
skills, \textbf{FSP\%}, \textbf{RU\%}, and \textbf{Val.\ pass\%} report
forget-set suppression, retained utility, and threshold-passing parametric
successors. 
% Detailed metrics are in
% Appendix~\ref{app:metric-details}.

\paragraph{Baselines.}
\emph{Internal repair policy baselines.}
(i)~\textsc{No action}: the store is left unchanged.
(ii)~\textsc{Remove all}: the affected cascade $C(F)$ is withdrawn,
no successors are republished, and no repair operators are executed.
(iii)~\textsc{Barrier+Greedy}: a selector-ablation control that
shares the withdrawal barrier, candidates, repair operators, and
validation oracle with \textsc{MemoRepair}, replacing only the exact
min-cut selector with a greedy value-to-cost heuristic under the same
$\lambda$. Differences against \textsc{Barrier+Greedy} are therefore
attributable to the selector, not to the contract.
(iv)~\textsc{Repair all}: executes every initially executable repair
candidate and republishes only successors that pass $\mathrm{Validate}_i$.
It therefore defines the publication ceiling rather than a $100\%$ publication
baseline; its Cost is $1.00$ whenever the initially executable set $E_0$ is
nonempty, and $0.00$ otherwise.

\emph{External memory systems baselines.}
We evaluate Mem0~\citep{mem0}, Zep/Graphiti~\citep{zep2025},
MemR$^{3}$~\citep{du2025memr}, TierMem~\citep{tiermem2025},
A-MEM~\citep{xu2025amem}, and O-Mem~\citep{omem2025} under their native
update and retrieval semantics. These systems do not expose cascade withdrawal, successor validation,
or predecessor-closed republication. We use them as stale-resistance reference points, measuring how much
invalidated content their native pipelines serve or retrieve after an
event on the same traces. 

\emph{Neural-skill operators.}
For the $\mathsf{param}$ repair mode, we compare adapted
SBU~\citep{wang2026agenticunlearning} and six parameter-level
operators (NPO~\citep{zhang2024npo}, SimNPO~\citep{simnpo2024},
BLUR~\citep{blur2026}, RMU~\citep{rmu2024}, LUNE~\citep{lune2025}, and
OOO~\citep{ooo2024}) inside the same \textsc{MemoRepair} pipeline,
using the same provenance-derived
$(\mathsf{For}_i(e),\mathsf{Ref}_i(e))$ partitions and validation oracle.




\subsection{Repair Policy Comparison}
\label{subsec:repair-policy}

Table~\ref{tab:internal_main} reports repair-policy comparisons on
ToolBench and MemoryArena. Under complete influence provenance, every
artifact in $C(F)$ becomes non-servable once the withdrawal barrier is
acknowledged, so zero Leak and Stale-use are contract guarantees for
all withdrawal-based methods. The empirical question reduces to
whether validated successor publication recovers task utility at lower
repair-operator cost than exhaustive repair. \emph{Remove all} isolates
the barrier by withdrawing the cascade without invoking any repair
operator, yielding Rep.\ $=$ Cost $=0$. \emph{Repair all} establishes
the publication ceiling: it attempts every initially executable
candidate and republishes only successors that pass $\mathrm{Validate}_i$.
\textsc{MemoRepair} and \textsc{Barrier+Greedy} share the barrier,
candidate construction, operators, and validation oracle, and differ
only in the publication selector. 

% Per-cell mean$\pm$std over three
% random seeds is reported in Table~\ref{tab:internal_std}.

On ToolBench, \textsc{MemoRepair} republishes $22.4\%$, $45.1\%$, and
$36.5\%$ of $D^+(F)$ under deletion, correction, and migration
respectively, recovering $91.1$--$94.3\%$ of the \emph{Repair all}
Rep.\ ceiling at Cost between $0.57$ and $0.66$. Its $\Delta$Task lies
within $0.08$ task points of \emph{Repair all} on all three event
types. On MemoryArena, deletion leaves fewer repairable descendants.
Deterministic record and final-answer descendants usually require the
deleted parent as input, so they become structurally non-executable
once that parent is withdrawn. Skill descendants can still be repaired
by the parametric repair operator, which removes the deleted support
from the skill's retained reference set rather than recomputing from
the deleted parent.

% (Appendix~\ref{app:memoryarena-cascade-anatomy}). 

The
resulting Rep.\ ceiling is $5.5\%$, of which \textsc{MemoRepair}
attains $5.1\%$ at Cost $0.62$, with $\Delta$Task within $0.05$ task
points of \emph{Repair all}. Correction and migration admit larger
repair surfaces: \textsc{MemoRepair} republishes $33.1\%$ and $17.0\%$
of $D^+(F)$ at Cost $0.76$ and $0.64$ respectively, again within
$0.07$ task points of the \emph{Repair all} ceiling.



\begin{table*}[!ht]
  \centering\small
  \setlength{\tabcolsep}{2pt}
  \begin{tabular}{l@{\hskip 2pt}rrrrr@{\hskip 4pt}rrrrr@{\hskip 4pt}rrrrr}
  \toprule
  \multirow{2}{*}{\textbf{Method}} &
  \multicolumn{5}{c}{\textbf{Deletion}} &
  \multicolumn{5}{c}{\textbf{Correction}} &
  \multicolumn{5}{c}{\textbf{Migration}} \\
  \cmidrule(lr){2-6}
  \cmidrule(lr){7-11}
  \cmidrule(lr){12-16}
  & Leak & Stale & Rep. & Cost & $\Delta$Task
  & Leak & Stale & Rep. & Cost & $\Delta$Task
  & Leak & Stale & Rep. & Cost & $\Delta$Task \\
  \midrule
  \multicolumn{16}{c}{\textbf{\textit{ToolBench}}} \\
  \midrule
  No action
  & 100 & 100 & -- & -- & $\text{-}2.78$
  & 100 & 100 & -- & -- & $\text{-}2.78$
  & 100 & 100 & -- & -- & $\text{-}5.61$ \\
  \rowcolor{gray!12} Remove all
  & 0 & 0 & 0.0 & 0.00 & $\text{-}1.96$
  & 0 & 0 & 0.0 & 0.00 & $\text{-}1.96$
  & 0 & 0 & 0.0 & 0.00 & $\text{-}4.47$ \\
  Repair all
  & 0 & 0 & \underline{\textbf{24.6}} & 1.00 & $\underline{\mathbf{\text{-}1.54}}$
  & 0 & 0 & \underline{\textbf{48.8}} & 1.00 & $\underline{\mathbf{\text{-}1.05}}$
  & 0 & 0 & \underline{\textbf{38.7}} & 1.00 & $\underline{\mathbf{\text{-}2.98}}$ \\
  \rowcolor{gray!12} Barrier+Greedy
  & 0 & 0 & 20.3 & 0.72 & $\text{-}1.68$
  & 0 & 0 & 41.2 & 0.62 & $\text{-}1.20$
  & 0 & 0 & 31.4 & 0.76 & $\text{-}3.28$ \\
  \rowcolor{blue!10} \textsc{MemoRepair}
  & 0 & 0 & 22.4 & \underline{\textbf{0.61}} & $\text{-}1.60$
  & 0 & 0 & 45.1 & \underline{\textbf{0.57}} & $\text{-}1.11$
  & 0 & 0 & 36.5 & \underline{\textbf{0.66}} & $\text{-}3.06$ \\
  \midrule
  \multicolumn{16}{c}{\textbf{\textit{MemoryArena}}} \\
  \midrule
  No action
  & 100 & 100 & -- & -- & $\text{-}4.44$
  & 100 & 100 & -- & -- & $\text{-}4.44$
  & 100 & 100 & -- & -- & $\text{-}3.86$ \\
  \rowcolor{gray!12} Remove all
  & 0 & 0 & 0.0 & 0.00 & $\text{-}4.00$
  & 0 & 0 & 0.0 & 0.00 & $\text{-}4.00$
  & 0 & 0 & 0.0 & 0.00 & $\text{-}3.58$ \\
  Repair all
  & 0 & 0 & \underline{\textbf{5.5}} & 1.00 & $\underline{\mathbf{\text{-}3.74}}$
  & 0 & 0 & \underline{\textbf{35.6}} & 1.00 & $\underline{\mathbf{\text{-}2.91}}$
  & 0 & 0 & \underline{\textbf{18.4}} & 1.00 & $\underline{\mathbf{\text{-}3.18}}$ \\
  \rowcolor{gray!12} Barrier+Greedy
  & 0 & 0 & 4.2 & 0.70 & $\text{-}3.90$
  & 0 & 0 & 28.6 & 0.83 & $\text{-}3.17$
  & 0 & 0 & 14.2 & 0.71 & $\text{-}3.34$ \\
  \rowcolor{blue!10} \textsc{MemoRepair}
  & 0 & 0 & 5.1 & \underline{\textbf{0.62}} & $\text{-}3.79$
  & 0 & 0 & 33.1 & \underline{\textbf{0.76}} & $\text{-}2.98$
  & 0 & 0 & 17.0 & \underline{\textbf{0.64}} & $\text{-}3.23$ \\
  \bottomrule
  \end{tabular}
  % \caption{Comparison with internal baselines.}
    % \caption{Internal repair policy comparison. Rep.\ is validated
    % publication rate, not attempted repair rate; \emph{Repair all} can have
    % Rep.\ below $100\%$ when attempted successors fail validation. Cost is
    % normalized repair-operator cost and excludes the mandatory withdrawal
    % barrier. \textsc{Barrier+Greedy} differs from \textsc{MemoRepair} only in
    % the selector.}
    \caption{Internal repair policy comparison on ToolBench and
MemoryArena. Underlines mark the column best among methods that
produce validated repairs.}
  \label{tab:internal_main}
  \end{table*}


\textbf{Selector frontier.}
Figure~\ref{fig:mincut_pareto} traces the repair--cost frontier obtained
by sweeping $\lambda$ in the scalarized min-cut selector on ToolBench
across deletion, correction, and migration. Each curve reports the
mean over three seeds, with shaded bands and horizontal caps showing
$\pm 1$ std on Rep and Cost respectively. The endpoints recover
\emph{Remove all} at $\lambda \to \infty$ and \emph{Repair all} at
$\lambda = 0$, and increasing $\lambda$ shifts the operating point
toward lower cost and lower validated publication. The configuration
used in Table~\ref{tab:internal_main} fixes $\lambda = 0.3$, which
sits at the knee of all three curves: the marginal slope
$\Delta\mathrm{Rep}/\Delta\mathrm{Cost}$ falls by a factor of four to
seven past this point while still recovering $91.1$--$94.3\%$ of the
\emph{Repair all} ceiling at Cost between $0.57$ and $0.66$.




% \subsection{Native Memory System Comparison}
% \label{subsec:native-memory}

% Table~\ref{tab:external_main} evaluates six cascade-unaware memory
% systems under their native update and retrieval semantics, indicating that retrieval freshness alone does not provide withdrawal and validated successor semantics. We therefore
% use them as stale-resistance reference points. In the table, $0$ in Rep.\ means that the system performs no validated successor-publication operation; it is not a failed repair
% attempt. Cost is undefined for
% these systems because they do not optimize or execute the repair
% operators associated with the $c_i$ terms in our selector.

% Across ToolBench and MemoryArena, native systems reduce some exposure
% relative to \emph{No action}, but many stale descendants remain servable. On ToolBench, they leave $69.8$--$94.0\%$ of the affected
% cascade leakable and $92.4$--$99.7\%$ of post-event actions stale. On
% MemoryArena, the corresponding ranges are $73.9$--$94.3\%$ and
% $93.2$--$99.6\%$. Their $\Delta$Task remains close to \emph{No action}
% (within $0.24$ points on ToolBench and $0.37$ points on MemoryArena),
% indicating that retrieval freshness alone does not provide withdrawal
% and validated successor semantics. The \textsc{MemoRepair} row is included only to anchor the same metrics under explicit cascade repair and complete provenance.

\subsection{Cascade-Unaware Memory System Comparison}
\label{subsec:native-memory}

Table~\ref{tab:external_main} evaluates six external memory systems
under their own update and retrieval semantics. These systems are
cascade-unaware: none of them implements withdrawal barriers,
validated successor publication, or predecessor-closed repair
selection. They therefore serve as stale-resistance reference points
rather than repair-policy baselines. A value of $0$ in Rep.\ indicates
that the system performs no validated successor-publication operation
rather than a failed repair attempt; Cost is undefined because these
systems do not execute the repair operators associated with the $c_i$
terms in our selector.

Across ToolBench and MemoryArena the six systems reduce exposure
relative to \emph{No action}, yet a large fraction of stale
descendants remains servable. On ToolBench they leave $69.8\%$ to
$93.1\%$ of the affected cascade leakable and $92.4\%$ to $99.7\%$ of
post-event actions stale; on MemoryArena the corresponding ranges
are $73.9\%$ to $94.3\%$ and $93.2\%$ to $99.6\%$. The associated
$\Delta$Task remains within $0.24$ points of \emph{No action} on
ToolBench and within $0.37$ points on MemoryArena, indicating that
retrieval freshness alone does not provide withdrawal or validated
successor semantics. The \textsc{MemoRepair} row is included as an explicit cascade-repair
reference under complete influence provenance. 

% Per-cell mean$\pm$std over three seeds is reported in Table~\ref{tab:external_std}.


\begin{table*}[htbp]
  \centering\small
  \setlength{\tabcolsep}{2pt}
  \begin{tabular}{l@{\hskip 2pt}rrrrr@{\hskip 4pt}rrrrr@{\hskip 4pt}rrrrr}
  \toprule
  \multirow{2}{*}{\textbf{System}} &
  \multicolumn{5}{c}{\textbf{Deletion}} &
  \multicolumn{5}{c}{\textbf{Correction}} &
  \multicolumn{5}{c}{\textbf{Migration}} \\
  \cmidrule(lr){2-6}
  \cmidrule(lr){7-11}
  \cmidrule(lr){12-16}
  & Leak & Stale & Rep. & Cost & $\Delta$Task
  & Leak & Stale & Rep. & Cost & $\Delta$Task
  & Leak & Stale & Rep. & Cost & $\Delta$Task \\
  \midrule
  \multicolumn{16}{c}{\textbf{\textit{ToolBench}}} \\
  \midrule
  No action
  & 100 & 100 & -- & -- & $\text{-}2.78$
  & 100 & 100 & -- & -- & $\text{-}2.78$
  & 100 & 100 & -- & -- & $\text{-}5.61$ \\
  \rowcolor{gray!12} Mem0
  & 74.6 & 93.8 & 0 & -- & $\text{-}2.61$
  & 80.2 & 95.6 & 0 & -- & $\text{-}2.66$
  & 91.3 & 98.9 & 0 & -- & $\text{-}5.46$ \\
  Zep/Graphiti
  & 69.8 & 92.4 & 0 & -- & $\text{-}2.54$
  & 76.5 & 94.1 & 0 & -- & $\text{-}2.59$
  & 89.1 & 98.4 & 0 & -- & $\text{-}5.39$ \\
  \rowcolor{gray!12} MemR$^{3}$
  & 85.2 & 98.6 & 0 & -- & $\text{-}2.72$
  & 87.4 & 98.9 & 0 & -- & $\text{-}2.74$
  & 92.6 & 99.6 & 0 & -- & $\text{-}5.48$ \\
  A-MEM
  & 72.1 & 92.7 & 0 & -- & $\text{-}2.56$
  & 79.4 & 95.0 & 0 & -- & $\text{-}2.63$
  & 90.6 & 98.7 & 0 & -- & $\text{-}5.42$ \\
  \rowcolor{gray!12} O-Mem
  & 88.7 & 99.4 & 0 & -- & $\text{-}2.73$
  & 88.9 & 99.6 & 0 & -- & $\text{-}2.74$
  & 93.1 & 99.7 & 0 & -- & $\text{-}5.51$ \\
  TierMem
  & 88.4 & 99.2 & 0 & -- & $\text{-}2.72$
  & 88.6 & 99.5 & 0 & -- & $\text{-}2.74$
  & 93.0 & 99.7 & 0 & -- & $\text{-}5.50$ \\
  \rowcolor{blue!10} \textsc{MemoRepair}
  & 0 & 0 & 22.4 & 0.61 & $\underline{\mathbf{\text{-}1.60}}$
  & 0 & 0 & 45.1 & 0.57 & $\underline{\mathbf{\text{-}1.11}}$
  & 0 & 0 & 36.5 & 0.66 & $\underline{\mathbf{\text{-}3.06}}$ \\
  \midrule
  \multicolumn{16}{c}{\textbf{\textit{MemoryArena}}} \\
  \midrule
  No action
  & 100 & 100 & -- & -- & $\text{-}4.44$
  & 100 & 100 & -- & -- & $\text{-}4.44$
  & 100 & 100 & -- & -- & $\text{-}3.86$ \\
  \rowcolor{gray!12} Mem0
  & 78.6 & 94.8 & 0 & -- & $\text{-}4.31$
  & 82.4 & 96.1 & 0 & -- & $\text{-}4.18$
  & 91.7 & 98.0 & 0 & -- & $\text{-}3.72$ \\
  Zep/Graphiti
  & 73.9 & 93.2 & 0 & -- & $\text{-}4.25$
  & 78.1 & 94.6 & 0 & -- & $\text{-}4.07$
  & 88.4 & 97.3 & 0 & -- & $\text{-}3.65$ \\
  \rowcolor{gray!12} MemR$^{3}$
  & 86.7 & 98.3 & 0 & -- & $\text{-}4.39$
  & 88.2 & 98.7 & 0 & -- & $\text{-}4.31$
  & 93.5 & 99.1 & 0 & -- & $\text{-}3.79$ \\
  A-MEM
  & 75.4 & 93.6 & 0 & -- & $\text{-}4.27$
  & 80.3 & 95.2 & 0 & -- & $\text{-}4.12$
  & 90.5 & 97.6 & 0 & -- & $\text{-}3.68$ \\
  \rowcolor{gray!12} O-Mem
  & 89.6 & 99.5 & 0 & -- & $\text{-}4.42$
  & 90.1 & 99.6 & 0 & -- & $\text{-}4.36$
  & 94.3 & 99.5 & 0 & -- & $\text{-}3.83$ \\
  TierMem
  & 89.2 & 99.3 & 0 & -- & $\text{-}4.41$
  & 89.8 & 99.5 & 0 & -- & $\text{-}4.35$
  & 93.9 & 99.4 & 0 & -- & $\text{-}3.82$ \\
  \rowcolor{blue!10} \textsc{MemoRepair}
  & 0 & 0 & 5.1 & 0.62 & $\underline{\mathbf{\text{-}3.79}}$
  & 0 & 0 & 33.1 & 0.76 & $\underline{\mathbf{\text{-}2.98}}$
  & 0 & 0 & 17.0 & 0.64 & $\underline{\mathbf{\text{-}3.23}}$ \\
  \bottomrule
  \end{tabular}
\caption{Stale-resistance comparison with memory systems without cascade
repair. For external systems, Rep.\ $=0$ means no validated successor
publication and Cost is undefined; \textsc{MemoRepair} is included only as a
cascade repair reference.}
  \label{tab:external_main}
\end{table*}


\subsection{Parametric Repair}
\label{subsec:neural}

Figure~\ref{fig:parametric_pipeline} ablates the two repair levels.
Without repair, the LoRA checkpoint has $\text{Stale}=100$,
$\text{FSP}=8.7$, and $\Delta\text{Task}=-7.42$, indicating both
visible stale serving and parametric persistence of invalidated
support. Param-only LUNE raises FSP to $85.7$ and recovers
$\Delta\text{Task}$ to $-3.00$, but leaves Stale at $83.4$ because
materialized descendants remain visible. Cascade-only
\textsc{MemoRepair} drives Stale to $0$ at $\Delta\text{Task}=-5.22$,
yet leaves FSP near baseline at $12.5$ because model weights are not
updated. The two repair levels fix different failure modes: parameter-side
repair reduces stale influence inside the neural skill, while
cascade-side repair prevents stale materialized artifacts from
remaining visible. Composing them reaches $\text{Stale}=0$,
$\text{FSP}=86.4$, and $\Delta\text{Task}=-1.86$, improving
$\Delta\text{Task}$ by $5.56$ points over no repair and by $1.14$
and $3.36$ points over LUNE only and cascade only respectively. The
composed run is costed as a single pipeline, so shared replay or
sandbox work is charged once; its Cost is $0.74$, below the
independent-run sum $0.42+0.38=0.80$.


\begin{figure*}[htbp]
    \centering
    \includegraphics[width=\linewidth]{figures/pipeline_ablation.pdf}
    \caption{Parametric-repair pipeline ablation on the ToolBench neural-skill subset.}
    \label{fig:parametric_pipeline}
\end{figure*}

Table~\ref{tab:parametric_operators} compares parameter-level operators
inside the same \textsc{MemoRepair} pipeline. All operators use the same
$(\mathsf{For}_i(e),\mathsf{Ref}_i(e))$ partitions and validation oracle.
Full retraining reaches $\text{FSP}=91.8$ and
$\text{Val.\,pass}=92.5$ at $8.4\times$ relative compute, serving as a
high-compute quality ceiling. Among practical operators, LUNE gives
the best observed compute--quality tradeoff: it has the highest RU
($93.4$) and Val.\ pass ($84.9$), while BLUR attains the highest FSP
($88.2$) at $3.7\times$ relative compute. NPO, SimNPO, and RMU trail
in this setting ($\text{FSP}<82$, $\text{Val.\,pass}<76$). We use
LUNE as the default $\mathsf{param}$ operator in \textsc{MemoRepair};
BLUR is a higher-compute alternative when maximizing FSP is the
priority.

\begin{figure*}[htbp]
\centering
\begin{minipage}[l]{0.5\linewidth}
\centering\small
\setlength{\tabcolsep}{3.2pt}
\begin{tabular}{lcccc}
\toprule
\textbf{Operator} &
\textbf{FSP\%}$\uparrow$ &
\textbf{RU\%}$\uparrow$ &
\textbf{Val.\,pass\%}$\uparrow$ &
\textbf{Rel.\,comp.}$\downarrow$ \\
\midrule
Full retrain
  & 91.8 & 96.2 & 92.5 & $8.4\times$ \\
SBU    & 86.9 & 92.8 & 83.6 & $1.8\times$ \\
NPO    & 81.7 & 88.9 & 72.4 & $1.3\times$ \\
SimNPO & 80.4 & 90.7 & 75.8 & $1.2\times$ \\
RMU    & 78.9 & 91.1 & 71.6 & $1.5\times$ \\
BLUR   & \underline{\textbf{88.2}} & 91.9 & 82.1 & $3.7\times$ \\
LUNE   & 86.4 & \underline{\textbf{93.4}} & \underline{\textbf{84.9}} & $\underline{\mathbf{1.0\times}}$ \\
OOO    & 87.4 & 92.5 & 83.2 & $1.4\times$ \\
\bottomrule
\end{tabular}
\captionof{table}{Parameter-level repair operators inside
\textsc{MemoRepair}. Full retrain uses retained support
$\mathsf{Ref}_i(e)$. Rel.\ comp.\ is wall-clock compute normalized to LUNE,
not the Cost metric.}
\label{tab:parametric_operators}
\end{minipage}\hfill
\begin{minipage}[c]{0.45\linewidth}
\centering
\includegraphics[width=\linewidth]{figures/fig1_pareto.pdf}
\captionof{figure}{Min-cut repair--cost frontier on ToolBench, traced by sweeping $\lambda$.}
\label{fig:mincut_pareto}
\end{minipage}
\end{figure*}





\subsection{Ablations and Robustness}
\label{subsec:ablations_robustness}

% \textbf{Provenance assumption.}
% \textsc{MemoRepair}'s contract guarantees ($\textsc{Leak}=0$ and
% validated republication) hold under \emph{complete influence
% provenance}. The $p_{\mathrm{drop}}$ rows of
% Table~\ref{tab:ablations} quantify the resulting graceful
% degradation under lossy logs: the leak rate is approximately linear
% in the missing-edge fraction up to $p_{\mathrm{drop}}\le 0.02$. We
% therefore position complete provenance as a system-level invariant,
% analogous to write-ahead logging in databases, rather than a free
% assumption: deployers who satisfy it inherit our guarantees, and
% deployers who do not get a quantified, monotone degradation rather
% than silent failure.

\begin{table}[!ht]
\centering\small
\setlength{\tabcolsep}{3.4pt}
\begin{tabular}{llccc}
\toprule
\textbf{Type} & \textbf{Setting} &
\textbf{Leak\%}$\downarrow$ &
\textbf{Stale-use\%}$\downarrow$ &
\textbf{Repair time rel.} \\
\midrule
\multirow{2}{*}{Withdrawal}
& No barrier
  & 100.0 & 100.0 & $0.52\times$ \\
& \textbf{\textsc{MemoRepair}}
  & \underline{\textbf{0.0}} & \underline{\textbf{0.0}} & $1.00\times$ \\
\midrule
\multirow{3}{*}{Validation}
& Schema-only
  & 0.0 & 88.6 & -- \\
& Task-regression-only
  & 0.0 & 29.8 & -- \\
& \textbf{Full $\mathrm{Validate}_i$}
  & \underline{\textbf{0.0}} & \underline{\textbf{0.0}} & -- \\
\midrule
\multirow{4}{*}{Provenance}
& $p_{\mathrm{drop}}=0.005$
  &  8.6 &  9.4 & -- \\
& $p_{\mathrm{drop}}=0.010$
  & 17.7 & 19.7 & -- \\
& $p_{\mathrm{drop}}=0.020$
  & 34.2 & 38.0 & -- \\
& $p_{\mathrm{drop}}=0.050$
  & 61.8 & 68.5 & -- \\
\midrule
Concurrency
& Overlapping events
  & 0.0 & 0.0 & $1.86\times$ \\
Replica
& Partition + rejoin
  & 0.0 & 0.0 & $1.12\times$ \\
\bottomrule
\end{tabular}
\caption{Component ablations and robustness checks. Withdrawal rows
report repair-interval exposure (not directly comparable to the
post-repair Leak/Stale in
Tables~\ref{tab:internal_main}--\ref{tab:external_main}); Validation
rows report the oracle's false-pass rate in the Stale-use column.
Provenance, Concurrency, and Replica share the \textsc{MemoRepair}
baseline.}
\label{tab:ablations}
\end{table}

Table~\ref{tab:ablations} reports component ablations and robustness
checks. The withdrawal barrier trades a $0.52\times$ time saving for
zero stale exposure during repair: removing it leaves the cascade
servable throughout ($\text{Leak}=\text{Stale}=100$), an
availability/correctness choice that no barrier-free design can
avoid. The validation ablation isolates two failure modes:
schema-only and task-regression-only validation each miss what the
other catches ($88.6\%$ and $29.8\%$ stale-use), and only the
composed oracle reaches zero. Provenance fidelity is leveraged:
dropping $1\%$ of influence edges yields $17.7\%$ Leak ($\approx
18\times$ amplification), a graceful linear degradation that
identifies complete influence provenance as the main system-level
invariant behind the contract guarantee. Overlapping events and
partition+rejoin add $1.86\times$ and $1.12\times$ repair time while
preserving $\text{Leak}=\text{Stale}=0$.






% TODO (#1, requires re-running): add a Barrier+Greedy row to
% tab:internal_main. Greedy = pick the candidate with highest
% w_i/c_i, predecessor-closed, until budget B is exhausted; uses the
% same withdrawal barrier and validation oracle as MemoRepair, only
% the selection rule differs. This row is the critical experimental
% witness that the min-cut selector is doing real work over greedy.
%
% TODO (#3, requires re-running with multiple seeds): add ± std (or
% 95% CI) to every numeric cell in tab:internal_main and
% tab:external_main, and add a footnote stating "n=3 seeds, mean ± std"
% (or whatever seed count is used).


% \textbf{Metrics.}
% \textbf{Leak\%}: fraction of $C(F)$ still servable post-repair
% ($\downarrow$).
% \textbf{Stale-use\%}: fraction of post-event actions that depend on
% invalidated information ($\downarrow$).
% \textbf{Rep.\%} ($\uparrow$): cardinality-based completion rate
% $|S_\rho|/|D^{+}(F)|$, i.e.\ the fraction of repairable descendants
% republished as validated successors. This is an evaluation metric and
% does not depend on the value weights $w_i$ used internally by the
% §\ref{subsec:cost-aware-repair} selector.
% \textbf{Bud.} ($\downarrow$): normalized cost
% $\mathrm{Cost}(x)/\mathrm{Cost}(\mathbf{v})
% =\bigl(\sum_{i\in S_\rho} c_i\bigr)/\bigl(\sum_{i:v_i=1} c_i\bigr)$,
% i.e.\ the §\ref{subsec:cost-aware-repair} cost evaluated at the
% selected set $S_\rho$ and normalized by the cost of selecting every
% executable candidate (\emph{Repair all}, $\mathrm{Bud.}=1.00$).
% \textbf{$\Delta$-task\%}: downstream task performance relative to the
% pre-event system ($\uparrow$).
% For neural skills we additionally report forget-set success
% (\textbf{FSP\%}, accuracy on invalidated inputs, $\uparrow$) and
% retained utility (\textbf{RU\%}, accuracy on unaffected inputs,
% $\uparrow$).

% \textbf{Baselines.}
% \emph{Internal baselines.}
% (i)~\emph{No action}: the store is left unchanged. (ii)~\emph{Remove all}: all affected descendants are permanently deleted. (iii)~\emph{Repair all}: every repairable descendant is
% repaired at cost~$1.00$.
% %
% \emph{Stale-resistance reference points.}
% Mem0~\citep{mem0}, Zep/Graphiti~\citep{zep2025}, MemR$^{3}$~\citep{du2025memr}, TierMem~\citep{tiermem2025}, A-MEM~\citep{xu2025amem}, and O-Mem~\citep{omem2025} are not designed for cascade repair: they expose neither a withdrawal primitive nor a per-artifact validation oracle. We include them not as direct repair baselines but as \emph{stale-resistance reference points}, i.e.\ to measure how much invalidated content their native update and retrieval pipelines surface after an event. This isolates the cost of \emph{lacking} cascade-aware repair under otherwise identical inputs and removes the apples-to-oranges interpretation that would arise from treating them as drop-in replacements for \textsc{MemoRepair}.
%
% % ----------------------------------------------------------------
% \subsection{ToolBench Results}
% \label{subsec:toolbench}

% Table~\ref{tab:internal_main} (top block) reports the internal comparison on ToolBench. The three withdrawal-based methods (\emph{Remove all}, \emph{Repair all}, and \textsc{MemoRepair}) all eliminate post-event leakage on every event ($\text{Leak}=\text{Stale}=0$), so the comparison reduces to how much validated repair each method recovers and at what cost. \emph{Remove all} captures only the withdrawal benefit, improving $\Delta$Task by $0.82$--$1.14$ points over \emph{No action} without republishing any descendants. \emph{Repair all} sets the publication ceiling at unit budget, republishing $24.6/48.8/38.7\%$ of $D^{+}(F)$ on deletion / correction / migration with $\Delta$Task reaching $\text{-}1.54/\text{-}1.05/\text{-}2.98$; the ceiling stays well below $100\%$ because the shared $\mathrm{Validate}_i$ oracle rejects schema- or regression-incompatible candidates that no operator can recover. \textsc{MemoRepair} attains $91$--$94\%$ of this ceiling on Rep.\ ($22.4/45.1/36.5\%$) and matches \emph{Repair all}'s $\Delta$Task within $0.08$ points on every event, while paying only $0.57$--$0.66$ of the full repair budget --- a $34$--$43\%$ cost reduction at near-equivalent recovery quality.



% \caption{ToolBench results.}
% \end{table*}

% \begin{table}[!ht]
% \centering\small
% \setlength{\tabcolsep}{3.2pt}
% \begin{tabular}{llccccc}
% \toprule
% \textbf{Event} & \textbf{Method} &
% \textbf{Leak\%}$\downarrow$ &
% \textbf{Stale-use\%}$\downarrow$ &
% \textbf{Repair\%}$\uparrow$ &
% \textbf{Budget}$\downarrow$ &
% \textbf{$\Delta$-task\%} \\
% \midrule
% \multirow{4}{*}{Deletion}
% & No action                    & 100.0 & 100.0 & --    & --   & $-4.00$ \\
% & Remove all       &   0.0 &   0.0 &   0.0 & 0.00 & $-3.54$ \\
% & Repair all       &   0.0 &   0.0 &  32.4 & 1.00 & $-2.19$ \\
% & \textbf{\textsc{MemoRepair}} &   0.0 &   0.0 &  31.0 & 0.81 & $-2.27$ \\
% \midrule
% \multirow{4}{*}{Correction}
% & No action                    & 100.0 & 100.0 & --    & --   & $-4.00$ \\
% & Remove all       &   0.0 &   0.0 &   0.0 & 0.00 & $-3.54$ \\
% & Repair all       &   0.0 &   0.0 &  32.4 & 1.00 & $-2.19$ \\
% & \textbf{\textsc{MemoRepair}} &   0.0 &   0.0 &  31.0 & 0.81 & $-2.27$ \\
% \midrule
% \multirow{4}{*}{Migration}
% & No action                    & 100.0 & 100.0 & --    & --   & $-4.00$ \\
% & Remove all       &   0.0 &   0.0 &   0.0 & 0.00 & $-3.78$ \\
% & Repair all       &   0.0 &   0.0 &   3.6 & 1.00 & $-3.65$ \\
% & \textbf{\textsc{MemoRepair}} &   0.0 &   0.0 &   3.6 & 1.00 & $-3.65$ \\
% \bottomrule
% \end{tabular}
% \caption{ToolBench results using StableToolBench. Migration is
% ToolBench-only because it requires API schema or endpoint changes.}
% \label{tab:toolbench_main}
% \end{table}

% Table~\ref{tab:external_main} (top block) reports the stale-resistance reference points on ToolBench: it quantifies how much invalidated content surfaces in six external memory systems whose native update and retrieval pipelines do not include a withdrawal barrier or a per-artifact validation oracle. The intent is not a head-to-head repair comparison --- these systems are not designed for cascade repair --- but to isolate the cost of \emph{lacking} cascade-aware repair under otherwise identical inputs. Rep.\ stays at $0$ across all six systems and all three event types: deletions do not propagate into the indexed memory state, and retrieval continues to surface stale records, leaving $69.8$--$94.0\%$ of the cascade leakable and $92.4$--$99.7\%$ of post-event actions dependent on invalidated information. The downstream effect is that every external system clusters within $0.20$ points of \emph{No action} on $\Delta$Task, with the spread determined by retrieval policy rather than by architectural choice (graph-structured, vector, hierarchical, or reflective). \textsc{MemoRepair}, included in the bottom row only as a reference point on the same scale, eliminates leak and stale entirely while recovering $22.4/45.1/36.5\%$ of the cascade.





% % ----------------------------------------------------------------
% \subsection{Ablations and Robustness}
% \label{subsec:ablations_robustness}

% Table~\ref{tab:ablations} consolidates component ablations and robustness checks. Removing the \emph{withdrawal barrier} leaves the entire cascade visible during repair ($\text{Leak}=\text{Stale}=100$) at $0.52\times$ the cost of the full pipeline --- a constant-factor latency saving paid for in correctness. Within validation, schema-only and regression-only checks each individually admit $88.6\%$ and $29.8\%$ of behaviorally invalid candidates; their composition reaches $0$, so the two checks are complementary. Provenance fidelity is a hard requirement: dropping just $1\%$ of provenance edges already yields $\sim\!18\%$ Leak (amplification $\approx 1.7{\times}10^{3}$ at small $\rho$). Concurrent overlapping events ($1.86\times$) and replica partition--rejoin ($1.12\times$) add latency but preserve $\text{Leak}=\text{Stale}=0$, so distributed-execution costs manifest as time overhead rather than as correctness loss. Validation rows are ToolBench-only as they require API or tool-interface drift.




% \begin{table}[!ht]
% \centering\small
% \setlength{\tabcolsep}{3.1pt}
% \begin{tabular}{llccccc}
% \toprule
% \textbf{Event} & \textbf{System} &
% \textbf{Leak\%}$\downarrow$ &
% \textbf{Stale-use\%}$\downarrow$ &
% \textbf{Repair\%}$\uparrow$ &
% \textbf{Budget}$\downarrow$ &
% \textbf{$\Delta$-task\%} \\
% \midrule
% \multirow{8}{*}{Deletion}
% & No action                                 & 100.0 & 100.0 & --    & --   & $-4.00$ \\
% & Mem0~\citep{mem0}                          & --    & --    & --    & --   & --      \\
% & Zep/Graphiti~\citep{zep2025}               & --    & --    & --    & --   & --      \\
% & MemR\textsuperscript{3}~\citep{du2025memr} & --    & --    & --    & --   & --      \\
% & A-MEM~\citep{xu2025amem}                   & --    & --    & --    & --   & --      \\
% & O-Mem~\citep{omem2025}                     &  89.9 & 100.0 &   0.0 & --   & $-4.00$ \\
% & TierMem~\citep{tiermem2025}                &  89.9 & 100.0 &   0.0 & --   & $-4.00$ \\
% & \textbf{\textsc{MemoRepair}}              &   0.0 &   0.0 &  31.0 & 0.21 & $-2.27$ \\
% \midrule
% \multirow{8}{*}{Correction}
% & No action                                 & 100.0 & 100.0 & --    & --   & $-4.00$ \\
% & Mem0~\citep{mem0}                          & --    & --    & --    & --   & --      \\
% & Zep/Graphiti~\citep{zep2025}               & --    & --    & --    & --   & --      \\
% & MemR\textsuperscript{3}~\citep{du2025memr} & --    & --    & --    & --   & --      \\
% & A-MEM~\citep{xu2025amem}                   & --    & --    & --    & --   & --      \\
% & O-Mem~\citep{omem2025}                     &  89.9 & 100.0 &   0.0 & --   & $-5.30$ \\
% & TierMem~\citep{tiermem2025}                &  89.9 & 100.0 &   0.0 & --   & $-5.30$ \\
% & \textbf{\textsc{MemoRepair}}              &   0.0 &   0.0 &  31.0 & 0.21 & $-3.01$ \\
% \bottomrule
% \end{tabular}
% \caption{ToolBench results against external agentic-memory systems.}
% \label{tab:toolbench_external}
% \end{table}

% \clearpage
% \newpage

% ----------------------------------------------------------------
% \subsection{MemoryArena Results}
% \label{subsec:memoryarena}

% Table~\ref{tab:internal_main} (bottom block) repeats the internal comparison on MemoryArena. Cascades here are dominated by retained preference, planning, and episodic records --- artifacts whose source content cannot be regenerated by \emph{recompute} or \emph{regen} once the originating input is deleted. As a result, deletion exposes no repairable descendants and the three withdrawal-based methods collapse onto the same operating point ($\text{Leak}=\text{Stale}=\text{Rep.}=0$, $\Delta$Task $=\text{-}4.00$ vs.\ \emph{No action}'s $\text{-}4.44$). Correction and migration do expose repairable descendants, and the cost-quality pattern mirrors ToolBench: \textsc{MemoRepair} recovers $33.1\%$ of $D^{+}(F)$ under correction ($93\%$ of \emph{Repair all}'s $35.6\%$) at $0.76$ budget, and $17.0\%$ under migration ($92\%$ of \emph{Repair all}'s $18.4\%$) at $0.64$ budget, with $\Delta$Task in both cases within $0.07$ points of the \emph{Repair all} ceiling. The repeatability of the $24$--$36\%$ cost saving across two heterogeneous benchmarks suggests that the budget advantage of cascade-aware repair selection is not specific to a single dataset.

% Table~\ref{tab:external_main} (bottom block) repeats the stale-resistance reference points on MemoryArena. The qualitative picture matches ToolBench: every external system reports Rep.\ $=0$ and undefined Bud., because the underlying mechanism is retrieval freshness rather than dependency-aware repair, and $\Delta$Task clusters within $0.4$ points of \emph{No action}'s $\text{-}4.44$ across all six systems. The cluster is wider than on ToolBench ($\pm 0.4$ vs.\ $\pm 0.2$) because MemoryArena memories are more entangled with task-context summaries, so small differences in retrieval policy translate into larger downstream effects; broadly retained-by-default systems (O-Mem, TierMem) leak the most ($89.2$--$89.6\%$ on deletion), while more aggressive update mechanisms (Zep/Graphiti, Mem0, A-MEM) leak less ($73.9$--$78.6\%$) but still leave the cascade visible. The \textsc{MemoRepair} row, again included only as a same-scale reference point, drives leak and stale to $0$ on every event and recovers $33.1\%$ of $D^{+}(F)$ on correction at $0.76$ budget.


% \clearpage
% \newpage

\documentclass{article}

% if you need to pass options to natbib, use, e.g.:
    % \PassOptionsToPackage{numbers, compress}{natbib}
% before loading neurips_2026

% The authors should use one of these tracks.
% Before accepting by the NeurIPS conference, select one of the options below.
% 0. "default" for submission
\usepackage[preprint]{neurips_2026}
% the "default" option is equal to the "main" option, which is used for the Main Track with double-blind reviewing.
% 1. "main" option is used for the Main Track
%  \usepackage[main]{neurips_2026}
% 2. "position" option is used for the Position Paper Track
%  \usepackage[position]{neurips_2026}
% 3. "eandd" option is used for the Evaluations & Datasets Track
 % \usepackage[eandd]{neurips_2026}
 % if you need to opt-in for a single-blind submission in the E&D track:
 %\usepackage[eandd, nonanonymous]{neurips_2026}
% 4. "creativeai" option is used for the Creative AI Track
%  \usepackage[creativeai]{neurips_2026}
% 5. "sglblindworkshop" option is used for the Workshop with single-blind reviewing
 % \usepackage[sglblindworkshop]{neurips_2026}
% 6. "dblblindworkshop" option is used for the Workshop with double-blind reviewing
%  \usepackage[dblblindworkshop]{neurips_2026}

% After being accepted, the authors should add "final" behind the track to compile a camera-ready version.
% 1. Main Track
 % \usepackage[main, final]{neurips_2026}
% 2. Position Paper Track
%  \usepackage[position, final]{neurips_2026}
% 3. Evaluations & Datasets Track
 % \usepackage[eandd, final]{neurips_2026}
% 4. Creative AI Track
%  \usepackage[creativeai, final]{neurips_2026}
% 5. Workshop with single-blind reviewing
%  \usepackage[sglblindworkshop, final]{neurips_2026}
% 6. Workshop with double-blind reviewing
%  \usepackage[dblblindworkshop, final]{neurips_2026}
% Note. For the workshop paper template, both \title{} and \workshoptitle{} are required, with the former indicating the paper title shown in the title and the latter indicating the workshop title displayed in the footnote.
% For workshops (5., 6.), the authors should add the name of the workshop, "\workshoptitle" command is used to set the workshop title.
% \workshoptitle{WORKSHOP TITLE}

% "preprint" option is used for arXiv or other preprint submissions
 % \usepackage[preprint]{neurips_2026}

% to avoid loading the natbib package, add option nonatbib:
   % \usepackage[nonatbib]{neurips_2026}

\usepackage{microtype}
\usepackage{graphicx}
\usepackage{booktabs}
\usepackage{amsmath,amssymb,amsthm,mathtools}
\usepackage{algorithm}
\usepackage{algorithmic}
\usepackage{enumitem}
\usepackage{hyperref}
\usepackage{url}
\hypersetup{hidelinks}
\usepackage[table]{xcolor}
\usepackage{array}
\usepackage{multirow}
\usepackage{longtable}
\usepackage{etoc}

\usepackage{booktabs}
\usepackage{multirow}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{makecell}

\usepackage{tcolorbox}

\newcommand{\XX}{\textsc{xx}}
\newcommand{\NA}{--}
\newcommand{\Best}[1]{\textbf{#1}}
% ---- macros ----
\newcommand{\Bind}{\mathsf{Bind}}
\newcommand{\Prov}{\mathsf{Prov}}
\newcommand{\Validate}{\mathsf{Validate}}
\newcommand{\Reach}{\mathsf{Reach}}
\newcommand{\Reduce}{\mathsf{Recompute}}
\newcommand{\Dep}{\mathsf{Dep}}
\newcommand{\Visible}{\mathsf{Visible}}
\newcommand{\G}{\mathcal{G}}
\newcommand{\Gprov}{\mathcal{G}_{\mathrm{prov}}}
\newcommand{\Iinf}{E^{\mathrm{inf}}}
\newcommand{\ReplayEq}{\mathsf{ReplayEq}}


\theoremstyle{definition}
\newtheorem{definition}{Definition}
\newtheorem{assumption}{Assumption}
\theoremstyle{plain}
\newtheorem{theorem}{Theorem}
\newtheorem{corollary}{Corollary}
\newtheorem{lemma}{Lemma}
\theoremstyle{remark}
\newtheorem{remark}{Remark}
\newtheorem{proposition}{Proposition}

\newcommand\samethanks{\footnotemark[\value{footnote}]}

\title{\textsc{MemoRepair}: Barrier-First Cascade Repair in Agentic Memory}
\author{
    \mdseries Yang Zhao\thanks{Equal contribution.}\and
    Chengxiao Dai\samethanks\and
    Mengying Kou\and
    Yue Xiu
  }


\begin{document}
\maketitle

\begin{abstract}
Agentic memory evolves across tasks into durable derived artifacts:
summaries, cached outputs, embeddings, learned skills, and executable
tool procedures. When a source artifact is deleted, corrected, or
invalidated by tool or API migration, descendants derived from that
source can remain visible and steer future actions with stale support.
We formalize this failure mode as the cascade update problem, where
repair targets the visible derived state of the memory store.
We present \textsc{MemoRepair}, a barrier-first cascade-repair contract
for agentic memory. A repair event induces a controlled transition from
invalidated descendant state to validated successor state: affected
descendants are withdrawn before repair, successors are constructed from
retained support and staged repaired predecessors under the current
interface, and republication is restricted to validated
predecessor-closed successors. This contract induces a scalarized
repair-selection problem for a fixed repair--cost tradeoff. We show that
the induced publication problem reduces to maximum-weight predecessor
closure and can be solved exactly by a single $s$--$t$ min-cut. 
Experiments on ToolBench and MemoryArena show that, with complete influence provenance, \textsc{MemoRepair} reduces invalidated-memory exposure from $69.8$--$94.3\%$ under systems without cascade repair to $0\%$. Compared with
exhaustive \emph{Repair all}, it recovers $91.1$--$94.3\%$ of validated
successors while reducing normalized repair-operator cost from $1.00$ to
$0.57$--$0.76$.
\end{abstract}

\section{Introduction}

Persistent memory has become a core substrate for agentic AI systems
that operate across tasks, tool calls, and sessions. In these systems,
raw interaction records and retrieved documents are transformed over time
into durable derived artifacts: summaries of prior interactions, cached
tool outputs, reusable skills, and executable tool procedures that
compress past experience into state the agent can reuse
\citep{park2023generative,shinn2023reflexion,packer2023memgpt,xu2025amem}.
These artifacts support long-horizon behavior by letting the agent act
from accumulated context rather than reconstructing each decision from
scratch.

As derived state accumulates, a source update is no longer a local edit.
When a source artifact is deleted, corrected, or invalidated by tool or
API migration, descendants derived from that source may remain visible
and continue to steer future actions with stale support. A deleted
preference may survive in a summary, a corrected tool response may remain
in a cached output, and an obsolete API contract may persist in a stored
call-chain procedure. We call this the \emph{cascade update problem}: a
root update induces repair obligations over the visible descendant state
of the memory store. The repair target is therefore the visible derived
state of agentic memory, not only the invalidated root artifact.

Prior work studies how agent memories are constructed, organized,
retrieved, and reused
\citep{park2023generative,packer2023memgpt,xu2025amem}, while tool-use
systems make persistent traces, cached outputs, API
arguments, and executable procedures concrete forms of agent state
\citep{qin2023toolllm,guo2024stabletoolbench,patil2024gorilla}.
Provenance and dependency-tracking methods explain how derived state
depends on source inputs
\citep{buneman2001prov,green2007provenance,cheney2009provenance}.
What remains missing is a post-update transition for agentic memory:
after an invalidation event, the system must decide which descendants to
withdraw, which successors can be constructed from retained support under
the current interface, and which validated successors may re-enter
service.

We introduce \textsc{MemoRepair}, a barrier-first repair contract for
agentic memory. After a deletion, correction, or migration, it first removes
the affected cascade from service, then constructs successor artifacts from
post-event valid support, repaired predecessors, and the current interface.
Only validated successors whose required predecessors are also repaired may
be republished. This yields a cost-aware selection problem: recover useful
successors without exhaustively repairing every candidate. For a fixed
repair--cost tradeoff parameter $\lambda$, the valid selections form a
predecessor-closed optimization problem, which we reduce exactly to a single
$s$--$t$ min-cut.

Experiments on ToolBench and MemoryArena cover deletion, correction, and
migration events~\citep{qin2023toolllm,guo2024stabletoolbench,
memoryarena2026}. Across cascade-unaware memory systems, $92.4$--$99.7\%$ of
post-event actions still depend on invalidated information, showing that
ordinary update and retrieval do not provide cascade-level withdrawal. Under
complete influence provenance, \textsc{MemoRepair} instead withdraws affected
memory before repair and republishes only validated successors. It preserves
nearly the same validated repairs as exhaustive \emph{Repair all} while
executing substantially less repair work. Ablations show that the min-cut
selector improves over greedy selection and that store-level repair
complements parameter-level neural repair.

\paragraph{Contributions.}
We make the following contributions:
\begin{itemize}[leftmargin=*]
\item We formalize the cascade update problem in agentic memory. A root
deletion, correction, or migration induces repair obligations over the
visible descendant state of summaries, cached outputs, prompt skills,
chain procedures, and neural skills.

\item We define \textsc{MemoRepair}, a barrier-first cascade-repair
contract. The contract specifies the visibility, support, dependency,
and validation conditions under which an affected descendant may leave
the withdrawn state and re-enter service as a successor.

\item We derive the repair-selection rule induced by this contract. For
a fixed repair--cost tradeoff, valid republication forms a
predecessor-closed selection problem, yielding an exact $s$--$t$ min-cut
solver for the scalarized objective.

\end{itemize}



\input{method}


\input{experiment}

\input{related}
\section{Limitations and Conclusion}
\label{sec:conclusion}

\paragraph{Limitations.}
\textsc{MemoRepair} relies on complete influence provenance: each durable
artifact must record the artifacts used to derive it. Missing edges can leave
affected descendants outside the withdrawn cascade. This assumption is visible
in Table~\ref{tab:ablations}: dropping $1\%$ of influence edges yields
$17.7\%$ Leak, with similar scaling for small $p_{\mathrm{drop}}$. The method
also depends on the coverage of the validation suite. A successor that passes
the implemented checks is not guaranteed to be semantically correct in all
future contexts. For neural skills, \textsc{MemoRepair} inherits the guarantees
and failure modes of the chosen parameter-level repair operator; the store-level
contract should therefore not be read as a claim of exact parameter erasure.

\paragraph{Conclusion.}
We studied cascade repair for the visible derived state of agentic memory.
When a source artifact is deleted, corrected, or migrated, downstream summaries,
cached outputs, procedures, and skills may remain servable with stale support.
\textsc{MemoRepair} addresses this post-update state by withdrawing the affected
cascade, constructing successors from retained support and staged repaired
predecessors, and republishing only successors that pass validation and satisfy
predecessor closure. For a fixed repair--cost tradeoff, the publication problem
reduces to maximum-weight predecessor closure and is solved by a single min-cut.
Under complete influence provenance, the withdrawal barrier gives store-level
stale-serving isolation, while the selector recovers most of the repair-all
publication ceiling at lower repair-operator cost.



\bibliographystyle{plainnat}
\bibliography{related}

% \input{appendix}

% \clearpage
% \input{checklist}

\end{document}
\section{Method}
\label{sec:method}

% A repair event in \textsc{MemoRepair} is a barrier-first transition over
% the affected cascade induced by an invalidated root set. The system first
% withdraws the cascade from service, constructs repair candidates for
% affected descendants, selects a predecessor-closed subset under a
% repair--cost tradeoff, and republishes only validated successors shown in Figure~\ref{fig:framework}. Full
% notation is summarized in Appendix~\ref{app:notation}.

A repair event in \textsc{MemoRepair} is a barrier-first transition over the
affected cascade induced by an invalidated root set. As shown in
Figure~\ref{fig:framework}, the system first withdraws the cascade from
service, constructs repair candidates for affected descendants, selects a
predecessor-closed subset under a repair--cost tradeoff, and republishes only
validated successors. 

% Full notation is summarized in Appendix~\ref{app:notation}.

\begin{figure*}[!ht]
    \centering
    \includegraphics[width=\linewidth]{figures/nips2026_cropped.pdf}
    \caption{Repair transition enforced by \textsc{MemoRepair}: affected
    artifacts are withdrawn, successor versions are constructed, and
    validated predecessor-closed successors are republished.}
    \label{fig:framework}
\end{figure*}

\subsection{Problem Setup}
\label{subsec:problem-setup}

Persistent agentic memory is represented by a directed provenance graph
\[
\mathcal{G}=(V,E^{\mathrm{inf}},E^{\mathrm{sem}}),
\]
where nodes are durable artifacts. An influence edge
$(u,v)\in E^{\mathrm{inf}}$ means that $v$ was produced using $u$ as
causal support; these edges determine repair scope. Semantic edges
$E^{\mathrm{sem}}$ support retrieval only. Each artifact has a kind tag
\[
\mathrm{kind}(x)\in
\{\mathsf{record},\mathsf{cache},\mathsf{summary},\mathsf{skill}\},
\]
and each skill has an architecture tag
\[
\mathrm{arch}(x)\in
\{\mathsf{neural},\mathsf{prompt},\mathsf{chain}\}.
\]

A repair event is
\[
e=(F,\tau,\Delta),
\qquad
F\subseteq V,\quad
\tau\in\{\mathsf{delete},\mathsf{correct},\mathsf{migrate}\},
\]
where $F$ is the invalidated root set and $\Delta$ contains correction or
migration information. The affected cascade is computed only through
influence edges:
\[
C(F)=\mathrm{Reach}(F;E^{\mathrm{inf}}),
\qquad
D(F)=C(F)\setminus F ,
\]
where $\mathrm{Reach}$ includes the zero-hop roots in $F$. Thus
withdrawal targets $C(F)$, while repair candidates are generated for
descendants $D(F)$.

Let $\kappa_e$ denote the post-event interface. The retained valid support
is
\[
\mathsf{Ret}(e)=
\begin{cases}
V\setminus C(F), & \tau=\mathsf{delete},\\[2pt]
(V\setminus C(F))\cup X_\Delta, & \tau=\mathsf{correct},\\[2pt]
V\setminus C(F), & \tau=\mathsf{migrate},
\end{cases}
\]
where $X_\Delta$ is the set of fresh replacement artifacts materialized
for correction events. Thus $\mathsf{Ret}(e)$ is interpreted in the post-event artifact universe. 

% Appendix~\ref{app:provenance-details}
% details the provenance projection.

\subsection{Withdrawal Barrier}
\label{subsec:withdrawal-barrier}

For the repair plan $\rho$ associated with event $e$, \textsc{MemoRepair}
initializes
\[
B_\rho\leftarrow C(F).
\]
All artifacts in $B_\rho$ are non-servable during repair. A fresh
successor $z_i$ for artifact $i$ may be republished only if
\[
\mathrm{Validate}_i(z_i)=1 .
\]
Validation checks replay consistency for recomputation, schema and
task-regression behavior for regeneration, sandbox behavior for chain
skills, and forget/reference behavior for parametric repair.

\subsection{Artifact-Aware Candidate Construction}
\label{subsec:candidate-construction}

Roots in $F$ are handled by the event semantics: deletion removes them,
correction supplies replacements, and migration updates $\kappa_e$.
For each descendant $i\in D(F)$, a deterministic mode map assigns
\[
\mu_i=\Phi_\mu^e(i;\mathcal{G},\mathsf{Ret}(e),\kappa_e)
\in
\{\mathsf{remove},\mathsf{recompute},\mathsf{regen},\mathsf{param}\}.
\]
Replayable deterministic artifacts are assigned $\mathsf{recompute}$;
summaries, prompt skills, and chain procedures are assigned
$\mathsf{regen}$ when retained support suffices; neural skills are
assigned $\mathsf{param}$ when provenance yields forget/reference
partitions. Otherwise, the artifact is assigned $\mathsf{remove}$.

For each non-removed descendant,
\[
q_i=(\mu_i,\pi_i,P_i,v_i,w_i,c_i),
\]
where $\pi_i$ is the repair operator, $P_i\subseteq D(F)$ is the set of
affected descendants whose repaired successors are consumed by $\pi_i$,
$v_i\in\{0,1\}$ records executability, and $w_i,c_i\ge0$ are fixed
value--cost terms. Root replacements and interface updates are supplied
through $\mathsf{Ret}(e)$ and $\kappa_e$, not through $P_i$.

Define the non-removed candidate index set
\[
D^+(F)=\{i\in D(F):\mu_i\neq\mathsf{remove}\},
\qquad
Q_\rho=\{q_i:i\in D^+(F)\}.
\]
For each $i\in D^+(F)$, let
\[
\bar P_i=P_i\cap D^+(F).
\]
If $P_i\setminus D^+(F)\neq\varnothing$, then $i$ requires a
non-repairable affected descendant and is marked non-executable
($v_i=0$). The repair-time dependency graph is
\[
E^{\mathrm{req}}
=
\{(j,i):i\in D^+(F),\,j\in\bar P_i\}.
\]
An edge $(j,i)$ means that the successor of $j$ must be staged before
repairing $i$. Thus $E^{\mathrm{req}}$ captures repair-time prerequisites,
not raw provenance.

\subsection{Cost-Aware Publication Selection}
\label{subsec:cost-aware-selection}

For each $i\in D^+(F)$, let $x_i\in\{0,1\}$ indicate whether $q_i$ is
selected. Define
\[
\mathrm{Repair}(x)=\sum_{i\in D^+(F)}w_i x_i,
\qquad
\mathrm{Cost}(x)=\sum_{i\in D^+(F)}c_i x_i .
\]
For a fixed tradeoff parameter $\lambda\ge0$, \textsc{MemoRepair} solves
\begin{align}
\max_x\quad
& \mathrm{Repair}(x)-\lambda\,\mathrm{Cost}(x)
\label{eq:scalarized-selection}\\
\text{s.t.}\quad
& x_i\le v_i,
\quad \forall i\in D^+(F),
\label{eq:avail}\\
& x_i\le x_j,
\quad \forall i\in D^+(F),\ \forall j\in\bar P_i,
\label{eq:closure}\\
& x_i\in\{0,1\},
\quad \forall i\in D^+(F).
\label{eq:binary}
\end{align}
Constraint~\eqref{eq:avail} excludes non-executable candidates, and
\eqref{eq:closure} enforces predecessor closure.  A hard-budget variant
with $\sum_{i\in D^+(F)}c_i x_i\le\beta$ is a precedence-constrained
knapsack problem in general, so we use the fixed-$\lambda$ scalarized
selector as the default publication rule. We reserve \emph{budget} for this optional
hard cap $\beta$; all main experiments use the fixed-$\lambda$ selector and report the realized
normalized repair-operator \emph{Cost} of the executed plan.




\begin{theorem}[Scalarized repair via min-cut]
\label{thm:cost-aware-repair}
For fixed event $e$, candidate family
$Q_\rho=\{q_i:i\in D^+(F)\}$ with fixed $(P_i,v_i,w_i,c_i)$, and
$\lambda\ge0$, the scalarized repair-selection problem
\eqref{eq:scalarized-selection}--\eqref{eq:binary} reduces to
maximum-weight predecessor closure and can be solved exactly by a single
$s$--$t$ min-cut.
\end{theorem}

% The proof is in Appendix~\ref{app:proof-cost-aware-repair}. 
Briefly,
setting $p_i=w_i-\lambda c_i$ yields a maximum-weight closure problem:
positive nodes connect to the source, negative nodes connect to the sink,
and large-capacity edges enforce executability and predecessor closure.
Although $E^{\mathrm{req}}$ is oriented from prerequisite to dependent,
the min-cut network uses edges $i\to j$ for each $j\in\bar P_i$, so that
selecting $i$ forces selection of every required predecessor.

% \subsection{Algorithm}
% \label{subsec:algorithm}

% Algorithm~\ref{alg:memo-repair-main} summarizes the transition; full
% execution details are in Appendix.

\begin{algorithm}[!ht]
\caption{\textsc{MemoRepair}}
\label{alg:memo-repair-main}
\small
\begin{algorithmic}[1]
\REQUIRE Repair event $e=(F,\tau,\Delta)$, graph $\mathcal{G}$, tradeoff $\lambda$
\ENSURE Republished validated successors $R_\rho$
\STATE Compute $\kappa_e$, $C(F)$, $D(F)$, and $\mathsf{Ret}(e)$
\STATE Set $B_\rho\leftarrow C(F)$ and withdraw $B_\rho$
\STATE Assign modes $\mu_i=\Phi_\mu^e(i;\mathcal G,\mathsf{Ret}(e),\kappa_e)$ for $i\in D(F)$
\STATE Construct $D^+(F)$, $Q_\rho$, $\{\bar P_i\}$, and $E^{\mathrm{req}}$
\STATE Mark unavailable, non-repairable, or cyclic candidates non-executable
\STATE Solve \eqref{eq:scalarized-selection}--\eqref{eq:binary} and set $S_\rho=\{i:x_i=1\}$
\STATE Execute $S_\rho$ in topological order over $E^{\mathrm{req}}[S_\rho]$
\STATE Republish validated successors; keep failures and their dependents withdrawn
\RETURN $R_\rho$
\end{algorithmic}
\end{algorithm}












% \section{Method}
% \label{sec:method}

% A repair event in \textsc{MemoRepair} is a barrier-first transition over
% the affected descendant cascade. Given an invalidated root set, the
% system withdraws affected descendants from service, constructs repair
% candidates from retained support and staged repaired predecessors, selects
% a predecessor-closed subset under a repair--cost tradeoff, and republishes
% only validated successors. Full notation is summarized in
% Appendix~\ref{app:notation}.

% \begin{figure}[!ht]
%     \centering
%     \includegraphics[width=\linewidth]{figures/memorepair_figure.pdf}
%     \caption{Repair transition enforced by \textsc{MemoRepair}: affected
%     descendants are withdrawn, valid successors are constructed, and
%     validated predecessor-closed successors are republished.}
%     \label{fig:framework}
% \end{figure}

% \subsection{Problem Setup}
% \label{subsec:problem-setup}

% Persistent agentic memory is represented by a directed provenance graph
% \[
% \mathcal{G}=(V,E^{\mathrm{inf}},E^{\mathrm{sem}}),
% \]
% where nodes are durable artifacts. Influence edges $E^{\mathrm{inf}}$
% encode derivation and determine repair scope; semantic edges
% $E^{\mathrm{sem}}$ support retrieval only. Each artifact has a kind tag
% \[
% \mathrm{kind}(x)\in
% \{\mathsf{record},\mathsf{cache},\mathsf{summary},\mathsf{skill}\},
% \]
% and each skill has an architecture tag
% \[
% \mathrm{arch}(x)\in
% \{\mathsf{neural},\mathsf{prompt},\mathsf{chain}\}.
% \]

% A repair event is
% \[
% e=(F,\tau,\Delta),
% \]
% where $F\subseteq V$ is the invalidated root set,
% \[
% \tau\in\{\mathsf{delete},\mathsf{correct},\mathsf{migrate}\}
% \]
% is the update type, and $\Delta$ contains replacement or migration
% information. The affected cascade is computed only through influence
% edges:
% \[
% C(F)=\mathrm{Reach}(F;E^{\mathrm{inf}}),
% \qquad
% D(F)=C(F)\setminus F .
% \]
% Thus repair targets the cascade $C(F)$, not only the roots in $F$.

% Let $\kappa_e$ denote the post-event interface. The retained valid support
% after event $e$ is
% \[
% \mathsf{Ret}(e)=
% \begin{cases}
% V\setminus C(F), & \tau=\mathsf{delete},\\[2pt]
% (V\setminus C(F))\cup X_\Delta, & \tau=\mathsf{correct},\\[2pt]
% V\setminus C(F), & \tau=\mathsf{migrate},
% \end{cases}
% \]
% where $X_\Delta$ denotes replacement artifacts materialized for
% correction events. Appendix~\ref{app:provenance-details} gives the
% provenance projection used to obtain $\mathcal{G}$.

% \subsection{Withdrawal Barrier}
% \label{subsec:withdrawal-barrier}

% For event $e$, \textsc{MemoRepair} initializes the hidden set as
% \[
% B_\rho\leftarrow C(F).
% \]
% Artifacts in $B_\rho$ remain non-servable throughout repair. They either
% stay withdrawn, are removed or quarantined, or are replaced in service by
% validated successors.

% A successor $z_i$ for artifact $i$ may be republished only if
% \[
% \mathrm{Validate}_i(z_i)=1 .
% \]
% Validation checks replay consistency for recomputation, schema and
% task-regression behavior for regeneration, and forget/reference behavior
% for parametric repair. A feasible repair plan withdraws the affected
% cascade, executes only executable candidates, and republishes only
% validated predecessor-closed successors.

% \subsection{Artifact-Aware Candidate Construction}
% \label{subsec:candidate-construction}

% The roots in $F$ are handled by the event semantics itself: deletion
% removes them, correction supplies replacements, and migration updates the
% interface. Repair candidates are generated for descendants in $D(F)$.

% Each affected descendant receives a deterministic repair mode
% \[
% \mu_i=\Phi_\mu^e(i;\mathcal{G},\mathsf{Ret}(e),\kappa_e)
% \in
% \{\mathsf{remove},\mathsf{recompute},\mathsf{regen},\mathsf{param}\}.
% \]
% Replayable deterministic artifacts are assigned $\mathsf{recompute}$.
% Summaries, prompt skills, and chain procedures are assigned
% $\mathsf{regen}$ when a retained-support context can be formed under
% $\kappa_e$. Neural skills whose training support intersects $C(F)$ are
% assigned $\mathsf{param}$ when a provenance-derived forget/reference
% partition is available. Artifacts with no constructible valid successor
% are assigned $\mathsf{remove}$.

% For every non-removed descendant, candidate generation returns
% \[
% q_i=(\mu_i,\pi_i,P_i,v_i,w_i,c_i),
% \]
% where $\pi_i$ is the repair operator, $P_i$ is the set of affected
% predecessors whose repaired successors are consumed by $\pi_i$,
% $v_i\in\{0,1\}$ records executability, and $w_i,c_i\ge0$ are fixed
% value--cost terms used by selection.

% The predecessor set $P_i$ is derived from the repair operator, not from
% all provenance links. For recomputation, $P_i$ is read from the replay
% trace. For regeneration, $P_i$ contains affected artifacts used in the
% regeneration context. For chain repair, it also includes affected
% API-contract or cached-output artifacts required by the sandbox harness.
% Semantic retrieval edges are excluded. Candidates with unavailable,
% non-repairable, or cyclic requirements are marked non-executable by
% setting $v_i=0$.

% The value and cost terms are fixed before selection. Cost combines
% replayed tool calls, regeneration tokens, GPU time for parametric repair,
% and sandbox execution time. Value combines historical reuse, affected
% fan-out, and held-out probe coverage. Full normalized formulas and the
% parametric forget/reference support construction are given in
% Appendix~\ref{app:candidate-instantiation}.

% The repairable set is
% \[
% D^+(F)=\{i\in D(F):\mu_i\neq\mathsf{remove}\}.
% \]
% For each $i\in D^+(F)$, let
% \[
% \bar P_i=P_i\cap D^+(F)
% \]
% be the repairable required predecessors. If $P_i\not\subseteq D^+(F)$,
% then $i$ has a non-repairable requirement and is marked non-executable by
% setting $v_i=0$. The repair-time dependency graph is
% \[
% E^{\mathrm{req}}
% =
% \{(j,i):i\in D^+(F),\,j\in \bar P_i\}.
% \]
% An edge $(j,i)$ means that the repaired successor of $j$ must be staged
% before the successor of $i$ can be executed. Thus $E^{\mathrm{req}}$
% captures repair-time prerequisites, not raw provenance. Edges are
% oriented from prerequisite to dependent for execution; the selection
% constraint below enforces the same dependency by requiring $y_i\le y_j$.

% \subsection{Cost-Aware Publication Selection}
% \label{subsec:cost-aware-selection}

% For each $i\in D^+(F)$, let $y_i\in\{0,1\}$ indicate whether candidate
% $q_i$ is selected. Define
% \[
% \mathrm{Repair}(y)=\sum_{i\in D^+(F)}w_i y_i,
% \qquad
% \mathrm{Cost}(y)=\sum_{i\in D^+(F)}c_i y_i .
% \]
% For a fixed tradeoff parameter $\lambda\ge0$, \textsc{MemoRepair} solves
% \begin{alignat}{2}
% \max_y\quad
% & \mathrm{Repair}(y)-\lambda\,\mathrm{Cost}(y)
% & \notag\\
% \text{s.t.}\quad
% & y_i\le v_i,
% & \quad \forall i\in D^+(F),
% \label{eq:avail}\\
% & y_i\le y_j,
% & \quad \forall i\in D^+(F),\ \forall j\in \bar P_i,
% \label{eq:closure}\\
% & y_i\in\{0,1\},
% & \quad \forall i\in D^+(F).
% \label{eq:binary}
% \end{alignat}
% Constraint~\eqref{eq:avail} excludes non-executable candidates, and
% \eqref{eq:closure} enforces predecessor closure.

% A variant with an explicit cap $\sum_i c_i y_i\le\beta$ is a
% precedence-constrained knapsack problem in general. We therefore use the
% fixed-$\lambda$ scalarized selector as the default publication rule.

% \begin{theorem}[Scalarized repair via min-cut]
% \label{thm:cost-aware-repair}
% For fixed event $e$, candidate family $Q_\rho$, and tradeoff parameter
% $\lambda\ge0$, the scalarized repair-selection problem
% \eqref{eq:avail}--\eqref{eq:binary} reduces to maximum-weight
% predecessor closure and can be solved exactly by a single $s$--$t$
% min-cut.
% \end{theorem}

% The proof is in Appendix~\ref{app:proof-cost-aware-repair}. Briefly,
% setting $p_i=w_i-\lambda c_i$ turns candidate selection into
% maximum-weight closure: positive-weight nodes connect to the source,
% negative-weight nodes connect to the sink, and large-capacity edges
% enforce executability and predecessor requirements.

% \subsection{Algorithm}
% \label{subsec:algorithm}

% Algorithm~\ref{alg:memo-repair-main} summarizes the repair transition.

% \begin{algorithm}[!ht]
% \caption{\textsc{MemoRepair}}
% \label{alg:memo-repair-main}
% \small
% \begin{algorithmic}[1]
% \REQUIRE Repair event $e=(F,\tau,\Delta)$, graph $\mathcal{G}$, tradeoff $\lambda$
% \ENSURE Republished validated successors
% \STATE Compute $C(F)$, $D(F)$, and $\mathsf{Ret}(e)$
% \STATE Set $B_\rho\leftarrow C(F)$ and withdraw $B_\rho$ from service
% \STATE Construct $Q_\rho=\{q_i:i\in D(F),\,\mu_i\neq\mathsf{remove}\}$
% \STATE Mark unavailable, non-repairable, or cyclic requirements non-executable
% \STATE Build $E^{\mathrm{req}}$ from $\{\bar P_i\}_{q_i\in Q_\rho}$
% \STATE Solve \eqref{eq:avail}--\eqref{eq:binary} and set $S_\rho=\{i:y_i=1\}$
% \STATE Execute $S_\rho$ in topological order over $E^{\mathrm{req}}[S_\rho]$
% \STATE Republish validated predecessor-closed successors; keep failures and their dependents withdrawn
% \end{algorithmic}
% \end{algorithm}






% % \section{Method}
% % \label{sec:method}

% % A repair event in \textsc{MemoRepair} is a barrier-first transition over
% % the affected descendant cascade. Given an invalidated root set, the system
% % withdraws affected descendants from service, constructs repair candidates
% % from retained support and staged repaired predecessors, selects a
% % predecessor-closed subset under a repair--cost tradeoff, and republishes
% % only validated successors. Full notation is summarized in
% % Appendix~\ref{app:notation}.

% % \subsection{Problem Setup}
% % \label{subsec:problem-setup}

% % Persistent agentic memory is represented by a directed provenance graph
% % \[
% % \mathcal{G}=(V,E^{\mathrm{inf}},E^{\mathrm{sem}}),
% % \]
% % where nodes are durable artifacts. Influence edges $E^{\mathrm{inf}}$
% % encode derivation and determine repair scope; semantic edges
% % $E^{\mathrm{sem}}$ support retrieval only. Each artifact has
% % \[
% % \mathrm{kind}(x)\in
% % \{\mathsf{record},\mathsf{cache},\mathsf{summary},\mathsf{skill}\},
% % \]
% % and each skill has
% % \[
% % \mathrm{arch}(x)\in
% % \{\mathsf{neural},\mathsf{prompt},\mathsf{chain}\}.
% % \]

% % A repair event is
% % \[
% % e=(F,\tau,\Delta),
% % \]
% % where $F\subseteq V$ is the invalidated root set,
% % $\tau\in\{\mathsf{delete},\mathsf{correct},\mathsf{migrate}\}$ is the
% % event type, and $\Delta$ contains replacement or migration information.
% % The affected cascade is computed only through influence edges:
% % \[
% % C(F)=\mathrm{Reach}(F;E^{\mathrm{inf}}),
% % \qquad
% % D(F)=C(F)\setminus F .
% % \]
% % Thus repair targets the cascade $C(F)$, not only the roots in $F$.

% % Let $\kappa_e$ denote the post-event interface. The retained valid support
% % is
% % \[
% % \mathsf{Ret}(e)=
% % \begin{cases}
% % V\setminus C(F), & \tau=\mathsf{delete},\\[2pt]
% % (V\setminus C(F))\cup X_\Delta, & \tau=\mathsf{correct},\\[2pt]
% % V\setminus C(F), & \tau=\mathsf{migrate},
% % \end{cases}
% % \]
% % where $X_\Delta$ denotes replacement artifacts materialized for
% % correction events. Appendix~\ref{app:provenance-details} gives the
% % provenance projection used to obtain $\mathcal{G}$.

% % \subsection{Withdrawal Barrier}
% % \label{subsec:withdrawal-barrier}

% % For event $e$, \textsc{MemoRepair} initializes the hidden set as
% % \[
% % B_\rho\leftarrow C(F).
% % \]
% % Artifacts in $B_\rho$ remain non-servable throughout repair. They either
% % stay withdrawn, are removed or quarantined, or are replaced in service by
% % validated successors.

% % A successor $z_i$ for artifact $i$ may be republished only if
% % \[
% % \mathrm{Validate}_i(z_i)=1 .
% % \]
% % Validation checks replay consistency for recomputation, schema and
% % task-regression behavior for regeneration, and forget/reference behavior
% % for parametric repair.

% % A repair plan $\rho=(B_\rho,Q_\rho,S_\rho,R_\rho)$ is feasible if
% % (i) $C(F)\subseteq B_\rho$; (ii) no original artifact in $B_\rho$ becomes
% % servable again, and re-entry occurs only through a validated successor;
% % (iii) every selected candidate is executable; (iv) the selected set is
% % predecessor-closed with respect to repair-time requirements; and
% % (v) only validated successors are republished. Here $Q_\rho$ is the
% % candidate family, $S_\rho$ is the selected set, and $R_\rho$ is the
% % republished successor set.

% % \subsection{Artifact-Aware Candidate Construction}
% % \label{subsec:candidate-construction}

% % The roots in $F$ are handled by the event semantics itself: deletion
% % removes them, correction supplies replacements, and migration updates the
% % interface. Repair candidates are generated for descendants in $D(F)$.

% % \paragraph{Mode assignment.}
% % Each affected descendant receives a repair mode
% % \[
% % \mu_i=\Phi_\mu^e(i;\mathcal{G},\mathsf{Ret}(e),\kappa_e)
% % \in
% % \{\mathsf{remove},\mathsf{recompute},\mathsf{regen},\mathsf{param}\}.
% % \]
% % The map $\Phi_\mu^e$ is deterministic given the graph metadata, repair
% % library, retained support, and post-event interface. Replayable
% % deterministic artifacts are assigned $\mathsf{recompute}$. Summaries,
% % prompt skills, and chain procedures are assigned $\mathsf{regen}$ when a
% % valid regeneration context can be formed from retained support and staged
% % repaired predecessors. Neural skills whose training support intersects
% % $C(F)$ are assigned $\mathsf{param}$ when a forget/reference partition is
% % available. Artifacts satisfying none of these conditions are assigned
% % $\mathsf{remove}$.

% % \paragraph{Local repair contract.}
% % If $\mu_i=\mathsf{remove}$, no successor is constructed and $i$ remains
% % withdrawn for the repair event. Otherwise, candidate generation returns
% % \[
% % q_i=(\mu_i,\pi_i,P_i,v_i,w_i,c_i),
% % \]
% % where $\pi_i$ is the repair operator, $P_i$ is the set of affected
% % predecessors whose repaired successors are consumed by $\pi_i$,
% % $v_i\in\{0,1\}$ records executability, and $w_i,c_i\ge0$ are the value
% % and cost used by selection.

% % The predecessor set $P_i$ is derived from the repair operator, not from
% % all provenance links. For recomputation, $P_i$ is read from the replay
% % trace. For regeneration, $P_i$ contains affected summaries, caches, or
% % procedure components used in the regeneration context. For chain repair,
% % $P_i$ also includes affected API-contract or cached-output artifacts
% % required by the sandbox harness. Semantic retrieval edges are excluded.
% % If a required predecessor is unavailable, non-repairable, or involved in
% % a cyclic requirement not handled by a joint repair operator, the candidate
% % is marked non-executable by setting $v_i=0$.

% % \paragraph{Value and cost.}
% % Candidate cost is the normalized resource cost of its repair operator:
% % \[
% % \tilde c_i =
% % \alpha_{\mathrm{tool}} n_i^{\mathrm{tool}}
% % +\alpha_{\mathrm{tok}} n_i^{\mathrm{tok}}
% % +\alpha_{\mathrm{gpu}} t_i^{\mathrm{gpu}}
% % +\alpha_{\mathrm{sand}} t_i^{\mathrm{sand}},
% % \qquad
% % c_i=
% % \frac{\tilde c_i}{\sum_{j:v_j=1}\tilde c_j+\epsilon}.
% % \]
% % Here $n_i^{\mathrm{tool}}$ is the number of replayed tool calls,
% % $n_i^{\mathrm{tok}}$ is the number of regeneration tokens,
% % $t_i^{\mathrm{gpu}}$ is GPU time for parametric repair, and
% % $t_i^{\mathrm{sand}}$ is sandbox execution time. The coefficients
% % $\{\alpha_\bullet\}$ are fixed before evaluation.

% % Candidate value is a fixed trace-derived score:
% % \[
% % \tilde w_i =
% % \log(1+n_i^{\mathrm{use}})
% % +\log(1+|\mathrm{Reach}(i;E^{\mathrm{inf}})\cap D(F)|)
% % +\frac{n_i^{\mathrm{probe}}}
% % {\max(\{1\}\cup\{n_j^{\mathrm{probe}}:v_j=1\})},
% % \qquad
% % w_i=
% % \frac{\tilde w_i}{\sum_{j:v_j=1}\tilde w_j+\epsilon}.
% % \]
% % Here $n_i^{\mathrm{use}}$ counts historical retrievals or executions, the
% % reachability term measures affected fan-out, and $n_i^{\mathrm{probe}}$
% % counts held-out probes referencing $i$. If all raw values are zero, we
% % use uniform values over executable candidates.

% % \paragraph{Parametric support partition.}
% % For a neural skill $i$, let $\mathcal{S}_i$ be the support multiset used
% % to produce its current parameters, and let $\mathrm{Prov}(z)\subseteq V$
% % be the artifact provenance of support example $z$. Set operations on
% % $\mathcal{S}_i$ are interpreted as multiset operations. Define
% % \[
% % \mathsf{For}_i(e)=
% % \{z\in\mathcal{S}_i:\mathrm{Prov}(z)\cap C(F)\neq\varnothing\},
% % \]
% % \[
% % \mathsf{New}_i(e)=
% % \begin{cases}
% % \mathrm{Materialize}(X_\Delta,i), & \tau=\mathsf{correct},\\
% % \varnothing, & \tau\in\{\mathsf{delete},\mathsf{migrate}\},
% % \end{cases}
% % \qquad
% % \mathsf{Ref}_i(e)=
% % (\mathcal{S}_i\setminus\mathsf{For}_i(e))\cup\mathsf{New}_i(e).
% % \]
% % Thus $\mathsf{For}_i(e)$ is invalidated support and
% % $\mathsf{Ref}_i(e)$ is retained reference support for parametric repair.

% % \paragraph{Repair dependency graph.}
% % The repairable set is
% % \[
% % D^+(F)=\{i\in D(F):\mu_i\neq\mathsf{remove}\}.
% % \]
% % For candidates with non-repairable required predecessors, we set
% % $v_i=0$ and remove those unavailable predecessors from the selection
% % graph. After this pruning, $P_i\subseteq D^+(F)$ for every candidate that
% % can be selected. The repair-time dependency graph is
% % \[
% % E^{\mathrm{req}}
% % =
% % \{(j,i): i\in D^+(F),\, j\in P_i\}.
% % \]
% % An edge $(j,i)$ means that the repaired successor of $j$ must be staged
% % before the successor of $i$ can be executed. Thus $E^{\mathrm{req}}$
% % captures repair-time prerequisites, not raw provenance. Edges are
% % oriented from prerequisite to dependent for execution; the selection
% % constraint below enforces the same dependency by requiring $y_i\le y_j$.

% % \subsection{Cost-Aware Publication Selection}
% % \label{subsec:cost-aware-selection}

% % For each $i\in D^+(F)$, let $y_i\in\{0,1\}$ indicate whether candidate
% % $q_i$ is selected. Define
% % \[
% % \mathrm{Repair}(y)=\sum_{i\in D^+(F)}w_i y_i,
% % \qquad
% % \mathrm{Cost}(y)=\sum_{i\in D^+(F)}c_i y_i .
% % \]
% % For a fixed tradeoff parameter $\lambda\ge0$, \textsc{MemoRepair} solves
% % \begin{alignat}{2}
% % \max_y\quad
% % & \mathrm{Repair}(y)-\lambda\,\mathrm{Cost}(y)
% % & \notag\\
% % \text{s.t.}\quad
% % & y_i\le v_i,
% % & \quad \forall i\in D^+(F),
% % \label{eq:avail}\\
% % & y_i\le y_j,
% % & \quad \forall i\in D^+(F),\ \forall j\in P_i,
% % \label{eq:closure}\\
% % & y_i\in\{0,1\},
% % & \quad \forall i\in D^+(F).
% % \label{eq:binary}
% % \end{alignat}
% % Constraint~\eqref{eq:avail} excludes non-executable candidates, and
% % \eqref{eq:closure} enforces predecessor closure.

% % A variant with an explicit cap $\sum_i c_i y_i\le\beta$ is a
% % precedence-constrained knapsack problem in general. We therefore use the
% % fixed-$\lambda$ scalarized selector as the default publication rule.

% % \begin{theorem}[Scalarized repair via min-cut]
% % \label{thm:cost-aware-repair}
% % For fixed event $e$, candidate family $Q_\rho$, and tradeoff parameter
% % $\lambda\ge0$, the scalarized repair-selection problem
% % \eqref{eq:avail}--\eqref{eq:binary} reduces to maximum-weight
% % predecessor closure and can be solved exactly by a single $s$--$t$
% % min-cut.
% % \end{theorem}

% % The proof is in Appendix~\ref{app:proof-cost-aware-repair}. Briefly,
% % setting $p_i=w_i-\lambda c_i$ turns candidate selection into
% % maximum-weight closure: positive-weight nodes connect to the source,
% % negative-weight nodes connect to the sink, and large-capacity edges
% % enforce executability and predecessor requirements.

% % \subsection{Algorithm}
% % \label{subsec:algorithm}

% % Algorithm~\ref{alg:memo-repair-main} summarizes the full repair
% % transition.

% % \begin{algorithm}[!ht]
% % \caption{\textsc{MemoRepair}}
% % \label{alg:memo-repair-main}
% % \small
% % \begin{algorithmic}[1]
% % \REQUIRE Repair event $e=(F,\tau,\Delta)$, graph $\mathcal{G}$, tradeoff $\lambda$
% % \ENSURE Republished validated successors
% % \STATE Compute $C(F)$, $D(F)$, and $\mathsf{Ret}(e)$
% % \STATE Set $B_\rho\leftarrow C(F)$ and withdraw $B_\rho$ from service
% % \STATE Construct $Q_\rho=\{q_i:i\in D(F),\,\mu_i\neq\mathsf{remove}\}$
% % \STATE Mark unavailable, non-repairable, or cyclic requirements non-executable
% % \STATE Build $E^{\mathrm{req}}$ from $\{P_i\}_{q_i\in Q_\rho}$
% % \STATE Solve \eqref{eq:avail}--\eqref{eq:binary} and set $S_\rho=\{i:y_i=1\}$
% % \STATE Execute $S_\rho$ in topological order over $E^{\mathrm{req}}[S_\rho]$
% % \STATE Republish validated predecessor-closed successors; keep failures withdrawn
% % \end{algorithmic}
% % \end{algorithm}






















% % % \section{Method}
% % % \label{sec:method}

% % % A repair event in \textsc{MemoRepair} is a barrier-first transition over
% % % the affected descendant cascade. Given an invalidated root set, the
% % % system withdraws affected descendants from service, constructs repair
% % % candidates from retained support and staged repaired predecessors, selects
% % % a predecessor-closed subset under a repair--cost tradeoff, and republishes
% % % only validated successors. Full notation is summarized in
% % % Appendix~\ref{app:notation}.

% % % \subsection{Repair Event and Withdrawal Barrier}
% % % \label{subsec:repair-event}

% % % Persistent agentic memory is represented by a directed provenance graph
% % % \[
% % % \mathcal{G}=(V,E^{\mathrm{inf}},E^{\mathrm{sem}}),
% % % \]
% % % where nodes are durable artifacts. Influence edges $E^{\mathrm{inf}}$
% % % encode derivation and determine repair scope; semantic edges
% % % $E^{\mathrm{sem}}$ support retrieval only. Each artifact has
% % % \[
% % % \mathrm{kind}(x)\in
% % % \{\mathsf{record},\mathsf{cache},\mathsf{summary},\mathsf{skill}\},
% % % \]
% % % and each skill has
% % % \[
% % % \mathrm{arch}(x)\in
% % % \{\mathsf{neural},\mathsf{prompt},\mathsf{chain}\}.
% % % \]

% % % A repair event is $e=(F,\tau,\Delta)$, where $F\subseteq V$ is the
% % % invalidated root set,
% % % $\tau\in\{\mathsf{delete},\mathsf{correct},\mathsf{migrate}\}$ is the
% % % event type, and $\Delta$ contains replacement or migration information.
% % % The affected cascade is computed only through influence edges:
% % % \[
% % % C(F)=\mathrm{Reach}(F;E^{\mathrm{inf}}),
% % % \qquad
% % % D(F)=C(F)\setminus F .
% % % \]
% % % Thus repair targets $C(F)$, not only the roots in $F$.

% % % Let $\kappa_e$ denote the post-event interface. The retained valid support
% % % is
% % % \[
% % % \mathsf{Ret}(e)=
% % % \begin{cases}
% % % V\setminus C(F), & \tau=\mathsf{delete},\\[2pt]
% % % (V\setminus C(F))\cup X_\Delta, & \tau=\mathsf{correct},\\[2pt]
% % % V\setminus C(F), & \tau=\mathsf{migrate},
% % % \end{cases}
% % % \]
% % % where $X_\Delta$ denotes replacement artifacts materialized for
% % % correction events.

% % % \textsc{MemoRepair} first sets
% % % \[
% % % B_\rho\leftarrow C(F)
% % % \]
% % % and withdraws all artifacts in $B_\rho$ from service. Original artifacts
% % % in $B_\rho$ do not re-enter service; they either stay withdrawn, are
% % % removed or quarantined, or are replaced by validated successors. A
% % % successor $z_i$ for artifact $i$ may be republished only if
% % % \[
% % % \mathrm{Validate}_i(z_i)=1 .
% % % \]
% % % Validation checks replay consistency for recomputation, schema and
% % % task-regression behavior for regeneration, and forget/reference behavior
% % % for parametric repair.

% % % \subsection{Artifact-Aware Candidate Construction}
% % % \label{subsec:candidate-construction}

% % % The roots in $F$ are handled by the event semantics itself: deletion
% % % removes them, correction supplies replacements, and migration updates the
% % % interface. Repair candidates are generated for descendants in $D(F)$.

% % % Each affected descendant receives a repair mode
% % % \[
% % % \mu_i=\Phi_\mu^e(i;\mathcal{G},\mathsf{Ret}(e),\kappa_e)
% % % \in
% % % \{\mathsf{remove},\mathsf{recompute},\mathsf{regen},\mathsf{param}\}.
% % % \]
% % % Mode assignment is deterministic. Replayable deterministic artifacts are
% % % assigned $\mathsf{recompute}$. Summaries, prompt skills, and chain
% % % procedures with a constructible retained-support context are assigned
% % % $\mathsf{regen}$. Neural skills whose training support intersects
% % % $C(F)$ are assigned $\mathsf{param}$ when the forget/reference partition
% % % is available. Artifacts satisfying none of these conditions are assigned
% % % $\mathsf{remove}$.

% % % If $\mu_i=\mathsf{remove}$, $i$ remains withdrawn for the repair event.
% % % Otherwise, candidate generation returns
% % % \[
% % % q_i=(\mu_i,\pi_i,P_i,v_i,w_i,c_i),
% % % \]
% % % where $\pi_i$ is the repair operator, $P_i$ is the set of affected
% % % predecessors whose repaired successors are consumed by $\pi_i$,
% % % $v_i\in\{0,1\}$ records executability, and $w_i,c_i\ge0$ are the value
% % % and cost used by selection.

% % % The predecessor set $P_i$ is derived from the repair operator, not from
% % % all provenance links. For recomputation, $P_i$ is read from the replay
% % % trace. For regeneration, $P_i$ contains affected summaries, caches, or
% % % procedure components used in the regeneration context. For chain repair,
% % % $P_i$ also includes affected API-contract or cached-output artifacts
% % % required by the sandbox harness. Semantic retrieval edges are excluded.
% % % Candidates with unavailable, non-repairable, or cyclic requirements are
% % % marked non-executable by setting $v_i=0$.

% % % Candidate cost is the normalized resource cost of its repair operator:
% % % \[
% % % \tilde c_i =
% % % \alpha_{\mathrm{tool}} n_i^{\mathrm{tool}}
% % % +\alpha_{\mathrm{tok}} n_i^{\mathrm{tok}}
% % % +\alpha_{\mathrm{gpu}} t_i^{\mathrm{gpu}}
% % % +\alpha_{\mathrm{sand}} t_i^{\mathrm{sand}},
% % % \qquad
% % % c_i=
% % % \frac{\tilde c_i}{\sum_{j:v_j=1}\tilde c_j+\epsilon}.
% % % \]
% % % Here $n_i^{\mathrm{tool}}$ is the number of replayed tool calls,
% % % $n_i^{\mathrm{tok}}$ is the number of regeneration tokens,
% % % $t_i^{\mathrm{gpu}}$ is GPU time for parametric repair, and
% % % $t_i^{\mathrm{sand}}$ is sandbox execution time. The coefficients
% % % $\{\alpha_\bullet\}$ are fixed before evaluation.

% % % Candidate value is a fixed trace-derived score:
% % % \[
% % % \tilde w_i =
% % % \log(1+n_i^{\mathrm{use}})
% % % +\log(1+|\mathrm{Reach}(i;E^{\mathrm{inf}})\cap D(F)|)
% % % +\frac{n_i^{\mathrm{probe}}}
% % % {\max(1,\max_{j:v_j=1} n_j^{\mathrm{probe}})},
% % % \qquad
% % % w_i=
% % % \frac{\tilde w_i}{\sum_{j:v_j=1}\tilde w_j+\epsilon}.
% % % \]
% % % Here $n_i^{\mathrm{use}}$ counts historical retrievals or executions, the
% % % reachability term measures affected fan-out, and $n_i^{\mathrm{probe}}$
% % % counts held-out probes referencing $i$. If all raw values are zero, we
% % % use uniform values over executable candidates.

% % % For a neural skill $i$, let $\mathcal{S}_i$ be the support multiset used
% % % to produce its current parameters, and let $\mathrm{Prov}(z)\subseteq V$
% % % be the artifact provenance of support example $z$. Set operations on
% % % $\mathcal{S}_i$ are interpreted as multiset operations. Define
% % % \[
% % % \mathsf{For}_i(e)
% % % =
% % % \{z\in\mathcal{S}_i:
% % % \mathrm{Prov}(z)\cap C(F)\neq\varnothing\},
% % % \]
% % % \[
% % % \mathsf{New}_i(e)=
% % % \begin{cases}
% % % \mathrm{Materialize}(X_\Delta,i), & \tau=\mathsf{correct},\\
% % % \varnothing, & \tau\in\{\mathsf{delete},\mathsf{migrate}\},
% % % \end{cases}
% % % \qquad
% % % \mathsf{Ref}_i(e)=
% % % (\mathcal{S}_i\setminus\mathsf{For}_i(e))\cup\mathsf{New}_i(e).
% % % \]
% % % Thus $\mathsf{For}_i(e)$ is invalidated support and
% % % $\mathsf{Ref}_i(e)$ is retained reference support.

% % % The repairable set is
% % % \[
% % % D^+(F)=\{i\in D(F):\mu_i\neq\mathsf{remove}\}.
% % % \]
% % % For each $i\in D^+(F)$, define
% % % \[
% % % \bar P_i=P_i\cap D^+(F).
% % % \]
% % % If $P_i\not\subseteq D^+(F)$, then $i$ has a non-repairable requirement
% % % and is marked non-executable by setting $v_i=0$. The repair-time
% % % dependency graph is
% % % \[
% % % E^{\mathrm{req}}
% % % =
% % % \{(j,i):i\in D^+(F),\,j\in \bar P_i\}.
% % % \]
% % % Edges in $E^{\mathrm{req}}$ are oriented from prerequisite to dependent
% % % for execution; the selection constraint below enforces the same
% % % dependency by requiring $y_i\le y_j$.

% % % \subsection{Cost-Aware Publication Selection}
% % % \label{subsec:cost-aware-selection}

% % % For each $i\in D^+(F)$, let $y_i\in\{0,1\}$ indicate whether candidate
% % % $q_i$ is selected. Define
% % % \[
% % % \mathrm{Repair}(y)=\sum_{i\in D^+(F)} w_i y_i,
% % % \qquad
% % % \mathrm{Cost}(y)=\sum_{i\in D^+(F)} c_i y_i .
% % % \]
% % % For a fixed tradeoff parameter $\lambda\ge0$, \textsc{MemoRepair} solves
% % % \begin{alignat}{2}
% % % \max_y\quad
% % % & \mathrm{Repair}(y)-\lambda\,\mathrm{Cost}(y)
% % % & \notag\\
% % % \text{s.t.}\quad
% % % & y_i\le v_i,
% % % & \quad \forall i\in D^+(F),
% % % \label{eq:avail}\\
% % % & y_i\le y_j,
% % % & \quad \forall i\in D^+(F),\ \forall j\in \bar P_i,
% % % \label{eq:closure}\\
% % % & y_i\in\{0,1\},
% % % & \quad \forall i\in D^+(F).
% % % \label{eq:binary}
% % % \end{alignat}
% % % Constraint~\eqref{eq:avail} excludes non-executable candidates, and
% % % \eqref{eq:closure} enforces predecessor closure.

% % % A variant with an explicit cap $\sum_i c_i y_i\le\beta$ is a
% % % precedence-constrained knapsack problem in general. We therefore use the
% % % fixed-$\lambda$ scalarized selector as the default publication rule.

% % % \begin{theorem}[Scalarized repair via min-cut]
% % % \label{thm:cost-aware-repair}
% % % For fixed event $e$, candidate family $Q_\rho$, and tradeoff parameter
% % % $\lambda\ge0$, the scalarized repair-selection problem
% % % \eqref{eq:avail}--\eqref{eq:binary} reduces to maximum-weight
% % % predecessor closure and can be solved exactly by a single $s$--$t$
% % % min-cut.
% % % \end{theorem}

% % % The proof is in Appendix~\ref{app:proof-cost-aware-repair}. Briefly,
% % % setting $p_i=w_i-\lambda c_i$ turns candidate selection into
% % % maximum-weight closure: positive-weight nodes connect to the source,
% % % negative-weight nodes connect to the sink, and large-capacity edges
% % % enforce executability and predecessor requirements.

% % % \begin{algorithm}[!ht]
% % % \caption{\textsc{MemoRepair}}
% % % \label{alg:memo-repair-main}
% % % \small
% % % \begin{algorithmic}[1]
% % % \REQUIRE Repair event $e=(F,\tau,\Delta)$, graph $\mathcal{G}$, tradeoff $\lambda$
% % % \ENSURE Republished validated successors
% % % \STATE Compute $C(F)$, $D(F)$, and $\mathsf{Ret}(e)$
% % % \STATE Set $B_\rho\leftarrow C(F)$ and withdraw $B_\rho$ from service
% % % \STATE Construct $Q_\rho=\{q_i:i\in D(F),\,\mu_i\neq\mathsf{remove}\}$
% % % \STATE Mark unavailable, non-repairable, or cyclic requirements non-executable
% % % \STATE Build $E^{\mathrm{req}}$ from $\{\bar P_i\}_{q_i\in Q_\rho}$
% % % \STATE Solve \eqref{eq:avail}--\eqref{eq:binary} and set $S_\rho=\{i:y_i=1\}$
% % % \STATE Execute $S_\rho$ in topological order over $E^{\mathrm{req}}[S_\rho]$
% % % \STATE Republish validated predecessor-closed successors; keep failures withdrawn
% % % \end{algorithmic}
% % % \end{algorithm}






% % % % \section{Method}
% % % % \label{sec:method}

% % % % A repair event in \textsc{MemoRepair} is a barrier-first transition over
% % % % the affected descendant cascade. Given an invalidated root set, the
% % % % system first withdraws all affected descendants from service, then
% % % % constructs repair candidates from retained support and staged repaired
% % % % predecessors, selects a predecessor-closed subset under a repair--cost
% % % % tradeoff, and republishes only validated successors
% % % % (Figure~\ref{fig:framework}). Full notation is summarized in
% % % % Appendix~\ref{app:notation}.

% % % % \begin{figure}[!ht]
% % % %     \centering
% % % %     \includegraphics[width=\linewidth]{figures/memorepair_figure.pdf}
% % % %     \caption{Repair transition enforced by \textsc{MemoRepair}: affected
% % % %     descendants are withdrawn, valid successors are constructed, and a
% % % %     predecessor-closed successor state is republished.}
% % % %     \label{fig:framework}
% % % % \end{figure}

% % % % \subsection{Problem Setup}
% % % % \label{subsec:problem-setup}

% % % % Persistent agentic memory is represented by a directed provenance graph
% % % % \[
% % % % \mathcal{G}=(V,E^{\mathrm{inf}},E^{\mathrm{sem}}),
% % % % \]
% % % % where each node $x\in V$ is a durable artifact. Influence edges
% % % % $E^{\mathrm{inf}}$ encode derivation and determine repair scope; semantic
% % % % edges $E^{\mathrm{sem}}$ support retrieval only. Each artifact has a kind
% % % % tag
% % % % \[
% % % % \mathrm{kind}(x)\in
% % % % \{\mathsf{record},\mathsf{cache},\mathsf{summary},\mathsf{skill}\},
% % % % \]
% % % % and each skill has an architecture tag
% % % % \[
% % % % \mathrm{arch}(x)\in
% % % % \{\mathsf{neural},\mathsf{prompt},\mathsf{chain}\}.
% % % % \]

% % % % A repair event is $e=(F,\tau,\Delta)$, where $F\subseteq V$ is the
% % % % invalidated root set,
% % % % $\tau\in\{\mathsf{delete},\mathsf{correct},\mathsf{migrate}\}$ is the
% % % % update type, and $\Delta$ contains optional replacement or migration
% % % % information. The affected cascade is computed only through influence
% % % % edges:
% % % % \[
% % % % C(F)=\mathrm{Reach}(F;E^{\mathrm{inf}}),
% % % % \qquad
% % % % D(F)=C(F)\setminus F .
% % % % \]
% % % % Thus the repair target is $C(F)$, not only the roots in $F$.

% % % % Let $\kappa_e$ denote the post-event interface. The retained valid support
% % % % after event $e$ is
% % % % \[
% % % % \mathsf{Ret}(e)=
% % % % \begin{cases}
% % % % V\setminus C(F), & \tau=\mathsf{delete},\\[2pt]
% % % % (V\setminus C(F))\cup X_\Delta, & \tau=\mathsf{correct},\\[2pt]
% % % % V\setminus C(F), & \tau=\mathsf{migrate},
% % % % \end{cases}
% % % % \]
% % % % where $X_\Delta$ denotes replacement artifacts materialized for
% % % % correction events. Appendix~\ref{app:provenance-details} gives the
% % % % provenance projection used to obtain $\mathcal{G}$.

% % % % \subsection{Withdrawal Barrier}
% % % % \label{subsec:withdrawal-barrier}

% % % % For event $e$, \textsc{MemoRepair} initializes the hidden set as
% % % % \[
% % % % B_\rho \leftarrow C(F).
% % % % \]
% % % % Artifacts in $B_\rho$ remain non-servable throughout the repair event.
% % % % They either stay withdrawn, are permanently removed or quarantined, or
% % % % are replaced in service by validated successors.

% % % % A successor $z_i$ for artifact $i$ is eligible for republication only if
% % % % \[
% % % % \mathrm{Validate}_i(z_i)=1 .
% % % % \]
% % % % For recomputation, validation checks replay consistency. For
% % % % regeneration, it checks schema validity, execution compatibility, and
% % % % held-out task behavior. For parametric repair, it checks suppression on
% % % % invalidated support and retained utility on reference support.
% % % % Appendix~\ref{app:barrier-details} gives the implementation details.

% % % % \begin{definition}[Feasible repair plan]
% % % % \label{def:feasible}
% % % % A repair plan $\rho=(B_\rho,Q_\rho,S_\rho,R_\rho)$ is feasible if
% % % % (i) $C(F)\subseteq B_\rho$; (ii) no original artifact in $B_\rho$
% % % % becomes servable again, and re-entry occurs only through a validated
% % % % successor; (iii) every selected candidate is executable; (iv) the
% % % % selected set is predecessor-closed with respect to repair-time
% % % % requirements; and (v) only validated successors are republished. Here
% % % % $Q_\rho$ is the candidate family, $S_\rho$ is the selected candidate set,
% % % % and $R_\rho$ is the republished successor set.
% % % % \end{definition}

% % % % \subsection{Artifact-Aware Candidate Construction}
% % % % \label{subsec:artifact-aware-repair}

% % % % The roots in $F$ are handled by the event semantics itself: deletion
% % % % removes them, correction supplies replacements, and migration updates the
% % % % interface. Repair candidates are generated for affected descendants in
% % % % $D(F)$.

% % % % Each affected descendant $i\in D(F)$ receives successor semantics through
% % % % an event-indexed matching map
% % % % \[
% % % % \Phi_\mu^e:
% % % % D(F)\rightarrow
% % % % \{\mathsf{remove},\mathsf{recompute},\mathsf{regen},\mathsf{param}\},
% % % % \qquad
% % % % \mu_i=\Phi_\mu^e(i;\mathcal{G},\mathsf{Ret}(e),\kappa_e).
% % % % \]
% % % % Mode assignment is deterministic given the graph metadata, repair
% % % % library, retained support, and post-event interface. A deterministic
% % % % cache or materialized artifact is assigned $\mathsf{recompute}$ when a
% % % % valid replay trace is available and all non-affected inputs lie in
% % % % $\mathsf{Ret}(e)$ or in staged repaired predecessors. Summaries, prompt
% % % % skills, and chain procedures are assigned $\mathsf{regen}$ when a
% % % % regeneration context can be formed from $\mathsf{Ret}(e)$ and repaired
% % % % predecessors under $\kappa_e$. Neural skills whose training support
% % % % intersects $C(F)$ are assigned $\mathsf{param}$ when the
% % % % provenance-derived invalidated/reference partition is available.
% % % % Artifacts satisfying none of these conditions are assigned
% % % % $\mathsf{remove}$.

% % % % \begin{table}[!ht]
% % % % \centering
% % % % \small
% % % % \setlength{\tabcolsep}{8pt}
% % % % \begin{tabular}{p{0.18\linewidth}p{0.70\linewidth}}
% % % % \toprule
% % % % \textbf{Mode} & \textbf{Semantics} \\
% % % % \midrule
% % % % $\mathsf{remove}$ &
% % % % Permanently withdraw when no valid successor can be produced from retained
% % % % support, staged predecessors, and the current interface. \\
% % % % $\mathsf{recompute}$ &
% % % % Deterministically replay from retained support and staged repaired
% % % % predecessors. \\
% % % % $\mathsf{regen}$ &
% % % % Rebuild summaries, prompt skills, and chain procedures from retained
% % % % support and staged repaired predecessors under the current interface. \\
% % % % $\mathsf{param}$ &
% % % % Repair skill parameters using provenance-derived invalidated and
% % % % reference support, with validation checking suppression and retained
% % % % utility. \\
% % % % \bottomrule
% % % % \end{tabular}
% % % % \caption{Artifact-aware repair modes in \textsc{MemoRepair}.}
% % % % \label{tab:repair-modes}
% % % % \end{table}

% % % % If $\mu_i=\mathsf{remove}$, no repair candidate is generated and $i$
% % % % remains withdrawn. Otherwise, candidate generation returns a local repair
% % % % contract
% % % % \[
% % % % \Psi_e(i)=q_i=(\mu_i,\pi_i,P_i,v_i,w_i,c_i),
% % % % \]
% % % % where $\pi_i$ is the repair operator, $P_i\subseteq D(F)$ contains
% % % % affected predecessors whose repaired successors are consumed by
% % % % $\pi_i$, $v_i\in\{0,1\}$ records executability, and $w_i,c_i\ge0$ are
% % % % the value and cost used by selection.

% % % % The predecessor set $P_i$ contains only affected artifacts whose repaired
% % % % successors are explicitly consumed by $\pi_i$. For recomputation, $P_i$
% % % % is read from the replay trace. For regeneration, $P_i$ contains affected
% % % % summaries, caches, or procedure components used in the regeneration
% % % % context. For chain repair, $P_i$ also includes affected API-contract or
% % % % cached-output artifacts required by the sandbox harness. Semantic
% % % % retrieval edges are excluded. A candidate is executable, $v_i=1$, only
% % % % when its operator is admissible under $\kappa_e$ and all required
% % % % predecessors are repairable. Candidates with unavailable, non-repairable,
% % % % or cyclic requirements are marked non-executable by setting $v_i=0$.

% % % % Candidate cost is the normalized resource cost of its repair operator:
% % % % \[
% % % % \tilde c_i =
% % % % \alpha_{\mathrm{tool}} n_i^{\mathrm{tool}}
% % % % +
% % % % \alpha_{\mathrm{tok}} n_i^{\mathrm{tok}}
% % % % +
% % % % \alpha_{\mathrm{gpu}} t_i^{\mathrm{gpu}}
% % % % +
% % % % \alpha_{\mathrm{sand}} t_i^{\mathrm{sand}},
% % % % \qquad
% % % % c_i=
% % % % \frac{\tilde c_i}{\sum_{j:v_j=1}\tilde c_j+\epsilon}.
% % % % \]
% % % % Here $n_i^{\mathrm{tool}}$ is the number of replayed tool calls,
% % % % $n_i^{\mathrm{tok}}$ is the number of LLM tokens used for regeneration,
% % % % $t_i^{\mathrm{gpu}}$ is GPU time for parametric repair, and
% % % % $t_i^{\mathrm{sand}}$ is sandbox execution time. The coefficients
% % % % $\{\alpha_\bullet\}$ are fixed before evaluation.

% % % % Candidate value is a fixed trace-derived score:
% % % % \[
% % % % \tilde w_i =
% % % % \log(1+n_i^{\mathrm{use}})
% % % % +
% % % % \log(1+|\mathrm{Reach}(i;E^{\mathrm{inf}})\cap D(F)|)
% % % % +
% % % % \frac{n_i^{\mathrm{probe}}}{\max_{j:v_j=1}n_j^{\mathrm{probe}}+\epsilon},
% % % % \qquad
% % % % w_i=
% % % % \frac{\tilde w_i}{\sum_{j:v_j=1}\tilde w_j+\epsilon}.
% % % % \]
% % % % Here $n_i^{\mathrm{use}}$ counts historical retrievals or executions,
% % % % the reachability term measures affected fan-out, and
% % % % $n_i^{\mathrm{probe}}$ counts held-out probes that reference $i$. If all
% % % % raw values are zero for an event, we use uniform values over executable
% % % % candidates. Thus the selector optimizes a fixed trace-derived surrogate
% % % % rather than a free policy layer.

% % % % We use three candidate states. A descendant is \emph{repairable} if
% % % % $\mu_i\neq\mathsf{remove}$. A repairable candidate is \emph{executable}
% % % % if $v_i=1$. A selected candidate becomes \emph{validated} only after
% % % % execution produces a successor $z_i$ with
% % % % $\mathrm{Validate}_i(z_i)=1$.

% % % % Parametric neural skills require support partitioning. For a neural skill
% % % % $i$, let $\mathcal{S}_i$ be the support multiset used to produce its
% % % % current parameters. Set operations on $\mathcal{S}_i$ are interpreted as
% % % % multiset operations. For $z\in\mathcal{S}_i$, let
% % % % $\mathrm{Prov}(z)\subseteq V$ denote its artifact provenance. For
% % % % $e=(F,\tau,\Delta)$, define
% % % % \begin{align}
% % % % \mathsf{For}_i(e)
% % % % &=
% % % % \{z\in\mathcal{S}_i:
% % % % \mathrm{Prov}(z)\cap C(F)\neq\varnothing\},
% % % % \label{eq:forget-support}\\
% % % % \mathsf{New}_i(e)
% % % % &=
% % % % \begin{cases}
% % % % \mathrm{Materialize}(X_\Delta,i), & \tau=\mathsf{correct},\\
% % % % \varnothing, & \tau\in\{\mathsf{delete},\mathsf{migrate}\},
% % % % \end{cases}
% % % % \label{eq:new-support}\\
% % % % \mathsf{Ref}_i(e)
% % % % &=
% % % % \bigl(\mathcal{S}_i\setminus\mathsf{For}_i(e)\bigr)
% % % % \cup
% % % % \mathsf{New}_i(e).
% % % % \label{eq:reference-support}
% % % % \end{align}
% % % % Here $\mathsf{For}_i(e)$ is invalidated support,
% % % % $\mathsf{New}_i(e)$ is correction support materialized from replacement
% % % % artifacts, and $\mathsf{Ref}_i(e)$ is retained reference support. In the
% % % % LoRA instantiation, parametric repair uses operators such as
% % % % LUNE~\citep{lune2025} and OOO~\citep{ooo2024};
% % % % Appendix~\ref{app:candidate-instantiation} gives implementation details.

% % % % The repairable set is
% % % % \[
% % % % D^+(F)=\{i\in D(F):\mu_i\neq\mathsf{remove}\}.
% % % % \]
% % % % For each candidate, let
% % % % \[
% % % % P_i^+ = P_i\cap D^+(F)
% % % % \]
% % % % be the subset of required predecessors that also have repair candidates.
% % % % If $P_i\not\subseteq D^+(F)$, then $i$ has a non-repairable requirement
% % % % and is marked non-executable by setting $v_i=0$. After this pruning,
% % % % repair-time requirements induce
% % % % \[
% % % % E^{\mathrm{req}}
% % % % =
% % % % \{(j,i)\in D^+(F)\times D^+(F):j\in P_i^+\}.
% % % % \]
% % % % An edge $(j,i)\in E^{\mathrm{req}}$ means that the repaired successor of
% % % % $j$ must be staged before the successor of $i$ can be executed. Thus
% % % % $E^{\mathrm{req}}$ captures repair-time prerequisites, not raw
% % % % provenance. Edges are oriented from prerequisite to dependent for
% % % % execution; the closure constraint below enforces the same relation as
% % % % $y_i\le y_j$.

% % % % \subsection{Cost-Aware Publication Selection}
% % % % \label{subsec:cost-aware-repair}

% % % % For each $i\in D^+(F)$, let $y_i\in\{0,1\}$ indicate whether candidate
% % % % $q_i$ is selected. Define
% % % % \[
% % % % \mathrm{Repair}(y)=\sum_{i\in D^+(F)}w_i y_i,
% % % % \qquad
% % % % \mathrm{Cost}(y)=\sum_{i\in D^+(F)}c_i y_i .
% % % % \]
% % % % For a fixed tradeoff parameter $\lambda\ge0$, \textsc{MemoRepair} solves
% % % % the scalarized publication problem
% % % % \begin{alignat}{2}
% % % % \max_y\quad
% % % % & \mathrm{Repair}(y)-\lambda\,\mathrm{Cost}(y)
% % % % & \notag\\
% % % % \text{s.t.}\quad
% % % % & y_i\le v_i,
% % % % & \quad \forall i\in D^+(F),
% % % % \label{eq:avail}\\
% % % % & y_i\le y_j,
% % % % & \quad \forall i\in D^+(F),\ \forall j\in P_i^+,
% % % % \label{eq:closure}\\
% % % % & y_i\in\{0,1\},
% % % % & \quad \forall i\in D^+(F).
% % % % \label{eq:binary}
% % % % \end{alignat}
% % % % Constraint~\eqref{eq:avail} excludes non-executable candidates, and
% % % % \eqref{eq:closure} enforces predecessor closure: a candidate may be
% % % % selected only if all required repaired predecessors are also selected.

% % % % A variant with an explicit hard cap
% % % % $\sum_i c_i y_i\le \beta$ is a precedence-constrained knapsack problem in
% % % % general. We therefore treat the hard-cap variant separately and use the
% % % % fixed-$\lambda$ scalarized selector as the default publication rule.

% % % % \begin{theorem}[Scalarized repair via min-cut]
% % % % \label{thm:cost-aware-repair}
% % % % For fixed event $e$, candidate family $Q_\rho$, and tradeoff parameter
% % % % $\lambda\ge0$, the scalarized repair-selection problem
% % % % \eqref{eq:avail}--\eqref{eq:binary} reduces to maximum-weight
% % % % predecessor closure and can be solved exactly by a single $s$--$t$
% % % % min-cut.
% % % % \end{theorem}

% % % % \begin{proof}[Proof sketch]
% % % % Let
% % % % \[
% % % % p_i=w_i-\lambda c_i
% % % % \]
% % % % be the net value of selecting candidate $i$, and let
% % % % \[
% % % % W^+=\sum_{i:p_i>0}p_i .
% % % % \]
% % % % Construct a flow network with one node per repairable descendant, plus
% % % % source $s$ and sink $t$. If $p_i>0$, add an edge $s\to i$ with capacity
% % % % $p_i$; if $p_i<0$, add an edge $i\to t$ with capacity $-p_i$. Let
% % % % $M>W^+$. For each dependency $j\in P_i^+$, add a large-capacity closure
% % % % edge $i\to j$ with capacity $M$. For each non-executable candidate
% % % % $v_i=0$, add an exclusion edge $i\to t$ with capacity $M$.

% % % % For any cut $(S,T)$ with $s\in S$, define the selected set
% % % % $U=S\cap D^+(F)$. If $U$ contains a non-executable candidate or contains
% % % % a dependent without one of its required predecessors, the cut pays at
% % % % least $M$, which exceeds the total possible positive reward. Hence no
% % % % minimum cut violates executability or predecessor closure. For any
% % % % feasible selected set $U$, the cut capacity is
% % % % \[
% % % % W^+-\sum_{i\in U}p_i
% % % % =
% % % % W^+-\sum_{i\in U}(w_i-\lambda c_i).
% % % % \]
% % % % Since $W^+$ is constant, minimizing cut capacity is equivalent to
% % % % maximizing the scalarized objective.
% % % % \end{proof}

% % % % Algorithm~\ref{alg:memo-repair-main} summarizes the repair transition.

% % % % \begin{algorithm}[!ht]
% % % % \caption{\textsc{MemoRepair}}
% % % % \label{alg:memo-repair-main}
% % % % \small
% % % % \begin{algorithmic}[1]
% % % % \REQUIRE Repair event $e=(F,\tau,\Delta)$, memory graph $\mathcal{G}$, tradeoff $\lambda$
% % % % \ENSURE Republished validated successors
% % % % \STATE Compute $C(F)$, $D(F)$, and $\mathsf{Ret}(e)$
% % % % \STATE Set $B_\rho\leftarrow C(F)$ and withdraw $B_\rho$ from service
% % % % \STATE Initialize $Q_\rho\leftarrow\varnothing$
% % % % \FOR{each $i\in D(F)$}
% % % %     \STATE Assign mode $\mu_i=\Phi_\mu^e(i;\mathcal{G},\mathsf{Ret}(e),\kappa_e)$
% % % %     \IF{$\mu_i\neq \mathsf{remove}$}
% % % %         \STATE Construct $q_i=(\mu_i,\pi_i,P_i,v_i,w_i,c_i)$ and add $q_i$ to $Q_\rho$
% % % %     \ENDIF
% % % % \ENDFOR
% % % % \STATE Mark candidates with unavailable, non-repairable, or cyclic requirements as non-executable
% % % % \STATE Build $E^{\mathrm{req}}$ from $\{P_i^+\}_{q_i\in Q_\rho}$
% % % % \STATE Solve \eqref{eq:avail}--\eqref{eq:binary} and set $S_\rho=\{i:y_i=1\}$
% % % % \STATE Execute $S_\rho$ in topological order over $E^{\mathrm{req}}[S_\rho]$, staging only validated predecessors
% % % % \STATE Republish validated predecessor-closed successors; keep failures and their dependents withdrawn or quarantined
% % % % \end{algorithmic}
% % % % \end{algorithm}

% % % % Appendix~\ref{app:proof-cost-aware-repair} gives the full proof of
% % % % Theorem~\ref{thm:cost-aware-repair}. Appendix~\ref{app:complexity-guarantees}
% % % % summarizes complexity and additional guarantees.





































% % % % % \section{Method}
% % % % % \label{sec:method}

% % % % % A repair event in \textsc{MemoRepair} is a transition from a pre-event
% % % % % visible memory state to a post-event validated successor state. The
% % % % % transition is defined over the affected descendant cascade rather than
% % % % % over the invalidated root alone. It enforces three invariants
% % % % % (Figure~\ref{fig:framework}): affected descendants are withdrawn before
% % % % % repair, successors are constructed from post-event valid support, and
% % % % % republication is restricted to validated successors that satisfy
% % % % % repair-time dependency constraints. Full notation is summarized in
% % % % % Appendix~\ref{app:notation}.

% % % % % \begin{figure}[!ht]
% % % % %     \centering
% % % % %     \includegraphics[width=\linewidth]{figures/memorepair_figure.pdf}
% % % % %     \caption{Repair transition enforced by \textsc{MemoRepair}: affected
% % % % %     descendants are withdrawn, valid successors are constructed, and a
% % % % %     predecessor-closed successor state is republished.}
% % % % %     \label{fig:framework}
% % % % % \end{figure}

% % % % % \subsection{Problem Setup}
% % % % % \label{subsec:problem-setup}

% % % % % Persistent agentic memory is represented by a directed provenance graph
% % % % % \[
% % % % % \mathcal{G}=(V,E^{\mathrm{inf}},E^{\mathrm{sem}}),
% % % % % \]
% % % % % where each node $x\in V$ is a durable artifact. Influence edges
% % % % % $E^{\mathrm{inf}}$ encode derivation and determine repair scope; semantic
% % % % % edges $E^{\mathrm{sem}}$ support retrieval only. Each artifact has a kind
% % % % % tag
% % % % % \[
% % % % % \mathrm{kind}(x)\in
% % % % % \{\mathsf{record},\mathsf{cache},\mathsf{summary},\mathsf{skill}\},
% % % % % \]
% % % % % and each skill has an architecture tag
% % % % % \[
% % % % % \mathrm{arch}(x)\in
% % % % % \{\mathsf{neural},\mathsf{prompt},\mathsf{chain}\}.
% % % % % \]

% % % % % A repair event is $e=(F,\tau,\Delta)$, where $F\subseteq V$ is the
% % % % % invalidated root set,
% % % % % $\tau\in\{\mathsf{delete},\mathsf{correct},\mathsf{migrate}\}$ is the
% % % % % update type, and $\Delta$ contains optional replacement or migration
% % % % % information. The affected cascade is computed only through influence
% % % % % edges:
% % % % % \[
% % % % % C(F)=\mathrm{Reach}(F;E^{\mathrm{inf}}),
% % % % % \qquad
% % % % % D(F)=C(F)\setminus F .
% % % % % \]
% % % % % Thus the repair target is $C(F)$, not only the roots in $F$.

% % % % % Let $\kappa$ and $\kappa_e$ denote the pre-event and post-event
% % % % % interfaces. The retained valid support after event $e$ is
% % % % % \[
% % % % % \mathsf{Ret}(e)=
% % % % % \begin{cases}
% % % % % V\setminus C(F), & \tau=\mathsf{delete},\\[2pt]
% % % % % (V\setminus C(F))\cup X_\Delta, & \tau=\mathsf{correct},\\[2pt]
% % % % % V\setminus C(F), & \tau=\mathsf{migrate},
% % % % % \end{cases}
% % % % % \]
% % % % % where $X_\Delta$ is the replacement root set for correction events.
% % % % % Appendix~\ref{app:provenance-details} gives the provenance projection
% % % % % used to obtain $\mathcal{G}$.

% % % % % \subsection{Withdrawal Barrier}
% % % % % \label{subsec:withdrawal-barrier}

% % % % % For event $e$, \textsc{MemoRepair} initializes the hidden set as
% % % % % \[
% % % % % B_\rho \leftarrow C(F).
% % % % % \]
% % % % % Artifacts in $B_\rho$ are non-servable throughout the repair event unless
% % % % % they are permanently removed, quarantined, or replaced by validated
% % % % % successors.

% % % % % A successor $x_i'$ for artifact $i$ is eligible for republication only if
% % % % % \[
% % % % % \mathrm{Validate}_i(x_i')=1 .
% % % % % \]
% % % % % For recomputation, validation checks replay consistency. For
% % % % % regeneration, it checks schema validity, execution compatibility, and
% % % % % held-out task behavior. For parametric repair, it checks suppression on
% % % % % invalidated support and retained utility on reference support.
% % % % % Appendix~\ref{app:barrier-details} gives the implementation details.

% % % % % \begin{definition}[Feasible repair plan]
% % % % % \label{def:feasible}
% % % % % A repair plan $\rho=(B_\rho,Q_\rho,S_\rho,R_\rho)$ is feasible if
% % % % % (i) $C(F)\subseteq B_\rho$; (ii) no artifact in $B_\rho$ becomes servable
% % % % % again unless it is removed, quarantined, or replaced by a validated
% % % % % successor; (iii) every selected candidate is executable; (iv) the
% % % % % selected set is predecessor-closed; and (v) only validated successors are
% % % % % republished.
% % % % % \end{definition}

% % % % % \subsection{Artifact-Aware Successor Semantics}
% % % % % \label{subsec:artifact-aware-repair}

% % % % % Each affected descendant $i\in D(F)$ receives successor semantics through
% % % % % an event-indexed matching map
% % % % % \[
% % % % % \Phi_\mu^e:
% % % % % D(F)\rightarrow
% % % % % \{\mathsf{remove},\mathsf{recompute},\mathsf{regen},\mathsf{param}\},
% % % % % \qquad
% % % % % \mu_i=\Phi_\mu^e(i;\mathcal{G},\mathsf{Ret}(e),\kappa_e).
% % % % % \]
% % % % % The map uses the artifact kind, skill architecture, replay trace,
% % % % % retained support, affected predecessors in $E^{\mathrm{inf}}$, and the
% % % % % post-event interface. Replayable deterministic artifacts are assigned
% % % % % $\mathsf{recompute}$; summaries, prompt skills, and chain procedures with
% % % % % retained support are assigned $\mathsf{regen}$; neural skills whose
% % % % % training support intersects $C(F)$ are assigned $\mathsf{param}$; and
% % % % % artifacts with no constructible valid successor are assigned
% % % % % $\mathsf{remove}$.

% % % % % If $\mu_i=\mathsf{remove}$, $i$ remains withdrawn. Otherwise, the local
% % % % % repair contract for $i$ is
% % % % % \[
% % % % % \Psi_e(i)=q_i=(\mu_i,\pi_i,P_i,v_i,w_i,c_i),
% % % % % \]
% % % % % where $\pi_i$ is the repair operator, $P_i\subseteq D(F)$ contains the
% % % % % affected predecessors whose repaired successors are consumed by $\pi_i$,
% % % % % $v_i\in\{0,1\}$ records executability, and $w_i,c_i\ge0$ are the value
% % % % % and cost used by selection.

% % % % % All four contract entries $(P_i,v_i,w_i,c_i)$ are deterministic
% % % % % closed-form functions of $(\mathcal{G},e)$, not design knobs: $P_i$ is
% % % % % the affected-predecessor subset actually consumed by $\pi_i$ (semantic
% % % % % retrieval edges excluded); $v_i$ is $1$ iff every $j\in P_i$ is
% % % % % itself repairable and $\pi_i$ is admissible under $\kappa_e$; $w_i$
% % % % % combines historical use, affected fan-out, and held-out probe count;
% % % % % and $c_i$ sums replayed tool calls, regeneration tokens, parametric
% % % % % GPU time, and sandbox time at fixed coefficients
% % % % % $\{\alpha_\bullet\}$. Full closed-form expressions and the per-mode
% % % % % normalization are in Appendix~\ref{app:candidate-instantiation}.

% % % % % We use three candidate states. A descendant is \emph{repairable} if
% % % % % $\mu_i\neq\mathsf{remove}$. A repairable candidate is \emph{executable}
% % % % % if $v_i=1$. A selected candidate becomes \emph{validated} only after
% % % % % execution produces a successor $x_i'$ with
% % % % % $\mathrm{Validate}_i(x_i')=1$.

% % % % % Parametric neural skills require support partitioning. For a neural skill
% % % % % $i$, let $\mathcal{S}_i$ be the support multiset used to produce its
% % % % % current parameters. For $z\in\mathcal{S}_i$, let
% % % % % $\mathrm{Prov}(z)\subseteq V$ denote its artifact provenance. For
% % % % % $e=(F,\tau,\Delta)$, define
% % % % % \begin{align}
% % % % % \mathsf{For}_i(e)
% % % % % &=
% % % % % \{z\in\mathcal{S}_i:
% % % % % \mathrm{Prov}(z)\cap C(F)\neq\varnothing\},
% % % % % \label{eq:forget-support}\\
% % % % % \mathsf{New}_i(e)
% % % % % &=
% % % % % \begin{cases}
% % % % % \mathrm{Materialize}(X_\Delta,i), & \tau=\mathsf{correct},\\
% % % % % \varnothing, & \tau\in\{\mathsf{delete},\mathsf{migrate}\},
% % % % % \end{cases}
% % % % % \label{eq:new-support}\\
% % % % % \mathsf{Ref}_i(e)
% % % % % &=
% % % % % \bigl(\mathcal{S}_i\setminus\mathsf{For}_i(e)\bigr)
% % % % % \cup
% % % % % \mathsf{New}_i(e).
% % % % % \label{eq:reference-support}
% % % % % \end{align}
% % % % % Here $\mathsf{For}_i(e)$ is invalidated support,
% % % % % $\mathsf{New}_i(e)$ is correction support, and $\mathsf{Ref}_i(e)$ is
% % % % % retained reference support. In the LoRA instantiation, parametric repair
% % % % % uses operators such as LUNE~\citep{lune2025} and OOO~\citep{ooo2024};
% % % % % Appendix~\ref{app:candidate-instantiation} gives the matching, value,
% % % % % and cost instantiation.

% % % % % The repairable set is
% % % % % \[
% % % % % D^+(F)=\{i\in D(F):\mu_i\neq\mathsf{remove}\}.
% % % % % \]
% % % % % Repair-time requirements induce
% % % % % \[
% % % % % E^{\mathrm{req}}
% % % % % =
% % % % % \{(j,i)\in D^+(F)\times D^+(F):j\in P_i\}.
% % % % % \]
% % % % % Candidates with unavailable or non-repairable required predecessors are
% % % % % marked non-executable by setting $v_i=0$. Thus
% % % % % $E^{\mathrm{req}}$ captures publication prerequisites, not raw
% % % % % provenance.

% % % % % \subsection{Cost-Aware Publication Selection}
% % % % % \label{subsec:cost-aware-repair}

% % % % % For each $i\in D^+(F)$, let $x_i\in\{0,1\}$ indicate whether candidate
% % % % % $q_i$ is selected. Define
% % % % % \[
% % % % % \mathrm{Repair}(x)=\sum_{i\in D^+(F)}w_i x_i,
% % % % % \qquad
% % % % % \mathrm{Cost}(x)=\sum_{i\in D^+(F)}c_i x_i .
% % % % % \]
% % % % % We expose the cost--quality tradeoff in two equivalent forms. The
% % % % % \emph{hard-budgeted} form fixes a hard repair budget $B\ge0$:
% % % % % \begin{alignat}{2}
% % % % % \max_x\quad & \mathrm{Repair}(x) & \notag\\
% % % % % \text{s.t.}\quad & \mathrm{Cost}(x)\le B,
% % % % % & \label{eq:hardbudget}\\
% % % % % & x_i\le v_i,\ x_i\le x_j\ \forall j\in P_i,\ x_i\in\{0,1\}.
% % % % % & \notag
% % % % % \end{alignat}
% % % % % The \emph{cost-regularized} form scalarizes $\mathrm{Cost}(x)$ into the
% % % % % objective through $\lambda\ge0$:
% % % % % \begin{alignat}{2}
% % % % % \max_x\quad
% % % % % & \mathrm{Repair}(x)-\lambda\,\mathrm{Cost}(x)
% % % % % & \notag\\
% % % % % \text{s.t.}\quad
% % % % % & x_i\le v_i,
% % % % % & \label{eq:avail}\\
% % % % % & x_i\le x_j,\quad \forall j\in P_i,
% % % % % & \label{eq:closure}\\
% % % % % & x_i\in\{0,1\}.
% % % % % & \label{eq:binary}
% % % % % \end{alignat}
% % % % % Constraint~\eqref{eq:avail} excludes non-executable candidates, and
% % % % % \eqref{eq:closure} enforces predecessor closure. The hard-budgeted
% % % % % form~\eqref{eq:hardbudget} is precedence-constrained knapsack and
% % % % % NP-hard in general; we solve it by bisecting on $\lambda$ around the
% % % % % cost-regularized solver, as stated in
% % % % % Corollary~\ref{cor:hard-budget}.

% % % % % \begin{theorem}[Cost-regularized repair via min-cut]
% % % % % \label{thm:cost-aware-repair}
% % % % % For fixed event $e$, candidate family $Q_\rho$, and tradeoff parameter
% % % % % $\lambda\ge0$, the cost-regularized repair-selection problem
% % % % % \eqref{eq:avail}--\eqref{eq:binary} reduces to maximum-weight
% % % % % predecessor closure and can be solved exactly by a single $s$-$t$ min-cut.
% % % % % \end{theorem}

% % % % % The proof is in Appendix~\ref{app:proof-cost-aware-repair}. Briefly,
% % % % % setting $p_i=w_i-\lambda c_i$ turns candidate selection into
% % % % % maximum-weight closure with large-capacity edges enforcing
% % % % % executability and predecessor requirements. The hard-budgeted
% % % % % form~\eqref{eq:hardbudget} is recovered by bisection on $\lambda$
% % % % % around the Theorem~\ref{thm:cost-aware-repair} solver, returning a
% % % % % feasible $x^\star$ with $\mathrm{Cost}(x^\star)\le B$ in
% % % % % $O(\log(\lambda_{\max}/\epsilon))$ inner solves and integrality gap at
% % % % % most $\max_i c_i$ to the hard-budgeted optimum
% % % % % (Corollary~\ref{cor:hard-budget}, Algorithm~\ref{alg:budget-bisection},
% % % % % Appendix~\ref{app:hard-budget-bisection}).

% % % % % Algorithm~\ref{alg:memo-repair-main} summarizes the repair transition.

% % % % % \begin{algorithm}[!ht]
% % % % % \caption{\textsc{MemoRepair}}
% % % % % \label{alg:memo-repair-main}
% % % % % \small
% % % % % \begin{algorithmic}[1]
% % % % % \REQUIRE Repair event $e=(F,\tau,\Delta)$, memory graph $\mathcal{G}$, tradeoff $\lambda$
% % % % % \ENSURE Republished validated successors
% % % % % \STATE Compute $C(F)$, $D(F)$, and $\mathsf{Ret}(e)$
% % % % % \STATE Set $B_\rho\leftarrow C(F)$ and withdraw $B_\rho$ from service
% % % % % \STATE Build $Q_\rho=\{\Psi_e(i):i\in D(F),\Phi_\mu^e(i)\neq\mathsf{remove}\}$
% % % % % \STATE Build $E^{\mathrm{req}}$ from $\{P_i\}_{q_i\in Q_\rho}$
% % % % % \STATE Solve \eqref{eq:avail}--\eqref{eq:binary} for $S_\rho$
% % % % % \STATE Execute $S_\rho$ in topological order over $E^{\mathrm{req}}[S_\rho]$
% % % % % \STATE Republish validated successors and keep failures withdrawn
% % % % % \end{algorithmic}
% % % % % \end{algorithm}

% % % % % Appendix~\ref{app:complexity-guarantees} summarizes complexity and
% % % % % additional guarantees.



















% % % % % % \section{Method}
% % % % % % \label{sec:method}

% % % % % % When a root artifact is deleted, corrected, or migrated, repair must operate over the affected descendant cascade rather than the root alone. \textsc{MemoRepair} proceeds in two steps (Figure~\ref{fig:framework}): it first withdraws the affected cascade from service, then restores a dependency-consistent subset of descendants under a repair--cost tradeoff. Full notation is summarized in Appendix~\ref{app:notation}.

% % % % % % \begin{figure}[!ht]
% % % % % %     \centering
% % % % % %     \includegraphics[width=\linewidth]{figures/memorepair_figure.pdf}
% % % % % %     \caption{Overview of \textsc{MemoRepair}: from invalidation event to budgeted repair.}
% % % % % %     \label{fig:framework}
% % % % % % \end{figure}

% % % % % % \subsection{Problem Setup}
% % % % % % \label{subsec:problem-setup}

% % % % % % We represent persistent agentic memory by a directed provenance graph
% % % % % % \[
% % % % % % \mathcal{G}=(V,E^{\mathrm{inf}},E^{\mathrm{sem}}),
% % % % % % \]
% % % % % % where each node $x\in V$ is a durable artifact. Influence edges $E^{\mathrm{inf}}$ encode derivation and determine repair scope; semantic edges $E^{\mathrm{sem}}$ support retrieval only. Each artifact has a kind tag
% % % % % % \[
% % % % % % \mathrm{kind}(x)\in
% % % % % % \{\mathsf{record},\mathsf{cache},\mathsf{summary},\mathsf{skill}\},
% % % % % % \]
% % % % % % and skills additionally have an architecture tag
% % % % % % \[
% % % % % % \mathrm{arch}(x)\in
% % % % % % \{\mathsf{neural},\mathsf{prompt},\mathsf{chain}\}.
% % % % % % \]

% % % % % % A repair event is
% % % % % % \[
% % % % % % e=(F,\tau,\Delta),
% % % % % % \]
% % % % % % where $F\subseteq V$ is the invalidated root set,
% % % % % % $\tau\in\{\mathsf{delete},\mathsf{correct},\mathsf{migrate}\}$ is the
% % % % % % update type, and $\Delta$ contains optional replacement or migration
% % % % % % information. Using only influence edges, we define
% % % % % % \[
% % % % % % C(F)=\mathrm{Reach}(F;E^{\mathrm{inf}}),
% % % % % % \qquad
% % % % % % D(F)=C(F)\setminus F.
% % % % % % \]
% % % % % % The repair target is therefore the affected cascade $C(F)$ rather than
% % % % % % the invalidated roots alone.

% % % % % % Let $\kappa$ denote the pre-event interface and $\kappa_e$ the
% % % % % % post-event interface. The retained valid support after event $e$ is
% % % % % % \[
% % % % % % \mathsf{Ret}(e)=
% % % % % % \begin{cases}
% % % % % % V\setminus C(F), & \tau=\mathsf{delete},\\[2pt]
% % % % % % (V\setminus C(F))\cup X_\Delta, & \tau=\mathsf{correct},\\[2pt]
% % % % % % V\setminus C(F), & \tau=\mathsf{migrate},
% % % % % % \end{cases}
% % % % % % \]
% % % % % % where $X_\Delta$ is the replacement root set for correction events.
% % % % % % Appendix~\ref{app:provenance-details} gives the full provenance
% % % % % % construction and graph projection.

% % % % % % \subsection{Withdrawal Before Repair}
% % % % % % \label{subsec:withdrawal-barrier}

% % % % % % Given event $e$, \textsc{MemoRepair} first hides the affected cascade,
% % % % % % \[
% % % % % % B_\rho \leftarrow C(F).
% % % % % % \]
% % % % % % No affected artifact may remain servable during repair. Artifacts in
% % % % % % $B_\rho$ stay out of service until permanently removed, quarantined, or
% % % % % % replaced by validated successors.

% % % % % % A candidate successor $x_i'$ for artifact $i$ is republished only if it
% % % % % % passes a validation oracle
% % % % % % \[
% % % % % % \mathrm{Validate}_i(x_i')\in\{0,1\}.
% % % % % % \]
% % % % % % For recomputation, validation checks replay consistency. For
% % % % % % regeneration, it checks schema validity, execution compatibility, and
% % % % % % held-out task behavior. For parametric repair, it checks suppression on
% % % % % % the invalidated support set and retained utility on the reference set.
% % % % % % Appendix~\ref{app:barrier-details} provide details.

% % % % % % \begin{definition}[Feasible repair plan]
% % % % % % \label{def:feasible}
% % % % % % A repair plan $\rho=(B_\rho,Q_\rho,S_\rho,R_\rho)$ is feasible if
% % % % % % (i) $C(F)\subseteq B_\rho$; (ii) no artifact in $B_\rho$ becomes
% % % % % % servable again unless it is permanently removed, quarantined, or
% % % % % % replaced by a validated successor; (iii) every selected candidate is
% % % % % % executable; (iv) the selected set is predecessor-closed; and
% % % % % % (v) only validated successors are republished.
% % % % % % \end{definition}

% % % % % % \subsection{Artifact-Aware Repair Candidates}
% % % % % % \label{subsec:artifact-aware-repair}

% % % % % % For each affected descendant $i\in D(F)$, \textsc{MemoRepair} assigns
% % % % % % one repair mode,
% % % % % % $
% % % % % % \mu_i\in
% % % % % % \{\mathsf{remove},\mathsf{recompute},\mathsf{regen},\mathsf{param}\},
% % % % % % $
% % % % % % as shown in Table~\ref{tab:repair-modes}.

% % % % % % \begin{table}[!ht]
% % % % % % \centering
% % % % % % \small
% % % % % % \setlength{\tabcolsep}{8pt}
% % % % % % \begin{tabular}{p{0.18\linewidth}p{0.70\linewidth}}
% % % % % % \toprule
% % % % % % \textbf{Mode} & \textbf{Semantics} \\
% % % % % % \midrule
% % % % % % $\mathsf{remove}$ &
% % % % % % Permanently withdraw when no valid successor can be produced from retained
% % % % % % support, staged predecessors, and the current interface. \\
% % % % % % $\mathsf{recompute}$ &
% % % % % % Deterministically replay from retained support and staged predecessors. \\
% % % % % % $\mathsf{regen}$ &
% % % % % % Rebuild summaries, prompt skills, and chain procedures from retained
% % % % % % support and staged predecessors under the current interface. \\
% % % % % % $\mathsf{param}$ &
% % % % % % Update skill parameters using provenance-derived invalidated and retained
% % % % % % support to suppress invalidated contributions while preserving retained
% % % % % % utility. \\
% % % % % % \bottomrule
% % % % % % \end{tabular}
% % % % % % \caption{Artifact-aware repair modes in \textsc{MemoRepair}.}
% % % % % % \label{tab:repair-modes}
% % % % % % \end{table}

% % % % % % If $\mu_i=\mathsf{remove}$, no repair candidate is generated and $i$
% % % % % % remains withdrawn permanently. Otherwise, candidate generation returns
% % % % % % $
% % % % % % q_i=(\mu_i,\pi_i,P_i,v_i,w_i,c_i),
% % % % % % $
% % % % % % where $\pi_i$ is the repair operator,
% % % % % % $P_i\subseteq D(F)$ is the set of affected predecessors whose restored
% % % % % % successors are required before $i$ can be repaired,
% % % % % % $v_i\in\{0,1\}$ indicates executability, and
% % % % % % $w_i,c_i\ge0$ denote repair value and cost.

% % % % % % For $\mathsf{recompute}$ and $\mathsf{regen}$, the operator acts
% % % % % % directly on retained support and staged predecessors. Parametric neural
% % % % % % skills additionally require separating invalidated from retained
% % % % % % support. For a neural skill $i$, let $D_i$ denote the support used to
% % % % % % produce its parameters. For event $e=(F,\tau,\Delta)$, we define
% % % % % % \begin{align*}
% % % % % % \mathsf{For}_i(e)
% % % % % % &=
% % % % % % \{(x_j,y_j)\in D_i:
% % % % % % \mathrm{provenance}(x_j,y_j)\cap C(F)\neq\varnothing\},\\
% % % % % % \mathsf{New}_i(e)
% % % % % % &=
% % % % % % \begin{cases}
% % % % % % \mathrm{Materialize}(X_\Delta,i), & \tau=\mathsf{correct},\\
% % % % % % \varnothing, & \text{otherwise},
% % % % % % \end{cases}\\
% % % % % % \mathsf{Ref}_i(e)
% % % % % % &=
% % % % % % \bigl(D_i\setminus\mathsf{For}_i(e)\bigr)\cup \mathsf{New}_i(e).
% % % % % % \end{align*}
% % % % % % Here $\mathsf{For}_i(e)$ is the invalidated support set and
% % % % % % $\mathsf{Ref}_i(e)$ is the retained reference set. In our LoRA
% % % % % % instantiation, parametric repair uses existing methods such as
% % % % % % LUNE~\citep{lune2025} and OOO~\citep{ooo2024}; details are given in
% % % % % % Appendix~\ref{app:candidate-details} and
% % % % % % Section~\ref{subsec:neural}.

% % % % % % The repairable set is
% % % % % % $
% % % % % % D^+(F)=\{i\in D(F): \mu_i\neq\mathsf{remove}\}.
% % % % % % $
% % % % % % Among repairable descendants, repair requirements induce
% % % % % % $
% % % % % % E^{\mathrm{req}}
% % % % % % =
% % % % % % \{(j,i)\in D^+(F)\times D^+(F): j\in P_i\}.
% % % % % % $
% % % % % % Candidates whose required predecessors are unavailable or non-repairable
% % % % % % are marked non-executable through $v_i=0$. Thus $E^{\mathrm{req}}$
% % % % % % captures repair-time prerequisites rather than all provenance links.
% % % % % % Appendix~\ref{app:candidate-details} gives the full candidate-generation
% % % % % % semantics.

% % % % % % \subsection{Budgeted Repair}
% % % % % % \label{subsec:budgeted-repair}

% % % % % % For each $i\in D^+(F)$, let $x_i\in\{0,1\}$ indicate whether candidate
% % % % % % $q_i$ is selected. Define
% % % % % % \[
% % % % % % \mathrm{Repair}(x)=\sum_{i\in D^+(F)} w_i x_i,
% % % % % % \qquad
% % % % % % \mathrm{Budget}(x)=\sum_{i\in D^+(F)} c_i x_i.
% % % % % % \]
% % % % % % For a fixed tradeoff parameter $\lambda\ge0$, we solve
% % % % % % \begin{alignat}{2}
% % % % % % \max_{x}\quad & \mathrm{Repair}(x) - \lambda\,\mathrm{Budget}(x) & \notag\\
% % % % % % \text{s.t.}\quad & x_i \le v_i, & \label{eq:avail}\\
% % % % % %                  & x_i \le x_j, \quad \forall j\in P_i, & \label{eq:closure}\\
% % % % % %                  & x_i \in \{0,1\}. & \label{eq:binary}
% % % % % % \end{alignat}
% % % % % % Constraint~\eqref{eq:avail} excludes non-executable candidates,
% % % % % % \eqref{eq:closure} enforces predecessor closure, and
% % % % % % \eqref{eq:binary} restricts selection to binary decisions.

% % % % % % \begin{theorem}
% % % % % % \label{thm:budgeted-repair}
% % % % % % For fixed event $e$, candidate family $Q_\rho$, and tradeoff parameter
% % % % % % $\lambda\ge0$, the budgeted repair problem reduces to a
% % % % % % maximum-weight predecessor-closure problem and can be solved exactly by
% % % % % % a single $s$-$t$ min-cut.
% % % % % % \end{theorem}

% % % % % % \begin{proof}[Proof sketch]
% % % % % % Let $p_i=w_i-\lambda c_i$ denote the net value of selecting candidate
% % % % % % $i$, and let
% % % % % % \[
% % % % % % W^+=\sum_{i:p_i>0} p_i.
% % % % % % \]
% % % % % % We construct a flow network with one node per repairable descendant,
% % % % % % plus source $s$ and sink $t$. If $p_i>0$, we add an edge $s\to i$ with
% % % % % % capacity $p_i$; if $p_i<0$, we add an edge $i\to t$ with capacity
% % % % % % $-p_i$. To enforce feasibility, we add a penalty $M>W^+$ for every
% % % % % % violated predecessor requirement and every non-executable candidate:
% % % % % % for each dependency $j\in P_i$, we add an edge $i\to j$ with capacity
% % % % % % $M$, and for each candidate with $v_i=0$, we add an additional edge
% % % % % % $i\to t$ with capacity $M$. Since any such penalty exceeds the total
% % % % % % positive reward, no minimum cut will pay it. Hence any minimum cut
% % % % % % corresponds exactly to an executable predecessor-closed set. For any
% % % % % % feasible selected set $U$, the cut capacity is a constant offset minus
% % % % % % $\sum_{i\in U}(w_i-\lambda c_i)$, so minimizing cut capacity is
% % % % % % equivalent to maximizing the scalarized objective.
% % % % % % \end{proof}

% % % % % % Algorithm~\ref{alg:memo-repair-main} embeds this solver in the full
% % % % % % \textsc{MemoRepair} pipeline.

% % % % % % \begin{algorithm}[!ht]
% % % % % % \caption{\textsc{MemoRepair}}
% % % % % % \label{alg:memo-repair-main}
% % % % % % \small
% % % % % % \begin{algorithmic}[1]
% % % % % % \REQUIRE Repair event $e=(F,\tau,\Delta)$, memory graph $\mathcal{G}$, tradeoff $\lambda$
% % % % % % \ENSURE Republished validated successors
% % % % % % \STATE Compute affected cascade $C(F)$, descendants $D(F)$, and retained support $\mathsf{Ret}(e)$
% % % % % % \STATE Withdraw $C(F)$ from service
% % % % % % \FOR{each $i\in D(F)$}
% % % % % %     \STATE Assign repair mode $\mu_i$
% % % % % %     \IF{$\mu_i\neq \mathsf{remove}$}
% % % % % %         \STATE Construct candidate $q_i=(\mu_i,\pi_i,P_i,v_i,w_i,c_i)$
% % % % % %     \ENDIF
% % % % % % \ENDFOR
% % % % % % \STATE Build $E^{\mathrm{req}}$ and solve \eqref{eq:avail}--\eqref{eq:binary} for $S_\rho$
% % % % % % \STATE Execute selected candidates in topological order over $E^{\mathrm{req}}[S_\rho]$
% % % % % % \STATE Validate and batch-republish successful candidates; keep others withdrawn or quarantined
% % % % % % \end{algorithmic}
% % % % % % \end{algorithm}

% % % % % % Appendix~\ref{app:proofs} gives the full proof of
% % % % % % Theorem~\ref{thm:budgeted-repair}, and
% % % % % % Appendix~\ref{app:complexity-guarantees} summarizes complexity and
% % % % % % additional guarantees.
\documentclass{article}

% if you need to pass options to natbib, use, e.g.:
%     \PassOptionsToPackage{numbers, compress}{natbib}
% before loading neurips_2026

% The authors should use one of these tracks.
% Before accepting by the NeurIPS conference, select one of the options below.
% 0. "default" for submission
\usepackage{neurips_2026}
% the "default" option is equal to the "main" option, which is used for the Main Track with double-blind reviewing.
% 1. "main" option is used for the Main Track
%  \usepackage[main]{neurips_2026}
% 2. "position" option is used for the Position Paper Track
%  \usepackage[position]{neurips_2026}
% 3. "eandd" option is used for the Evaluations & Datasets Track
 % \usepackage[eandd]{neurips_2026}
 % if you need to opt-in for a single-blind submission in the E&D track:
 %\usepackage[eandd, nonanonymous]{neurips_2026}
% 4. "creativeai" option is used for the Creative AI Track
%  \usepackage[creativeai]{neurips_2026}
% 5. "sglblindworkshop" option is used for the Workshop with single-blind reviewing
 % \usepackage[sglblindworkshop]{neurips_2026}
% 6. "dblblindworkshop" option is used for the Workshop with double-blind reviewing
%  \usepackage[dblblindworkshop]{neurips_2026}

% After being accepted, the authors should add "final" behind the track to compile a camera-ready version.
% 1. Main Track
 % \usepackage[main, final]{neurips_2026}
% 2. Position Paper Track
%  \usepackage[position, final]{neurips_2026}
% 3. Evaluations & Datasets Track
 % \usepackage[eandd, final]{neurips_2026}
% 4. Creative AI Track
%  \usepackage[creativeai, final]{neurips_2026}
% 5. Workshop with single-blind reviewing
%  \usepackage[sglblindworkshop, final]{neurips_2026}
% 6. Workshop with double-blind reviewing
%  \usepackage[dblblindworkshop, final]{neurips_2026}
% Note. For the workshop paper template, both \title{} and \workshoptitle{} are required, with the former indicating the paper title shown in the title and the latter indicating the workshop title displayed in the footnote.
% For workshops (5., 6.), the authors should add the name of the workshop, "\workshoptitle" command is used to set the workshop title.
% \workshoptitle{WORKSHOP TITLE}

% "preprint" option is used for arXiv or other preprint submissions
 % \usepackage[preprint]{neurips_2026}

% to avoid loading the natbib package, add option nonatbib:
%    \usepackage[nonatbib]{neurips_2026}

\usepackage[utf8]{inputenc} % allow utf-8 input
\usepackage[T1]{fontenc}    % use 8-bit T1 fonts
\usepackage{hyperref}       % hyperlinks
\usepackage{url}            % simple URL typesetting
\usepackage{booktabs}       % professional-quality tables
\usepackage{amsfonts}       % blackboard math symbols
\usepackage{nicefrac}       % compact symbols for 1/2, etc.
\usepackage{microtype}      % microtypography
\usepackage{xcolor}         % colors

% Note. For the workshop paper template, both \title{} and \workshoptitle{} are required, with the former indicating the paper title shown in the title and the latter indicating the workshop title displayed in the footnote. 
\title{Formatting Instructions For NeurIPS 2026}


% The \author macro works with any number of authors. There are two commands
% used to separate the names and addresses of multiple authors: \And and \AND.
%
% Using \And between authors leaves it to LaTeX to determine where to break the
% lines. Using \AND forces a line break at that point. So, if LaTeX puts 3 of 4
% authors names on the first line, and the last on the second line, try using
% \AND instead of \And before the third author name.


\author{%
  David S.~Hippocampus\thanks{Use footnote for providing further information
    about author (webpage, alternative address)---\emph{not} for acknowledging
    funding agencies.} \\
  Department of Computer Science\\
  Cranberry-Lemon University\\
  Pittsburgh, PA 15213 \\
  \texttt{hippo@cs.cranberry-lemon.edu} \\
  % examples of more authors
  % \And
  % Coauthor \\
  % Affiliation \\
  % Address \\
  % \texttt{email} \\
  % \AND
  % Coauthor \\
  % Affiliation \\
  % Address \\
  % \texttt{email} \\
  % \And
  % Coauthor \\
  % Affiliation \\
  % Address \\
  % \texttt{email} \\
  % \And
  % Coauthor \\
  % Affiliation \\
  % Address \\
  % \texttt{email} \\
}


\begin{document}


\maketitle


\begin{abstract}
  The abstract paragraph should be indented \nicefrac{1}{2}~inch (3~picas) on both the left- and right-hand margins. Use 10~point type, with a vertical spacing (leading) of 11~points. The word \textbf{Abstract} must be centered, bold, and in point size 12. Two line spaces precede the abstract. The abstract must be limited to one paragraph.
\end{abstract}



\section{Submission of papers to NeurIPS 2026}


Please read the instructions below carefully and follow them faithfully.


\subsection{Style}


Papers to be submitted to NeurIPS 2026 must be prepared according to the
instructions presented here. Papers may only be up to {\bf nine} pages long, including figures. \textbf{Papers that exceed the page limit will not be reviewed (or in any other way considered) for presentation at the conference.}
Additional pages \emph{containing acknowledgments, references, checklist, and optional technical appendices} do not count as content pages. 


The margins in 2026 are the same as those in previous years.


Authors are required to use the NeurIPS \LaTeX{} style files obtainable at the NeurIPS website as indicated below. Please make sure you use the current files and not previous versions. Tweaking the style files may be grounds for desk rejection.


\subsection{Retrieval of style files}


The style files for NeurIPS and other conference information are available on the website at
\begin{center}
  \url{https://neurips.cc}.
\end{center}
% The file \verb+neurips_2026.pdf+ contains these instructions and illustrates the various formatting requirements your NeurIPS paper must satisfy.


The only supported style file for NeurIPS 2026 is \verb+neurips_2026.sty+, rewritten for \LaTeXe{}. \textbf{Previous style files for \LaTeX{} 2.09,  Microsoft Word, and RTF are no longer supported.}


The \LaTeX{} style file contains three optional arguments: 
\begin{itemize}
\item \verb+final+, which creates a camera-ready copy, 
\item \verb+preprint+, which creates a preprint for submission to, e.g., arXiv, \item \verb+nonatbib+, which will not load the \verb+natbib+ package for you in case of package clash.
\end{itemize}


\paragraph{Preprint option}
If you wish to post a preprint of your work online, e.g., on arXiv, using the NeurIPS style, please use the \verb+preprint+ option. This will create a nonanonymized version of your work with the text ``Preprint. Work in progress.'' in the footer. This version may be distributed as you see fit, as long as you do not say which conference it was submitted to. Please \textbf{do not} use the \verb+final+ option, which should \textbf{only} be used for papers accepted to NeurIPS.


At submission time, please omit the \verb+final+ and \verb+preprint+ options. This will anonymize your submission and add line numbers to aid review. Please do \emph{not} refer to these line numbers in your paper as they will be removed during generation of camera-ready copies.


The file \verb+neurips_2026.tex+ may be used as a ``shell'' for writing your paper. All you have to do is replace the author, title, abstract, and text of the paper with your own.


The formatting instructions contained in these style files are summarized in Sections \ref{gen_inst}, \ref{headings}, and \ref{others} below.


\section{General formatting instructions}
\label{gen_inst}


The text must be confined within a rectangle 5.5~inches (33~picas) wide and
9~inches (54~picas) long. The left margin is 1.5~inch (9~picas).  Use 10~point
type with a vertical spacing (leading) of 11~points.  Times New Roman is the
preferred typeface throughout, and will be selected for you by default.
Paragraphs are separated by \nicefrac{1}{2}~line space (5.5 points), with no
indentation.


The paper title should be 17~point, initial caps/lower case, bold, centered
between two horizontal rules. The top rule should be 4~points thick and the
bottom rule should be 1~point thick. Allow \nicefrac{1}{4}~inch space above and
below the title to rules. All pages should start at 1~inch (6~picas) from the
top of the page.


For the final version, authors' names are set in boldface, and each name is
centered above the corresponding address. The lead author's name is to be listed
first (left-most), and the co-authors' names (if different address) are set to
follow. If there is only one co-author, list both author and co-author side by
side.


Please pay special attention to the instructions in Section \ref{others}
regarding figures, tables, acknowledgments, and references.

\section{Headings: first level}
\label{headings}


All headings should be lower case (except for first word and proper nouns),
flush left, and bold.


First-level headings should be in 12-point type.


\subsection{Headings: second level}


Second-level headings should be in 10-point type.


\subsubsection{Headings: third level}


Third-level headings should be in 10-point type.


\paragraph{Paragraphs}


There is also a \verb+\paragraph+ command available, which sets the heading in
bold, flush left, and inline with the text, with the heading followed by 1\,em
of space.


\section{Citations, figures, tables, references}
\label{others}


These instructions apply to everyone.


\subsection{Citations within the text}


The \verb+natbib+ package will be loaded for you by default.  Citations may be
author/year or numeric, as long as you maintain internal consistency.  As to the
format of the references themselves, any style is acceptable as long as it is
used consistently.


The documentation for \verb+natbib+ may be found at
\begin{center}
  \url{http://mirrors.ctan.org/macros/latex/contrib/natbib/natnotes.pdf}
\end{center}
Of note is the command \verb+\citet+, which produces citations appropriate for
use in inline text.  For example,
\begin{verbatim}
   \citet{hasselmo} investigated\dots
\end{verbatim}
produces
\begin{quote}
  Hasselmo, et al.\ (1995) investigated\dots
\end{quote}


If you wish to load the \verb+natbib+ package with options, you may add the
following before loading the \verb+neurips_2026+ package:
\begin{verbatim}
   \PassOptionsToPackage{options}{natbib}
\end{verbatim}


If \verb+natbib+ clashes with another package you load, you can add the optional
argument \verb+nonatbib+ when loading the style file:
\begin{verbatim}
   \usepackage[nonatbib]{neurips_2026}
\end{verbatim}


As submission is double blind, refer to your own published work in the third
person. That is, use ``In the previous work of Jones et al.\ [4],'' not ``In our
previous work [4].'' If you cite your other papers that are not widely available
(e.g., a journal paper under review), use anonymous author names in the
citation, e.g., an author of the form ``A.\ Anonymous'' and include a copy of the anonymized paper in the supplementary material.


\subsection{Footnotes}


Footnotes should be used sparingly.  If you do require a footnote, indicate
footnotes with a number\footnote{Sample of the first footnote.} in the
text. Place the footnotes at the bottom of the page on which they appear.
Precede the footnote with a horizontal rule of 2~inches (12~picas).


Note that footnotes are properly typeset \emph{after} punctuation
marks.\footnote{As in this example.}


\subsection{Figures}


\begin{figure}
  \centering
  \fbox{\rule[-.5cm]{0cm}{4cm} \rule[-.5cm]{4cm}{0cm}}
  \caption{Sample figure caption. Explain what the figure shows and add a key take-away message to the caption.}
\end{figure}


All artwork must be neat, clean, and legible. Lines should be dark enough for
 reproduction purposes. The figure number and caption always appear after the
figure. Place one line space before the figure caption and one line space after
the figure. The figure caption should be lower case (except for the first word and proper nouns); figures are numbered consecutively.


You may use color figures.  However, it is best for the figure captions and the
paper body to be legible if the paper is printed in either black/white or in
color.


\subsection{Tables}


All tables must be centered, neat, clean, and legible.  The table number and
title always appear before the table.  See Table~\ref{sample-table}.


Place one line space before the table title, one line space after the
table title, and one line space after the table. The table title must
be lower case (except for the first word and proper nouns); tables are
numbered consecutively.


Note that publication-quality tables \emph{do not contain vertical rules}. We
strongly suggest the use of the \verb+booktabs+ package, which allows for
typesetting high-quality, professional tables:
\begin{center}
  \url{https://www.ctan.org/pkg/booktabs}
\end{center}
This package was used to typeset Table~\ref{sample-table}.


\begin{table}
  \caption{Sample table caption. Explain what the table shows and add a key take-away message to the caption.}
  \label{sample-table}
  \centering
  \begin{tabular}{lll}
    \toprule
    \multicolumn{2}{c}{Part}                   \\
    \cmidrule(r){1-2}
    Name     & Description     & Size ($\mu$m) \\
    \midrule
    Dendrite & Input terminal  & $\approx$100     \\
    Axon     & Output terminal & $\approx$10      \\
    Soma     & Cell body       & up to $10^6$  \\
    \bottomrule
  \end{tabular}
\end{table}

\subsection{Math}
Note that display math in bare TeX commands will not create correct line numbers for submission. Please use LaTeX (or AMSTeX) commands for unnumbered display math. (You really shouldn't be using \$\$ anyway; see \url{https://tex.stackexchange.com/questions/503/why-is-preferable-to} and \url{https://tex.stackexchange.com/questions/40492/what-are-the-differences-between-align-equation-and-displaymath} for more information.)

\subsection{Final instructions}

Do not change any aspects of the formatting parameters in the style files.  In
particular, do not modify the width or length of the rectangle the text should
fit into, and do not change font sizes. Please note that pages should be
numbered.


\section{Preparing PDF files}


Please prepare submission files with paper size ``US Letter,'' and not, for
example, ``A4.''


Fonts were the main cause of problems in the past years. Your PDF file must only
contain Type 1 or Embedded TrueType fonts. Here are a few instructions to
achieve this.


\begin{itemize}


\item You should directly generate PDF files using \verb+pdflatex+.


\item You can check which fonts a PDF files uses.  In Acrobat Reader, select the
  menu Files$>$Document Properties$>$Fonts and select Show All Fonts. You can
  also use the program \verb+pdffonts+ which comes with \verb+xpdf+ and is
  available out-of-the-box on most Linux machines.


\item \verb+xfig+ ``patterned'' shapes are implemented with bitmap fonts.  Use
  "solid" shapes instead.


\item The \verb+\bbold+ package almost always uses bitmap fonts.  You should use
  the equivalent AMS Fonts:
\begin{verbatim}
   \usepackage{amsfonts}
\end{verbatim}
followed by, e.g., \verb+\mathbb{R}+, \verb+\mathbb{N}+, or \verb+\mathbb{C}+
for $\mathbb{R}$, $\mathbb{N}$ or $\mathbb{C}$.  You can also use the following
workaround for reals, natural and complex:
\begin{verbatim}
   \newcommand{\RR}{I\!\!R} %real numbers
   \newcommand{\Nat}{I\!\!N} %natural numbers
   \newcommand{\CC}{I\!\!\!\!C} %complex numbers
\end{verbatim}
Note that \verb+amsfonts+ is automatically loaded by the \verb+amssymb+ package.


\end{itemize}


If your file contains type 3 fonts or non embedded TrueType fonts, we will ask
you to fix it.


\subsection{Margins in \LaTeX{}}


Most of the margin problems come from figures positioned by hand using
\verb+\special+ or other commands. We suggest using the command
\verb+\includegraphics+ from the \verb+graphicx+ package. Always specify the
figure width as a multiple of the line width as in the example below:
\begin{verbatim}
   \usepackage[pdftex]{graphicx} ...
   \includegraphics[width=0.8\linewidth]{myfile.pdf}
\end{verbatim}
See Section 4.4 in the graphics bundle documentation
(\url{http://mirrors.ctan.org/macros/latex/required/graphics/grfguide.pdf})


A number of width problems arise when \LaTeX{} cannot properly hyphenate a
line. Please give LaTeX hyphenation hints using the \verb+\-+ command when
necessary.

\begin{ack}
Use unnumbered first level headings for the acknowledgments. All acknowledgments
go at the end of the paper before the list of references. Moreover, you are required to declare
funding (financial activities supporting the submitted work) and competing interests (related financial activities outside the submitted work).
More information about this disclosure can be found at: \url{https://neurips.cc/Conferences/2026/PaperInformation/FundingDisclosure}.


Do {\bf not} include this section in the anonymized submission, only in the final paper. You can use the \texttt{ack} environment provided in the style file to automatically hide this section in the anonymized submission.
\end{ack}

\section*{References}


References follow the acknowledgments in the camera-ready paper. Use unnumbered first-level heading for
the references. Any choice of citation style is acceptable as long as you are
consistent. It is permissible to reduce the font size to \verb+small+ (9 point)
when listing the references.
Note that the Reference section does not count towards the page limit.
\medskip


{
\small


[1] Alexander, J.A.\ \& Mozer, M.C.\ (1995) Template-based algorithms for
connectionist rule extraction. In G.\ Tesauro, D.S.\ Touretzky and T.K.\ Leen
(eds.), {\it Advances in Neural Information Processing Systems 7},
pp.\ 609--616. Cambridge, MA: MIT Press.


[2] Bower, J.M.\ \& Beeman, D.\ (1995) {\it The Book of GENESIS: Exploring
  Realistic Neural Models with the GEneral NEural SImulation System.}  New York:
TELOS/Springer--Verlag.


[3] Hasselmo, M.E., Schnell, E.\ \& Barkai, E.\ (1995) Dynamics of learning and
recall at excitatory recurrent synapses and cholinergic modulation in rat
hippocampal region CA3. {\it Journal of Neuroscience} {\bf 15}(7):5249-5262.
}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\appendix

\section{Technical appendices and supplementary material}
Technical appendices with additional results, figures, graphs, and proofs may be submitted with the paper submission before the full submission deadline (see above). You can upload a ZIP file for videos or code, but do not upload a separate PDF file for the appendix. There is no page limit for the technical appendices. 

Note: Think of the appendix as ``optional reading'' for reviewers. The paper must be able to stand alone without the appendix; for example, adding critical experiments that support the main claims to an appendix is inappropriate. 

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\newpage
\input{checklist.tex}


\end{document}
% ================================================================
\section{Problem Setup}
\label{sec:problem}

We formalize the \emph{cascade update problem} as safe, budgeted repair in agentic memory systems. Persistent memory stores durable artifacts---records, summaries, cached outputs, learned skills, and
executable tool procedures---linked by provenance edges that record derivation. When a source artifact is deleted, corrected, or migrated, updating that source alone is insufficient: descendant artifacts can
remain visible and continue to influence system behavior. A repair
event must therefore transform the visible state induced by the
affected descendants. We use the standard Lagrangian form of a budgeted
selection problem, in which a fixed tradeoff parameter $\lambda \geq 0$
traces the repair--budget frontier.

% ----------------------------------------------------------------
\subsection{Core objects and notation}
\label{subsec:notation}

\paragraph{Memory provenance graph.}
The system maintains derivation relationships among durable artifacts
as a directed graph
\[
\G = (V,\, E^{\mathrm{inf}},\, E^{\mathrm{sem}}),
\]
where:
\begin{itemize}[leftmargin=*,itemsep=2pt]
  \item $V$ is the set of durable memory artifacts (nodes). Each
  artifact $x \in V$ has a kind tag
  $\mathrm{kind}(x) \in \{\mathsf{record}, \mathsf{cache},
  \mathsf{summary}, \mathsf{skill}\}$ and, for skills, an architecture
  tag $\mathrm{arch}(x) \in \{\mathsf{neural}, \mathsf{prompt},
  \mathsf{chain}\}$.
  \item $E^{\mathrm{inf}} \subseteq V \times V$: \emph{influence edges}. $(u,v) \in E^{\mathrm{inf}}$ means $v$ was causally derived from $u$. Influence edges determine repair scope.
  \item $E^{\mathrm{sem}} \subseteq V \times V$: \emph{semantic edges}, supporting retrieval but \emph{not} determining repair scope.
\end{itemize}

\paragraph{Repair event.}
A repair event $e = (F, \tau, \Delta)$ consists of:
\begin{itemize}[leftmargin=*,itemsep=2pt]
  \item $F \subseteq V$: the \emph{invalidated root set}.
  \item $\tau \in \{\mathsf{delete}, \mathsf{correct},
  \mathsf{migrate}\}$: the \emph{event type}.
  \item $\Delta$: optional \emph{replacement information}. Empty for
  deletion; for correction, $\Delta$ contains the replacement root
  $x_\Delta \in V$; for migration, $\Delta$ is a contract delta.
\end{itemize}
$\tau$ describes the operation on \emph{root} artifacts in $F$; it is
distinct from the repair mode $\mu_i$
(Section~\ref{subsec:recovery}), which describes how each
\emph{descendant} $i \in D(F)$ is repaired.

\paragraph{Affected cascade and descendants.}
\[
C(F) = \operatorname{Reach}(F;\, E^{\mathrm{inf}}), \qquad
D(F) = C(F) \setminus F.
\]
Only $E^{\mathrm{inf}}$ determines cascade scope.

\paragraph{Replicas and visibility.}
$\mathcal{M}$: set of all replicas; $\mathcal{R}_e \subseteq
\mathcal{M}$: reachable replicas during event $e$;
$\mathsf{Vis}_r(x) \in \{0,1\}$: whether artifact $x$ is servable on
replica $r$.

\paragraph{Interface contract.}
$\kappa$: contract before repair; $\kappa_e$: contract after $e$. For
deletion and correction, $\kappa_e = \kappa$. For migration,
$\kappa_e$ is obtained by applying $\Delta$ to $\kappa$.

\paragraph{Retained support.}
\[
\mathsf{Ret}(e) = \begin{cases}
V \setminus F & \tau = \mathsf{delete}, \\
(V \setminus F) \cup \{x_\Delta\} & \tau = \mathsf{correct}, \\
V \setminus F & \tau = \mathsf{migrate}.
\end{cases}
\]
For migration, only the contract updates; no root artifact is added.

\paragraph{Validation oracle.}
$\Validate_i(x') \in \{0,1\}$ denotes the mode-appropriate validation
oracle for artifact $i$'s candidate successor $x'$. For
$\mu_i = \mathsf{exact}$, it checks replay consistency against
$\mathsf{Ret}(e)$. For $\mu_i = \mathsf{regen}$, it checks schema
validity, held-out task regression, privacy and safety probes,
and---for $\mathrm{arch}(i)=\mathsf{chain}$---sandbox execution under
$\kappa_e$. For $\mu_i = \mathsf{unlearn}$, it applies the
$\mathsf{regen}$ checks plus forget-set probes on $\mathsf{For}_i(e)$
to verify suppression and retained-utility evaluation on
$\mathsf{Ref}_i(e)$.

\paragraph{Neural skill support and invalidated support.}
For each $i \in V$ with $\mathrm{arch}(i) = \mathsf{neural}$, let
$D_i$ denote the \emph{training support set} of skill $i$: the
multiset of labeled examples $(x_j, y_j)$ used to produce the current
adapter $\Delta\theta_i$. The function
$\mathrm{provenance}(x_j, y_j) \subseteq V$ maps each support example
to the set of root artifacts in $\G$ that induced it.

For each $i \in D(F)$ with $\mathrm{arch}(i) = \mathsf{neural}$ and
repair event $e = (F, \tau, \Delta)$, define:
\begin{align*}
\mathsf{For}_i(e) &= \bigl\{(x_j,y_j)\in D_i :
  \mathrm{provenance}(x_j,y_j)\cap F \neq \varnothing\bigr\}, \\
\mathsf{New}_i(e) &= \begin{cases}
  \mathrm{Materialize}(x_\Delta,\, i)
  & \tau=\mathsf{correct}, \\
  \varnothing & \text{otherwise,}
\end{cases}\\
\mathsf{Ref}_i(e) &=
  \bigl(D_i \setminus \mathsf{For}_i(e)\bigr) \cup \mathsf{New}_i(e).
\end{align*}
$\mathsf{For}_i(e)$ is the \emph{forget set}: support examples whose
provenance intersects the invalidated roots $F$.
$\mathsf{New}_i(e)$ is the \emph{replacement support}: newly
materialized training examples derived from the correction replacement
$x_\Delta$ at repair time; these are not required to be in $D_i$.
$\mathsf{Ref}_i(e)$ is the \emph{reference set} passed to the
unlearning operator: retained examples from $D_i$ augmented with any
freshly materialized replacement support. The function
$\mathrm{Materialize}(x_\Delta, i)$ generates new support examples for
skill $i$ from $x_\Delta$ using the same derivation procedure that
produced $D_i$; for deletion and migration,
$\mathsf{Ref}_i(e) = D_i \setminus \mathsf{For}_i(e)$.

\begin{table}[t]
\centering\small
\setlength{\tabcolsep}{5pt}
\begin{tabular}{ll}
\toprule
\textbf{Symbol} & \textbf{Meaning} \\
\midrule
$\G = (V, E^{\mathrm{inf}}, E^{\mathrm{sem}})$ & memory provenance graph \\
$V$ & durable memory artifacts (nodes) \\
$E^{\mathrm{inf}}$ & influence edges (determine repair scope) \\
$E^{\mathrm{sem}}$ & semantic edges (retrieval; not repair scope) \\
$\mathrm{kind}(x)$ & artifact kind: record, cache, summary, or skill \\
$\mathrm{arch}(x)$ & skill architecture: neural, prompt, or chain \\
$e = (F, \tau, \Delta)$ & repair event: root set, type, replacement info \\
$F \subseteq V$ & invalidated root set \\
$\tau$ & event type: delete, correct, or migrate (root op.) \\
$\Delta$ & replacement info ($x_\Delta \in V$ for correct) \\
$x_\Delta \in V$ & replacement root artifact contained in $\Delta$ \\
$C(F)$ & affected cascade $= \operatorname{Reach}(F; E^{\mathrm{inf}})$ \\
$D(F)$ & affected descendants $= C(F) \setminus F$ \\
$\mathcal{M}$ & set of all replicas \\
$\mathcal{R}_e \subseteq \mathcal{M}$ & replicas reachable during event $e$ \\
$\mathsf{Vis}_r(x) \in \{0,1\}$ & whether $x$ is servable on replica $r$ \\
$\kappa$ & interface contract before repair \\
$\kappa_e$ & interface contract after event $e$ \\
$\mathsf{Ret}(e) \subseteq V$ & retained support (store level) \\
$D_i$ & training support set of neural skill $i$ \\
$\mathrm{provenance}(x_j,y_j) \subseteq V$ & root artifacts in $\G$ that induced example $(x_j,y_j)$ \\
$\mathsf{For}_i(e) \subseteq D_i$ & forget set: examples with provenance intersecting $F$ \\
$\mathsf{New}_i(e)$ & replacement support materialized from $x_\Delta$ (correction only) \\
$\mathsf{Ref}_i(e)$ & reference set $= (D_i\setminus\mathsf{For}_i(e))\cup\mathsf{New}_i(e)$ \\
$\mathrm{Materialize}(x_\Delta,i)$ & generates new support examples for skill $i$ from $x_\Delta$ \\
$\Validate_i(x') \in \{0,1\}$ & mode-appropriate validation oracle for candidate $x'$ of $i$ \\
$\mu_i$ & repair mode: remove, exact, regen, or unlearn \\
$D^+(F)$ & repairable descendants $= \{i \in D(F) : \mu_i \neq \mathsf{remove}\}$ \\
$Q_e = \{q_i\}_{i \in D^+(F)}$ & full candidate family (may include $v_i=0$) \\
$\widehat{Q}_e \subseteq Q_e$ & executable candidate family $= \{q_i \in Q_e : v_i = 1\}$ \\
$q_i = (\mu_i, \pi_i, P_i, v_i, w_i, c_i)$ & candidate repair tuple for $i \in D^+(F)$ \\
$\pi_i$ & recovery operator for descendant $i$ \\
$\pi_i^{\mathsf{unlearn}}$ & unlearning operator for neural descendant $i$ \\
$P_i \subseteq D^+(F)$ & affected predecessors required before $i$ can be repaired \\
$v_i \in \{0,1\}$ & whether executable candidate repair exists for $i$ \\
$w_i \geq 0$ & repair value of restoring $i$ \\
$c_i \geq 0$ & repair cost of restoring $i$ \\
$E^{\mathrm{req}}$ & induced repair dependency graph over $D^+(F)$ \\
$x_i \in \{0,1\}$ & decision variable: repair of $i$ selected? \\
$\lambda \geq 0$ & cost--benefit tradeoff parameter \\
$p_i = w_i - \lambda c_i$ & net profit of repairing descendant $i$ \\
$\rho = (B_\rho, Q_\rho, S_\rho, R_\rho)$ & repair plan \\
$B_\rho \subseteq V$ & hidden set (withdrawn from service) \\
$Q_\rho = \{q_i\}_{i \in D^+(F)}$ & candidate repair family associated with plan $\rho$ \\
$S_\rho \subseteq D^+(F)$ & selected descendants for repair in current epoch \\
$R_\rho \subseteq S_\rho \times V$ & republished successor pairs $(i, x_i')$ \\
\bottomrule
\end{tabular}
\caption{Notation used in the problem formulation.}
\label{tab:notation}
\end{table}

% ----------------------------------------------------------------
\subsection{Artifact repair modes}
\label{subsec:recovery}

Each affected descendant $i \in D(F)$ is assigned a repair mode
$\mu_i \in \{\mathsf{remove},\, \mathsf{exact},\,
\mathsf{regen},\, \mathsf{unlearn}\}$:

\begin{itemize}[leftmargin=*,itemsep=2pt]
  \item \textbf{Permanent removal} ($\mu_i = \mathsf{remove}$): no
  meaningful successor under $\mathsf{Ret}(e)$ and $\kappa_e$; removed
  immediately and does not enter the optimization.
  \item \textbf{Exact recomputation} ($\mu_i = \mathsf{exact}$):
  deterministic function of parents; rebuilt exactly from
  $\mathsf{Ret}(e)$.
  \item \textbf{Retained-support regeneration} ($\mu_i = \mathsf{regen}$):
  non-neural compressive artifact (summary, prompt skill, or chain
  procedure); regenerated from retained valid sources under $\kappa_e$;
  exact causal equivalence is not claimed.
  \item \textbf{Best-effort unlearning} ($\mu_i = \mathsf{unlearn}$):
  parametric neural skill with entangled adapter weights; apply
  $\pi_i^{\mathsf{unlearn}}$ with forget set $\mathsf{For}_i(e)$ and
  reference set $\mathsf{Ref}_i(e)$ under $\kappa_e$; republished only
  if $\Validate_i(x_i') = 1$; exact parameter-level erasure is not
  claimed. In our default instantiation for LoRA-trained skills,
  $\pi_i^{\mathsf{unlearn}}$ is LUNE~\citep{lune2025} for single-epoch
  repairs and OOO~\citep{ooo2024} when the same skill undergoes multiple
  sequential repair epochs; both operators require $\mathsf{For}_i(e)$
  and $\mathsf{Ref}_i(e)$ and are executable only when
  $\mathsf{Ref}_i(e) \neq \varnothing$.
\end{itemize}

Note: $\tau = \mathsf{delete}$ deletes a \emph{root} in $F$; $\mu_i =
\mathsf{remove}$ permanently removes a \emph{descendant} in $D(F)$.

The \emph{repairable descendants} are $D^+(F) = \{i \in D(F) : \mu_i
\neq \mathsf{remove}\}$.

\paragraph{Candidate repair tuple.}
For each $i \in D^+(F)$, candidate generation produces
$q_i = (\mu_i, \pi_i, P_i, v_i, w_i, c_i)$, where:
\begin{itemize}[leftmargin=*,itemsep=2pt]
  \item $\mu_i \in \{\mathsf{exact}, \mathsf{regen}, \mathsf{unlearn}\}$
  (remove-mode descendants do not enter $D^+(F)$);
  \item $\pi_i$: recovery operator for mode $\mu_i$ and
  $\mathrm{kind}(i)$; for $\mu_i = \mathsf{unlearn}$,
  $\pi_i = \pi_i^{\mathsf{unlearn}}$;
  \item $P_i \subseteq D^+(F)$: affected predecessors whose candidate
  successors must be available before $i$ can be republished;
  \item $v_i \in \{0,1\}$: $1$ iff $\pi_i$ is executable using the
  resources required by its repair mode, $\kappa_e$, and the staged or
  republished successors of all $j \in P_i$; for $\mu_i =
  \mathsf{unlearn}$, additionally requires $\mathsf{For}_i(e)$ to be
  materializable from $\G$ and $\mathsf{Ref}_i(e) \neq \varnothing$.
  After $E^{\mathrm{req}}$ is constructed, any descendant $i$ that
  lies in a non-trivial SCC of $E^{\mathrm{req}}$ is assigned $v_i = 0$
  and quarantined, because no execution order can satisfy mutual
  predecessor requirements within a cycle;
  \item $w_i \geq 0$, $c_i \geq 0$: repair value and cost.
\end{itemize}

\paragraph{Induced repair dependency graph.}
$E^{\mathrm{req}} = \{(j,i) \in D^+(F) \times D^+(F) : j \in P_i\}$.
Edge $(j,i)$: the staged or republished successor of $j$ must be
available before $\pi_i$ can execute.

The \emph{full candidate family} is $Q_e = \{q_i\}_{i \in D^+(F)}$,
which may include candidates with $v_i = 0$. After constructing
$E^{\mathrm{req}}$, every node lying in a non-trivial SCC is assigned
$v_i = 0$ and excluded from the \emph{executable candidate family}:
\[
\widehat{Q}_e = \{q_i \in Q_e : v_i = 1\}.
\]
Hence $E^{\mathrm{req}}[\widehat{Q}_e]$ is a DAG.

% ----------------------------------------------------------------
\subsection{Repair events and feasible repair plans}
\label{subsec:repair-feasible}

\begin{definition}[Repair event]
\label{def:repair-event}
A \emph{repair event} is $e = (F, \tau, \Delta)$ where $F \subseteq V$,
$\tau \in \{\mathsf{delete}, \mathsf{correct}, \mathsf{migrate}\}$,
and $\Delta$ is optional replacement information.
\end{definition}

\paragraph{Event semantics.}
For $\tau = \mathsf{delete}$: roots removed, $\mathsf{Ret}(e) = V
\setminus F$. For $\tau = \mathsf{correct}$: $x_\Delta$ installed,
$\mathsf{Ret}(e) = (V \setminus F) \cup \{x_\Delta\}$. For $\tau =
\mathsf{migrate}$: contract updates to $\kappa_e$, $\mathsf{Ret}(e) =
V \setminus F$; here $V \setminus F$ excludes obsolete pre-migration
artifact versions, while the post-event interface $\kappa_e$ supplies
the migrated contract or handle used by replay and validation. The
optimization applies only to $D^+(F)$.

\begin{definition}[Feasible repair plan]
\label{def:feasible}
A \emph{repair plan} $\rho = (B_\rho, Q_\rho, S_\rho, R_\rho)$ is
\emph{feasible} if all five conditions hold.
\begin{enumerate}[leftmargin=*,label=(\roman*),itemsep=2pt]
  \item \textbf{Coverage.} $C(F) \subseteq B_\rho$.

  \item \textbf{Withdrawal barrier.}
  For every $r \in \mathcal{R}_e$ and $i \in B_\rho$,
  $\mathsf{Vis}_r(i) = 0$ until: (a) $i$ is permanently removed
  ($\mu_i = \mathsf{remove}$ for $i \in D(F)$, or $i \in F$ for any
  $\tau$---all roots are permanently superseded regardless of event
  type); (b) a validated successor $x_i'$ is published and
  $(i, x_i') \in R_\rho$; or (c) $i$ is quarantined after failed
  repair, remaining in $B_\rho$ with $\mathsf{Vis}_r(i) = 0$.
  Any replica in $\mathcal{R}_e$ that does not acknowledge withdrawal
  of $B_\rho$ within $T_{\mathrm{ack}}$ is fenced: it is removed from
  $\mathcal{R}_e$ and blocked from serving until it reconnects and
  merges $B_\rho$.

  \item \textbf{Candidate executability.}
  For every $q_i \in Q_\rho$ with $v_i = 1$, $\pi_i$ is executable
  using the resources required by its repair mode, $\kappa_e$, and the
  staged or republished successors of all $j \in P_i$. For $\mu_i \in
  \{\mathsf{exact}, \mathsf{regen}\}$, these resources are derived from
  $\mathsf{Ret}(e)$. For $\mu_i = \mathsf{unlearn}$, they additionally
  include the current adapter $\Delta\theta_i$ together with
  $\mathsf{For}_i(e)$ and $\mathsf{Ref}_i(e)$.

  \item \textbf{Selection closure.}
  If $i \in S_\rho$ and $j \in P_i$, then $j \in S_\rho$.

  \item \textbf{Validated republication.}
  If $(i, x_i') \in R_\rho$: $i \in S_\rho$, $v_i = 1$, and either
  (a) $\mu_i = \mathsf{exact}$: $x_i'$ recomputed from
  $\mathsf{Ret}(e)$, $\Validate_i(x_i') = 1$; or
  (b) $\mu_i = \mathsf{regen}$: $x_i'$ produced from $\mathsf{Ret}(e)$
  and $\kappa_e$, $\Validate_i(x_i') = 1$; or
  (c) $\mu_i = \mathsf{unlearn}$: $x_i'$ produced by applying
  $\pi_i^{\mathsf{unlearn}}$ with forget set $\mathsf{For}_i(e)$ and
  reference set $\mathsf{Ref}_i(e)$ under $\kappa_e$,
  $\Validate_i(x_i') = 1$.
  Failure under any mode quarantines $i$ per condition~(ii).
\end{enumerate}
\end{definition}

% ----------------------------------------------------------------
\subsection{Budgeted repair selection}
\label{subsec:budgeted}

For each $i \in D^+(F)$, let $x_i \in \{0,1\}$ and define:
\[
\mathrm{Repair}(x) = \textstyle\sum_{i \in D^+(F)} w_i x_i, \quad
\mathrm{Budget}(x) = \textstyle\sum_{i \in D^+(F)} c_i x_i.
\]
\begin{align}
x_i &\leq v_i, && \forall i \in D^+(F), \label{eq:avail}\\
x_i &\leq x_j, && \forall j \in P_i,\;\forall i \in D^+(F),
\label{eq:closure}\\
x_i &\in \{0,1\}, && \forall i \in D^+(F). \label{eq:binary}
\end{align}
Let $\lambda \geq 0$ be the fixed tradeoff parameter. The
\emph{budgeted repair-selection problem} is:
\[
\max_{x}\;\mathrm{Repair}(x)-\lambda\cdot\mathrm{Budget}(x)
\quad\text{s.t.\ \eqref{eq:avail}--\eqref{eq:binary}.}
\]
Constraint~\eqref{eq:avail} uses $v_i$ from the full candidate family
$Q_e$; candidates with $v_i = 0$ (including all cyclic descendants)
are excluded from the feasible region. In the implementation, the
executable family $\widehat{Q}_e$ is passed directly to
\textsc{MinCutSelect}, which is equivalent because all $v_i = 0$
candidates are forced out by the $M$-penalty construction in the proof
of Theorem~\ref{thm:closure}. Since $E^{\mathrm{req}}[\widehat{Q}_e]$
is a DAG, topological execution order over $S^\star$ is well-defined.

\paragraph{Interpretation.}
Selects candidate successors to produce and republish; not an
optimization over causal erasure. For $\mu_i = \mathsf{exact}$: exact
recomputation. For compressive artifacts: $w_i$ scores the validated
retained-support successor.

\begin{theorem}[Fixed-$\lambda$ budgeted repair selection]
\label{thm:closure}
Fix $e$, $Q_e$ over $D^+(F)$, and $\lambda \geq 0$. The budgeted
repair-selection problem over $E^{\mathrm{req}}$ reduces to a
maximum-weight closure problem and can be solved to optimality by a
single $s$-$t$ min-cut~\citep{picard1976closure}.
\end{theorem}

\begin{proof}[Proof sketch]
Let $p_i = w_i - \lambda c_i$ and $W^+ = \sum_{i:\,p_i>0} p_i$.
Construct a flow network with source $s$ and sink $t$. For each $i$:
add $s\to i$ (cap $p_i$) if $p_i>0$; add $i\to t$ (cap $-p_i$) if
$p_i<0$; add $i\to t$ (cap $M>W^+$) if $v_i=0$. The $v_i=0$ rule is
cumulative: if $v_i=0$ and $p_i>0$, both $s\to i$ and $i\to t$ (cap
$M$) are added; the $M$-edge dominates in any minimum cut. For each
$(j,i)\in E^{\mathrm{req}}$: add $i\to j$ (cap $M$).

The empty set $U=\varnothing$ induces a cut of capacity $W^+$. Any
cut in which $i\in U$ but $j\notin U$ for some $j\in P_i$ cuts the
dependency edge $i\to j$ at cost $M>W^+$. Any cut containing $i$
with $v_i=0$ cuts an exclusion edge at cost $M>W^+$. Since both
penalties exceed $W^+$, no minimum cut pays either. Every minimum cut
therefore induces a closed, availability-respecting $U\subseteq
D^+(F)$, with cut capacity $W^+-\sum_{i\in U}p_i$. Minimizing cut
capacity maximizes $\sum_{i\in U}p_i = \mathrm{Repair}(x)-\lambda
\cdot\mathrm{Budget}(x)$.
\end{proof}

% ----------------------------------------------------------------
\subsection{Lineage and affected cascades}
\label{subsec:lineage}

The system maintains raw provenance as an execution--artifact graph
$\mathcal{G}_{\mathrm{prov}} = (\mathcal{X}\cup\mathcal{A},
E_{\mathrm{prov}})$, where $\mathcal{X}$ (executions) and
$\mathcal{A}$ (artifact records) are local to this subsection. Because
memory updates can be iterative, $\mathcal{G}_{\mathrm{prov}}$ may
contain cycles. The system condenses strongly connected components and
projects onto $\G = (V,E^{\mathrm{inf}},E^{\mathrm{sem}})$.
Reachability is preserved under condensation, so $C(F)$ is computable
on $\G$.

% ----------------------------------------------------------------
\subsection{Scope}
\label{subsec:scope}

All guarantees are store-level under complete provenance: stale
artifacts are withdrawn on all replicas in $\mathcal{R}_e$ and
republished successors must pass $\Validate_i$. For $\mu_i \in
\{\mathsf{exact}, \mathsf{regen}\}$, successors are built from
retained support $\mathsf{Ret}(e)$ under $\kappa_e$. For $\mu_i =
\mathsf{unlearn}$, successors are produced by applying the unlearning
operator to the current neural artifact using forget and reference
support derived from provenance under $\kappa_e$; exact
parameter-level erasure is not claimed unless the operator provides an
explicit guarantee. Flat retrieval-only stores that do not maintain
$E^{\mathrm{inf}}$ cannot identify $C(F)$ and are outside the scope of
these guarantees.

% ================================================================
\section{\textsc{BarrierRepair}}
\label{sec:framework}

\subsection{Overview}
\label{subsec:overview}

\textsc{BarrierRepair} operates in four stages. It first localizes the
affected cascade $C(F)$, then enforces a withdrawal barrier on
reachable replicas $\mathcal{R}_e$, next generates artifact-specific
repair candidates and selects a dependency-closed repair set $S^\star$
by min-cut on the executable family $\widehat{Q}_e$, and finally
executes and validates selected repairs node by node in topological
order and commits all validated successors in a single batch visibility
operation.

% ----------------------------------------------------------------
\subsection{Withdrawal barrier}
\label{subsec:withdrawal}

Let $T_{\mathrm{ack}} > 0$ be the acknowledgement timeout (wall-clock
seconds). The hidden set is initialized to $B_\rho \leftarrow C(F)$
and propagated to $\mathcal{R}_e$; the barrier waits up to
$T_{\mathrm{ack}}$ for acknowledgement from every replica in
$\mathcal{R}_e$. Any replica that does not acknowledge within
$T_{\mathrm{ack}}$ is fenced: it is removed from $\mathcal{R}_e$ and
blocked from serving until it reconnects and merges $B_\rho$. Repair
begins only after all remaining replicas in $\mathcal{R}_e$ have
acknowledged. A remove-wins CRDT ensures no merge makes a withdrawn
artifact visible again. Fenced replicas merge $B_\rho$ on reconnection
before rejoining $\mathcal{R}_e$. Requests touching hidden artifacts
fall back to the nearest non-hidden ancestor; fallback deactivates as
validated successors are published.

% ----------------------------------------------------------------
\subsection{Root update, candidate generation, and repair selection}
\label{subsec:optstep}

Apply root update per event semantics
(Section~\ref{subsec:repair-feasible}). For each $i\in D(F)$,
\textsc{CandidateRepair} assigns a repair mode $\mu_i \in
\{\mathsf{remove},\mathsf{exact},\mathsf{regen},\mathsf{unlearn}\}$.
Remove-mode descendants are deleted permanently. The repairable set is
$D^+(F) = \{i \in D(F) : \mu_i \neq \mathsf{remove}\}$.

Candidate generation produces the full family $Q_e = \{q_i\}_{i \in
D^+(F)}$ with dependency graph:
\[
E^{\mathrm{req}} = \{(j,i)\in D^+(F)^2 : j\in P_i\}.
\]
After $E^{\mathrm{req}}$ is constructed, every node in a non-trivial
SCC is assigned $v_i = 0$ and quarantined. All remaining candidates
with $v_i = 0$ (non-executable for any reason) are retained in $Q_e$
for audit but excluded from the executable family:
\[
\widehat{Q}_e = \{q_i \in Q_e : v_i = 1\}.
\]
$E^{\mathrm{req}}[\widehat{Q}_e]$ is a DAG by construction.
Solve Theorem~\ref{thm:closure} on $\widehat{Q}_e$ to obtain
$S^\star \subseteq D^+(F)$.

\paragraph{Repair execution.}
Topologically order $S^\star$ by $E^{\mathrm{req}}[S^\star]$. For each
$i \in S^\star$ in this order, all $j \in P_i$ have already been
staged, so $\{Z[j]\}_{j \in P_i}$ is fully available, satisfying the
executability condition $v_i = 1$ exactly as stated in
Section~\ref{subsec:recovery}. Apply the mode-appropriate operator:
for $\mathsf{exact}$: deterministic recompute from $\mathsf{Ret}(e)$;
for $\mathsf{regen}$: regenerate from $\mathsf{Ret}(e)$ under
$\kappa_e$; for $\mathsf{unlearn}$: apply
$\pi_i^{\mathsf{unlearn}}$ to the current adapter $\Delta\theta_i$
using forget set $\mathsf{For}_i(e)$ and reference set
$\mathsf{Ref}_i(e)$ under $\kappa_e$; the base model
$\theta_{\mathrm{base}}$ is not modified.

\paragraph{Validation and batch publication.}
After all nodes in $S^\star$ are staged, each node $i \in S^\star$ is
tested individually by $\Validate_i(Z[i])$. If every node passes, all
successors $\{Z[i]\}_{i \in S^\star}$ are committed by a single batch
visibility operation $\mathrm{PublishBatch}(\{(i,Z[i]) : i \in
S^\star\})$; $(i, Z[i])$ is then recorded in $R_\rho$ and linked by
$\mathsf{replaces}(i,Z[i])$ in $\G$, and fallback deactivates for each
published node. If any node $i \in S^\star$ fails validation, it is
quarantined ($v_i \leftarrow 0$), its staged output is discarded,
$\widehat{Q}_e$ is pruned of $i$ and any node whose closure now
requires $i$, and the selection is re-solved on the residual
$\widehat{Q}_e$. The final published set is optimal for the residual
executable family at the time of publication, preserving the
optimality guarantee of Theorem~\ref{thm:closure} for that family.

\paragraph{Concurrent repair.}
Concurrent repair requests are ordered by Lamport
timestamp~\citep{lamport1978time}. Overlapping epochs: the earlier
completes first. Deletion events take precedence over correction and
migration for the same root. Repairs on disjoint subgraphs of $\G$
proceed independently.

% ----------------------------------------------------------------
\subsection{Algorithm}
\label{subsec:algorithm}

\textsc{MinCutSelect}$(\widehat{Q}_e,\lambda)$ constructs the flow
network from Theorem~\ref{thm:closure} on the executable family
$\widehat{Q}_e$ and returns the source-side min-cut node set $S^\star$.

\begin{algorithm}[t]
\caption{\textsc{BarrierRepair}$(\G,\,e,\,T_{\mathrm{ack}},\,\lambda)$}
\label{alg:barrier}
\begin{algorithmic}[1]
\STATE Parse $e=(F,\tau,\Delta)$
  \COMMENT{$\tau\in\{\mathsf{delete},\mathsf{correct},\mathsf{migrate}\}$}
\STATE $C \leftarrow \Reach(F;\,E^{\mathrm{inf}})$
  \COMMENT{affected cascade $C(F)$}
\STATE $B_\rho \leftarrow C$; broadcast $B_\rho$ to $\mathcal{R}_e$; activate fallback
\STATE Wait up to $T_{\mathrm{ack}}$ for acknowledgements from $\mathcal{R}_e$
\STATE Fence non-acknowledging replicas; remove from $\mathcal{R}_e$
  \COMMENT{barrier complete; repair begins}
\STATE $\G \leftarrow \mathrm{ApplyRootUpdate}(\G,e)$
  \COMMENT{update $\mathsf{Ret}(e)$, $\kappa_e$;
           materialize $\mathsf{New}_i(e)$ for neural descendants
           if $\tau=\mathsf{correct}$}
\STATE $D \leftarrow C \setminus F$
  \COMMENT{affected descendants $D(F)$}
\STATE $Q_e \leftarrow \emptyset$;\quad $\widehat{Q}_e \leftarrow \emptyset$
\FORALL{$i \in D$}
  \STATE $(\mathrm{status}_i,\,q_i) \leftarrow \mathrm{CandidateRepair}(i,\,e)$
  \IF{$\mathrm{status}_i = \texttt{remove}$}
    \STATE Remove $i$ permanently; record audit event
      \COMMENT{$\mu_i=\mathsf{remove}$: no valid successor}
  \ELSIF{$\mathrm{status}_i = \texttt{repairable}$}
    \STATE $Q_e \leftarrow Q_e \cup \{q_i\}$
      \COMMENT{$v_i=1$ pending SCC check; $\mu_i\in\{\mathsf{exact},\mathsf{regen},\mathsf{unlearn}\}$}
  \ELSE
    \STATE $Q_e \leftarrow Q_e \cup \{q_i\}$;\quad quarantine $i$; record audit event
      \COMMENT{$v_i=0$: non-executable; in $Q_e$ for audit only}
  \ENDIF
\ENDFOR
\STATE Build $E^{\mathrm{req}} = \{(j,i)\in D^+(F)^2 : j\in P_i\}$
\STATE Detect non-trivial SCCs of $E^{\mathrm{req}}$
\FORALL{$i$ in a non-trivial SCC of $E^{\mathrm{req}}$}
  \STATE Set $v_i \leftarrow 0$;\quad quarantine $i$; record audit event
    \COMMENT{cyclic dependency: unsatisfiable predecessor requirements}
\ENDFOR
\STATE $\widehat{Q}_e \leftarrow \{q_i \in Q_e : v_i = 1\}$
  \COMMENT{$E^{\mathrm{req}}[\widehat{Q}_e]$ is a DAG}
\WHILE{$\widehat{Q}_e \neq \emptyset$}
  \STATE $S^\star \leftarrow \mathrm{MinCutSelect}(\widehat{Q}_e,\,\lambda)$
  \IF{$S^\star = \emptyset$}
    \STATE \textbf{break}
  \ENDIF
  \STATE Topologically order $S^\star$ by $E^{\mathrm{req}}[S^\star]$
  \STATE $Z \leftarrow \emptyset$
    \COMMENT{staging area}
  \FORALL{$i \in S^\star$ in topological order}
    \STATE $Z[i] \leftarrow \mathrm{ExecuteRepair}(i,\,\mu_i,\,\pi_i,\,
           \{Z[j]\}_{j \in P_i})$
      \COMMENT{all $j\in P_i$ already staged; $v_i=1$ satisfied exactly}
  \ENDFOR
  \STATE $F_{\mathrm{bad}} \leftarrow \{i \in S^\star : \Validate_i(Z[i]) = 0\}$
    \COMMENT{node-level, mode-appropriate validation}
  \IF{$F_{\mathrm{bad}} = \emptyset$}
    \STATE $\mathrm{PublishBatch}(\{(i,\,Z[i]) : i \in S^\star\})$
      \COMMENT{single batch visibility commit}
    \FORALL{$i \in S^\star$}
      \STATE Record $(i, Z[i])$ in $R_\rho$;
             link $\mathsf{replaces}(i,Z[i])$ in $\G$
      \STATE Deactivate fallback for $i$
    \ENDFOR
    \STATE \textbf{break}
  \ELSE
    \FORALL{$i \in F_{\mathrm{bad}}$}
      \STATE Quarantine $i$; set $v_i \leftarrow 0$
    \ENDFOR
    \STATE $\widehat{Q}_e \leftarrow \mathrm{PruneCandidates}(\widehat{Q}_e,\,F_{\mathrm{bad}})$
      \COMMENT{remove $F_{\mathrm{bad}}$ and dependents; re-solve on residual}
  \ENDIF
\ENDWHILE
\end{algorithmic}
\end{algorithm}

\paragraph{Complexity.}
Localization: $O(|V|+|E^{\mathrm{inf}}|)$. Broadcast and barrier:
$O(|\mathcal{R}_e|)$. Candidate generation: $O(|D(F)|)$, assuming
$O(1)$ classification per artifact. Building $E^{\mathrm{req}}$ and
SCC detection: $O(|D^+(F)|^2)$. \textsc{MinCutSelect} with
push--relabel: $O(|\widehat{Q}_e|^3) \leq O(|D^+(F)|^3)$.
Topological ordering of $S^\star$:
$O(|S^\star|+|E^{\mathrm{req}}[S^\star]|)$, dominated by the min-cut.
The \textbf{while} loop iterates at most $|\widehat{Q}_e| \leq
|D^+(F)|$ times. Total worst-case:
\[
O\!\left(|D^+(F)|^4\right).
\]














\section{Related Work}
\label{sec:related}

\paragraph{Agent memory and tool-derived state.}
LLM agents increasingly maintain state beyond the immediate context window. 
Generative Agents and Reflexion store memories or reflections for later decisions, 
while MemGPT and A-MEM study mechanisms for managing long-term agent memory 
across interactions~\citep{park2023generative,shinn2023reflexion,
packer2023memgpt,xu2025amem}. Skill-oriented agents further show that past
experience can be distilled into reusable procedures or skills~\citep{mi2026procmem}.
A related source of persistent state appears in tool-use systems, where API calls,
arguments, outputs, cached responses, and traces become reusable workflow artifacts
~\citep{qin2023toolllm,guo2024stabletoolbench}. These works motivate the memory
substrate considered here. \textsc{MemoRepair} studies a later stage in the lifecycle:
after an artifact has already been materialized, a deletion, correction, or migration
can make its descendants stale, requiring explicit withdrawal and repair.

\paragraph{Unlearning and memory privacy.}
Machine unlearning removes or suppresses the influence of deleted data in learned
models~\citep{cao2015towards,guo2020certified,xu2024unlearning}. Recent work
extends forgetting to agent settings, where information may persist in behavior,
retrieval, or memory access~\citep{wang2026agenticunlearning}. Privacy studies of
LLM-agent memory similarly show that stored interactions can remain exposed through
memory retrieval~\citep{wang2025mextra}. These lines address model-side, retriever-side,
or access-side influence. \textsc{MemoRepair} addresses a separate store-level failure
mode: summaries, cached outputs, prompt skills, chain procedures, and neural-skill
artifacts may remain visible even after the source artifact has been updated or removed.

\paragraph{Provenance, view maintenance, and selection.}
Database provenance and view maintenance provide tools for relating source data to
derived state and propagating updates through materialized views
~\citep{buneman2001prov,cheney2009provenance,ceri1991deriving}. Agent memory
requires additional machinery because descendants are heterogeneous artifacts, repair
operators may fail validation, and publishing one successor may require other repaired
successors to be available first. Our selector uses the classical maximum-closure/min-cut
connection~\citep{picard1976closure}. The contribution is not a new graph-cut algorithm,
but the cascade-repair contract that turns successor publication in agent memory into a
predecessor-closed selection problem.





% \section{Related Work}
% \label{sec:related}

% \textbf{Agentic memory and materialized tool state.}
% Prior work studies how LLM agents store, organize, retrieve, and reuse
% experience across tasks and sessions, including reflective memories,
% persistent memory managers, graph-structured memory, and reusable procedural
% skills~\citep{park2023generative,shinn2023reflexion,packer2023memgpt,
% xu2025amem,edge2024graphrag,yu2026agemem,mi2026procmem}. Tool-augmented
% agents make such state concrete: tool calls produce outputs, traces, API
% arguments, summaries, and executable procedures that may later be cached or
% reused~\citep{qin2023toolllm,guo2024stabletoolbench,patil2024gorilla}.
% \textsc{MemoRepair} focuses on the post-update problem: once this state has
% been materialized, a deletion, correction, or migration requires repair over
% visible descendants, not only the invalidated root.

% \textbf{Unlearning, provenance, and derived-state maintenance.}
% Machine unlearning and agentic forgetting remove or suppress data influence
% in model parameters, behavior, retrieval pathways, or memory access after
% deletion events~\citep{cao2015towards,xu2024unlearning,guo2020certified,
% neel2021descent,wang2026agenticunlearning}; privacy studies similarly show
% that sensitive memories can remain exposed through retrieval or multi-agent
% interaction~\citep{wang2025mextra,elyagoubi2026agentleak,liu2025topology}.
% \textsc{MemoRepair} addresses the complementary store-level problem: even
% after parametric repair, materialized descendants such as summaries, cached
% outputs, prompt skills, and executable procedures may remain visible.
% Database provenance and view-maintenance methods track source dependencies
% and propagate updates through derived data~\citep{buneman2001prov,
% green2007provenance,cheney2009provenance,ceri1991deriving,zhou2007lazy};
% our setting adds heterogeneous repair operators, validation failures, and
% cost-aware predecessor-closed selection.












% \section{Related Work}
% \label{sec:related}

% \textbf{Agentic memory and long-horizon LLM systems.}
% Work on agentic memory studies how LLM agents store, organize, and reuse
% experience across tasks and sessions. This line includes reflective
% memories, interaction traces, persistent memory managers,
% graph-structured memory, and reusable procedural memory
% \citep{park2023generative,shinn2023reflexion,packer2023memgpt,xu2025amem,
% edge2024graphrag,yu2026agemem,mi2026procmem}.
% These systems show how agents accumulate reusable state rather than
% reconstructing each decision from scratch. \textsc{MemoRepair} instead
% studies what happens after such state has already been materialized:
% once raw records have been summarized, cached, indexed, or compiled into
% skills and procedures, a later source update becomes a transition over
% the descendant artifacts that remain visible in the memory store.

% \textbf{Tool-augmented agents and materialized tool state.}
% Tool-augmented agent systems make derived state especially concrete.
% Tool calls produce outputs, traces, and API arguments that may later be
% cached, summarized, or compiled into executable procedures
% \citep{qin2023toolllm,guo2024stabletoolbench,patil2024gorilla}.
% These artifacts are not merely transient logs: once cached, summarized,
% or compiled into reusable procedures, they become part of the agent's
% persistent decision state. This creates cascade-repair obligations: a
% source correction or API migration can invalidate not only the original
% tool record but also downstream summaries, cached outputs, and executable
% call-chain procedures.

% \textbf{Machine unlearning, agentic forgetting, and memory privacy.}
% Machine unlearning aims to remove or suppress the influence of data on
% model parameters or model behavior after a deletion or invalidation event
% \citep{cao2015towards,xu2024unlearning,guo2020certified,
% neel2021descent}. Recent work on agentic forgetting extends this concern
% to agents, including interventions on model behavior, retrieval pathways,
% and memory access after information is removed
% \citep{wang2026agenticunlearning}. Privacy analyses further show that
% sensitive memory can be exposed through retrieval and multi-agent
% interaction pathways
% \citep{wang2025mextra,elyagoubi2026agentleak,liu2025topology}.
% \textsc{MemoRepair} addresses a complementary store-level problem. Even
% when a neural skill is repaired parametrically, materialized descendants
% such as summaries, cached tool outputs, prompt skills, and executable
% procedures may remain visible and continue to affect future actions.
% Thus parameter-level repair controls residual influence inside neural
% descendants, whereas store-level cascade repair governs whether visible
% derived artifacts are withdrawn, reconstructed, validated, and
% republished.

% \textbf{Provenance, derived-state maintenance, and repair semantics.}
% Database provenance and view-maintenance work provide tools for reasoning
% about how derived data depends on source inputs and how updates propagate
% through derived state
% \citep{buneman2001prov,green2007provenance,cheney2009provenance,
% ceri1991deriving,zhou2007lazy}.
% These ideas inform cascade localization in agentic memory, where an
% update to a source artifact can affect many descendants. The agentic
% setting, however, adds heterogeneous successor semantics: deterministic
% artifacts may be recomputed, summaries and other compressive artifacts
% may be regenerated, procedural artifacts may need interface-aware
% rewriting, and neural skills may require parameter-level repair.
% Unlike incremental view maintenance, which propagates updates through
% predefined materialized views with deterministic refresh semantics,
% \textsc{MemoRepair} addresses heterogeneous successors with stochastic
% operators (parameter-level repair, regeneration) and a validation
% oracle that may reject candidates; the contract therefore couples
% selection with predecessor-closure under uncertainty rather than
% mechanical refresh.
% \textsc{MemoRepair} expresses these heterogeneous cases under a common
% repair contract for agent memory stores.















% \section{Related Work}
% \label{sec:related}

% \textbf{Agentic memory and long-horizon LLM systems.}
% Persistent memory has become a core substrate for long-horizon LLM
% agents. Prior work studies reflective memory, interaction traces,
% persistent memory management, graph-structured memory, and reusable
% procedural memory
% \citep{park2023generative,shinn2023reflexion,packer2023memgpt,xu2025amem,
% edge2024graphrag,yu2026agemem,mi2026procmem}.
% These systems show how agents accumulate reusable state across tasks and
% sessions. \textsc{MemoRepair} studies the post-update lifecycle of this
% state: once raw records have been summarized, cached, embedded, or
% compiled into skills and procedures, a later source update becomes a
% transition over the visible descendant state of the memory store.

% \textbf{Tool-augmented agents, unlearning, and post-update reliability.}
% Tool-augmented agent systems make derived state especially concrete:
% tool calls produce cached outputs, traces, API arguments, and executable
% procedures that can be reused in later decisions
% \citep{qin2023toolllm,guo2024stabletoolbench,patil2024gorilla}.
% Machine unlearning and agentic forgetting address a complementary
% post-update problem by modifying model behavior or retrieval pathways
% after information is removed or invalidated
% \citep{cao2015towards,xu2024unlearning,guo2020certified,
% neel2021descent,wang2026agenticunlearning}.
% Recent privacy analyses further show that memory can remain exposed
% through retrieval and multi-agent pathways
% \citep{wang2025mextra,elyagoubi2026agentleak,liu2025topology}.
% \textsc{MemoRepair} focuses on materialized agent state that remains
% eligible for service after its support changes. In this setting,
% parameter-level repair controls neural descendants, while store-level
% cascade repair controls summaries, cached outputs, prompt skills, chain
% procedures, and other visible artifacts.

% \textbf{Provenance, derived-state maintenance, and repair semantics.}
% Database provenance and view-maintenance work provide tools for reasoning
% about how derived data depends on source inputs and how updates propagate
% through derived state
% \citep{buneman2001prov,green2007provenance,cheney2009provenance,
% ceri1991deriving,zhou2007lazy}.
% These ideas naturally inform cascade localization in agentic memory,
% where an update to a source artifact can affect many descendants. The
% agentic setting adds heterogeneous successor semantics: deterministic
% artifacts may be recomputed, compressive artifacts may be regenerated,
% procedural artifacts may need interface-aware rewriting, and neural
% skills may require parameter-level repair. \textsc{MemoRepair} expresses
% these cases under a common repair contract over visible derived state.

% \textbf{Positioning.}
% Agentic memory repair introduces a store-level state-transition problem.
% A source update changes which descendants may remain visible, which
% successors can be constructed under the current interface, and which
% validated successor state may be republished. \textsc{MemoRepair} defines
% this transition over summaries, caches, procedures, prompt skills, and
% neural skills. Influence provenance determines the affected descendant
% state; the withdrawal barrier defines the visibility invariant; successor
% construction defines valid post-event support; and predecessor-closed
% selection defines the publication rule.\textbf{}
\begin{thebibliography}{31}
\providecommand{\natexlab}[1]{#1}
\providecommand{\url}[1]{\texttt{#1}}
\expandafter\ifx\csname urlstyle\endcsname\relax
  \providecommand{\doi}[1]{doi: #1}\else
  \providecommand{\doi}{doi: \begingroup \urlstyle{rm}\Url}\fi

\bibitem[Buneman et~al.(2001)Buneman, Khanna, and Tan]{buneman2001prov}
Peter Buneman, Sanjeev Khanna, and Wang~Chiew Tan.
\newblock {Why and Where: A Characterization of Data Provenance}.
\newblock In \emph{Proceedings of the 8th International Conference on Database Theory}, ICDT '01, page 316–330, Berlin, Heidelberg, 2001. Springer-Verlag.
\newblock ISBN 3540414568.

\bibitem[Cao and Yang(2015)]{cao2015towards}
Yinzhi Cao and Junfeng Yang.
\newblock {Towards Making Systems Forget with Machine Unlearning}.
\newblock In \emph{Proceedings of the 2015 IEEE Symposium on Security and Privacy}, SP '15, page 463–480, USA, 2015. IEEE Computer Society.
\newblock ISBN 9781467369497.
\newblock \doi{10.1109/SP.2015.35}.
\newblock URL \url{https://doi.org/10.1109/SP.2015.35}.

\bibitem[Ceri and Widom(1991)]{ceri1991deriving}
Stefano Ceri and Jennifer Widom.
\newblock {Deriving Production Rules for Incremental View Maintenance}.
\newblock In \emph{Proceedings of the 17th International Conference on Very Large Data Bases}, VLDB '91, page 577–589, San Francisco, CA, USA, 1991. Morgan Kaufmann Publishers Inc.
\newblock ISBN 1558601503.

\bibitem[Cheney et~al.(2009)Cheney, Chiticariu, and Tan]{cheney2009provenance}
James Cheney, Laura Chiticariu, and Wang-Chiew Tan.
\newblock {Provenance in Databases: Why, How, and Where}.
\newblock \emph{Found. Trends Databases}, 1\penalty0 (4):\penalty0 379–474, April 2009.
\newblock ISSN 1931-7883.
\newblock \doi{10.1561/1900000006}.
\newblock URL \url{https://doi.org/10.1561/1900000006}.

\bibitem[Chhikara et~al.(2025)Chhikara, Khant, Aryan, Singh, and Yadav]{mem0}
Prateek Chhikara, Dev Khant, Saket Aryan, Taranjeet Singh, and Deshraj Yadav.
\newblock {Mem0: Building Production-Ready AI Agents with Scalable Long-Term Memory}.
\newblock \emph{arXiv preprint arXiv:2504.19413}, 2025.

\bibitem[Du et~al.(2025)Du, Li, Zhang, and Song]{du2025memr}
Xingbo Du, Loka Li, Duzhen Zhang, and Le~Song.
\newblock {MemR$^3$: Memory Retrieval via Reflective Reasoning for LLM Agents}.
\newblock \emph{arXiv preprint arXiv:2512.20237}, 2025.

\bibitem[Fan et~al.(2024)Fan, Liu, Lin, Jia, Zhang, Mei, and Liu]{simnpo2024}
Chongyu Fan, Jiancheng Liu, Licong Lin, Jinghan Jia, Ruiqi Zhang, Song Mei, and Sijia Liu.
\newblock {Simplicity Prevails: Rethinking Negative Preference Optimization for {LLM} Unlearning}.
\newblock In \emph{Neurips Safe Generative AI Workshop 2024}, 2024.
\newblock URL \url{https://openreview.net/forum?id=pVACX02m0p}.

\bibitem[Gao et~al.(2024)Gao, Wang, Ding, Weng, Wang, and Zhu]{ooo2024}
Chongyang Gao, Lixu Wang, Kaize Ding, Chenkai Weng, Xiao Wang, and Qi~Zhu.
\newblock {On Large Language Model Continual Unlearning}.
\newblock \emph{arXiv preprint arXiv:2407.10223}, 2024.

\bibitem[Green et~al.(2007)Green, Karvounarakis, and Tannen]{green2007provenance}
Todd~J. Green, Grigoris Karvounarakis, and Val Tannen.
\newblock {Provenance Semirings}.
\newblock In \emph{Proceedings of the Twenty-Sixth ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems}, PODS '07, page 31–40, New York, NY, USA, 2007. Association for Computing Machinery.
\newblock ISBN 9781595936851.
\newblock \doi{10.1145/1265530.1265535}.
\newblock URL \url{https://doi.org/10.1145/1265530.1265535}.

\bibitem[Guo et~al.(2020)Guo, Goldstein, Hannun, and Van Der~Maaten]{guo2020certified}
Chuan Guo, Tom Goldstein, Awni Hannun, and Laurens Van Der~Maaten.
\newblock {Certified Data Removal From Machine Learning Models}.
\newblock In \emph{Proceedings of the 37th International Conference on Machine Learning}, ICML'20. JMLR.org, 2020.

\bibitem[Guo et~al.(2024)Guo, Cheng, Wang, Liang, Qin, Li, Liu, Sun, and Liu]{guo2024stabletoolbench}
Zhicheng Guo, Sijie Cheng, Hao Wang, Shihao Liang, Yujia Qin, Peng Li, Zhiyuan Liu, Maosong Sun, and Yang Liu.
\newblock {{S}table{T}ool{B}ench: Towards Stable Large-Scale Benchmarking on Tool Learning of Large Language Models}.
\newblock In Lun-Wei Ku, Andre Martins, and Vivek Srikumar, editors, \emph{Findings of the Association for Computational Linguistics: ACL 2024}, pages 11143--11156, Bangkok, Thailand, August 2024. Association for Computational Linguistics.
\newblock \doi{10.18653/v1/2024.findings-acl.664}.
\newblock URL \url{https://aclanthology.org/2024.findings-acl.664/}.

\bibitem[He et~al.(2026)He, Wang, Zhi, Hu, Chen, Yin, Chen, Wu, Ouyang, Wang, et~al.]{memoryarena2026}
Zexue He, Yu~Wang, Churan Zhi, Yuanzhe Hu, Tzu-Ping Chen, Lang Yin, Ze~Chen, Tong~Arthur Wu, Siru Ouyang, Zihan Wang, et~al.
\newblock {MemoryArena: Benchmarking Agent Memory in Interdependent Multi-Session Agentic Tasks}.
\newblock \emph{arXiv preprint arXiv:2602.16313}, 2026.

\bibitem[Li et~al.(2024)Li, Pan, Gopal, Yue, Berrios, Gatti, Li, Dombrowski, Goel, Mukobi, Helm-Burger, Lababidi, Justen, Liu, Chen, Barrass, Zhang, Zhu, Tamirisa, Bharathi, Herbert-Voss, Breuer, Zou, Mazeika, Wang, Oswal, Lin, Hunt, Tienken-Harder, Shih, Talley, Guan, Steneker, Campbell, Jokubaitis, Basart, Fitz, Kumaraguru, Karmakar, Tupakula, Varadharajan, Shoshitaishvili, Ba, Esvelt, Wang, and Hendrycks]{rmu2024}
Nathaniel Li, Alexander Pan, Anjali Gopal, Summer Yue, Daniel Berrios, Alice Gatti, Justin~D. Li, Ann-Kathrin Dombrowski, Shashwat Goel, Gabriel Mukobi, Nathan Helm-Burger, Rassin Lababidi, Lennart Justen, Andrew~B. Liu, Michael Chen, Isabelle Barrass, Oliver Zhang, Xiaoyuan Zhu, Rishub Tamirisa, Bhrugu Bharathi, Ariel Herbert-Voss, Cort~B. Breuer, Andy Zou, Mantas Mazeika, Zifan Wang, Palash Oswal, Weiran Lin, Adam~A. Hunt, Justin Tienken-Harder, Kevin~Y. Shih, Kemper Talley, John Guan, Ian Steneker, David Campbell, Brad Jokubaitis, Steven Basart, Stephen Fitz, Ponnurangam Kumaraguru, Kallol~Krishna Karmakar, Uday Tupakula, Vijay Varadharajan, Yan Shoshitaishvili, Jimmy Ba, Kevin~M. Esvelt, Alexandr Wang, and Dan Hendrycks.
\newblock {The WMDP benchmark: measuring and reducing malicious use with unlearning}.
\newblock In \emph{Proceedings of the 41st International Conference on Machine Learning}, ICML'24. JMLR.org, 2024.

\bibitem[Liu et~al.(2025)Liu, Chen, Huang, Ni, and Imani]{lune2025}
Yezi Liu, Hanning Chen, Wenjun Huang, Yang Ni, and Mohsen Imani.
\newblock {LUNE: Efficient LLM Unlearning via LORA Fine-Tuning with Negative Examples}.
\newblock \emph{arXiv preprint arXiv:2512.07375}, 2025.

\bibitem[Mi et~al.(2026)Mi, Ma, Yang, Li, Wang, Zhang, and Wang]{mi2026procmem}
Qirui Mi, Zhijian Ma, Mengyue Yang, Haoxuan Li, Yisen Wang, Haifeng Zhang, and Jun Wang.
\newblock {Skill-Pro: Learning Reusable Skills from Experience via Non-Parametric PPO for LLM Agents}, 2026.
\newblock URL \url{https://arxiv.org/abs/2602.01869}.

\bibitem[Packer et~al.(2024)Packer, Wooders, Lin, Fang, Patil, Stoica, and Gonzalez]{packer2023memgpt}
Charles Packer, Sarah Wooders, Kevin Lin, Vivian Fang, Shishir~G. Patil, Ion Stoica, and Joseph~E. Gonzalez.
\newblock {MemGPT: Towards LLMs as Operating Systems}, 2024.
\newblock URL \url{https://arxiv.org/abs/2310.08560}.

\bibitem[Park et~al.(2023)Park, O'Brien, Cai, Morris, Liang, and Bernstein]{park2023generative}
Joon~Sung Park, Joseph O'Brien, Carrie~Jun Cai, Meredith~Ringel Morris, Percy Liang, and Michael~S. Bernstein.
\newblock {Generative Agents: Interactive Simulacra of Human Behavior}.
\newblock In \emph{Proceedings of the 36th Annual ACM Symposium on User Interface Software and Technology}, UIST '23, New York, NY, USA, 2023. Association for Computing Machinery.
\newblock ISBN 9798400701320.
\newblock \doi{10.1145/3586183.3606763}.
\newblock URL \url{https://doi.org/10.1145/3586183.3606763}.

\bibitem[Patil et~al.(2024)Patil, Zhang, Wang, and Gonzalez]{patil2024gorilla}
Shishir~G. Patil, Tianjun Zhang, Xin Wang, and Joseph~E. Gonzalez.
\newblock {Gorilla: Large Language Model Connected with Massive APIs}.
\newblock In A.~Globerson, L.~Mackey, D.~Belgrave, A.~Fan, U.~Paquet, J.~Tomczak, and C.~Zhang, editors, \emph{Advances in Neural Information Processing Systems}, volume~37, pages 126544--126565. Curran Associates, Inc., 2024.
\newblock \doi{10.52202/079017-4020}.
\newblock URL \url{https://proceedings.neurips.cc/paper_files/paper/2024/file/e4c61f578ff07830f5c37378dd3ecb0d-Paper-Conference.pdf}.

\bibitem[Picard(1976)]{picard1976closure}
Jean-Claude Picard.
\newblock {Maximal Closure of a Graph and Applications to Combinatorial Problems}.
\newblock \emph{Manage. Sci.}, 22\penalty0 (11):\penalty0 1268–1272, July 1976.
\newblock ISSN 0025-1909.
\newblock \doi{10.1287/mnsc.22.11.1268}.
\newblock URL \url{https://doi.org/10.1287/mnsc.22.11.1268}.

\bibitem[Qin et~al.(2023)Qin, Liang, Ye, Zhu, Yan, Lu, Lin, Cong, Tang, Qian, et~al.]{qin2023toolllm}
Yujia Qin, Shihao Liang, Yining Ye, Kunlun Zhu, Lan Yan, Yaxi Lu, Yankai Lin, Xin Cong, Xiangru Tang, Bill Qian, et~al.
\newblock {ToolLLM: Facilitating Large Language Models to Master 16000+ Real-World APIs}.
\newblock In \emph{The twelfth international conference on learning representations}, 2023.

\bibitem[Rasmussen et~al.(2025)Rasmussen, Paliychuk, Beauvais, Ryan, and Chalef]{zep2025}
Preston Rasmussen, Pavlo Paliychuk, Travis Beauvais, Jack Ryan, and Daniel Chalef.
\newblock {Zep: A Temporal Knowledge Graph Architecture for Agent Memory}.
\newblock \emph{arXiv preprint arXiv:2501.13956}, 2025.

\bibitem[Reisizadeh et~al.(2026)Reisizadeh, Jia, Bu, Vinzamuri, Ramakrishna, Chang, Cevher, Liu, and Hong]{blur2026}
Hadi Reisizadeh, Jinghan Jia, Zhiqi Bu, Bhanukiran Vinzamuri, Anil Ramakrishna, Kai-Wei Chang, Volkan Cevher, Sijia Liu, and Mingyi Hong.
\newblock {{BLUR}: A Bi-Level Optimization Approach for {LLM} Unlearning}.
\newblock In Vera Demberg, Kentaro Inui, and Llu{\'i}s Marquez, editors, \emph{Proceedings of the 19th Conference of the {E}uropean Chapter of the {A}ssociation for {C}omputational {L}inguistics (Volume 1: Long Papers)}, pages 7043--7058, Rabat, Morocco, March 2026. Association for Computational Linguistics.
\newblock ISBN 979-8-89176-380-7.
\newblock \doi{10.18653/v1/2026.eacl-long.331}.
\newblock URL \url{https://aclanthology.org/2026.eacl-long.331/}.

\bibitem[Shinn et~al.(2023)Shinn, Cassano, Gopinath, Narasimhan, and Yao]{shinn2023reflexion}
Noah Shinn, Federico Cassano, Ashwin Gopinath, Karthik Narasimhan, and Shunyu Yao.
\newblock {Reflexion: Language Agents with Verbal Reinforcement Learning}.
\newblock In \emph{Proceedings of the 37th International Conference on Neural Information Processing Systems}, NIPS '23, Red Hook, NY, USA, 2023. Curran Associates Inc.

\bibitem[{ToolBench}(2023)]{toolllama_lora_hf}
{ToolBench}.
\newblock Toolllama-7b-lora-v1.
\newblock \url{https://huggingface.co/ToolBench/ToolLLaMA-7b-LoRA-v1}, 2023.
\newblock Released LoRA checkpoint for ToolLLaMA trained with ToolBench data.

\bibitem[Wang et~al.(2026)Wang, Wang, Wang, Cong, Yu, Yin, Han, and Wei]{wang2026agenticunlearning}
Bin Wang, Fan Wang, Pingping Wang, Jinyu Cong, Yang Yu, Yilong Yin, Zhongyi Han, and Benzheng Wei.
\newblock {Agentic Unlearning: When LLM Agent Meets Machine Unlearning}, 2026.
\newblock URL \url{https://arxiv.org/abs/2602.17692}.

\bibitem[Wang et~al.(2025{\natexlab{a}})Wang, He, Zeng, Xiang, Xing, Tang, and He]{wang2025mextra}
Bo~Wang, Weiyi He, Shenglai Zeng, Zhen Xiang, Yue Xing, Jiliang Tang, and Pengfei He.
\newblock {Unveiling Privacy Risks in {LLM} Agent Memory}.
\newblock In Wanxiang Che, Joyce Nabende, Ekaterina Shutova, and Mohammad~Taher Pilehvar, editors, \emph{Proceedings of the 63rd Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers)}, pages 25241--25260, Vienna, Austria, July 2025{\natexlab{a}}. Association for Computational Linguistics.
\newblock ISBN 979-8-89176-251-0.
\newblock \doi{10.18653/v1/2025.acl-long.1227}.
\newblock URL \url{https://aclanthology.org/2025.acl-long.1227/}.

\bibitem[Wang et~al.(2025{\natexlab{b}})Wang, Tian, Li, Liang, Wang, Chen, Wang, Lu, Ma, Jiang, et~al.]{omem2025}
Piaohong Wang, Motong Tian, Jiaxian Li, Yuan Liang, Yuqing Wang, Qianben Chen, Tiannan Wang, Zhicong Lu, Jiawei Ma, Yuchen~Eleanor Jiang, et~al.
\newblock {O-mem: Omni Memory System for Personalized, Long Horizon, Self-Evolving Agents}.
\newblock \emph{arXiv preprint arXiv:2511.13593}, 2025{\natexlab{b}}.

\bibitem[Xu et~al.(2023)Xu, Zhu, Zhang, Zhou, and Yu]{xu2024unlearning}
Heng Xu, Tianqing Zhu, Lefeng Zhang, Wanlei Zhou, and Philip~S. Yu.
\newblock {Machine Unlearning: A Survey}.
\newblock \emph{ACM Comput. Surv.}, 56\penalty0 (1), August 2023.
\newblock ISSN 0360-0300.
\newblock \doi{10.1145/3603620}.
\newblock URL \url{https://doi.org/10.1145/3603620}.

\bibitem[Xu et~al.(2025)Xu, Liang, Mei, Gao, Tan, and Zhang]{xu2025amem}
Wujiang Xu, Zujie Liang, Kai Mei, Hang Gao, Juntao Tan, and Yongfeng Zhang.
\newblock {A-Mem: Agentic memory for LLM agents}.
\newblock In \emph{{Advances in Neural Information Processing Systems}}, 2025.

\bibitem[Zhang et~al.(2024)Zhang, Lin, Bai, and Mei]{zhang2024npo}
Ruiqi Zhang, Licong Lin, Yu~Bai, and Song Mei.
\newblock {Negative Preference Optimization: From Catastrophic Collapse to Effective Unlearning}.
\newblock \emph{arXiv preprint arXiv:2404.05868}, 2024.

\bibitem[Zhu et~al.(2026)Zhu, Chen, Yu, Wu, and Wang]{tiermem2025}
Qiming Zhu, Shunian Chen, Rui Yu, Zhehao Wu, and Benyou Wang.
\newblock {From Lossy to Verified: A Provenance-Aware Tiered Memory for Agents}.
\newblock \emph{arXiv preprint arXiv:2602.17913}, 2026.

\end{thebibliography}