You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tez.apache.org by je...@apache.org on 2017/06/30 14:33:22 UTC

tez git commit: TEZ-3775. Tez UI: Show DAG context in document title (jeagles)

Repository: tez
Updated Branches:
  refs/heads/master a47e8fcbe -> 59f57c10d


TEZ-3775. Tez UI: Show DAG context in document title (jeagles)


Project: http://git-wip-us.apache.org/repos/asf/tez/repo
Commit: http://git-wip-us.apache.org/repos/asf/tez/commit/59f57c10
Tree: http://git-wip-us.apache.org/repos/asf/tez/tree/59f57c10
Diff: http://git-wip-us.apache.org/repos/asf/tez/diff/59f57c10

Branch: refs/heads/master
Commit: 59f57c10db97622b4a0cd39e09d3489bed1871aa
Parents: a47e8fc
Author: Jonathan Eagles <je...@yahoo-inc.com>
Authored: Fri Jun 30 09:33:15 2017 -0500
Committer: Jonathan Eagles <je...@yahoo-inc.com>
Committed: Fri Jun 30 09:33:15 2017 -0500

----------------------------------------------------------------------
 tez-ui/src/main/webapp/app/routes/abstract.js         | 2 +-
 tez-ui/src/main/webapp/app/routes/app/configs.js      | 6 +++++-
 tez-ui/src/main/webapp/app/routes/app/dags.js         | 6 +++++-
 tez-ui/src/main/webapp/app/routes/app/index.js        | 6 +++++-
 tez-ui/src/main/webapp/app/routes/attempt/counters.js | 6 +++++-
 tez-ui/src/main/webapp/app/routes/attempt/index.js    | 6 +++++-
 tez-ui/src/main/webapp/app/routes/dag/attempts.js     | 7 ++++++-
 tez-ui/src/main/webapp/app/routes/dag/counters.js     | 7 ++++++-
 tez-ui/src/main/webapp/app/routes/dag/graphical.js    | 7 ++++++-
 tez-ui/src/main/webapp/app/routes/dag/index.js        | 7 ++++++-
 tez-ui/src/main/webapp/app/routes/dag/index/index.js  | 7 ++++++-
 tez-ui/src/main/webapp/app/routes/dag/swimlane.js     | 7 ++++++-
 tez-ui/src/main/webapp/app/routes/dag/tasks.js        | 7 ++++++-
 tez-ui/src/main/webapp/app/routes/dag/vertices.js     | 7 ++++++-
 tez-ui/src/main/webapp/app/routes/task/attempts.js    | 6 +++++-
 tez-ui/src/main/webapp/app/routes/task/counters.js    | 6 +++++-
 tez-ui/src/main/webapp/app/routes/task/index.js       | 6 +++++-
 tez-ui/src/main/webapp/app/routes/vertex/attempts.js  | 7 ++++++-
 tez-ui/src/main/webapp/app/routes/vertex/configs.js   | 7 ++++++-
 tez-ui/src/main/webapp/app/routes/vertex/counters.js  | 7 ++++++-
 tez-ui/src/main/webapp/app/routes/vertex/index.js     | 7 ++++++-
 tez-ui/src/main/webapp/app/routes/vertex/tasks.js     | 7 ++++++-
 22 files changed, 119 insertions(+), 22 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/abstract.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/abstract.js b/tez-ui/src/main/webapp/app/routes/abstract.js
index 39b8314..1cf26bd 100644
--- a/tez-ui/src/main/webapp/app/routes/abstract.js
+++ b/tez-ui/src/main/webapp/app/routes/abstract.js
@@ -68,7 +68,7 @@ export default Ember.Route.extend(NameMixin, {
   },
 
   setDocTitle: function () {
-    Ember.$(document).attr('title', "Tez UI : " + this.get('title'));
+    Ember.$(document).attr('title', this.get('title'));
   },
 
   setupController: function (controller, model) {

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/app/configs.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/app/configs.js b/tez-ui/src/main/webapp/app/routes/app/configs.js
index f024a1f..b035528 100644
--- a/tez-ui/src/main/webapp/app/routes/app/configs.js
+++ b/tez-ui/src/main/webapp/app/routes/app/configs.js
@@ -20,7 +20,11 @@ import Ember from 'ember';
 import SingleAmPollsterRoute from '../single-am-pollster';
 
 export default SingleAmPollsterRoute.extend({
-  title: "Application Configurations",
+  title: Ember.computed(function () {
+    var app = this.modelFor("app"),
+      entityID = app.get("entityID");
+    return `Application Configuration: ${entityID}`;
+  }).volatile(),
 
   loaderNamespace: "app",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/app/dags.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/app/dags.js b/tez-ui/src/main/webapp/app/routes/app/dags.js
index 91a0ac9..fde4671 100644
--- a/tez-ui/src/main/webapp/app/routes/app/dags.js
+++ b/tez-ui/src/main/webapp/app/routes/app/dags.js
@@ -20,7 +20,11 @@ import Ember from 'ember';
 import MultiAmPollsterRoute from '../multi-am-pollster';
 
 export default MultiAmPollsterRoute.extend({
-  title: "DAGs",
+  title: Ember.computed(function () {
+    var app = this.modelFor("app"),
+      entityID = app.get("entityID");
+    return `DAGs: ${entityID}`;
+  }).volatile(),
 
   loaderNamespace: "app",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/app/index.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/app/index.js b/tez-ui/src/main/webapp/app/routes/app/index.js
index a47cf90..b0a00df 100644
--- a/tez-ui/src/main/webapp/app/routes/app/index.js
+++ b/tez-ui/src/main/webapp/app/routes/app/index.js
@@ -22,7 +22,11 @@ import SingleAmPollsterRoute from '../single-am-pollster';
 import DS from 'ember-data';
 
 export default SingleAmPollsterRoute.extend({
-  title: "Application Details",
+  title: Ember.computed(function () {
+    var app = this.modelFor("app"),
+      entityID = app.get("entityID");
+    return `Application: ${entityID}`;
+  }).volatile(),
 
   loaderNamespace: "app",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/attempt/counters.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/attempt/counters.js b/tez-ui/src/main/webapp/app/routes/attempt/counters.js
index add4ce5..88bb801 100644
--- a/tez-ui/src/main/webapp/app/routes/attempt/counters.js
+++ b/tez-ui/src/main/webapp/app/routes/attempt/counters.js
@@ -20,7 +20,11 @@ import Ember from 'ember';
 import SingleAmPollsterRoute from '../single-am-pollster';
 
 export default SingleAmPollsterRoute.extend({
-  title: "DAG Details",
+  title: Ember.computed(function () {
+    var attempt = this.modelFor("attempt"),
+      entityID = attempt.get("entityID");
+    return `Task Attempt Counters: ${entityID}`;
+  }).volatile(),
 
   loaderNamespace: "attempt",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/attempt/index.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/attempt/index.js b/tez-ui/src/main/webapp/app/routes/attempt/index.js
index add4ce5..ec99104 100644
--- a/tez-ui/src/main/webapp/app/routes/attempt/index.js
+++ b/tez-ui/src/main/webapp/app/routes/attempt/index.js
@@ -20,7 +20,11 @@ import Ember from 'ember';
 import SingleAmPollsterRoute from '../single-am-pollster';
 
 export default SingleAmPollsterRoute.extend({
-  title: "DAG Details",
+  title: Ember.computed(function () {
+    var attempt = this.modelFor("attempt"),
+      entityID = attempt.get("entityID");
+    return `Task Attempt: ${entityID}`;
+  }).volatile(),
 
   loaderNamespace: "attempt",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/dag/attempts.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/dag/attempts.js b/tez-ui/src/main/webapp/app/routes/dag/attempts.js
index 167c10e..35612fa 100644
--- a/tez-ui/src/main/webapp/app/routes/dag/attempts.js
+++ b/tez-ui/src/main/webapp/app/routes/dag/attempts.js
@@ -20,7 +20,12 @@ import Ember from 'ember';
 import MultiAmPollsterRoute from '../multi-am-pollster';
 
 export default MultiAmPollsterRoute.extend({
-  title: "All Task Attempts",
+  title: Ember.computed(function () {
+    var dag = this.modelFor("dag"),
+      name = dag.get("name"),
+      entityID = dag.get("entityID");
+    return `All Task Attempts: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "dag",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/dag/counters.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/dag/counters.js b/tez-ui/src/main/webapp/app/routes/dag/counters.js
index a0a31b7..7eb941b 100644
--- a/tez-ui/src/main/webapp/app/routes/dag/counters.js
+++ b/tez-ui/src/main/webapp/app/routes/dag/counters.js
@@ -20,7 +20,12 @@ import Ember from 'ember';
 import SingleAmPollsterRoute from '../single-am-pollster';
 
 export default SingleAmPollsterRoute.extend({
-  title: "DAG Details",
+  title: Ember.computed(function () {
+    var dag = this.modelFor("dag"),
+      name = dag.get("name"),
+      entityID = dag.get("entityID");
+    return `DAG Counters: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "dag",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/dag/graphical.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/dag/graphical.js b/tez-ui/src/main/webapp/app/routes/dag/graphical.js
index 81117d0..ad40e96 100644
--- a/tez-ui/src/main/webapp/app/routes/dag/graphical.js
+++ b/tez-ui/src/main/webapp/app/routes/dag/graphical.js
@@ -20,7 +20,12 @@ import Ember from 'ember';
 import MultiAmPollsterRoute from '../multi-am-pollster';
 
 export default MultiAmPollsterRoute.extend({
-  title: "Graphical View",
+  title: Ember.computed(function () {
+    var dag = this.modelFor("dag"),
+      name = dag.get("name"),
+      entityID = dag.get("entityID");
+    return `Graphical View: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "dag",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/dag/index.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/dag/index.js b/tez-ui/src/main/webapp/app/routes/dag/index.js
index 46c8b05..77175c3 100644
--- a/tez-ui/src/main/webapp/app/routes/dag/index.js
+++ b/tez-ui/src/main/webapp/app/routes/dag/index.js
@@ -22,7 +22,12 @@ import SingleAmPollsterRoute from '../single-am-pollster';
 import downloadDAGZip from '../../utils/download-dag-zip';
 
 export default SingleAmPollsterRoute.extend({
-  title: "DAG Details",
+  title: Ember.computed(function () {
+    var dag = this.modelFor("dag"),
+      name = dag.get("name"),
+      entityID = dag.get("entityID");
+    return `DAG: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "dag",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/dag/index/index.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/dag/index/index.js b/tez-ui/src/main/webapp/app/routes/dag/index/index.js
index 72d8686..eb2c12f 100644
--- a/tez-ui/src/main/webapp/app/routes/dag/index/index.js
+++ b/tez-ui/src/main/webapp/app/routes/dag/index/index.js
@@ -20,7 +20,12 @@ import Ember from 'ember';
 import MultiAmPollsterRoute from '../../multi-am-pollster';
 
 export default MultiAmPollsterRoute.extend({
-  title: "DAG Details",
+  title: Ember.computed(function () {
+    var dag = this.modelFor("dag"),
+      name = dag.get("name"),
+      entityID = dag.get("entityID");
+    return `DAG: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "dag",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/dag/swimlane.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/dag/swimlane.js b/tez-ui/src/main/webapp/app/routes/dag/swimlane.js
index 780184c..213bb6f 100644
--- a/tez-ui/src/main/webapp/app/routes/dag/swimlane.js
+++ b/tez-ui/src/main/webapp/app/routes/dag/swimlane.js
@@ -20,7 +20,12 @@ import Ember from 'ember';
 import MultiAmPollsterRoute from '../multi-am-pollster';
 
 export default MultiAmPollsterRoute.extend({
-  title: "Vertex Swimlane",
+  title: Ember.computed(function () {
+    var dag = this.modelFor("dag"),
+      name = dag.get("name"),
+      entityID = dag.get("entityID");
+    return `Vertex Swimlane: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "dag",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/dag/tasks.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/dag/tasks.js b/tez-ui/src/main/webapp/app/routes/dag/tasks.js
index 9de48fc..22361fa 100644
--- a/tez-ui/src/main/webapp/app/routes/dag/tasks.js
+++ b/tez-ui/src/main/webapp/app/routes/dag/tasks.js
@@ -22,7 +22,12 @@ import MultiAmPollsterRoute from '../multi-am-pollster';
 import virtualAnchor from '../../utils/virtual-anchor';
 
 export default MultiAmPollsterRoute.extend({
-  title: "All Tasks",
+  title: Ember.computed(function () {
+    var dag = this.modelFor("dag"),
+      name = dag.get("name"),
+      entityID = dag.get("entityID");
+    return `All Tasks: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "dag",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/dag/vertices.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/dag/vertices.js b/tez-ui/src/main/webapp/app/routes/dag/vertices.js
index 0b7d63b..11bf403 100644
--- a/tez-ui/src/main/webapp/app/routes/dag/vertices.js
+++ b/tez-ui/src/main/webapp/app/routes/dag/vertices.js
@@ -20,7 +20,12 @@ import Ember from 'ember';
 import MultiAmPollsterRoute from '../multi-am-pollster';
 
 export default MultiAmPollsterRoute.extend({
-  title: "All Vertices",
+  title: Ember.computed(function () {
+    var dag = this.modelFor("dag"),
+      name = dag.get("name"),
+      entityID = dag.get("entityID");
+    return `All Vertices: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "dag",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/task/attempts.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/task/attempts.js b/tez-ui/src/main/webapp/app/routes/task/attempts.js
index 536d085..2b2064b 100644
--- a/tez-ui/src/main/webapp/app/routes/task/attempts.js
+++ b/tez-ui/src/main/webapp/app/routes/task/attempts.js
@@ -20,7 +20,11 @@ import Ember from 'ember';
 import MultiAmPollsterRoute from '../multi-am-pollster';
 
 export default MultiAmPollsterRoute.extend({
-  title: "Task Attempts",
+  title: Ember.computed(function () {
+    var task = this.modelFor("task"),
+      entityID = task.get("entityID");
+    return `Task Attempts: ${entityID}`;
+  }).volatile(),
 
   loaderNamespace: "task",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/task/counters.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/task/counters.js b/tez-ui/src/main/webapp/app/routes/task/counters.js
index 086e0cc..539f7d0 100644
--- a/tez-ui/src/main/webapp/app/routes/task/counters.js
+++ b/tez-ui/src/main/webapp/app/routes/task/counters.js
@@ -20,7 +20,11 @@ import Ember from 'ember';
 import SingleAmPollsterRoute from '../single-am-pollster';
 
 export default SingleAmPollsterRoute.extend({
-  title: "DAG Details",
+  title: Ember.computed(function () {
+    var task = this.modelFor("task"),
+      entityID = task.get("entityID");
+    return `Task Counters: ${entityID}`;
+  }).volatile(),
 
   loaderNamespace: "task",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/task/index.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/task/index.js b/tez-ui/src/main/webapp/app/routes/task/index.js
index f012796..a7c554d 100644
--- a/tez-ui/src/main/webapp/app/routes/task/index.js
+++ b/tez-ui/src/main/webapp/app/routes/task/index.js
@@ -20,7 +20,11 @@ import Ember from 'ember';
 import SingleAmPollsterRoute from '../single-am-pollster';
 
 export default SingleAmPollsterRoute.extend({
-  title: "DAG Details",
+  title: Ember.computed(function () {
+    var task = this.modelFor("task"),
+      entityID = task.get("entityID");
+    return `Task: ${entityID}`;
+  }).volatile(),
 
   loaderNamespace: "task",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/vertex/attempts.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/vertex/attempts.js b/tez-ui/src/main/webapp/app/routes/vertex/attempts.js
index b0b33b2..6a58251 100644
--- a/tez-ui/src/main/webapp/app/routes/vertex/attempts.js
+++ b/tez-ui/src/main/webapp/app/routes/vertex/attempts.js
@@ -20,7 +20,12 @@ import Ember from 'ember';
 import MultiAmPollsterRoute from '../multi-am-pollster';
 
 export default MultiAmPollsterRoute.extend({
-  title: "Task Attempts",
+  title: Ember.computed(function () {
+    var vertex = this.modelFor("vertex"),
+      name = vertex.get("name"),
+      entityID = vertex.get("entityID");
+    return `Vertex Task Attempts: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "vertex",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/vertex/configs.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/vertex/configs.js b/tez-ui/src/main/webapp/app/routes/vertex/configs.js
index a131896..0c88b00 100644
--- a/tez-ui/src/main/webapp/app/routes/vertex/configs.js
+++ b/tez-ui/src/main/webapp/app/routes/vertex/configs.js
@@ -20,7 +20,12 @@ import Ember from 'ember';
 import SingleAmPollsterRoute from '../single-am-pollster';
 
 export default SingleAmPollsterRoute.extend({
-  title: "Vertex Configurations",
+  title: Ember.computed(function () {
+    var vertex = this.modelFor("vertex"),
+      name = vertex.get("name"),
+      entityID = vertex.get("entityID");
+    return `Vertex Configurations: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "vertex",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/vertex/counters.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/vertex/counters.js b/tez-ui/src/main/webapp/app/routes/vertex/counters.js
index d7cae37..7dda88c 100644
--- a/tez-ui/src/main/webapp/app/routes/vertex/counters.js
+++ b/tez-ui/src/main/webapp/app/routes/vertex/counters.js
@@ -20,7 +20,12 @@ import Ember from 'ember';
 import SingleAmPollsterRoute from '../single-am-pollster';
 
 export default SingleAmPollsterRoute.extend({
-  title: "DAG Details",
+  title: Ember.computed(function () {
+    var vertex = this.modelFor("vertex"),
+      name = vertex.get("name"),
+      entityID = vertex.get("entityID");
+    return `Vertex Counters: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "vertex",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/vertex/index.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/vertex/index.js b/tez-ui/src/main/webapp/app/routes/vertex/index.js
index d7cae37..39bc353 100644
--- a/tez-ui/src/main/webapp/app/routes/vertex/index.js
+++ b/tez-ui/src/main/webapp/app/routes/vertex/index.js
@@ -20,7 +20,12 @@ import Ember from 'ember';
 import SingleAmPollsterRoute from '../single-am-pollster';
 
 export default SingleAmPollsterRoute.extend({
-  title: "DAG Details",
+  title: Ember.computed(function () {
+    var vertex = this.modelFor("vertex"),
+      name = vertex.get("name"),
+      entityID = vertex.get("entityID");
+    return `Vertex: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "vertex",
 

http://git-wip-us.apache.org/repos/asf/tez/blob/59f57c10/tez-ui/src/main/webapp/app/routes/vertex/tasks.js
----------------------------------------------------------------------
diff --git a/tez-ui/src/main/webapp/app/routes/vertex/tasks.js b/tez-ui/src/main/webapp/app/routes/vertex/tasks.js
index 5817297..298c700 100644
--- a/tez-ui/src/main/webapp/app/routes/vertex/tasks.js
+++ b/tez-ui/src/main/webapp/app/routes/vertex/tasks.js
@@ -22,7 +22,12 @@ import MultiAmPollsterRoute from '../multi-am-pollster';
 import virtualAnchor from '../../utils/virtual-anchor';
 
 export default MultiAmPollsterRoute.extend({
-  title: "All Tasks",
+  title: Ember.computed(function () {
+    var vertex = this.modelFor("vertex"),
+      name = vertex.get("name"),
+      entityID = vertex.get("entityID");
+    return `Vertex Tasks: ${name} (${entityID})`;
+  }).volatile(),
 
   loaderNamespace: "vertex",