From 713292b5a8b42d31ec683b337db50b9e31ca930f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Th=C3=A5st?= Date: Mon, 4 May 2026 17:35:12 +0200 Subject: [PATCH 1/2] ci: notify thast-docs on doc-relevant pushes Dispatches a docs-update repository event to FiLORUX/thast-docs whenever README.md or LICENSE changes on main, so the docs hub rebuilds without manual intervention. Requires DOCS_DISPATCH_TOKEN repo secret. --- .github/workflows/notify-docs.yml | 34 +++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 .github/workflows/notify-docs.yml diff --git a/.github/workflows/notify-docs.yml b/.github/workflows/notify-docs.yml new file mode 100644 index 0000000..24376ff --- /dev/null +++ b/.github/workflows/notify-docs.yml @@ -0,0 +1,34 @@ +name: Notify thast-docs + +# Trigger a rebuild of the documentation hub whenever any file that +# feeds the sptime sync manifest changes on main. Keep this filter +# in sync with the manifest in FiLORUX/thast-docs scripts/sync-docs.mjs. + +on: + push: + branches: [main] + paths: + - 'README.md' + - 'LICENSE' + +jobs: + notify: + runs-on: ubuntu-latest + steps: + - name: Dispatch docs-update event + env: + GH_TOKEN: ${{ secrets.DOCS_DISPATCH_TOKEN }} + run: | + curl -fsSL -X POST \ + -H "Authorization: Bearer $GH_TOKEN" \ + -H "Accept: application/vnd.github+json" \ + -H "X-GitHub-Api-Version: 2022-11-28" \ + "https://api.github.com/repos/FiLORUX/thast-docs/dispatches" \ + -d '{ + "event_type": "docs-update", + "client_payload": { + "source_repo": "${{ github.repository }}", + "source_sha": "${{ github.sha }}", + "source_ref": "${{ github.ref }}" + } + }' From 15b2dc395ddb7af2e7c6944a4a55762c728810a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Th=C3=A5st?= Date: Mon, 4 May 2026 17:35:13 +0200 Subject: [PATCH 2/2] docs: rewrite architecture diagram as mermaid flowchart MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Same source renders natively on github.com (mermaid since 2022) and as inline SVG with the Thåst brand palette on docs.xn--thst-roa.se via rehype-mermaid. --- README.md | 46 +++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/README.md b/README.md index 0703c6c..0e7a8b6 100644 --- a/README.md +++ b/README.md @@ -39,29 +39,29 @@ SPTime is a modern, enterprise-grade time synchronisation platform that provides ## Architecture -``` -┌─────────────────────────────────────────────────────────────────┐ -│ SPTime Server │ -├─────────────────────────────────────────────────────────────────┤ -│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────────────┐ │ -│ │ NTP │ │ NTS │ │ PTP │ │ GPSDO │ │ -│ │ Server │ │ Server │ │ GM │ │ (SerialPPS/ │ │ -│ │ :123 │ │ :4460 │ │ :319/320│ │ Network/Dummy) │ │ -│ └────┬─────┘ └────┬─────┘ └────┬─────┘ └────────┬─────────┘ │ -│ │ │ │ │ │ -│ └─────────────┴──────┬──────┴──────────────────┘ │ -│ │ │ -│ ┌───────┴───────┐ │ -│ │ Clock Manager │ │ -│ │ (Discipline) │ │ -│ └───────┬───────┘ │ -│ │ │ -│ ┌──────────────────┬──────┴──────┬────────────────────────────┐ │ -│ │ │ │ │ │ -│ │ Web API │ Metrics │ Config │ │ -│ │ :8080 │ Prometheus │ YAML │ │ -│ └──────────────────┴─────────────┴────────────────────────────┘ │ -└─────────────────────────────────────────────────────────────────┘ +```mermaid +flowchart TB + subgraph SPTime["SPTime Server"] + NTP["NTP Server
:123"] + NTS["NTS Server
:4460"] + PTP["PTP GM
:319/320"] + GPSDO["GPSDO
(SerialPPS / Network / Dummy)"] + + Clock["Clock Manager
(Discipline)"] + + Web["Web API
:8080"] + Metrics["Metrics
(Prometheus)"] + Config["Config
(YAML)"] + + NTP --> Clock + NTS --> Clock + PTP --> Clock + GPSDO --> Clock + + Clock --> Web + Clock --> Metrics + Clock --> Config + end ``` ## Quick Start