From dbccc127d4c1f55ad636227b5c170ffd93811491 Mon Sep 17 00:00:00 2001 From: ENvironmentSet Date: Wed, 22 Jul 2026 16:35:56 +0900 Subject: [PATCH] fix(plugin-stack-persistence): wrap save failures in StackSnapshotRecordSaveError Co-Authored-By: Claude Opus 4.8 (1M context) Claude-Session: https://claude.ai/code/session_01G8n8acsHn8MbiqE2YBwXyc --- .changeset/wrap-record-save-error.md | 5 +++++ .../plugin-stack-persistence/src/stackPersistencePlugin.ts | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 .changeset/wrap-record-save-error.md diff --git a/.changeset/wrap-record-save-error.md b/.changeset/wrap-record-save-error.md new file mode 100644 index 000000000..4c8853272 --- /dev/null +++ b/.changeset/wrap-record-save-error.md @@ -0,0 +1,5 @@ +--- +"@stackflow/plugin-stack-persistence": patch +--- + +Wrap storage save failures in `StackSnapshotRecordSaveError` before invoking `onRecordSaveError` or rethrowing, matching the declared handler signature and the load-path behavior. diff --git a/extensions/plugin-stack-persistence/src/stackPersistencePlugin.ts b/extensions/plugin-stack-persistence/src/stackPersistencePlugin.ts index ff10cab8f..d0b6558c4 100644 --- a/extensions/plugin-stack-persistence/src/stackPersistencePlugin.ts +++ b/extensions/plugin-stack-persistence/src/stackPersistencePlugin.ts @@ -30,8 +30,10 @@ export function stackPersistencePlugin( snapshot, metadata }).catch(error => { - if (onRecordSaveError) return onRecordSaveError(error); - else throw error; + const saveError = new StackSnapshotRecordSaveError(error); + + if (onRecordSaveError) return onRecordSaveError(saveError); + else throw saveError; }); }