diff --git a/common/dynamic_partition_control_interface.h b/common/dynamic_partition_control_interface.h
index 3f735bb..490892e 100644
--- a/common/dynamic_partition_control_interface.h
+++ b/common/dynamic_partition_control_interface.h
@@ -32,7 +32,7 @@
 
 // Forware declare for libsnapshot/snapshot_writer.h
 namespace android::snapshot {
-class ISnapshotWriter;
+class ICowWriter;
 }
 
 namespace chromeos_update_engine {
@@ -166,10 +166,10 @@
   // If `is_append` is false, then existing COW data will be overwritten.
   // Otherwise the cow writer will be opened on APPEND mode, existing COW data
   // is preserved.
-  virtual std::unique_ptr<android::snapshot::ISnapshotWriter> OpenCowWriter(
+  virtual std::unique_ptr<android::snapshot::ICowWriter> OpenCowWriter(
       const std::string& unsuffixed_partition_name,
       const std::optional<std::string>&,
-      bool is_append = false) = 0;
+      std::optional<uint64_t> label) = 0;
   // Open a general purpose FD capable to reading and writing to COW. Note that
   // writes must be block aligned.
   virtual std::unique_ptr<FileDescriptor> OpenCowFd(
diff --git a/common/dynamic_partition_control_stub.cc b/common/dynamic_partition_control_stub.cc
index 03f7361..fd9a3b4 100644
--- a/common/dynamic_partition_control_stub.cc
+++ b/common/dynamic_partition_control_stub.cc
@@ -100,11 +100,11 @@
   return true;
 }
 
-std::unique_ptr<android::snapshot::ISnapshotWriter>
+std::unique_ptr<android::snapshot::ICowWriter>
 DynamicPartitionControlStub::OpenCowWriter(
     const std::string& /*unsuffixed_partition_name*/,
     const std::optional<std::string>& /*source_path*/,
-    bool /*is_append*/) {
+    std::optional<uint64_t>) {
   return nullptr;
 }
 
diff --git a/common/dynamic_partition_control_stub.h b/common/dynamic_partition_control_stub.h
index 4236051..1db6a78 100644
--- a/common/dynamic_partition_control_stub.h
+++ b/common/dynamic_partition_control_stub.h
@@ -27,7 +27,8 @@
 
 namespace chromeos_update_engine {
 
-class DynamicPartitionControlStub final : public DynamicPartitionControlInterface {
+class DynamicPartitionControlStub final
+    : public DynamicPartitionControlInterface {
  public:
   FeatureFlag GetDynamicPartitionsFeatureFlag() override;
   FeatureFlag GetVirtualAbFeatureFlag() override;
@@ -62,10 +63,10 @@
       uint32_t target_slot,
       const std::vector<std::string>& partitions) override;
 
-  std::unique_ptr<android::snapshot::ISnapshotWriter> OpenCowWriter(
+  std::unique_ptr<android::snapshot::ICowWriter> OpenCowWriter(
       const std::string& unsuffixed_partition_name,
       const std::optional<std::string>&,
-      bool is_append) override;
+      std::optional<uint64_t> label) override;
 
   std::unique_ptr<FileDescriptor> OpenCowFd(
       const std::string& unsuffixed_partition_name,
diff --git a/common/mock_dynamic_partition_control.h b/common/mock_dynamic_partition_control.h
index 8cff28f..79909b4 100644
--- a/common/mock_dynamic_partition_control.h
+++ b/common/mock_dynamic_partition_control.h
@@ -22,6 +22,7 @@
 #include <vector>
 
 #include <gmock/gmock.h>
+#include <libsnapshot/cow_writer.h>
 
 #include "update_engine/common/dynamic_partition_control_interface.h"
 #include "update_engine/payload_consumer/file_descriptor.h"
@@ -58,9 +59,11 @@
               (const std::string&, const InstallOperation&, InstallOperation*),
               (override));
 
-  MOCK_METHOD(std::unique_ptr<android::snapshot::ISnapshotWriter>,
+  MOCK_METHOD(std::unique_ptr<android::snapshot::ICowWriter>,
               OpenCowWriter,
-              (const std::string&, const std::optional<std::string>&, bool),
+              (const std::string&,
+               const std::optional<std::string>&,
+               std::optional<uint64_t> label),
               (override));
 
   MOCK_METHOD(
