diff --git a/src/agent_audit/auditing/audit_primitives.py b/src/agent_audit/auditing/audit_primitives.py index bb30624..9f6fad8 100644 --- a/src/agent_audit/auditing/audit_primitives.py +++ b/src/agent_audit/auditing/audit_primitives.py @@ -173,6 +173,10 @@ def __exit__(self, exc_type, exc_val, exc_tb): _active_auditor.reset(self._token) def set_replay(self): + if not self.log: + raise ValueError("Cannot enter replay mode because no noise additions " + "were recorded. Make sure your noise functions are " + "annotated with @audit_spec.") self.mode = AuditMode.REPLAY self._cursor = 0 @@ -437,6 +441,10 @@ def _flatten_sample(sample): ) def compute_overall_pld(self) -> pld.PrivacyLossDistribution: + if not self.log: + raise ValueError("Cannot compute privacy loss because no noise additions " + "were recorded. Make sure your noise functions are " + "annotated with @audit_spec.") curr_pld = None for entry in self.log: entry_pld = (