diff --git a/bin/context_engine/BUILD.gn b/bin/context_engine/BUILD.gn
index 2920653..93cc674 100644
--- a/bin/context_engine/BUILD.gn
+++ b/bin/context_engine/BUILD.gn
@@ -6,8 +6,6 @@
 import("//peridot/build/tests_package.gni")
 
 executable_package("context_engine") {
-  deprecated_bare_package_url = "//build"
-
   meta = [
     {
       path = "meta/context_engine.cmx"
diff --git a/bin/context_engine/context_engine_main.cc b/bin/context_engine/context_engine_main.cc
index 061863c..279aaef 100644
--- a/bin/context_engine/context_engine_main.cc
+++ b/bin/context_engine/context_engine_main.cc
@@ -16,7 +16,7 @@
 
 class ContextEngineApp {
  public:
-  ContextEngineApp(component::StartupContext* context) {
+  ContextEngineApp(component::StartupContext* const context) {
     auto component_context =
         context
             ->ConnectToEnvironmentService<fuchsia::modular::ComponentContext>();
diff --git a/tests/maxwell_integration/context_engine_test_base.cc b/tests/maxwell_integration/context_engine_test_base.cc
index 654d461..2e5600f 100644
--- a/tests/maxwell_integration/context_engine_test_base.cc
+++ b/tests/maxwell_integration/context_engine_test_base.cc
@@ -6,11 +6,18 @@
 
 #include "peridot/lib/testing/wait_until_idle.h"
 
+namespace {
+
+constexpr char kContextEngineUrl[] =
+    "fuchsia-pkg://fuchsia.com/context_engine#meta/context_engine.cmx";
+
+}
+
 namespace maxwell {
 
 void ContextEngineTestBase::SetUp() {
   context_engine_ =
-      ConnectToService<fuchsia::modular::ContextEngine>("context_engine");
+      ConnectToService<fuchsia::modular::ContextEngine>(kContextEngineUrl);
   context_engine_->GetContextDebug(debug_.NewRequest());
 }
 
