docs(demo): call it the Test Automation Diagram everywhere

The scripts said "flow chart" while the artifact the audience is following
has a name. Telling a room to follow along on the flow chart and then handing
them something titled Test Automation Diagram makes them hunt for the match.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
jenkins 2026-08-06 21:53:52 -03:00
parent 151cd574a9
commit 5fd5e6d729
2 changed files with 15 additions and 12 deletions

View File

@ -6,7 +6,7 @@
# hermes_triage_demo.sh status # current incident/alert state, no changes
# hermes_triage_demo.sh preflight # confirm the lab is ready to demo
# hermes_triage_demo.sh reset # restore the demo to its pre-run state
# hermes_triage_demo.sh monitor [code] # stream the flow chart stages live
# hermes_triage_demo.sh monitor [code] # follow the Test Automation Diagram live
#
# FIRST RUN: copy hermes_triage_demo.env.example to hermes_triage_demo.env in
# this directory and fill it in. That file is git-ignored precisely so it can
@ -79,7 +79,8 @@ for line in sys.stdin:
}
# `monitor` follows the fixture job; `monitor code` follows the code-proposal
# job, which takes the source-proposal branch of the chart instead.
# job, which takes the source-proposal branch of the Test Automation Diagram
# instead. Both narrate the same diagram, stage for stage.
cmd_monitor() {
local which="${1:-fixture}"
[ "$which" = "code" ] && export MONITOR_JOB="$CODE_JOB"

View File

@ -2,9 +2,10 @@
"""Narrate the triage flow live, showing every command it runs.
Run in a second terminal beside the demo. When a stage of
`mermaid/TestAutomation.mmd` is reached this prints, in order:
the Test Automation Diagram (`mermaid/TestAutomation.mmd`) is reached this
prints, in order:
the stage banner, naming the chart subgraph
the stage banner, naming the diagram subgraph
the service UI to look at, if one changes at that stage
each command, echoed before it runs, then its output
@ -14,9 +15,9 @@ reading the raw answer is the difference between a demonstration and an
assertion.
Two honest limits. This reports at subgraph granularity, not per node: the
chart draws the collector, response check, marker check and authorizer
diagram draws the collector, response check, marker check and authorizer
separately, and a refusal here names the gate rather than walking all twelve.
And it follows one incident on one job, whereas the chart describes the whole
And it follows one incident on one job, whereas the diagram describes the whole
system.
Read-only. Every command below is a read; nothing here changes the cluster.
@ -48,7 +49,7 @@ BOLD, DIM, GREEN, CYAN, YELLOW, RED, RESET = (
"\033[1m", "\033[2m", "\033[32m", "\033[36m", "\033[33m", "\033[31m", "\033[0m"
)
# stage key -> (chart subgraph, what it means, chart path, UI worth showing)
# stage key -> (diagram subgraph, what it means, diagram path, UI worth showing)
STAGES: dict[str, tuple[str, str, str, str]] = {
"detect": (
"Detect and gather",
@ -135,7 +136,7 @@ def banner(key: str) -> None:
subgraph, meaning, path, ui = STAGES[key]
print(f"\n{GREEN}{'' * 70}{RESET}")
print(f"{GREEN}{BOLD} {stamp()} {subgraph}{RESET}{GREEN}{meaning}{RESET}")
print(f"{DIM} chart: {path}{RESET}")
print(f"{DIM} diagram: {path}{RESET}")
if ui:
print(f"{YELLOW} look at: {ui}{RESET}")
print(f"{GREEN}{'' * 70}{RESET}")
@ -331,7 +332,7 @@ def evidence_for(key: str, incident: str = "") -> None:
f" fault - and reads 'healthy' above because Ariadne has just patched"
f" it. That single field changing is the repair.{RESET}\n")
if key == "outputs":
print(f" {DIM}on the chart this is the 'records and artifacts' edge out of the"
print(f" {DIM}on the diagram this is the 'records and artifacts' edge out of the"
f" whole Ariadne response box, not out of one branch. Every path ends"
f" here: an executed action, an escalation, or a pull request all record"
f" the same audit events and metrics.{RESET}")
@ -349,7 +350,7 @@ def evidence_for(key: str, incident: str = "") -> None:
class Monitor:
"""Track which flow-chart stage the current incident has reached."""
"""Track which Test Automation Diagram stage the current incident has reached."""
def __init__(self) -> None:
self.done: set[str] = set()
@ -373,7 +374,7 @@ class Monitor:
print(f"\n{BOLD}{YELLOW}══ incident {incident} ══{RESET}")
def checklist(self) -> None:
print(f"\n{BOLD} flow chart progress{RESET}")
print(f"\n{BOLD} Test Automation Diagram progress{RESET}")
for key in ORDER:
tick = f"{GREEN}{RESET}" if key in self.done else f"{DIM}·{RESET}"
print(f" {tick} {key:<9} {STAGES[key][0]:<22} {DIM}{STAGES[key][2]}{RESET}")
@ -381,7 +382,8 @@ class Monitor:
def main() -> None:
print(f"{BOLD}Hermes triage monitor — following mermaid/TestAutomation.mmd{RESET}")
print(f"{BOLD}Hermes triage monitor — following the Test Automation Diagram"
f" (mermaid/TestAutomation.mmd){RESET}")
print(f"{DIM}Every command is echoed before it runs. Read-only. Ctrl-C to stop.{RESET}")
print(f"{YELLOW}Jenkins: {JENKINS}/job/{JOB}/{RESET}")
print(f"{YELLOW}Gitea: {GITEA}/bstein{RESET}")