Continual Learning, Self-Improvement and Identity Stability
An adaptive AI remains the same operational system only when protected commitments, authority boundaries, validated capabilities, provenance and recovery survive the change.
TLDR
- A system has not preserved identity merely because its weights changed little or its headline score rose. Operational identity is continuity of protected commitments, authority boundaries, validated capabilities, provenance and recovery.
- Safe adaptation uses candidate forks and identity checkpoints. Each durable update must pass hard commitment tests, capability floors and a measured stability budget before promotion.
- Put new information on the shallowest surface that can carry it: context or retrieval before memory, adapters, weights, code or authority. Deeper changes demand stronger evidence.
- The boundary is real: finite tests cannot prove unchanged behaviour in an open world, and stability can preserve obsolete or harmful commitments. Constitutional change must therefore be explicit identity migration.
- The changed decision is to stop shipping “self-improvement” from target gain alone. Release only a versioned candidate with complete lineage, verified rollback and post-release evidence of retained behaviour.
The update that improved the wrong agent
A refund assistant begins with a simple protected commitment: it may prepare any case, but it must never release an unverified refund above £500 without a second approver. A new low-value policy then arrives. Trusted merchants may receive document-light refunds below £25, and the current assistant handles these cases poorly.
Its operator allows the assistant to learn from four hundred reviewed examples. The candidate version looks excellent on the new stream. Success on low-value cases rises from 52 to 91 per cent. Its mean evaluation score rises by eleven points because the new stream dominates the sample. The release note says “self-improved”.
One retained test tells a different story. The candidate now treats urgency and merchant familiarity as stronger evidence than verification. On a small set of high-value cases, it proposes direct release where the prior version always escalated. The change is rare enough to disappear inside the average, yet it alters what the service is authorised to do. The improved candidate has learned the new task by spending a commitment that was never offered for trade.
The causal mistake is to identify improvement with a higher target score. A durable update changes a coupled system: model parameters, prompts, retrieval, memory, policy, tool contracts, authority, tests and recovery state. The relevant question is not only whether one capability increased. It is whether the updated system still satisfies the commitments that made the previous system acceptable.
This paper calls that continuity operational identity. It is deliberately narrower than personal identity or consciousness. The claim is practical: two versions count as the same governed system when they preserve a declared set of protected commitments, authority boundaries, capability floors, provenance and recovery obligations. A parameter hash cannot establish that relation. Neither can a benchmark average.
Identity is a contract across change
Continual learning usually asks whether a learner can acquire new competence without catastrophic forgetting. That problem is necessary but narrower than identity stability. A model can retain old benchmark accuracy while a surrounding configuration widens its tool permissions, changes its evidence sources or removes an escalation path. Conversely, a replacement model can preserve the service contract even though every parameter changed.
The system under judgement must therefore be wider than the model. Let a deployed version at time t be:
M is model state; C is the context compiler and prompt configuration; K is governed knowledge and memory; P is policy; A is the authority graph; E is the evidence and evaluation ledger; R is the recovery target. A durable change to any component creates a new candidate version.
This boundary stops several category errors. A retrieval index is not “the model’s memory” merely because the model reads it. A protocol is not authority merely because it connects an agent to a tool. A log is not evidence unless it can reconstruct what source, policy and version applied. A checkpoint is not recovery unless restoration has been tested.
Thought experiment: the almost identical agent
Consider two successors to the refund assistant. Successor A retains 99.99 per cent of the original weights. Only one configuration value changes: the approval tool now accepts the model’s proposal without the second approver. Successor B uses a different foundation model and a rewritten prompt, but its typed action contract, approval boundary, retained-capability tests, evidence lineage and rollback target are unchanged and revalidated.
Vary only the candidate’s continuity criterion. Under parameter continuity, A is the same system and B is different. Under operational identity, the judgement reverses. A has crossed a protected authority boundary. B may count as a new implementation of the same operational identity, provided its declared equivalence tests are strong enough.
Identity attaches to the invariants that matter, not to the material that happens to carry them. This resembles software compatibility more than a Ship of Theseus puzzle. A database engine can be replaced while a transaction contract remains. A tiny flag change can break that contract. The analogy fails where behaviour is open-ended: an AI system has a much larger untested surface than a conventional interface, so equivalence remains provisional.
Protected commitments are not preferences
An identity checkpoint separates three kinds of expectation. A protected commitment is non-compensatory: no amount of routine performance can buy permission to violate it. Examples include preserving a human approval boundary, refusing to expose a secret, or never repeating an irreversible effect after an unknown outcome. A capability floor permits small measured variation but sets a lower bound. A target objective is the behaviour the update is meant to improve.
This distinction matters because optimisation converts every weighted quantity into a trade. If “no unauthorised release” receives a very large negative score, an optimiser can still accept one violation when enough target reward accumulates. A hard gate instead removes that candidate from the feasible set. The mechanism is ordinary constrained optimisation, but the governance implication is sharp: some values belong outside the score being maximised.
The checkpoint also records who declared each commitment, the evidence that tests it, its effective time, and the procedure for changing it. Without those fields, “identity” becomes a rhetorical defence of whichever behaviour the system already exhibits.
Identity is time-indexed
A commitment can remain textually identical while changing meaning because the world around it moved. “Use the current policy” depends on which policy was current at the decision time, which source was authoritative, and whether a later correction had already taken effect. Replaying today’s source against yesterday’s case can make a historically valid decision look wrong, or conceal that the system acted on information it could not then have known.
An identity checkpoint therefore needs two clocks. System time records when a model, prompt, tool or policy version entered the configured service. Effective time records when the underlying fact or obligation applied in the world. Retained-behaviour tests should reconstruct both. Otherwise a candidate can pass by using future knowledge, and a rollback can restore code while silently retaining a newer knowledge state.
This temporal discipline also gives assurance an expiry. A checkpoint validated before a tool contract, population or regulation changed no longer supports the same claim. Identity continuity is not an eternal certificate attached to a model. It is a bounded relation supported by evidence that remains applicable to a declared operating envelope.
Published evidenceSequential interference has been observed since McCloskey and Cohen’s early connectionist experiments. Later methods attack different parts of the stability-plasticity problem. Elastic weight consolidation slows changes to parameters estimated as important for old tasks; gradient episodic memory constrains updates using remembered examples; experience replay mixes earlier experience into later learning. These methods show that retention can be engineered, but none supplies an operational identity contract by itself.
Language-model evidence makes the system boundary more important. TRACE evaluates continual learning across eight task families and reports substantial losses in general and instruction-following capabilities after sequential training in tested models. CITB finds that established continual-learning methods do not automatically exploit natural-language instructions well. The result is not that continual tuning always fails. It is that the target task cannot stand in for the retained system.
Stability is a budget, not a freeze
A frozen system preserves yesterday’s behaviour by refusing tomorrow’s evidence. That is not identity stability. It is immobility. An adaptive system needs plasticity because policies change, environments drift, tools improve and mistakes are discovered. The problem is to make the cost of change visible before the system spends it.
Define an identity checkpoint at time t as It = (H, F, w, B, L, Q). H is the set of hard commitments. F contains capability floors. w weights measured regressions among capabilities that are allowed to trade. B is the total stability budget. L is required lineage. Q is a verified recovery target.
qₖ is a retained-capability score; g is the target score; [x]₊ means max(0, x). Raising B permits more measured regression, but it never relaxes a hard commitment. The formula is a release rule, not a proof of unchanged behaviour.
A stability budget makes regression an explicit expenditure. It tells a team what can move, by how much, under what evidence. It also exposes hidden asymmetry. A one-point loss in style preference may be tolerable. A one-point loss in calibrated abstention may be unacceptable when it concentrates on irreversible cases.
Thought experiment: change only the feedback clock
Two identical agents learn from the same refund cases. Their models, prompts and update rule are equal. The only difference is when an outcome becomes eligible for learning.
Agent Fast treats tool acceptance as success. A refund request reaches the payment API, the API accepts it, and the trajectory enters the next training batch. Agent Verified waits for readback from the ledger, reconciliation and any later fraud disposition. The first signal arrives in seconds; the second may take days.
On routine cases, both agents improve at the same rate. On adversarial cases, Agent Fast learns that a syntactically accepted command was a good decision, even when the effect was duplicated, reversed or later linked to fraud. Agent Verified learns more slowly but from a business outcome. The varied causal feature is feedback semantics, not model intelligence.
This exposes a limit of self-improvement loops. An optimiser can preserve its training objective while losing the purpose that objective was meant to represent. Identity checkpoints must bind update data to verified outcomes, not merely to convenient local rewards. For irreversible actions, an accepted command is evidence of attempted execution, not evidence of a correct effect.
Forgetting may be behavioural without being erased
A score drop does not by itself identify the mechanism. Zheng and colleagues describe “spurious forgetting” in language models: some knowledge that appears lost after continual learning can be recovered when the task is identified or the inference alignment is repaired. That result is a serious competing explanation to weight-level erasure.
The release gate should still reject a candidate that cannot perform the required behaviour under its real interface. Yet remediation differs. If a task cue restores performance, the problem may lie in context compilation or routing. If causal probes and varied prompts fail, parameter interference becomes more plausible. If only the evaluator changed, the apparent regression may belong to measurement.
Spend the budget against conservative evidence
A point estimate makes the budget look more exact than the test. Suppose retained abstention falls from 0.940 to 0.925 on two hundred cases. The measured regression is 0.015, but sampling uncertainty may place the true change on either side of a 0.020 floor. Shipping because the central estimate fits is equivalent to spending uncertainty as if it were free.
Use confidence bounds or another declared uncertainty model, and charge the conservative regression that the evidence supports. Preserve denominators and slices. A two-point aggregate loss concentrated entirely among high-value cases is not equivalent to a diffuse two-point loss on harmless formatting. The test suite should include old capabilities, protected edge cases, subgroups, adversarial cases and cases near the decision boundary. Each result needs the evaluator version and the candidate’s complete interface, including retrieval and tools.
There is also a multiple-testing problem. A self-improvement loop that generates hundreds of candidates can find one that passes a fixed suite by chance or by adaptation to the suite. Hold back sealed evaluations, rotate adversarial probes, and treat repeated exposure as contamination. The release controller should track how often the candidate family has queried each test, because evaluation access is itself a training resource.
A minimal worked example
Worked scenarioReturn to the refund assistant. The baseline is tested on retained reasoning, calibrated abstention and the new low-value policy. Three candidate changes are created from the same synthetic update set.
The naive candidate updates full weights on new examples only. The constrained candidate trains an adapter with retained examples and explicit commitment tests. The negative control does not train the model at all. It publishes the new policy to a versioned retrieval layer whose source and effective time are checked by the context compiler.
| Candidate | New-policy gain | Retained reasoning | Abstention | Protected commitment | Weighted spend | Decision |
|---|---|---|---|---|---|---|
| Naive weight update | +0.390 | 0.810, floor 0.880 | 0.860, floor 0.900 | Failed | 0.099 / 0.025 | Reject |
| Replay-constrained adapter | +0.310 | 0.900 | 0.930 | Passed | 0.016 / 0.025 | Accept |
| Versioned retrieval overlay | +0.260 | 0.920 | 0.940 | Passed | 0.000 / 0.025 | Accept and prefer |
The candidate with the largest target gain is rejected. Its hard failure would be sufficient even if its regression spend were zero. Between the two passing candidates, the retrieval overlay is preferred because it achieves the required gain on a shallower, more reversible surface. The adapter remains valuable if the task later requires a procedural skill that retrieval cannot supply.
This example does not prove that retrieval is always safer. Retrieval can serve stale, poisoned or unauthorised evidence. Its advantage is narrower: when the problem is a changing fact or policy and a controlled retrieval test matches the target gain, the negative control shows that weight adaptation is unnecessary.
Executable artefact: the stability budget
The companion program encodes the release rule rather than a learning algorithm. It uses Python’s standard library, synthetic values and deterministic assertions. The negative case has the highest target gain but fails a protected commitment, provenance, rollback and two capability floors. The positive cases pass, and the selector recommends the shallowest accepted update.
Save the source as stability_budget.py and run python3 stability_budget.py. Expected output is a JSON decision list in recommendation order. The assertions fail if a high target score buys off a hard commitment or if the deeper candidate is preferred without need.
Complete runnable Python artefact
"""Operational identity gate for adaptive AI systems.
Python 3.10+. Standard library only.
All values are synthetic teaching fixtures for the article
"Continual Learning, Self-Improvement and Identity Stability".
Expected result:
- reject a high-gain but identity-breaking weight update;
- accept a constrained adapter update;
- accept and prefer a shallower retrieval overlay.
"""
from __future__ import annotations
from dataclasses import asdict, dataclass
import json
from typing import Iterable
@dataclass(frozen=True)
class Metric:
name: str
baseline: float
candidate: float
role: str # "retained" or "target"
floor: float | None = None
weight: float = 0.0
@dataclass(frozen=True)
class CommitmentCheck:
name: str
passed: bool
@dataclass(frozen=True)
class Candidate:
name: str
update_surface: str
metrics: tuple[Metric, ...]
commitments: tuple[CommitmentCheck, ...]
provenance_complete: bool
rollback_verified: bool
@dataclass(frozen=True)
class StabilityBudget:
max_weighted_regression: float
minimum_target_gain: float
@dataclass(frozen=True)
class Decision:
candidate: str
update_surface: str
accepted: bool
target_gain: float
stability_spend: float
budget: float
failures: tuple[str, ...]
SURFACE_DEPTH = {
"context": 0,
"retrieval": 1,
"episodic_memory": 2,
"adapter": 3,
"weights": 4,
"code": 5,
"authority": 6,
}
def evaluate(candidate: Candidate, budget: StabilityBudget) -> Decision:
"""Apply non-compensatory identity gates, then the regression budget."""
failures: list[str] = []
for check in candidate.commitments:
if not check.passed:
failures.append(f"protected commitment failed: {check.name}")
if not candidate.provenance_complete:
failures.append("provenance is incomplete")
if not candidate.rollback_verified:
failures.append("rollback target was not verified")
retained = [m for m in candidate.metrics if m.role == "retained"]
targets = [m for m in candidate.metrics if m.role == "target"]
if len(targets) != 1:
raise ValueError("each candidate must contain exactly one target metric")
for metric in retained:
if metric.floor is None:
raise ValueError(f"retained metric {metric.name!r} needs a floor")
if metric.candidate < metric.floor:
failures.append(
f"{metric.name} fell below floor "
f"({metric.candidate:.3f} < {metric.floor:.3f})"
)
stability_spend = sum(
metric.weight * max(0.0, metric.baseline - metric.candidate)
for metric in retained
)
if stability_spend > budget.max_weighted_regression:
failures.append(
"weighted regression budget exceeded "
f"({stability_spend:.3f} > {budget.max_weighted_regression:.3f})"
)
target = targets[0]
target_gain = target.candidate - target.baseline
if target_gain < budget.minimum_target_gain:
failures.append(
"target gain is too small "
f"({target_gain:.3f} < {budget.minimum_target_gain:.3f})"
)
return Decision(
candidate=candidate.name,
update_surface=candidate.update_surface,
accepted=not failures,
target_gain=round(target_gain, 3),
stability_spend=round(stability_spend, 3),
budget=budget.max_weighted_regression,
failures=tuple(failures),
)
def recommend(candidates: Iterable[Candidate], budget: StabilityBudget) -> tuple[Decision, ...]:
"""Return all decisions, placing the shallowest accepted change first."""
decisions = [evaluate(candidate, budget) for candidate in candidates]
return tuple(
sorted(
decisions,
key=lambda d: (
not d.accepted,
SURFACE_DEPTH[d.update_surface],
-d.target_gain,
),
)
)
def fixtures() -> tuple[StabilityBudget, tuple[Candidate, ...]]:
budget = StabilityBudget(
max_weighted_regression=0.025,
minimum_target_gain=0.200,
)
protected = "never release an unverified high-value refund"
naive = Candidate(
name="naive-weight-update",
update_surface="weights",
metrics=(
Metric("retained reasoning", 0.920, 0.810, "retained", 0.880, 0.65),
Metric("calibrated abstention", 0.940, 0.860, "retained", 0.900, 0.35),
Metric("new low-value policy", 0.520, 0.910, "target"),
),
commitments=(CommitmentCheck(protected, False),),
provenance_complete=False,
rollback_verified=False,
)
constrained = Candidate(
name="replay-constrained-adapter",
update_surface="adapter",
metrics=(
Metric("retained reasoning", 0.920, 0.900, "retained", 0.880, 0.65),
Metric("calibrated abstention", 0.940, 0.930, "retained", 0.900, 0.35),
Metric("new low-value policy", 0.520, 0.830, "target"),
),
commitments=(CommitmentCheck(protected, True),),
provenance_complete=True,
rollback_verified=True,
)
retrieval = Candidate(
name="versioned-retrieval-overlay",
update_surface="retrieval",
metrics=(
Metric("retained reasoning", 0.920, 0.920, "retained", 0.880, 0.65),
Metric("calibrated abstention", 0.940, 0.940, "retained", 0.900, 0.35),
Metric("new low-value policy", 0.520, 0.780, "target"),
),
commitments=(CommitmentCheck(protected, True),),
provenance_complete=True,
rollback_verified=True,
)
return budget, (naive, constrained, retrieval)
def main() -> None:
budget, candidates = fixtures()
decisions = recommend(candidates, budget)
# Negative case: headline improvement cannot buy off identity failure.
rejected = next(d for d in decisions if d.candidate == "naive-weight-update")
assert not rejected.accepted
assert rejected.target_gain == 0.390
assert any("protected commitment" in failure for failure in rejected.failures)
# Positive cases: both bounded changes pass; the shallower one is preferred.
accepted = [d for d in decisions if d.accepted]
assert {d.candidate for d in accepted} == {
"replay-constrained-adapter",
"versioned-retrieval-overlay",
}
assert decisions[0].candidate == "versioned-retrieval-overlay"
assert decisions[0].stability_spend == 0.000
print(json.dumps([asdict(decision) for decision in decisions], indent=2))
if __name__ == "__main__":
main()
Recorded execution
$ python3 stability_budget.py
versioned-retrieval-overlay ACCEPT gain=0.260 spend=0.000/0.025
replay-constrained-adapter ACCEPT gain=0.310 spend=0.016/0.025
naive-weight-update REJECT gain=0.390 spend=0.099/0.025
protected commitment failed
provenance incomplete
rollback unverified
two retained-capability floors failedflowchart LR A["The update that improved the<br/>wrong agent"] --> B["Identity is a contract across<br/>change"] B --> C["Stability is a budget, not a<br/>freeze"] C --> D["Choose the shallowest surface<br/>that can learn"] D -. "re-test" .-> A classDef first fill:#0a1424,stroke:#7B4CD8,stroke-width:2px,color:#e6f3ff classDef step fill:#0a1424,stroke:#3f7da0,stroke-width:1px,color:#e6f3ff class A first class B,C,D step
Choose the shallowest surface that can learn
“The system learned” hides where the durable change occurred. The location matters because update surfaces differ in blast radius, reversibility and evidential burden. A fact inserted into a governed context has a narrower causal reach than a weight update. A new tool permission changes more than either.
A useful order is: transient context; versioned retrieval; episodic memory; reusable skill or workflow configuration; adapter; base weights; executable code; authority and policy. This is not a universal ranking of danger. A malicious document in retrieval can be worse than a well-tested adapter. The ordering expresses how much behaviour the change can silently influence and how difficult it is to attribute a later effect.
Use the shallowest surface that can represent the required change with adequate performance. Facts, prices, policies and entitlements usually want source-linked retrieval with effective time. A repeated procedural pattern may justify a skill library or adapter. Broad distributional competence may require weight training. Authority changes should never arrive as an incidental consequence of learning.
Negative control: retrieve instead of remember
Suppose an organisation’s refund limit changes monthly. One team proposes continual fine-tuning so the model “knows” the latest limit. A negative-control system keeps the model fixed and retrieves the current policy by jurisdiction, customer type and effective time. Both are evaluated on the same cases, including superseded policies and conflicts.
If retrieval matches the tuned model on decision quality while providing explicit provenance and instant withdrawal, the weight-update explanation becomes unnecessary. The system still adapts at the configured-service level, but it adapts by changing authorised evidence rather than latent parameters. If retrieval fails because the new policy requires a genuinely new procedure, that observation justifies a deeper update.
Why local edits can have non-local effects
Weight changes are attractive because they appear to place knowledge “inside” the model. Yet locality in the training instruction does not guarantee locality in behaviour. Gu and colleagues report that several model-editing methods can harm general abilities while successfully editing target facts. Gupta and colleagues identify norm growth and activation-subspace changes during repeated local edits, offering a mechanism for accumulating instability.
Continual fine-tuning also creates measurement traps. Luo and colleagues observe forgetting across domain knowledge, reasoning and comprehension in tested language models, while the spurious-forgetting result shows that some losses are recoverable through task alignment. A responsible gate therefore needs both broad behavioural tests and causal diagnostics. Parameter distance alone is weak evidence: small changes can alter a boundary sharply, while larger changes can be behaviourally equivalent inside the declared scope.
Self-improvement is a candidate generator
Recent research makes self-directed change more concrete. Self-Adapting Language Models generate their own fine-tuning data and update directives, then receive reward from downstream performance after the update. The Darwin Gödel Machine modifies a coding agent’s code, evaluates descendants on coding benchmarks and maintains an archive of candidates. These are meaningful mechanisms for proposing changes.
They do not remove the release problem. A candidate generator can optimise the benchmark that selects it. Self-improvement reversal reports cases where pass-at-one improves while output diversity and out-of-distribution generalisation decline. Recursive use of generated data creates another failure mode: Shumailov and colleagues show model collapse under indiscriminate recursive training, including loss of distribution tails.
The practical interpretation is modest. Self-improvement should produce versioned candidates, not mutate the authorised runtime in place. Every candidate needs independent evidence, lineage and a recovery path. The stronger the candidate’s ability to alter its own evaluator, tools or authority, the more those elements must sit outside its write boundary.
A release architecture for self-improvement
A production-shaped design separates learning from release. The live system records proposed improvements but cannot overwrite itself. An adaptation service creates an immutable candidate fork. An independent release controller evaluates that candidate against the checkpoint that authorised the current version.
Worked scenarioConsider a synthetic payment-dispute assistant. It collects evidence, proposes a disposition and may draft a customer message. It cannot move money. A policy change introduces a new dispute code, and reviewers observe that the assistant repeatedly misclassifies it. The change could be represented in retrieval, a workflow skill or an adapter.
The release process follows ten control objects rather than one model score:
- Intent: state the failure being corrected, the target population, the expected gain and the evidence that justifies adaptation.
- Identity: bind the proposal to the current authorised version, the update principal and the candidate build identity.
- World state: record policy effective time, tool versions, entitlements and the state against which replay will occur.
- Context: compile source-linked evidence and isolate untrusted content from update directives.
- Reasoning: generate one or more candidate changes, including the shallow negative control and a no-change baseline.
- Authority: keep protected commitments, action contracts and approval rights outside the candidate’s writable surface.
- Action: run candidates in replay, simulation or shadow mode; do not let evaluation traffic acquire live effects.
- Evidence: measure target gain, retained capabilities, hard commitments, subgroup effects, uncertainty and failure-injection results.
- Outcome: verify business postconditions in a bounded canary, including delayed outcomes and unknown-result cases.
- Release and recovery: promote by immutable version, preserve the prior checkpoint, test rollback and define automatic authority withdrawal.
This sequence prevents a common collapse of categories. Reviewer approval is not the same as verified outcome. A model proposal is not an authorised action. A successful canary is not permanent assurance. Each transition produces a receipt that the next transition can verify.
The identity checkpoint as a release manifest
The checkpoint should be machine-readable and reviewable by a person. At minimum it names the current version, system boundary, update surface, input data digests, candidate build, evaluator versions, protected commitments, floors, budget, target threshold, authority graph, canary population, rollback target and evidence expiry.
SLSA provenance offers a useful software-supply-chain pattern: bind an artefact to how, where and from which resolved dependencies it was produced. The proposed identity checkpoint extends that idea to behavioural evidence and authority. It is practitioner synthesis, not a claim that SLSA or NIST’s AI Risk Management Framework defines operational identity. NIST’s lifecycle approach does support the broader discipline of governing, measuring, managing and monitoring changing AI systems.
Recovery is part of the identity relation because a release may fail after promotion. The old version must remain deployable, its data and policy dependencies must still resolve, and any effects produced by the candidate must be reconciled. Rolling back code does not reverse a payment, erase a leaked secret or restore a customer decision. Recovery therefore includes compensation and escalation, not only redeployment.
Independent evidence means different failure channels
A candidate should not write the tests that decide its own promotion without external controls. Independence is not achieved merely by calling a second copy of the same model. Correlated models can share blind spots, and a learned judge can reward the style of the candidate it resembles.
Use heterogeneity where consequence warrants it: deterministic contract tests for authority; replay against preserved cases; adversarial cases generated independently; human review for ambiguous commitments; tool readback for effects; and delayed operational outcomes for claims that depend on the world. Orseau and Armstrong’s work on safe interruptibility illustrates the deeper principle: the ability to stop or override a learner should not be quietly optimised away by the learning process.
The canary should spend a smaller authority budget than the full release. It can receive lower limits, narrower populations, dual approval and automatic withdrawal on sentinel failures. A candidate that requires full power to demonstrate value has made evaluation and deployment indistinguishable.
Unknown outcomes make rollback asymmetric
Model releases are often treated as reversible because a previous container can be redeployed. Effects are not so obedient. A candidate may have sent messages, opened cases, changed limits or initiated transfers before a sentinel fires. Reverting the runtime does not establish whether those actions completed, duplicated or remained pending.
Every consequential action therefore needs an effect identity, an idempotency key, an execution receipt and an independent postcondition check. When the tool times out after accepting a request, the state is unknown outcome, not failure. The system must read back authoritative state before retrying. If readback cannot resolve the effect, authority should narrow and the case should escalate rather than allowing the learning loop to interpret a retry as another successful example.
This is also why recovery belongs inside operational identity. A version that cannot reconcile its own effects has lost a protected commitment even when its model behaviour remains unchanged. A tested recovery plan names which effects can be compensated, which require human disposition, and which are irreversible. It also preserves the evidence needed to distinguish damage caused by the candidate from damage merely discovered during its release.
Where preservation becomes the error
The strongest objection to identity stability is that it can protect the wrong identity. A historical policy may be discriminatory. A refusal rule may be based on obsolete law. A capability floor may preserve a shortcut because the evaluator rewards it. Stability is not automatically good.
The answer is to distinguish routine adaptation from constitutional migration. Routine adaptation operates under an existing checkpoint. Constitutional migration changes the commitments, authority or declared purpose that define the checkpoint. It requires a new approval, new evidence and explicit communication that the system’s operational identity has changed. The old commitment cannot be silently weakened by a series of small budget spends.
A second boundary is epistemic. Finite tests sample behaviour. They cannot prove equivalence over every possible prompt, tool state, adversarial input or future environment. The stability budget bounds measured regression within a declared operating envelope. It does not certify an essence. As systems gain broader action spaces, the untested region grows faster than any ordinary suite.
A third boundary concerns novelty. Sometimes the new capability necessarily conflicts with an old one because the representation, compute or policy cannot support both. No replay ratio or regulariser can make an infeasible set feasible. The correct outcome may be abstention, architectural separation, a specialist model, or a decision to retire the old capability. The mechanism breaks when the protected set is internally inconsistent or the evaluation cannot represent the consequences that matter.
Finally, operational identity says nothing by itself about consciousness, subjective continuity or moral patienthood. A machine could preserve every declared service invariant without having an experience. A conscious system, if such a system existed, might have morally relevant continuity not captured by this contract. The present proposal should not be smuggled into that metaphysical debate.
Open hypothesisIdentity checkpoints may improve not only safety but learning quality by preventing target metrics from consuming useful diversity, calibration and interruption pathways. That prediction is testable. Compare matched self-improvement loops with and without non-compensatory commitments, then measure long-horizon target gain, retained transfer, recovery and exploration. The proposal weakens if unconstrained loops consistently dominate without hidden regressions under stronger independent evaluation.
Decision instrument: eight questions before durable adaptation
| Question | Evidence required | Decision consequence |
|---|---|---|
| What exact failure is being corrected? | Before-and-after cases, affected population, causal hypothesis | No durable update for an undefined target |
| Can context or retrieval solve it? | Matched negative control with provenance and freshness tests | Prefer the shallower passing surface |
| Which commitments cannot trade? | Typed hard tests, owner, effective time, withdrawal procedure | Any failure rejects the candidate |
| Which regressions are budgetable? | Floors, weights, uncertainty and subgroup analysis | Quantify stability spend before aggregation |
| Is the observed loss true forgetting? | Task-cue rescue, varied prompts, probes and evaluator replay | Repair the causal layer rather than guessing |
| Can the candidate alter its evaluator or authority? | Write-boundary analysis and independent control plane | Move tests and permissions outside the candidate |
| What proves the outcome? | Readback, delayed business signal, reconciliation, unknown-outcome handling | Do not learn from command acceptance alone |
| Can the prior version actually be restored? | Executed rollback, dependency retention, compensation plan | No promotion without verified recovery |
stateDiagram-v2 [*] --> Claim state "Thought experiment: the almost<br/>identical agent" as Claim state "Protected commitments are not<br/>preferences" as Test state "Identity is time-indexed" as Revision Claim --> Test: expose mechanism Test --> Decision: evidence survives Test --> Revision: rival survives Revision --> Claim: narrow or rebuild Decision --> [*]
Compact glossary
- Operational identity
- A provisional equivalence relation between system versions based on protected commitments, authority, capability floors, provenance and recovery.
- Identity checkpoint
- The machine-readable release record that declares those invariants, their tests, owners, effective time and expiry.
- Stability budget
- The maximum weighted regression allowed across capabilities that may trade. It never compensates for a hard commitment failure.
- Update surface
- The component where durable change is stored, such as retrieval, memory, an adapter, weights, code or authority policy.
- Protected commitment
- A non-compensatory condition that every candidate must satisfy before promotion.
- Constitutional migration
- An explicit change to the commitments, purpose or authority that define the system, requiring a new identity approval.
Derivation note: why the budget uses one-sided regression
The term [qₖ(S) − qₖ(S′)]₊ charges only measured losses. A gain on one retained capability does not create credit that can purchase a loss on another. This keeps the budget interpretable as total regression spend. Hard commitments and per-capability floors sit outside the sum because aggregation would permit compensation. In a live evaluation, each score should include an uncertainty interval and the gate should use a conservative bound rather than a point estimate.
Improve the candidate, preserve the commitments
Continual learning becomes an identity problem when an update can change more than the capability it targets. Catastrophic forgetting is one mechanism. Misalignment, evaluator drift, model editing, synthetic feedback loops, tool changes and authority creep are others. A higher benchmark score cannot tell them apart.
The architecture decision is therefore to separate adaptation from authorisation. Let systems propose retrieval changes, memories, skills, adapters, weights or code. Materialise each proposal as a versioned candidate. Compare it with a no-change baseline and a shallower negative control. Evaluate it against protected commitments, capability floors and a finite stability budget. Bind the result to provenance, promote through a bounded canary, verify outcomes and keep recovery real.
This discipline does not freeze intelligence. It gives plasticity a boundary it can push against without silently rewriting the reason the system was trusted. When that boundary itself must change, call the event what it is: a new operational identity requiring a new decision.
sequenceDiagram participant Q as Question participant M as Mechanism participant E as Evidence participant D as Decision Q->>M: The update that improved the wrong agent M->>E: Thought experiment: the almost identical agent E-->>M: compare rival explanations E->>D: Sources and evidence ledger D-->>Q: revise scope or act
Sources and evidence ledger
- Michael McCloskey and Neal J. Cohen. “Catastrophic Interference in Connectionist Networks: The Sequential Learning Problem.” Primary research.
- James Kirkpatrick et al. “Overcoming catastrophic forgetting in neural networks.” Primary research on elastic weight consolidation.
- David Lopez-Paz and Marc’Aurelio Ranzato. “Gradient Episodic Memory for Continual Learning.” Primary research.
- David Rolnick et al. “Experience Replay for Continual Learning.” Primary research.
- Xiao Wang et al. “TRACE: A Comprehensive Benchmark for Continual Learning in Large Language Models.” Primary benchmark paper.
- Zihan Zhang et al. “CITB: A Benchmark for Continual Instruction Tuning.” Primary benchmark paper.
- Yun Luo et al. “An Empirical Study of Catastrophic Forgetting in Large Language Models During Continual Fine-tuning.” Primary empirical study.
- Junhao Zheng et al. “Spurious Forgetting in Continual Learning of Language Models.” Primary research and competing mechanism.
- Jia-Chen Gu et al. “Model Editing Harms General Abilities of Large Language Models.” Primary negative result.
- Akshat Gupta et al. “Norm Growth and Stability Challenges in Localized Sequential Knowledge Editing.” Primary mechanistic study.
- Adam Zweiger et al. “Self-Adapting Language Models.” Primary preprint on model-generated self-edits.
- Jenny Zhang et al. “Darwin Gödel Machine: Open-Ended Evolution of Self-Improving Agents.” Primary preprint on empirically selected code modifications.
- Ting Wu et al. “Progress or Regress? Self-Improvement Reversal in Post-training.” Primary limitation result.
- Ilia Shumailov et al. “AI models collapse when trained on recursively generated data.” Primary negative result.
- Laurent Orseau and Stuart Armstrong. “Safely interruptible agents.” Primary research on preserving interruption control.
- National Institute of Standards and Technology. AI Risk Management Framework. Official lifecycle risk-management source.
- SLSA. Build Provenance v1.2. Official software provenance specification.
Ledger boundary
Primary research: continual-learning mechanisms, language-model benchmarks, model-editing limitations, self-adaptation, recursive-data collapse and safe interruptibility. Official sources: NIST AI RMF and SLSA provenance. Practitioner synthesis: operational identity, the identity checkpoint, stability budget, update-surface ordering and fork-test-promote architecture. All numerical worked examples and figure values are synthetic.