@@ -1606,6 +1606,7 @@ describe(`backbeat routes for replication (${name})`, () => {
16061606 let versionId ;
16071607
16081608 async . series ( {
1609+ // === SETUP PHASE ===
16091610 enableVersioningDestination : next => dstS3 . putBucketVersioning ( {
16101611 Bucket : bucketDestination ,
16111612 VersioningConfiguration : { Status : 'Enabled' } ,
@@ -1630,7 +1631,9 @@ describe(`backbeat routes for replication (${name})`, () => {
16301631 Bucket : bucketSource ,
16311632 VersioningConfiguration : { Status : 'Enabled' } ,
16321633 } , next ) ,
1633- simulateLifecycleNullVersion : next => makeBackbeatRequest ( {
1634+ // === LIFECYCLE SIMULATION PHASE ===
1635+ // Lifecycle Simulation: GET current null version metadata
1636+ getSourceNullVersionForLifecycle : next => makeBackbeatRequest ( {
16341637 method : 'GET' ,
16351638 resourceType : 'metadata' ,
16361639 bucket : bucketSource ,
@@ -1644,7 +1647,12 @@ describe(`backbeat routes for replication (${name})`, () => {
16441647 objMDUpdated = JSON . parse ( data . body ) . Body ;
16451648 return next ( ) ;
16461649 } ) ,
1647- updateMetadataSource : next => makeBackbeatRequest ( {
1650+ // Lifecycle Simulation: Apply lifecycle changes to null version metadata
1651+ // Lifecycle changes can consist of:
1652+ // - storage class transitions (STANDARD -> IA -> GLACIER)
1653+ // - data location changes (different storage backend)
1654+ // Here metadata is unchanged for the simulation
1655+ applyLifecycleToSourceNullVersion : next => makeBackbeatRequest ( {
16481656 method : 'PUT' ,
16491657 resourceType : 'metadata' ,
16501658 bucket : bucketSource ,
@@ -1653,7 +1661,9 @@ describe(`backbeat routes for replication (${name})`, () => {
16531661 authCredentials : sourceAuthCredentials ,
16541662 requestBody : objMDUpdated ,
16551663 } , next ) ,
1656- getReplicatedNullVersion : next => makeBackbeatRequest ( {
1664+ // === REPLICATION PHASE ===
1665+ // Replication: GET lifecycled metadata from source for replication
1666+ getSourceLifecycledNullVersionForReplication : next => makeBackbeatRequest ( {
16571667 method : 'GET' ,
16581668 resourceType : 'metadata' ,
16591669 bucket : bucketSource ,
@@ -1667,7 +1677,8 @@ describe(`backbeat routes for replication (${name})`, () => {
16671677 objMDReplicated = objectMDWithUpdatedAccountInfo ( data , src === dst ? null : dstAccountInfo ) ;
16681678 return next ( ) ;
16691679 } ) ,
1670- putReplicatedNullVersion : next => makeBackbeatRequest ( {
1680+ // Replication: PUT lifecycled null version to destination
1681+ replicateLifecycledNullVersionToDestination : next => makeBackbeatRequest ( {
16711682 method : 'PUT' ,
16721683 resourceType : 'metadata' ,
16731684 bucket : bucketDestination ,
@@ -1676,6 +1687,7 @@ describe(`backbeat routes for replication (${name})`, () => {
16761687 authCredentials : destinationAuthCredentials ,
16771688 requestBody : objMDReplicated ,
16781689 } , next ) ,
1690+ // === VALIDATION PHASE ===
16791691 headObjectByVersionId : next => dstS3 . headObject ( {
16801692 Bucket : bucketDestination ,
16811693 Key : keyName ,
0 commit comments