diff --git a/resources/sql/autopatches/20140323.harbor.1.renames.php b/resources/sql/autopatches/20140323.harbor.1.renames.php
new file mode 100644
--- /dev/null
+++ b/resources/sql/autopatches/20140323.harbor.1.renames.php
@@ -0,0 +1,35 @@
+<?php
+
+$names = array(
+  'CommandBuildStepImplementation',
+  'LeaseHostBuildStepImplementation',
+  'PublishFragmentBuildStepImplementation',
+  'SleepBuildStepImplementation',
+  'UploadArtifactBuildStepImplementation',
+  'WaitForPreviousBuildStepImplementation',
+);
+
+$tables = array(
+  id(new HarbormasterBuildStep())->getTableName(),
+  id(new HarbormasterBuildTarget())->getTableName(),
+);
+
+echo "Renaming Harbormaster classes...\n";
+
+$conn_w = id(new HarbormasterBuildStep())->establishConnection('w');
+foreach ($names as $name) {
+  $old = $name;
+  $new = 'Harbormaster'.$name;
+
+  echo "Renaming {$old} -> {$new}...\n";
+  foreach ($tables as $table) {
+    queryfx(
+      $conn_w,
+      'UPDATE %T SET className = %s WHERE className = %s',
+      $table,
+      $new,
+      $old);
+  }
+}
+
+echo "Done.\n";
diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php
--- a/src/__phutil_library_map__.php
+++ b/src/__phutil_library_map__.php
@@ -111,7 +111,6 @@
     'CelerityResourcesOnDisk' => 'infrastructure/celerity/resources/CelerityResourcesOnDisk.php',
     'CeleritySpriteGenerator' => 'infrastructure/celerity/CeleritySpriteGenerator.php',
     'CelerityStaticResourceResponse' => 'infrastructure/celerity/CelerityStaticResourceResponse.php',
-    'CommandBuildStepImplementation' => 'applications/harbormaster/step/CommandBuildStepImplementation.php',
     'ConduitAPIMethod' => 'applications/conduit/method/ConduitAPIMethod.php',
     'ConduitAPIRequest' => 'applications/conduit/protocol/ConduitAPIRequest.php',
     'ConduitAPIResponse' => 'applications/conduit/protocol/ConduitAPIResponse.php',
@@ -730,9 +729,11 @@
     'HarbormasterBuildableSearchEngine' => 'applications/harbormaster/query/HarbormasterBuildableSearchEngine.php',
     'HarbormasterBuildableViewController' => 'applications/harbormaster/controller/HarbormasterBuildableViewController.php',
     'HarbormasterCapabilityManagePlans' => 'applications/harbormaster/capability/HarbormasterCapabilityManagePlans.php',
+    'HarbormasterCommandBuildStepImplementation' => 'applications/harbormaster/step/HarbormasterCommandBuildStepImplementation.php',
     'HarbormasterController' => 'applications/harbormaster/controller/HarbormasterController.php',
     'HarbormasterDAO' => 'applications/harbormaster/storage/HarbormasterDAO.php',
     'HarbormasterHTTPRequestBuildStepImplementation' => 'applications/harbormaster/step/HarbormasterHTTPRequestBuildStepImplementation.php',
+    'HarbormasterLeaseHostBuildStepImplementation' => 'applications/harbormaster/step/HarbormasterLeaseHostBuildStepImplementation.php',
     'HarbormasterManagementBuildWorkflow' => 'applications/harbormaster/management/HarbormasterManagementBuildWorkflow.php',
     'HarbormasterManagementWorkflow' => 'applications/harbormaster/management/HarbormasterManagementWorkflow.php',
     'HarbormasterObject' => 'applications/harbormaster/storage/HarbormasterObject.php',
@@ -750,14 +751,18 @@
     'HarbormasterPlanOrderController' => 'applications/harbormaster/controller/HarbormasterPlanOrderController.php',
     'HarbormasterPlanRunController' => 'applications/harbormaster/controller/HarbormasterPlanRunController.php',
     'HarbormasterPlanViewController' => 'applications/harbormaster/controller/HarbormasterPlanViewController.php',
+    'HarbormasterPublishFragmentBuildStepImplementation' => 'applications/harbormaster/step/HarbormasterPublishFragmentBuildStepImplementation.php',
     'HarbormasterRemarkupRule' => 'applications/harbormaster/remarkup/HarbormasterRemarkupRule.php',
     'HarbormasterScratchTable' => 'applications/harbormaster/storage/HarbormasterScratchTable.php',
+    'HarbormasterSleepBuildStepImplementation' => 'applications/harbormaster/step/HarbormasterSleepBuildStepImplementation.php',
     'HarbormasterStepAddController' => 'applications/harbormaster/controller/HarbormasterStepAddController.php',
     'HarbormasterStepDeleteController' => 'applications/harbormaster/controller/HarbormasterStepDeleteController.php',
     'HarbormasterStepEditController' => 'applications/harbormaster/controller/HarbormasterStepEditController.php',
     'HarbormasterTargetWorker' => 'applications/harbormaster/worker/HarbormasterTargetWorker.php',
     'HarbormasterThrowExceptionBuildStep' => 'applications/harbormaster/step/HarbormasterThrowExceptionBuildStep.php',
     'HarbormasterUIEventListener' => 'applications/harbormaster/event/HarbormasterUIEventListener.php',
+    'HarbormasterUploadArtifactBuildStepImplementation' => 'applications/harbormaster/step/HarbormasterUploadArtifactBuildStepImplementation.php',
+    'HarbormasterWaitForPreviousBuildStepImplementation' => 'applications/harbormaster/step/HarbormasterWaitForPreviousBuildStepImplementation.php',
     'HarbormasterWorker' => 'applications/harbormaster/worker/HarbormasterWorker.php',
     'HeraldAction' => 'applications/herald/storage/HeraldAction.php',
     'HeraldAdapter' => 'applications/herald/adapter/HeraldAdapter.php',
@@ -815,7 +820,6 @@
     'JavelinUIExample' => 'applications/uiexample/examples/JavelinUIExample.php',
     'JavelinViewExample' => 'applications/uiexample/examples/JavelinViewExample.php',
     'JavelinViewExampleServerView' => 'applications/uiexample/examples/JavelinViewExampleServerView.php',
-    'LeaseHostBuildStepImplementation' => 'applications/harbormaster/step/LeaseHostBuildStepImplementation.php',
     'LegalpadCapabilityDefaultEdit' => 'applications/legalpad/capability/LegalpadCapabilityDefaultEdit.php',
     'LegalpadCapabilityDefaultView' => 'applications/legalpad/capability/LegalpadCapabilityDefaultView.php',
     'LegalpadConstants' => 'applications/legalpad/constants/LegalpadConstants.php',
@@ -2457,7 +2461,6 @@
     'ProjectBoardTaskCard' => 'applications/project/view/ProjectBoardTaskCard.php',
     'ProjectCapabilityCreateProjects' => 'applications/project/capability/ProjectCapabilityCreateProjects.php',
     'ProjectRemarkupRule' => 'applications/project/remarkup/ProjectRemarkupRule.php',
-    'PublishFragmentBuildStepImplementation' => 'applications/harbormaster/step/PublishFragmentBuildStepImplementation.php',
     'QueryFormattingTestCase' => 'infrastructure/storage/__tests__/QueryFormattingTestCase.php',
     'ReleephAuthorFieldSpecification' => 'applications/releeph/field/specification/ReleephAuthorFieldSpecification.php',
     'ReleephBranch' => 'applications/releeph/storage/ReleephBranch.php',
@@ -2536,13 +2539,10 @@
     'ReleephSummaryFieldSpecification' => 'applications/releeph/field/specification/ReleephSummaryFieldSpecification.php',
     'ReleephUserView' => 'applications/releeph/view/user/ReleephUserView.php',
     'ShellLogView' => 'applications/harbormaster/view/ShellLogView.php',
-    'SleepBuildStepImplementation' => 'applications/harbormaster/step/SleepBuildStepImplementation.php',
     'SlowvoteEmbedView' => 'applications/slowvote/view/SlowvoteEmbedView.php',
     'SlowvoteRemarkupRule' => 'applications/slowvote/remarkup/SlowvoteRemarkupRule.php',
     'SubscriptionListDialogBuilder' => 'applications/subscriptions/view/SubscriptionListDialogBuilder.php',
     'SubscriptionListStringBuilder' => 'applications/subscriptions/view/SubscriptionListStringBuilder.php',
-    'UploadArtifactBuildStepImplementation' => 'applications/harbormaster/step/UploadArtifactBuildStepImplementation.php',
-    'WaitForPreviousBuildStepImplementation' => 'applications/harbormaster/step/WaitForPreviousBuildStepImplementation.php',
   ),
   'function' =>
   array(
@@ -2663,7 +2663,6 @@
     'CelerityResourceGraph' => 'AbstractDirectedGraph',
     'CelerityResourceTransformerTestCase' => 'PhabricatorTestCase',
     'CelerityResourcesOnDisk' => 'CelerityPhysicalResources',
-    'CommandBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
     'ConduitAPIMethod' =>
     array(
       0 => 'Phobject',
@@ -3351,9 +3350,11 @@
     'HarbormasterBuildableSearchEngine' => 'PhabricatorApplicationSearchEngine',
     'HarbormasterBuildableViewController' => 'HarbormasterController',
     'HarbormasterCapabilityManagePlans' => 'PhabricatorPolicyCapability',
+    'HarbormasterCommandBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
     'HarbormasterController' => 'PhabricatorController',
     'HarbormasterDAO' => 'PhabricatorLiskDAO',
     'HarbormasterHTTPRequestBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
+    'HarbormasterLeaseHostBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
     'HarbormasterManagementBuildWorkflow' => 'HarbormasterManagementWorkflow',
     'HarbormasterManagementWorkflow' => 'PhabricatorManagementWorkflow',
     'HarbormasterObject' => 'HarbormasterDAO',
@@ -3375,14 +3376,18 @@
     'HarbormasterPlanOrderController' => 'HarbormasterController',
     'HarbormasterPlanRunController' => 'HarbormasterController',
     'HarbormasterPlanViewController' => 'HarbormasterPlanController',
+    'HarbormasterPublishFragmentBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
     'HarbormasterRemarkupRule' => 'PhabricatorRemarkupRuleObject',
     'HarbormasterScratchTable' => 'HarbormasterDAO',
+    'HarbormasterSleepBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
     'HarbormasterStepAddController' => 'HarbormasterController',
     'HarbormasterStepDeleteController' => 'HarbormasterController',
     'HarbormasterStepEditController' => 'HarbormasterController',
     'HarbormasterTargetWorker' => 'HarbormasterWorker',
     'HarbormasterThrowExceptionBuildStep' => 'HarbormasterBuildStepImplementation',
     'HarbormasterUIEventListener' => 'PhabricatorEventListener',
+    'HarbormasterUploadArtifactBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
+    'HarbormasterWaitForPreviousBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
     'HarbormasterWorker' => 'PhabricatorWorker',
     'HeraldAction' => 'HeraldDAO',
     'HeraldApplyTranscript' => 'HeraldDAO',
@@ -3448,7 +3453,6 @@
     'JavelinUIExample' => 'PhabricatorUIExample',
     'JavelinViewExample' => 'PhabricatorUIExample',
     'JavelinViewExampleServerView' => 'AphrontView',
-    'LeaseHostBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
     'LegalpadCapabilityDefaultEdit' => 'PhabricatorPolicyCapability',
     'LegalpadCapabilityDefaultView' => 'PhabricatorPolicyCapability',
     'LegalpadController' => 'PhabricatorController',
@@ -5398,7 +5402,6 @@
     'PonderVoteSaveController' => 'PonderController',
     'ProjectCapabilityCreateProjects' => 'PhabricatorPolicyCapability',
     'ProjectRemarkupRule' => 'PhabricatorRemarkupRuleObject',
-    'PublishFragmentBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
     'QueryFormattingTestCase' => 'PhabricatorTestCase',
     'ReleephAuthorFieldSpecification' => 'ReleephFieldSpecification',
     'ReleephBranch' =>
@@ -5502,10 +5505,7 @@
     'ReleephSummaryFieldSpecification' => 'ReleephFieldSpecification',
     'ReleephUserView' => 'AphrontView',
     'ShellLogView' => 'AphrontView',
-    'SleepBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
     'SlowvoteEmbedView' => 'AphrontView',
     'SlowvoteRemarkupRule' => 'PhabricatorRemarkupRuleObject',
-    'UploadArtifactBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
-    'WaitForPreviousBuildStepImplementation' => 'HarbormasterBuildStepImplementation',
   ),
 ));
diff --git a/src/applications/harbormaster/step/CommandBuildStepImplementation.php b/src/applications/harbormaster/step/HarbormasterCommandBuildStepImplementation.php
rename from src/applications/harbormaster/step/CommandBuildStepImplementation.php
rename to src/applications/harbormaster/step/HarbormasterCommandBuildStepImplementation.php
--- a/src/applications/harbormaster/step/CommandBuildStepImplementation.php
+++ b/src/applications/harbormaster/step/HarbormasterCommandBuildStepImplementation.php
@@ -1,6 +1,6 @@
 <?php
 
-final class CommandBuildStepImplementation
+final class HarbormasterCommandBuildStepImplementation
   extends HarbormasterBuildStepImplementation {
 
   public function getName() {
diff --git a/src/applications/harbormaster/step/LeaseHostBuildStepImplementation.php b/src/applications/harbormaster/step/HarbormasterLeaseHostBuildStepImplementation.php
rename from src/applications/harbormaster/step/LeaseHostBuildStepImplementation.php
rename to src/applications/harbormaster/step/HarbormasterLeaseHostBuildStepImplementation.php
--- a/src/applications/harbormaster/step/LeaseHostBuildStepImplementation.php
+++ b/src/applications/harbormaster/step/HarbormasterLeaseHostBuildStepImplementation.php
@@ -1,6 +1,6 @@
 <?php
 
-final class LeaseHostBuildStepImplementation
+final class HarbormasterLeaseHostBuildStepImplementation
   extends HarbormasterBuildStepImplementation {
 
   public function getName() {
diff --git a/src/applications/harbormaster/step/PublishFragmentBuildStepImplementation.php b/src/applications/harbormaster/step/HarbormasterPublishFragmentBuildStepImplementation.php
rename from src/applications/harbormaster/step/PublishFragmentBuildStepImplementation.php
rename to src/applications/harbormaster/step/HarbormasterPublishFragmentBuildStepImplementation.php
--- a/src/applications/harbormaster/step/PublishFragmentBuildStepImplementation.php
+++ b/src/applications/harbormaster/step/HarbormasterPublishFragmentBuildStepImplementation.php
@@ -1,6 +1,6 @@
 <?php
 
-final class PublishFragmentBuildStepImplementation
+final class HarbormasterPublishFragmentBuildStepImplementation
   extends HarbormasterBuildStepImplementation {
 
   public function getName() {
diff --git a/src/applications/harbormaster/step/SleepBuildStepImplementation.php b/src/applications/harbormaster/step/HarbormasterSleepBuildStepImplementation.php
rename from src/applications/harbormaster/step/SleepBuildStepImplementation.php
rename to src/applications/harbormaster/step/HarbormasterSleepBuildStepImplementation.php
--- a/src/applications/harbormaster/step/SleepBuildStepImplementation.php
+++ b/src/applications/harbormaster/step/HarbormasterSleepBuildStepImplementation.php
@@ -1,6 +1,6 @@
 <?php
 
-final class SleepBuildStepImplementation
+final class HarbormasterSleepBuildStepImplementation
   extends HarbormasterBuildStepImplementation {
 
   public function getName() {
diff --git a/src/applications/harbormaster/step/UploadArtifactBuildStepImplementation.php b/src/applications/harbormaster/step/HarbormasterUploadArtifactBuildStepImplementation.php
rename from src/applications/harbormaster/step/UploadArtifactBuildStepImplementation.php
rename to src/applications/harbormaster/step/HarbormasterUploadArtifactBuildStepImplementation.php
--- a/src/applications/harbormaster/step/UploadArtifactBuildStepImplementation.php
+++ b/src/applications/harbormaster/step/HarbormasterUploadArtifactBuildStepImplementation.php
@@ -1,6 +1,6 @@
 <?php
 
-final class UploadArtifactBuildStepImplementation
+final class HarbormasterUploadArtifactBuildStepImplementation
   extends HarbormasterBuildStepImplementation {
 
   public function getName() {
diff --git a/src/applications/harbormaster/step/WaitForPreviousBuildStepImplementation.php b/src/applications/harbormaster/step/HarbormasterWaitForPreviousBuildStepImplementation.php
rename from src/applications/harbormaster/step/WaitForPreviousBuildStepImplementation.php
rename to src/applications/harbormaster/step/HarbormasterWaitForPreviousBuildStepImplementation.php
--- a/src/applications/harbormaster/step/WaitForPreviousBuildStepImplementation.php
+++ b/src/applications/harbormaster/step/HarbormasterWaitForPreviousBuildStepImplementation.php
@@ -1,6 +1,6 @@
 <?php
 
-final class WaitForPreviousBuildStepImplementation
+final class HarbormasterWaitForPreviousBuildStepImplementation
   extends HarbormasterBuildStepImplementation {
 
   public function getName() {