From e31dc388c2fa08e397167e4ca4b1c142948a71dd Mon Sep 17 00:00:00 2001
From: "Takagi, Isamu" <isamu.takagi@tier4.jp>
Date: Thu, 14 Mar 2024 02:35:21 +0900
Subject: [PATCH 1/6] docs(diagnostic_graph_aggregator): update documents

Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
---
 system/diagnostic_graph_aggregator/README.md  | 29 ++++++++++++-------
 .../doc/format/and.md                         | 11 -------
 .../doc/format/diag.md                        | 10 -------
 .../doc/format/edit.md                        | 14 +++++++++
 .../doc/format/edit/remove.md                 | 10 +++++++
 .../doc/format/graph-file.md                  | 10 -------
 .../doc/format/graph.md                       | 11 +++++++
 .../doc/format/node.md                        | 24 ++++++++++++---
 .../doc/format/node/and.md                    | 17 +++++++++++
 .../doc/format/node/const.md                  | 18 ++++++++++++
 .../doc/format/node/diag.md                   | 10 +++++++
 .../doc/format/node/link.md                   | 10 +++++++
 .../doc/format/node/or.md                     | 11 +++++++
 .../doc/format/node/remap.md                  | 21 ++++++++++++++
 .../doc/format/or.md                          | 11 -------
 .../doc/format/path.md                        | 10 +++----
 .../doc/format/unit.md                        | 10 -------
 .../{example_diags.py => dummy-diags.py}      |  0
 ...ple.launch.xml => example-edit.launch.xml} |  4 +--
 .../example/example-main.launch.xml           |  7 +++++
 .../example/graph/edit.yaml                   |  6 ++++
 .../{example_0.yaml => graph/main.yaml}       |  4 +--
 .../{example_1.yaml => graph/module1.yaml}    |  0
 .../{example_2.yaml => graph/module2.yaml}    |  0
 24 files changed, 182 insertions(+), 76 deletions(-)
 delete mode 100644 system/diagnostic_graph_aggregator/doc/format/and.md
 delete mode 100644 system/diagnostic_graph_aggregator/doc/format/diag.md
 create mode 100644 system/diagnostic_graph_aggregator/doc/format/edit.md
 create mode 100644 system/diagnostic_graph_aggregator/doc/format/edit/remove.md
 delete mode 100644 system/diagnostic_graph_aggregator/doc/format/graph-file.md
 create mode 100644 system/diagnostic_graph_aggregator/doc/format/graph.md
 create mode 100644 system/diagnostic_graph_aggregator/doc/format/node/and.md
 create mode 100644 system/diagnostic_graph_aggregator/doc/format/node/const.md
 create mode 100644 system/diagnostic_graph_aggregator/doc/format/node/diag.md
 create mode 100644 system/diagnostic_graph_aggregator/doc/format/node/link.md
 create mode 100644 system/diagnostic_graph_aggregator/doc/format/node/or.md
 create mode 100644 system/diagnostic_graph_aggregator/doc/format/node/remap.md
 delete mode 100644 system/diagnostic_graph_aggregator/doc/format/or.md
 delete mode 100644 system/diagnostic_graph_aggregator/doc/format/unit.md
 rename system/diagnostic_graph_aggregator/example/{example_diags.py => dummy-diags.py} (100%)
 rename system/diagnostic_graph_aggregator/example/{example.launch.xml => example-edit.launch.xml} (81%)
 create mode 100644 system/diagnostic_graph_aggregator/example/example-main.launch.xml
 create mode 100644 system/diagnostic_graph_aggregator/example/graph/edit.yaml
 rename system/diagnostic_graph_aggregator/example/{example_0.yaml => graph/main.yaml} (83%)
 rename system/diagnostic_graph_aggregator/example/{example_1.yaml => graph/module1.yaml} (100%)
 rename system/diagnostic_graph_aggregator/example/{example_2.yaml => graph/module2.yaml} (100%)

diff --git a/system/diagnostic_graph_aggregator/README.md b/system/diagnostic_graph_aggregator/README.md
index 4dc44feaafc33..dabbb1402db4c 100644
--- a/system/diagnostic_graph_aggregator/README.md
+++ b/system/diagnostic_graph_aggregator/README.md
@@ -53,20 +53,27 @@ This feature breaks the generality of the graph and may be changed to a plugin o
 
 ## Examples
 
-- [example_0.yaml](./example/example_0.yaml)
-- [example_1.yaml](./example/example_1.yaml)
-- [example_2.yaml](./example/example_2.yaml)
+This is an example of a diagnostic graph configuration. The configuration can be split into multiple files.
+
+- [main.yaml](./example/graph/main.yaml)
+- [module1.yaml](./example/graph/module1.yaml)
+- [module2.yaml](./example/graph/module2.yaml)
+
+```bash
+ros2 launch diagnostic_graph_aggregator example-main.launch.xml
+```
+
+You can reuse the graph by making partial edits. For example, disable hardware checks for simulation.
+
+- [edit.yaml](./example/graph/edit.yaml)
 
 ```bash
-ros2 launch diagnostic_graph_aggregator example.launch.xml
+ros2 launch diagnostic_graph_aggregator example-edit.launch.xml
 ```
 
 ## Graph file format
 
-- [GraphFile](./doc/format/graph-file.md)
-- [Path](./doc/format/path.md)
-- [Node](./doc/format/node.md)
-  - [Diag](./doc/format/diag.md)
-  - [Unit](./doc/format/unit.md)
-  - [And](./doc/format/and.md)
-  - [Or](./doc/format/or.md)
+- [graph](./doc/format/graph.md)
+- [path](./doc/format/path.md)
+- [node](./doc/format/node.md)
+- [edit](./doc/format/edit.md)
diff --git a/system/diagnostic_graph_aggregator/doc/format/and.md b/system/diagnostic_graph_aggregator/doc/format/and.md
deleted file mode 100644
index a92aa2817832e..0000000000000
--- a/system/diagnostic_graph_aggregator/doc/format/and.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# Unit
-
-And is a node that is evaluated as the AND of the input nodes.
-
-## Format
-
-| Name | Type                                       | Required | Description                           |
-| ---- | ------------------------------------------ | -------- | ------------------------------------- |
-| type | string                                     | yes      | Specify `and` when using this object. |
-| name | string                                     | yes      | Name of diagnostic status.            |
-| list | List<[Diag](./diag.md)\|[Unit](./unit.md)> | yes      | List of input node references.        |
diff --git a/system/diagnostic_graph_aggregator/doc/format/diag.md b/system/diagnostic_graph_aggregator/doc/format/diag.md
deleted file mode 100644
index 04e850129cbbf..0000000000000
--- a/system/diagnostic_graph_aggregator/doc/format/diag.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Diag
-
-Diag is a node that refers to a source diagnostics.
-
-## Format
-
-| Name | Type   | Required | Description                            |
-| ---- | ------ | -------- | -------------------------------------- |
-| type | string | yes      | Specify `diag` when using this object. |
-| diag | string | yes      | Name of diagnostic status.             |
diff --git a/system/diagnostic_graph_aggregator/doc/format/edit.md b/system/diagnostic_graph_aggregator/doc/format/edit.md
new file mode 100644
index 0000000000000..71ea8a96bc17f
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/doc/format/edit.md
@@ -0,0 +1,14 @@
+# Edit
+
+The `edit` is a base object that edits the existing diagnostic graph.
+Any derived object can be used where a edit object is required.
+
+## Format
+
+| Name   | Type     | Required | Description                                       |
+| ------ | -------- | -------- | ------------------------------------------------- |
+| `type` | `string` | yes      | The string indicating the type of derived object. |
+
+## Derived objects
+
+- [remove](./edit/remove.md)
diff --git a/system/diagnostic_graph_aggregator/doc/format/edit/remove.md b/system/diagnostic_graph_aggregator/doc/format/edit/remove.md
new file mode 100644
index 0000000000000..6cd4b25e98828
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/doc/format/edit/remove.md
@@ -0,0 +1,10 @@
+# Remove
+
+The `remove` object is a edit that removes other nodes.
+
+## Format
+
+| Name   | Type     | Required | Description                              |
+| ------ | -------- | -------- | ---------------------------------------- |
+| `type` | `string` | yes      | Specify `remove` when using this object. |
+| `path` | `string` | yes      | The path of the node to remove.          |
diff --git a/system/diagnostic_graph_aggregator/doc/format/graph-file.md b/system/diagnostic_graph_aggregator/doc/format/graph-file.md
deleted file mode 100644
index 3c4cfec996a4a..0000000000000
--- a/system/diagnostic_graph_aggregator/doc/format/graph-file.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# GraphFile
-
-GraphFile is the top level object that makes up the configuration file.
-
-## Format
-
-| Name  | Type                    | Required | Description                    |
-| ----- | ----------------------- | -------- | ------------------------------ |
-| files | List<[Path](./path.md)> | no       | Paths of the files to include. |
-| nodes | List<[Node](./node.md)> | no       | Nodes of the diagnostic graph. |
diff --git a/system/diagnostic_graph_aggregator/doc/format/graph.md b/system/diagnostic_graph_aggregator/doc/format/graph.md
new file mode 100644
index 0000000000000..9dace8a2f0e6d
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/doc/format/graph.md
@@ -0,0 +1,11 @@
+# Graph
+
+The graph object is the top level structure that makes up the configuration file.
+
+## Format
+
+| Name    | Type                                   | Required | Description                                       |
+| ------- | -------------------------------------- | -------- | ------------------------------------------------- |
+| `files` | <code>list\[[path](./path.md)\]</code> | no       | List of path objects for importing subgraphs.     |
+| `nodes` | <code>list\[[node](./node.md)\]</code> | no       | List of node objects that make up the graph.      |
+| `edits` | <code>list\[[edit](./edit.md)\]</code> | no       | List of edit objects to partially edit the graph. |
diff --git a/system/diagnostic_graph_aggregator/doc/format/node.md b/system/diagnostic_graph_aggregator/doc/format/node.md
index da8e8e57b111f..0f4b52b9b8a72 100644
--- a/system/diagnostic_graph_aggregator/doc/format/node.md
+++ b/system/diagnostic_graph_aggregator/doc/format/node.md
@@ -1,9 +1,25 @@
 # Node
 
-Node is a base object that makes up the diagnostic graph.
+The `node` is a base object that makes up the diagnostic graph.
+Any derived object can be used where a node object is required.
 
 ## Format
 
-| Name | Type   | Required | Description                                 |
-| ---- | ------ | -------- | ------------------------------------------- |
-| type | string | yes      | Node type. See derived objects for details. |
+| Name   | Type     | Required | Description                                       |
+| ------ | -------- | -------- | ------------------------------------------------- |
+| `type` | `string` | yes      | The string indicating the type of derived object. |
+| `path` | `string` | no       | Any string to reference from other nodes.         |
+
+## Derived objects
+
+- [diag](./node/diag.md)
+- [and](./node/and.md)
+- [or](./node/or.md)
+- [remapping](./node/remap.md)
+  - warn-to-ok
+  - warn-to-error
+- [constant](./node/const.md)
+  - ok
+  - warn
+  - error
+  - stale
diff --git a/system/diagnostic_graph_aggregator/doc/format/node/and.md b/system/diagnostic_graph_aggregator/doc/format/node/and.md
new file mode 100644
index 0000000000000..562018bf0995b
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/doc/format/node/and.md
@@ -0,0 +1,17 @@
+# And
+
+The `and` object is a node that is evaluated as the maximum error level of the input nodes.
+Note that error level `stale` is treated as `error`.
+
+## Format
+
+| Name   | Type                                   | Required | Description                                                  |
+| ------ | -------------------------------------- | -------- | ------------------------------------------------------------ |
+| `type` | <code>string</code>                    | yes      | Specify `and` or `short-circuit-and` when using this object. |
+| `list` | <code>list\[[node](../node.md)]</code> | yes      | List of input node objects.                                  |
+
+## Short-circuit evaluation
+
+!!! warning
+
+    The`short-circuit-and` is work in progress (WIP).
diff --git a/system/diagnostic_graph_aggregator/doc/format/node/const.md b/system/diagnostic_graph_aggregator/doc/format/node/const.md
new file mode 100644
index 0000000000000..13495be6cdbda
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/doc/format/node/const.md
@@ -0,0 +1,18 @@
+# Constant
+
+The constant object is a node with a fixed error level.
+
+## Format
+
+| Name   | Type     | Required | Description                                 |
+| ------ | -------- | -------- | ------------------------------------------- |
+| `type` | `string` | yes      | Specify error level when using this object. |
+
+## Error levels
+
+The supported error levels are as follows.
+
+- `ok`
+- `warn`
+- `error`
+- `stale`
diff --git a/system/diagnostic_graph_aggregator/doc/format/node/diag.md b/system/diagnostic_graph_aggregator/doc/format/node/diag.md
new file mode 100644
index 0000000000000..beba8ed0df5b4
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/doc/format/node/diag.md
@@ -0,0 +1,10 @@
+# Diag
+
+The `diag` object is a node that refers to a specific status within the source diagnostics.
+
+## Format
+
+| Name   | Type     | Required | Description                            |
+| ------ | -------- | -------- | -------------------------------------- |
+| `type` | `string` | yes      | Specify `diag` when using this object. |
+| `diag` | `string` | yes      | The name of the diagnostic status.     |
diff --git a/system/diagnostic_graph_aggregator/doc/format/node/link.md b/system/diagnostic_graph_aggregator/doc/format/node/link.md
new file mode 100644
index 0000000000000..c23aa92575e54
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/doc/format/node/link.md
@@ -0,0 +1,10 @@
+# Link
+
+The `link` object is a node that refers to other nodes.
+
+## Format
+
+| Name   | Type     | Required | Description                            |
+| ------ | -------- | -------- | -------------------------------------- |
+| `type` | `string` | yes      | Specify `link` when using this object. |
+| `link` | `string` | yes      | The path of the node to reference.     |
diff --git a/system/diagnostic_graph_aggregator/doc/format/node/or.md b/system/diagnostic_graph_aggregator/doc/format/node/or.md
new file mode 100644
index 0000000000000..74e94ffd628e3
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/doc/format/node/or.md
@@ -0,0 +1,11 @@
+# Or
+
+The `or` object is a node that is evaluated as the minimum error level of the input nodes.
+Note that error level `stale` is treated as `error`.
+
+## Format
+
+| Name   | Type                                   | Required | Description                          |
+| ------ | -------------------------------------- | -------- | ------------------------------------ |
+| `type` | <code>string</code>                    | yes      | Specify `or` when using this object. |
+| `list` | <code>list\[[node](../node.md)]</code> | yes      | List of input node objects.          |
diff --git a/system/diagnostic_graph_aggregator/doc/format/node/remap.md b/system/diagnostic_graph_aggregator/doc/format/node/remap.md
new file mode 100644
index 0000000000000..abf0d11fae12d
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/doc/format/node/remap.md
@@ -0,0 +1,21 @@
+# Constant
+
+!!! warning
+
+    This object is under development. It may be removed in the future.
+
+The remapping object is a node that converts error levels.
+
+## Format
+
+| Name   | Type                                   | Required | Description                                          |
+| ------ | -------------------------------------- | -------- | ---------------------------------------------------- |
+| `type` | `string`                               | yes      | Specify remapping type when using this object.       |
+| `list` | <code>list\[[node](../node.md)]</code> | yes      | List of input node objects. The list size must be 1. |
+
+## Remapping types
+
+The supported remapping types are as follows.
+
+- `warn-to-ok`
+- `warn-to-error`
diff --git a/system/diagnostic_graph_aggregator/doc/format/or.md b/system/diagnostic_graph_aggregator/doc/format/or.md
deleted file mode 100644
index 3e668b686c9e8..0000000000000
--- a/system/diagnostic_graph_aggregator/doc/format/or.md
+++ /dev/null
@@ -1,11 +0,0 @@
-# Unit
-
-Or is a node that is evaluated as the OR of the input nodes.
-
-## Format
-
-| Name | Type                                       | Required | Description                          |
-| ---- | ------------------------------------------ | -------- | ------------------------------------ |
-| type | string                                     | yes      | Specify `or` when using this object. |
-| name | string                                     | yes      | Name of diagnostic status.           |
-| list | List<[Diag](./diag.md)\|[Unit](./unit.md)> | yes      | List of input node references.       |
diff --git a/system/diagnostic_graph_aggregator/doc/format/path.md b/system/diagnostic_graph_aggregator/doc/format/path.md
index 1f27accefa35a..591d048d31527 100644
--- a/system/diagnostic_graph_aggregator/doc/format/path.md
+++ b/system/diagnostic_graph_aggregator/doc/format/path.md
@@ -1,10 +1,10 @@
 # Path
 
-Path is an object that indicates the path of the file to include.
+The path object specifies the file path of the subgraph to be imported.
+The structure of the subgraph file should be [graph object](./graph.md).
 
 ## Format
 
-| Name    | Type   | Required | Description                   |
-| ------- | ------ | -------- | ----------------------------- |
-| package | string | yes      | Package name.                 |
-| path    | string | yes      | Relative path in the package. |
+| Name   | Type     | Required | Description                    |
+| ------ | -------- | -------- | ------------------------------ |
+| `path` | `string` | yes      | The file path of the subgraph. |
diff --git a/system/diagnostic_graph_aggregator/doc/format/unit.md b/system/diagnostic_graph_aggregator/doc/format/unit.md
deleted file mode 100644
index 791689aa2d98a..0000000000000
--- a/system/diagnostic_graph_aggregator/doc/format/unit.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# Unit
-
-Diag is a node that refers to a functional unit.
-
-## Format
-
-| Name | Type   | Required | Description                            |
-| ---- | ------ | -------- | -------------------------------------- |
-| type | string | yes      | Specify `unit` when using this object. |
-| name | string | yes      | Name of diagnostic status.             |
diff --git a/system/diagnostic_graph_aggregator/example/example_diags.py b/system/diagnostic_graph_aggregator/example/dummy-diags.py
similarity index 100%
rename from system/diagnostic_graph_aggregator/example/example_diags.py
rename to system/diagnostic_graph_aggregator/example/dummy-diags.py
diff --git a/system/diagnostic_graph_aggregator/example/example.launch.xml b/system/diagnostic_graph_aggregator/example/example-edit.launch.xml
similarity index 81%
rename from system/diagnostic_graph_aggregator/example/example.launch.xml
rename to system/diagnostic_graph_aggregator/example/example-edit.launch.xml
index 71e59a1833d6e..91bcc46df6494 100644
--- a/system/diagnostic_graph_aggregator/example/example.launch.xml
+++ b/system/diagnostic_graph_aggregator/example/example-edit.launch.xml
@@ -1,7 +1,7 @@
 <launch>
   <include file="$(find-pkg-share diagnostic_graph_aggregator)/launch/diagnostic_graph_aggregator.launch.xml">
-    <arg name="graph_file" value="$(find-pkg-share diagnostic_graph_aggregator)/example/example_0.yaml"/>
+    <arg name="graph_file" value="$(find-pkg-share diagnostic_graph_aggregator)/example/graph/edit.yaml"/>
   </include>
   <node pkg="diagnostic_graph_aggregator" exec="converter" name="converter"/>
-  <executable cmd="python3 $(find-pkg-share diagnostic_graph_aggregator)/example/example_diags.py"/>
+  <executable cmd="python3 $(find-pkg-share diagnostic_graph_aggregator)/example/dummy-diags.py"/>
 </launch>
diff --git a/system/diagnostic_graph_aggregator/example/example-main.launch.xml b/system/diagnostic_graph_aggregator/example/example-main.launch.xml
new file mode 100644
index 0000000000000..ab7bfaa2e0617
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/example/example-main.launch.xml
@@ -0,0 +1,7 @@
+<launch>
+  <include file="$(find-pkg-share diagnostic_graph_aggregator)/launch/diagnostic_graph_aggregator.launch.xml">
+    <arg name="graph_file" value="$(find-pkg-share diagnostic_graph_aggregator)/example/graph/main.yaml"/>
+  </include>
+  <node pkg="diagnostic_graph_aggregator" exec="converter" name="converter"/>
+  <executable cmd="python3 $(find-pkg-share diagnostic_graph_aggregator)/example/dummy-diags.py"/>
+</launch>
diff --git a/system/diagnostic_graph_aggregator/example/graph/edit.yaml b/system/diagnostic_graph_aggregator/example/graph/edit.yaml
new file mode 100644
index 0000000000000..2fbdbffca438d
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/example/graph/edit.yaml
@@ -0,0 +1,6 @@
+files:
+  - { path: $(find-pkg-share diagnostic_graph_aggregator)/example/graph/main.yaml }
+
+edits:
+  - path: /functions/obstacle_detection
+    type: remove
diff --git a/system/diagnostic_graph_aggregator/example/example_0.yaml b/system/diagnostic_graph_aggregator/example/graph/main.yaml
similarity index 83%
rename from system/diagnostic_graph_aggregator/example/example_0.yaml
rename to system/diagnostic_graph_aggregator/example/graph/main.yaml
index 7b01883723c76..2bea907d9c119 100644
--- a/system/diagnostic_graph_aggregator/example/example_0.yaml
+++ b/system/diagnostic_graph_aggregator/example/graph/main.yaml
@@ -1,6 +1,6 @@
 files:
-  - { path: $(find-pkg-share diagnostic_graph_aggregator)/example/example_1.yaml }
-  - { path: $(find-pkg-share diagnostic_graph_aggregator)/example/example_2.yaml }
+  - { path: $(dirname)/module1.yaml }
+  - { path: $(dirname)/module2.yaml }
 
 nodes:
   - path: /autoware/modes/stop
diff --git a/system/diagnostic_graph_aggregator/example/example_1.yaml b/system/diagnostic_graph_aggregator/example/graph/module1.yaml
similarity index 100%
rename from system/diagnostic_graph_aggregator/example/example_1.yaml
rename to system/diagnostic_graph_aggregator/example/graph/module1.yaml
diff --git a/system/diagnostic_graph_aggregator/example/example_2.yaml b/system/diagnostic_graph_aggregator/example/graph/module2.yaml
similarity index 100%
rename from system/diagnostic_graph_aggregator/example/example_2.yaml
rename to system/diagnostic_graph_aggregator/example/graph/module2.yaml

From d313a581b54cf89428b2efe1babba4ffe0e0ba67 Mon Sep 17 00:00:00 2001
From: "Takagi, Isamu" <isamu.takagi@tier4.jp>
Date: Thu, 14 Mar 2024 02:47:29 +0900
Subject: [PATCH 2/6] add substitutions

Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
---
 system/diagnostic_graph_aggregator/doc/format/path.md | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/system/diagnostic_graph_aggregator/doc/format/path.md b/system/diagnostic_graph_aggregator/doc/format/path.md
index 591d048d31527..6ca32a7eaad80 100644
--- a/system/diagnostic_graph_aggregator/doc/format/path.md
+++ b/system/diagnostic_graph_aggregator/doc/format/path.md
@@ -8,3 +8,12 @@ The structure of the subgraph file should be [graph object](./graph.md).
 | Name   | Type     | Required | Description                    |
 | ------ | -------- | -------- | ------------------------------ |
 | `path` | `string` | yes      | The file path of the subgraph. |
+
+## Substitutions
+
+File paths can contain substitutions like ROS 2 launch. The supported substitutions are as follows.
+
+| Substitution                  | Description                      |
+| ----------------------------- | -------------------------------- |
+| `$(dirname)`                  | The path of this file directory. |
+| `$(find-pkg-share <package>)` | The path of the package.         |

From 56517154461fbb25e81761a42e253a6ceaf246e8 Mon Sep 17 00:00:00 2001
From: "Takagi, Isamu" <isamu.takagi@tier4.jp>
Date: Thu, 14 Mar 2024 10:26:17 +0900
Subject: [PATCH 3/6] update tools

Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
---
 .../CMakeLists.txt                            |  13 +-
 system/diagnostic_graph_aggregator/README.md  |   6 +
 .../doc/tool/converter.md                     |  29 ++++
 .../doc/tool/dump.md                          |  36 +++++
 .../doc/tool/images/rqt_robot_monitor.png     | Bin 0 -> 87323 bytes
 .../doc/tool/images/rqt_runtime_monitor.png   | Bin 0 -> 82540 bytes
 .../doc/tool/tree.md                          |  40 +++++
 .../example/example-edit.launch.xml           |   5 +-
 .../example/example-main.launch.xml           |   7 +-
 ...gator.launch.xml => aggregator.launch.xml} |   0
 .../launch/converter.launch.xml               |   6 +
 .../script/dump.py                            |   1 -
 .../src/node/converter.cpp                    |  40 ++++-
 .../src/node/converter.hpp                    |   5 +
 .../src/tool/plantuml.cpp                     |  49 ++++++
 .../src/tool/tool.cpp                         | 140 ------------------
 .../src/tool/tree.cpp                         |  69 +++++++++
 .../src/tool/utils/loader.cpp                 |  57 +++++++
 .../src/tool/utils/loader.hpp                 |  48 ++++++
 19 files changed, 403 insertions(+), 148 deletions(-)
 create mode 100644 system/diagnostic_graph_aggregator/doc/tool/converter.md
 create mode 100644 system/diagnostic_graph_aggregator/doc/tool/dump.md
 create mode 100644 system/diagnostic_graph_aggregator/doc/tool/images/rqt_robot_monitor.png
 create mode 100644 system/diagnostic_graph_aggregator/doc/tool/images/rqt_runtime_monitor.png
 create mode 100644 system/diagnostic_graph_aggregator/doc/tool/tree.md
 rename system/diagnostic_graph_aggregator/launch/{diagnostic_graph_aggregator.launch.xml => aggregator.launch.xml} (100%)
 create mode 100644 system/diagnostic_graph_aggregator/launch/converter.launch.xml
 create mode 100644 system/diagnostic_graph_aggregator/src/tool/plantuml.cpp
 delete mode 100644 system/diagnostic_graph_aggregator/src/tool/tool.cpp
 create mode 100644 system/diagnostic_graph_aggregator/src/tool/tree.cpp
 create mode 100644 system/diagnostic_graph_aggregator/src/tool/utils/loader.cpp
 create mode 100644 system/diagnostic_graph_aggregator/src/tool/utils/loader.hpp

diff --git a/system/diagnostic_graph_aggregator/CMakeLists.txt b/system/diagnostic_graph_aggregator/CMakeLists.txt
index c4a67032541b2..574978ec5adce 100644
--- a/system/diagnostic_graph_aggregator/CMakeLists.txt
+++ b/system/diagnostic_graph_aggregator/CMakeLists.txt
@@ -22,10 +22,17 @@ ament_auto_add_executable(converter
 )
 target_include_directories(converter PRIVATE src/common)
 
-ament_auto_add_executable(tool
-  src/tool/tool.cpp
+ament_auto_add_executable(tree
+  src/tool/tree.cpp
+  src/tool/utils/loader.cpp
 )
-target_include_directories(tool PRIVATE src/common)
+target_include_directories(tree PRIVATE src/common)
+
+ament_auto_add_executable(plantuml
+  src/tool/plantuml.cpp
+  src/tool/utils/loader.cpp
+)
+target_include_directories(plantuml PRIVATE src/common)
 
 if(BUILD_TESTING)
   get_filename_component(RESOURCE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/test/files ABSOLUTE)
diff --git a/system/diagnostic_graph_aggregator/README.md b/system/diagnostic_graph_aggregator/README.md
index dabbb1402db4c..cc49ed88ba98f 100644
--- a/system/diagnostic_graph_aggregator/README.md
+++ b/system/diagnostic_graph_aggregator/README.md
@@ -71,6 +71,12 @@ You can reuse the graph by making partial edits. For example, disable hardware c
 ros2 launch diagnostic_graph_aggregator example-edit.launch.xml
 ```
 
+## Debug tools
+
+- [dump](./doc/tool/dump.md)
+- [converter](./doc/tool/converter.md)
+- [tree](./doc/tool/tree.md)
+
 ## Graph file format
 
 - [graph](./doc/format/graph.md)
diff --git a/system/diagnostic_graph_aggregator/doc/tool/converter.md b/system/diagnostic_graph_aggregator/doc/tool/converter.md
new file mode 100644
index 0000000000000..b98d7eac32970
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/doc/tool/converter.md
@@ -0,0 +1,29 @@
+# Converter tool
+
+This tool converts `/diagnostics_graph` to `/diagnostics_agg` so it can be read by tools such as `rqt_runtime_monitor` and `rqt_robot_monitor`.
+
+## Usage
+
+```bash
+ros2 launch diagnostic_graph_aggregator converter.launch.xml complement:=false
+```
+
+The `complement` argument specifies whether to add an intermediate path that does not exist.
+This means that if the graph contains paths `/A/B` and `/A/B/C/D/E`, the intermediate paths `/A`, `/A/B/C` and `/A/B/C/D` will be added.
+This is useful for tree view in `rqt_robot_monitor`. The completed node has an error level of `SATLE`.
+
+## Examples
+
+```bash
+ros2 launch diagnostic_graph_aggregator example-main.launch.xml complement:=false
+ros2 run rqt_runtime_monitor rqt_runtime_monitor --ros-args -r diagnostics:=diagnostics_agg
+```
+
+![rqt_runtime_monitor](./images/rqt_runtime_monitor.png)
+
+```bash
+ros2 launch diagnostic_graph_aggregator example-main.launch.xml complement:=true
+ros2 run rqt_robot_monitor rqt_robot_monitor
+```
+
+![rqt_robot_monitor](./images/rqt_robot_monitor.png)
diff --git a/system/diagnostic_graph_aggregator/doc/tool/dump.md b/system/diagnostic_graph_aggregator/doc/tool/dump.md
new file mode 100644
index 0000000000000..33f05ff866603
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/doc/tool/dump.md
@@ -0,0 +1,36 @@
+# Dump tool
+
+This tool displays `/diagnostics_graph` in table format.
+
+## Usage
+
+```bash
+ros2 run diagnostic_graph_aggregator dump
+```
+
+## Examples
+
+```bash
+ros2 launch diagnostic_graph_aggregator example-main.launch.xml
+ros2 run diagnostic_graph_aggregator dump
+```
+
+```txt
+| ----- | ----- | -------------------------------- | ----- |
+| index | level | name                             | links |
+| ----- | ----- | -------------------------------- | ----- |
+| 0     | OK    | /sensing/radars/front            |       |
+| 1     | OK    | /sensing/lidars/front            |       |
+| 2     | ERROR | /sensing/lidars/top              |       |
+| 3     | OK    | /functions/obstacle_detection    | 1 0   |
+| 4     | ERROR | /functions/pose_estimation       | 2     |
+| 5     | OK    | /external/remote_command         |       |
+| 6     | OK    | /external/joystick_command       |       |
+| 7     | ERROR | /autoware/modes/pull_over        | 4 3   |
+| 8     | OK    | /autoware/modes/comfortable_stop | 3     |
+| 9     | OK    | /autoware/modes/emergency_stop   |       |
+| 10    | OK    | /autoware/modes/remote           | 5     |
+| 11    | OK    | /autoware/modes/local            | 6     |
+| 12    | ERROR | /autoware/modes/autonomous       | 4 3   |
+| 13    | OK    | /autoware/modes/stop             |       |
+```
diff --git a/system/diagnostic_graph_aggregator/doc/tool/images/rqt_robot_monitor.png b/system/diagnostic_graph_aggregator/doc/tool/images/rqt_robot_monitor.png
new file mode 100644
index 0000000000000000000000000000000000000000..e4aa169f02addf3c6a60972c41bb4aee228e06b8
GIT binary patch
literal 87323
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

literal 0
HcmV?d00001

diff --git a/system/diagnostic_graph_aggregator/doc/tool/images/rqt_runtime_monitor.png b/system/diagnostic_graph_aggregator/doc/tool/images/rqt_runtime_monitor.png
new file mode 100644
index 0000000000000000000000000000000000000000..768fee688f59472f617e57c786e3d678b7617d7f
GIT binary patch
literal 82540
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%0Du5v^+jiA86TBjS}9Z4dU7~
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
UtzwY03ol-X2}ui<^6UEk9}_DO5dZ)H

literal 0
HcmV?d00001

diff --git a/system/diagnostic_graph_aggregator/doc/tool/tree.md b/system/diagnostic_graph_aggregator/doc/tool/tree.md
new file mode 100644
index 0000000000000..79fa61f527038
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/doc/tool/tree.md
@@ -0,0 +1,40 @@
+# Tree tool
+
+This tool displays the graph structure of the configuration file in tree format.
+
+## Usage
+
+```bash
+ros2 run diagnostic_graph_aggregator tree <graph-config-path>
+```
+
+## Examples
+
+```bash
+ros2 run diagnostic_graph_aggregator tree system/diagnostic_graph_aggregator/example/graph/main.yaml
+```
+
+```txt
+===== root nodes =================================
+- /autoware/modes/local (and)
+    - /external/joystick_command (diag)
+- /autoware/modes/comfortable_stop (and)
+    - /functions/obstacle_detection (or)
+- /autoware/modes/pull_over (and)
+    - /functions/pose_estimation (and)
+    - /functions/obstacle_detection (or)
+- /autoware/modes/autonomous (and)
+    - /functions/pose_estimation (and)
+    - /functions/obstacle_detection (or)
+- /autoware/modes/remote (and)
+    - /external/remote_command (diag)
+===== intermediate nodes =========================
+- /functions/obstacle_detection (or)
+    - /sensing/lidars/front (diag)
+    - /sensing/radars/front (diag)
+- /functions/pose_estimation (and)
+    - /sensing/lidars/top (diag)
+===== isolated nodes =============================
+- /autoware/modes/stop (const)
+- /autoware/modes/emergency_stop (const)
+```
diff --git a/system/diagnostic_graph_aggregator/example/example-edit.launch.xml b/system/diagnostic_graph_aggregator/example/example-edit.launch.xml
index 91bcc46df6494..c168b76f19c21 100644
--- a/system/diagnostic_graph_aggregator/example/example-edit.launch.xml
+++ b/system/diagnostic_graph_aggregator/example/example-edit.launch.xml
@@ -1,7 +1,10 @@
 <launch>
+  <arg name="complement" default="false"/>
   <include file="$(find-pkg-share diagnostic_graph_aggregator)/launch/diagnostic_graph_aggregator.launch.xml">
     <arg name="graph_file" value="$(find-pkg-share diagnostic_graph_aggregator)/example/graph/edit.yaml"/>
   </include>
-  <node pkg="diagnostic_graph_aggregator" exec="converter" name="converter"/>
+  <include file="$(find-pkg-share diagnostic_graph_aggregator)/launch/converter.launch.xml">
+    <arg name="complement" value="$(var complement)"/>
+  </include>
   <executable cmd="python3 $(find-pkg-share diagnostic_graph_aggregator)/example/dummy-diags.py"/>
 </launch>
diff --git a/system/diagnostic_graph_aggregator/example/example-main.launch.xml b/system/diagnostic_graph_aggregator/example/example-main.launch.xml
index ab7bfaa2e0617..cdc1bc8afca53 100644
--- a/system/diagnostic_graph_aggregator/example/example-main.launch.xml
+++ b/system/diagnostic_graph_aggregator/example/example-main.launch.xml
@@ -1,7 +1,10 @@
 <launch>
-  <include file="$(find-pkg-share diagnostic_graph_aggregator)/launch/diagnostic_graph_aggregator.launch.xml">
+  <arg name="complement" default="false"/>
+  <include file="$(find-pkg-share diagnostic_graph_aggregator)/launch/aggregator.launch.xml">
     <arg name="graph_file" value="$(find-pkg-share diagnostic_graph_aggregator)/example/graph/main.yaml"/>
   </include>
-  <node pkg="diagnostic_graph_aggregator" exec="converter" name="converter"/>
+  <include file="$(find-pkg-share diagnostic_graph_aggregator)/launch/converter.launch.xml">
+    <arg name="complement" value="$(var complement)"/>
+  </include>
   <executable cmd="python3 $(find-pkg-share diagnostic_graph_aggregator)/example/dummy-diags.py"/>
 </launch>
diff --git a/system/diagnostic_graph_aggregator/launch/diagnostic_graph_aggregator.launch.xml b/system/diagnostic_graph_aggregator/launch/aggregator.launch.xml
similarity index 100%
rename from system/diagnostic_graph_aggregator/launch/diagnostic_graph_aggregator.launch.xml
rename to system/diagnostic_graph_aggregator/launch/aggregator.launch.xml
diff --git a/system/diagnostic_graph_aggregator/launch/converter.launch.xml b/system/diagnostic_graph_aggregator/launch/converter.launch.xml
new file mode 100644
index 0000000000000..effebf8381ee1
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/launch/converter.launch.xml
@@ -0,0 +1,6 @@
+<launch>
+  <arg name="complement"/>
+  <node pkg="diagnostic_graph_aggregator" exec="converter" name="converter">
+    <param name="complement_inner_nodes" value="$(var complement)"/>
+  </node>
+</launch>
diff --git a/system/diagnostic_graph_aggregator/script/dump.py b/system/diagnostic_graph_aggregator/script/dump.py
index 3e639cbce104d..9abcaeb7a080c 100755
--- a/system/diagnostic_graph_aggregator/script/dump.py
+++ b/system/diagnostic_graph_aggregator/script/dump.py
@@ -84,7 +84,6 @@ def callback(self, msg):
 if __name__ == "__main__":
     parser = argparse.ArgumentParser()
     parser.add_argument("--topic", default="/diagnostics_graph")
-    parser.add_argument("--order", default="index")
     args, unparsed = parser.parse_known_args()
 
     try:
diff --git a/system/diagnostic_graph_aggregator/src/node/converter.cpp b/system/diagnostic_graph_aggregator/src/node/converter.cpp
index 89acfce31a5ab..54360fa033985 100644
--- a/system/diagnostic_graph_aggregator/src/node/converter.cpp
+++ b/system/diagnostic_graph_aggregator/src/node/converter.cpp
@@ -16,6 +16,8 @@
 
 #include <memory>
 #include <string>
+#include <unordered_map>
+#include <vector>
 
 namespace diagnostic_graph_aggregator
 {
@@ -35,6 +37,29 @@ std::string level_to_string(DiagnosticLevel level)
   return "UNKNOWN";
 }
 
+std::string parent_path(const std::string & path)
+{
+  return path.substr(0, path.rfind('/'));
+}
+
+std::vector<std::string> complement_paths(const DiagnosticGraph & graph)
+{
+  std::unordered_map<std::string, bool> paths;
+  for (const auto & node : graph.nodes) {
+    std::string path = node.status.name;
+    paths[path] = false;
+    while (path = parent_path(path), !path.empty()) {
+      if (paths.count(path)) break;
+      paths[path] = true;
+    }
+  }
+  std::vector<std::string> result;
+  for (const auto & [path, flag] : paths) {
+    if (flag) result.push_back(path);
+  }
+  return result;
+}
+
 ToolNode::ToolNode() : Node("diagnostic_graph_aggregator_converter")
 {
   using std::placeholders::_1;
@@ -43,7 +68,8 @@ ToolNode::ToolNode() : Node("diagnostic_graph_aggregator_converter")
 
   const auto callback = std::bind(&ToolNode::on_graph, this, _1);
   sub_graph_ = create_subscription<DiagnosticGraph>("/diagnostics_graph", qos_graph, callback);
-  pub_array_ = create_publisher<DiagnosticArray>("/diagnostics_array", qos_array);
+  pub_array_ = create_publisher<DiagnosticArray>("/diagnostics_agg", qos_array);
+  complement_inner_nodes_ = declare_parameter<bool>("complement_inner_nodes");
 }
 
 void ToolNode::on_graph(const DiagnosticGraph::ConstSharedPtr msg)
@@ -63,6 +89,18 @@ void ToolNode::on_graph(const DiagnosticGraph::ConstSharedPtr msg)
       }
     }
   }
+
+  if (complement_inner_nodes_) {
+    if (!inner_node_names_) {
+      inner_node_names_ = complement_paths(*msg);
+    }
+    for (const auto & name : inner_node_names_.value()) {
+      message.status.emplace_back();
+      message.status.back().name = name;
+      message.status.back().level = DiagnosticStatus::STALE;
+    }
+  }
+
   pub_array_->publish(message);
 }
 
diff --git a/system/diagnostic_graph_aggregator/src/node/converter.hpp b/system/diagnostic_graph_aggregator/src/node/converter.hpp
index 7a3e8e4e58033..62fbfc518b16e 100644
--- a/system/diagnostic_graph_aggregator/src/node/converter.hpp
+++ b/system/diagnostic_graph_aggregator/src/node/converter.hpp
@@ -19,6 +19,9 @@
 
 #include <rclcpp/rclcpp.hpp>
 
+#include <string>
+#include <vector>
+
 namespace diagnostic_graph_aggregator
 {
 
@@ -28,6 +31,8 @@ class ToolNode : public rclcpp::Node
   ToolNode();
 
 private:
+  bool complement_inner_nodes_;
+  std::optional<std::vector<std::string>> inner_node_names_;
   rclcpp::Subscription<DiagnosticGraph>::SharedPtr sub_graph_;
   rclcpp::Publisher<DiagnosticArray>::SharedPtr pub_array_;
   void on_graph(const DiagnosticGraph::ConstSharedPtr msg);
diff --git a/system/diagnostic_graph_aggregator/src/tool/plantuml.cpp b/system/diagnostic_graph_aggregator/src/tool/plantuml.cpp
new file mode 100644
index 0000000000000..bfbb382a78fcb
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/src/tool/plantuml.cpp
@@ -0,0 +1,49 @@
+// Copyright 2023 The Autoware Contributors
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#include "utils/loader.hpp"
+
+#include <iostream>
+
+namespace diagnostic_graph_aggregator
+{
+
+void dump_root(const std::string & path)
+{
+  const auto graph = load_graph_nodes(path);
+  const auto color = "#FFFFFF";
+
+  for (const auto & node : graph.nodes) {
+    std::cout << "card " << node << " " << color << " [" << std::endl;
+    std::cout << node->path << std::endl;
+    std::cout << "]" << std::endl;
+  }
+
+  for (const auto & node : graph.nodes) {
+    for (const auto & child : node->children) {
+      std::cout << node << " --> " << child << std::endl;
+    }
+  }
+}
+
+}  // namespace diagnostic_graph_aggregator
+
+int main(int argc, char ** argv)
+{
+  if (argc != 2) {
+    std::cerr << "usage: plantuml <path>" << std::endl;
+    return 1;
+  }
+  diagnostic_graph_aggregator::dump_root(argv[1]);
+}
diff --git a/system/diagnostic_graph_aggregator/src/tool/tool.cpp b/system/diagnostic_graph_aggregator/src/tool/tool.cpp
deleted file mode 100644
index 657f76c2d91b7..0000000000000
--- a/system/diagnostic_graph_aggregator/src/tool/tool.cpp
+++ /dev/null
@@ -1,140 +0,0 @@
-// Copyright 2023 The Autoware Contributors
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-//     http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-#include "graph/graph.hpp"
-#include "graph/types.hpp"
-#include "graph/units.hpp"
-
-#include <iostream>
-#include <string>
-#include <unordered_map>
-
-namespace diagnostic_graph_aggregator
-{
-
-struct GraphNode
-{
-  using UniquePtr = std::unique_ptr<GraphNode>;
-  std::string type;
-  std::string path;
-  std::vector<GraphNode *> children;
-  std::vector<GraphNode *> parents;
-};
-
-struct GraphRoot
-{
-  std::vector<GraphNode::UniquePtr> owner;
-  std::vector<GraphNode *> nodes;
-};
-
-GraphRoot load_graph_nodes(const std::string & path)
-{
-  GraphRoot result;
-  {
-    std::unordered_map<BaseUnit *, GraphNode::UniquePtr> mapping;
-    Graph graph;
-    graph.init(path);
-
-    for (const auto & node : graph.nodes()) {
-      auto data = std::make_unique<GraphNode>();
-      data->path = node->path();
-      data->type = node->type();
-      mapping[node] = std::move(data);
-    }
-
-    for (const auto & [node, data] : mapping) {
-      for (const auto & link : node->children()) {
-        const auto parent = data.get();
-        const auto child = mapping.at(link).get();
-        child->parents.push_back(parent);
-        parent->children.push_back(child);
-      }
-    }
-
-    for (auto & [node, data] : mapping) {
-      result.owner.push_back(std::move(data));
-    }
-    for (const auto & node : result.owner) {
-      result.nodes.push_back(node.get());
-    }
-  }
-  return result;
-}
-
-void dump_plantuml_path(const std::string & path)
-{
-  const auto graph = load_graph_nodes(path);
-  const auto color = "#FFFFFF";
-
-  for (const auto & node : graph.nodes) {
-    std::cout << "card " << node << " " << color << " [" << std::endl;
-    std::cout << node->path << std::endl;
-    std::cout << "]" << std::endl;
-  }
-
-  for (const auto & node : graph.nodes) {
-    for (const auto & child : node->children) {
-      std::cout << node << " --> " << child << std::endl;
-    }
-  }
-}
-
-void dump_tree_node(const GraphNode * node, const std::string & indent = "", bool root = true)
-{
-  const auto path = node->path.empty() ? "" : node->path + " ";
-  const auto type = "(" + node->type + ")";
-  std::cout << indent << "- " << path << type << std::endl;
-
-  if (root || node->parents.size() == 1) {
-    for (const auto child : node->children) {
-      dump_tree_node(child, indent + "    ", false);
-    }
-  }
-}
-
-void dump_tree_path(const std::string & path)
-{
-  const auto graph = load_graph_nodes(path);
-
-  std::cout << "===== root nodes =================================" << std::endl;
-  for (const auto & node : graph.nodes) {
-    if (node->parents.size() == 0 && node->children.size() != 0) {
-      dump_tree_node(node);
-    }
-  }
-  std::cout << "===== intermediate nodes =========================" << std::endl;
-  for (const auto & node : graph.nodes) {
-    if (node->parents.size() >= 2) {
-      dump_tree_node(node);
-    }
-  }
-
-  std::cout << "===== isolated nodes =============================" << std::endl;
-  for (const auto & node : graph.nodes) {
-    if (node->parents.size() == 0 && node->children.size() == 0) {
-      dump_tree_node(node);
-    }
-  }
-}
-
-}  // namespace diagnostic_graph_aggregator
-
-int main(int argc, char ** argv)
-{
-  if (argc != 2) {
-    std::cerr << "usage: " << argv[0] << " <path>" << std::endl;
-    return 1;
-  }
-  diagnostic_graph_aggregator::dump_tree_path(argv[1]);
-}
diff --git a/system/diagnostic_graph_aggregator/src/tool/tree.cpp b/system/diagnostic_graph_aggregator/src/tool/tree.cpp
new file mode 100644
index 0000000000000..9dbbc539b3b91
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/src/tool/tree.cpp
@@ -0,0 +1,69 @@
+// Copyright 2023 The Autoware Contributors
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#include "utils/loader.hpp"
+
+#include <iostream>
+
+namespace diagnostic_graph_aggregator
+{
+
+void dump_node(const GraphNode * node, const std::string & indent = "", bool root = true)
+{
+  const auto path = node->path.empty() ? "" : node->path + " ";
+  const auto type = "(" + node->type + ")";
+  std::cout << indent << "- " << path << type << std::endl;
+
+  if (root || node->parents.size() == 1) {
+    for (const auto child : node->children) {
+      dump_node(child, indent + "    ", false);
+    }
+  }
+}
+
+void dump_root(const std::string & path)
+{
+  const auto graph = load_graph_nodes(path);
+
+  std::cout << "===== root nodes =================================" << std::endl;
+  for (const auto & node : graph.nodes) {
+    if (node->parents.size() == 0 && node->children.size() != 0) {
+      dump_node(node);
+    }
+  }
+  std::cout << "===== intermediate nodes =========================" << std::endl;
+  for (const auto & node : graph.nodes) {
+    if (node->parents.size() >= 2) {
+      dump_node(node);
+    }
+  }
+
+  std::cout << "===== isolated nodes =============================" << std::endl;
+  for (const auto & node : graph.nodes) {
+    if (node->parents.size() == 0 && node->children.size() == 0) {
+      dump_node(node);
+    }
+  }
+}
+
+}  // namespace diagnostic_graph_aggregator
+
+int main(int argc, char ** argv)
+{
+  if (argc != 2) {
+    std::cerr << "usage: tree <path>" << std::endl;
+    return 1;
+  }
+  diagnostic_graph_aggregator::dump_root(argv[1]);
+}
diff --git a/system/diagnostic_graph_aggregator/src/tool/utils/loader.cpp b/system/diagnostic_graph_aggregator/src/tool/utils/loader.cpp
new file mode 100644
index 0000000000000..a2e6ce8b85334
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/src/tool/utils/loader.cpp
@@ -0,0 +1,57 @@
+// Copyright 2023 The Autoware Contributors
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#include "loader.hpp"
+
+#include <unordered_map>
+#include <utility>
+
+namespace diagnostic_graph_aggregator
+{
+
+GraphRoot load_graph_nodes(const std::string & path)
+{
+  GraphRoot result;
+  {
+    std::unordered_map<BaseUnit *, GraphNode::UniquePtr> mapping;
+    Graph graph;
+    graph.init(path);
+
+    for (const auto & node : graph.nodes()) {
+      auto data = std::make_unique<GraphNode>();
+      data->path = node->path();
+      data->type = node->type();
+      mapping[node] = std::move(data);
+    }
+
+    for (const auto & [node, data] : mapping) {
+      for (const auto & link : node->children()) {
+        const auto parent = data.get();
+        const auto child = mapping.at(link).get();
+        child->parents.push_back(parent);
+        parent->children.push_back(child);
+      }
+    }
+
+    for (auto & [node, data] : mapping) {
+      result.owner.push_back(std::move(data));
+    }
+    for (const auto & node : result.owner) {
+      result.nodes.push_back(node.get());
+    }
+  }
+  return result;
+}
+
+}  // namespace diagnostic_graph_aggregator
diff --git a/system/diagnostic_graph_aggregator/src/tool/utils/loader.hpp b/system/diagnostic_graph_aggregator/src/tool/utils/loader.hpp
new file mode 100644
index 0000000000000..70e01ec2a77b4
--- /dev/null
+++ b/system/diagnostic_graph_aggregator/src/tool/utils/loader.hpp
@@ -0,0 +1,48 @@
+// Copyright 2023 The Autoware Contributors
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+#ifndef TOOL__UTILS__LOADER_HPP_
+#define TOOL__UTILS__LOADER_HPP_
+
+#include "graph/graph.hpp"
+#include "graph/types.hpp"
+#include "graph/units.hpp"
+
+#include <memory>
+#include <string>
+#include <vector>
+
+namespace diagnostic_graph_aggregator
+{
+
+struct GraphNode
+{
+  using UniquePtr = std::unique_ptr<GraphNode>;
+  std::string type;
+  std::string path;
+  std::vector<GraphNode *> children;
+  std::vector<GraphNode *> parents;
+};
+
+struct GraphRoot
+{
+  std::vector<GraphNode::UniquePtr> owner;
+  std::vector<GraphNode *> nodes;
+};
+
+GraphRoot load_graph_nodes(const std::string & path);
+
+}  // namespace diagnostic_graph_aggregator
+
+#endif  // TOOL__UTILS__LOADER_HPP_

From 257e53039815b98dd0b68701e8d2704cd8c2783f Mon Sep 17 00:00:00 2001
From: "Takagi, Isamu" <isamu.takagi@tier4.jp>
Date: Thu, 14 Mar 2024 13:00:36 +0900
Subject: [PATCH 4/6] fix typo

Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
---
 system/diagnostic_graph_aggregator/doc/tool/converter.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/system/diagnostic_graph_aggregator/doc/tool/converter.md b/system/diagnostic_graph_aggregator/doc/tool/converter.md
index b98d7eac32970..2351bc1e01054 100644
--- a/system/diagnostic_graph_aggregator/doc/tool/converter.md
+++ b/system/diagnostic_graph_aggregator/doc/tool/converter.md
@@ -10,7 +10,7 @@ ros2 launch diagnostic_graph_aggregator converter.launch.xml complement:=false
 
 The `complement` argument specifies whether to add an intermediate path that does not exist.
 This means that if the graph contains paths `/A/B` and `/A/B/C/D/E`, the intermediate paths `/A`, `/A/B/C` and `/A/B/C/D` will be added.
-This is useful for tree view in `rqt_robot_monitor`. The completed node has an error level of `SATLE`.
+This is useful for tree view in `rqt_robot_monitor`. The completed node has an error level of `STALE`.
 
 ## Examples
 

From cf6b39b2141d5b48755de7a4d8dcd85e446fd86e Mon Sep 17 00:00:00 2001
From: "Takagi, Isamu" <isamu.takagi@tier4.jp>
Date: Thu, 14 Mar 2024 15:35:24 +0900
Subject: [PATCH 5/6] rename nodes

Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
---
 .../src/node/aggregator.cpp                        | 14 +++++++-------
 .../src/node/aggregator.hpp                        |  6 +++---
 .../src/node/converter.cpp                         | 10 +++++-----
 .../src/node/converter.hpp                         |  4 ++--
 4 files changed, 17 insertions(+), 17 deletions(-)

diff --git a/system/diagnostic_graph_aggregator/src/node/aggregator.cpp b/system/diagnostic_graph_aggregator/src/node/aggregator.cpp
index 48f489c186bdb..cd16ce8e33e59 100644
--- a/system/diagnostic_graph_aggregator/src/node/aggregator.cpp
+++ b/system/diagnostic_graph_aggregator/src/node/aggregator.cpp
@@ -20,7 +20,7 @@
 namespace diagnostic_graph_aggregator
 {
 
-MainNode::MainNode() : Node("diagnostic_graph_aggregator_aggregator")
+AggregatorNode::AggregatorNode() : Node("aggregator")
 {
   // Init diagnostics graph.
   {
@@ -39,7 +39,7 @@ MainNode::MainNode() : Node("diagnostic_graph_aggregator_aggregator")
     const auto qos_input = rclcpp::QoS(declare_parameter<int64_t>("input_qos_depth"));
     const auto qos_graph = rclcpp::QoS(declare_parameter<int64_t>("graph_qos_depth"));
 
-    const auto callback = std::bind(&MainNode::on_diag, this, _1);
+    const auto callback = std::bind(&AggregatorNode::on_diag, this, _1);
     sub_input_ = create_subscription<DiagnosticArray>("/diagnostics", qos_input, callback);
     pub_graph_ = create_publisher<DiagnosticGraph>("/diagnostics_graph", qos_graph);
 
@@ -51,12 +51,12 @@ MainNode::MainNode() : Node("diagnostic_graph_aggregator_aggregator")
   debug_ = declare_parameter<bool>("use_debug_mode");
 }
 
-MainNode::~MainNode()
+AggregatorNode::~AggregatorNode()
 {
   // for unique_ptr
 }
 
-void MainNode::on_timer()
+void AggregatorNode::on_timer()
 {
   const auto stamp = now();
   pub_graph_->publish(graph_.report(stamp));
@@ -64,7 +64,7 @@ void MainNode::on_timer()
   if (modes_) modes_->update(stamp);
 }
 
-void MainNode::on_diag(const DiagnosticArray::ConstSharedPtr msg)
+void AggregatorNode::on_diag(const DiagnosticArray::ConstSharedPtr msg)
 {
   graph_.callback(now(), *msg);
 }
@@ -73,10 +73,10 @@ void MainNode::on_diag(const DiagnosticArray::ConstSharedPtr msg)
 
 int main(int argc, char ** argv)
 {
-  using diagnostic_graph_aggregator::MainNode;
+  using diagnostic_graph_aggregator::AggregatorNode;
   rclcpp::init(argc, argv);
   rclcpp::executors::SingleThreadedExecutor executor;
-  auto node = std::make_shared<MainNode>();
+  auto node = std::make_shared<AggregatorNode>();
   executor.add_node(node);
   executor.spin();
   executor.remove_node(node);
diff --git a/system/diagnostic_graph_aggregator/src/node/aggregator.hpp b/system/diagnostic_graph_aggregator/src/node/aggregator.hpp
index dd64809e939cc..6bf9aead9754d 100644
--- a/system/diagnostic_graph_aggregator/src/node/aggregator.hpp
+++ b/system/diagnostic_graph_aggregator/src/node/aggregator.hpp
@@ -26,11 +26,11 @@
 namespace diagnostic_graph_aggregator
 {
 
-class MainNode : public rclcpp::Node
+class AggregatorNode : public rclcpp::Node
 {
 public:
-  MainNode();
-  ~MainNode();
+  AggregatorNode();
+  ~AggregatorNode();
 
 private:
   Graph graph_;
diff --git a/system/diagnostic_graph_aggregator/src/node/converter.cpp b/system/diagnostic_graph_aggregator/src/node/converter.cpp
index 54360fa033985..e93a7c6800201 100644
--- a/system/diagnostic_graph_aggregator/src/node/converter.cpp
+++ b/system/diagnostic_graph_aggregator/src/node/converter.cpp
@@ -60,19 +60,19 @@ std::vector<std::string> complement_paths(const DiagnosticGraph & graph)
   return result;
 }
 
-ToolNode::ToolNode() : Node("diagnostic_graph_aggregator_converter")
+ConverterNode::ConverterNode() : Node("converter")
 {
   using std::placeholders::_1;
   const auto qos_graph = rclcpp::QoS(1);
   const auto qos_array = rclcpp::QoS(1);
 
-  const auto callback = std::bind(&ToolNode::on_graph, this, _1);
+  const auto callback = std::bind(&ConverterNode::on_graph, this, _1);
   sub_graph_ = create_subscription<DiagnosticGraph>("/diagnostics_graph", qos_graph, callback);
   pub_array_ = create_publisher<DiagnosticArray>("/diagnostics_agg", qos_array);
   complement_inner_nodes_ = declare_parameter<bool>("complement_inner_nodes");
 }
 
-void ToolNode::on_graph(const DiagnosticGraph::ConstSharedPtr msg)
+void ConverterNode::on_graph(const DiagnosticGraph::ConstSharedPtr msg)
 {
   DiagnosticArray message;
   message.header.stamp = msg->stamp;
@@ -108,10 +108,10 @@ void ToolNode::on_graph(const DiagnosticGraph::ConstSharedPtr msg)
 
 int main(int argc, char ** argv)
 {
-  using diagnostic_graph_aggregator::ToolNode;
+  using diagnostic_graph_aggregator::ConverterNode;
   rclcpp::init(argc, argv);
   rclcpp::executors::SingleThreadedExecutor executor;
-  auto node = std::make_shared<ToolNode>();
+  auto node = std::make_shared<ConverterNode>();
   executor.add_node(node);
   executor.spin();
   executor.remove_node(node);
diff --git a/system/diagnostic_graph_aggregator/src/node/converter.hpp b/system/diagnostic_graph_aggregator/src/node/converter.hpp
index 62fbfc518b16e..6a70cbc2df4c6 100644
--- a/system/diagnostic_graph_aggregator/src/node/converter.hpp
+++ b/system/diagnostic_graph_aggregator/src/node/converter.hpp
@@ -25,10 +25,10 @@
 namespace diagnostic_graph_aggregator
 {
 
-class ToolNode : public rclcpp::Node
+class ConverterNode : public rclcpp::Node
 {
 public:
-  ToolNode();
+  ConverterNode();
 
 private:
   bool complement_inner_nodes_;

From 720b06678c6ee0d7cfc1aa0f2696f75086f53343 Mon Sep 17 00:00:00 2001
From: "Takagi, Isamu" <isamu.takagi@tier4.jp>
Date: Thu, 14 Mar 2024 20:57:48 +0900
Subject: [PATCH 6/6] calc inner node level

Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
---
 .../example/dummy-diags.py                    |  9 ++--
 .../launch/converter.launch.xml               |  2 +-
 .../src/node/converter.cpp                    | 54 ++++++++++++-------
 .../src/node/converter.hpp                    | 16 +++++-
 4 files changed, 55 insertions(+), 26 deletions(-)

diff --git a/system/diagnostic_graph_aggregator/example/dummy-diags.py b/system/diagnostic_graph_aggregator/example/dummy-diags.py
index 52d6189a63f30..08f81bcd738ed 100755
--- a/system/diagnostic_graph_aggregator/example/dummy-diags.py
+++ b/system/diagnostic_graph_aggregator/example/dummy-diags.py
@@ -59,6 +59,9 @@ def create_status(name: str):
         "external_command_checker: joystick_command",
         "external_command_checker: remote_command",
     ]
-    rclpy.init()
-    rclpy.spin(DummyDiagnostics(diags))
-    rclpy.shutdown()
+    try:
+        rclpy.init()
+        rclpy.spin(DummyDiagnostics(diags))
+        rclpy.shutdown()
+    except KeyboardInterrupt:
+        pass
diff --git a/system/diagnostic_graph_aggregator/launch/converter.launch.xml b/system/diagnostic_graph_aggregator/launch/converter.launch.xml
index effebf8381ee1..9111338bf622a 100644
--- a/system/diagnostic_graph_aggregator/launch/converter.launch.xml
+++ b/system/diagnostic_graph_aggregator/launch/converter.launch.xml
@@ -1,6 +1,6 @@
 <launch>
   <arg name="complement"/>
   <node pkg="diagnostic_graph_aggregator" exec="converter" name="converter">
-    <param name="complement_inner_nodes" value="$(var complement)"/>
+    <param name="complement_tree" value="$(var complement)"/>
   </node>
 </launch>
diff --git a/system/diagnostic_graph_aggregator/src/node/converter.cpp b/system/diagnostic_graph_aggregator/src/node/converter.cpp
index e93a7c6800201..f0b2108374017 100644
--- a/system/diagnostic_graph_aggregator/src/node/converter.cpp
+++ b/system/diagnostic_graph_aggregator/src/node/converter.cpp
@@ -14,10 +14,7 @@
 
 #include "converter.hpp"
 
-#include <memory>
-#include <string>
-#include <unordered_map>
-#include <vector>
+#include <algorithm>
 
 namespace diagnostic_graph_aggregator
 {
@@ -42,22 +39,24 @@ std::string parent_path(const std::string & path)
   return path.substr(0, path.rfind('/'));
 }
 
-std::vector<std::string> complement_paths(const DiagnosticGraph & graph)
+auto create_tree(const DiagnosticGraph & graph)
 {
-  std::unordered_map<std::string, bool> paths;
+  std::map<std::string, std::unique_ptr<TreeNode>, std::greater<std::string>> tree;
+  for (const auto & node : graph.nodes) {
+    tree.emplace(node.status.name, std::make_unique<TreeNode>(true));
+  }
   for (const auto & node : graph.nodes) {
     std::string path = node.status.name;
-    paths[path] = false;
     while (path = parent_path(path), !path.empty()) {
-      if (paths.count(path)) break;
-      paths[path] = true;
+      if (tree.count(path)) break;
+      tree.emplace(path, std::make_unique<TreeNode>(false));
     }
   }
-  std::vector<std::string> result;
-  for (const auto & [path, flag] : paths) {
-    if (flag) result.push_back(path);
+  for (const auto & [path, node] : tree) {
+    const auto parent = parent_path(path);
+    node->parent = parent.empty() ? nullptr : tree[parent].get();
   }
-  return result;
+  return tree;
 }
 
 ConverterNode::ConverterNode() : Node("converter")
@@ -69,7 +68,9 @@ ConverterNode::ConverterNode() : Node("converter")
   const auto callback = std::bind(&ConverterNode::on_graph, this, _1);
   sub_graph_ = create_subscription<DiagnosticGraph>("/diagnostics_graph", qos_graph, callback);
   pub_array_ = create_publisher<DiagnosticArray>("/diagnostics_agg", qos_array);
-  complement_inner_nodes_ = declare_parameter<bool>("complement_inner_nodes");
+
+  initialize_tree_ = false;
+  complement_tree_ = declare_parameter<bool>("complement_tree");
 }
 
 void ConverterNode::on_graph(const DiagnosticGraph::ConstSharedPtr msg)
@@ -90,14 +91,27 @@ void ConverterNode::on_graph(const DiagnosticGraph::ConstSharedPtr msg)
     }
   }
 
-  if (complement_inner_nodes_) {
-    if (!inner_node_names_) {
-      inner_node_names_ = complement_paths(*msg);
+  if (complement_tree_ && !initialize_tree_) {
+    initialize_tree_ = true;
+    tree_ = create_tree(*msg);
+  }
+
+  if (complement_tree_) {
+    for (const auto & [path, node] : tree_) {
+      node->level = DiagnosticStatus::OK;
+    }
+    for (const auto & node : msg->nodes) {
+      tree_[node.status.name]->level = node.status.level;
+    }
+    for (const auto & [path, node] : tree_) {
+      if (!node->parent) continue;
+      node->parent->level = std::max(node->parent->level, node->level);
     }
-    for (const auto & name : inner_node_names_.value()) {
+    for (const auto & [path, node] : tree_) {
+      if (node->leaf) continue;
       message.status.emplace_back();
-      message.status.back().name = name;
-      message.status.back().level = DiagnosticStatus::STALE;
+      message.status.back().name = path;
+      message.status.back().level = node->level;
     }
   }
 
diff --git a/system/diagnostic_graph_aggregator/src/node/converter.hpp b/system/diagnostic_graph_aggregator/src/node/converter.hpp
index 6a70cbc2df4c6..1f98abed4d619 100644
--- a/system/diagnostic_graph_aggregator/src/node/converter.hpp
+++ b/system/diagnostic_graph_aggregator/src/node/converter.hpp
@@ -19,20 +19,32 @@
 
 #include <rclcpp/rclcpp.hpp>
 
+#include <functional>
+#include <map>  // Use map for sorting keys.
+#include <memory>
 #include <string>
 #include <vector>
 
 namespace diagnostic_graph_aggregator
 {
 
+struct TreeNode
+{
+  explicit TreeNode(bool leaf) : leaf(leaf) {}
+  bool leaf;
+  TreeNode * parent;
+  uint8_t level;
+};
+
 class ConverterNode : public rclcpp::Node
 {
 public:
   ConverterNode();
 
 private:
-  bool complement_inner_nodes_;
-  std::optional<std::vector<std::string>> inner_node_names_;
+  bool initialize_tree_;
+  bool complement_tree_;
+  std::map<std::string, std::unique_ptr<TreeNode>, std::greater<std::string>> tree_;
   rclcpp::Subscription<DiagnosticGraph>::SharedPtr sub_graph_;
   rclcpp::Publisher<DiagnosticArray>::SharedPtr pub_array_;
   void on_graph(const DiagnosticGraph::ConstSharedPtr msg);