Skip to content

fix(docs): restore Message Passing / mw::com architecture docs - #944

Merged
limdor merged 2 commits into
eclipse-score:mainfrom
castler:js_fix_architecture_in_docu
Aug 18, 2026
Merged

fix(docs): restore Message Passing / mw::com architecture docs#944
limdor merged 2 commits into
eclipse-score:mainfrom
castler:js_fix_architecture_in_docu

Conversation

@castler

@castler castler commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

Problem

Running bazel run //docs/sphinx:sphinx_doc no longer includes the Message Passing (and mw::com) architecture documentation — the "Software Architectural Level" pages are missing their design write-up (client-server.md) and PlantUML diagrams (static_design, private_api, public_api), even though software_arch.rst's toctree still references them. This was introduced by the score_tooling bump in e82cb57.

Root cause

Two bugs in score_tooling 2.0.1:

  1. sphinx_conf_helpers.DEFAULT_EXCLUDE_PATTERNS used the glob **/*_design, intended to exclude generated units/unit_N_design/ include-fragments, but it also matches architectural_design/ / software_architectural_design/ directories themselves — i.e. the real architecture docs — silently excluding them from the Sphinx build with no warning (excluded files are invisible to the toctree check).
  2. Once no longer excluded, a second, previously masked bug surfaces: the generated PlantUML .rst wrapper and its .puml source get staged in different directories by dependable_element.bzl's common-directory flattening logic, breaking the wrapper's same-directory .. uml:: file.puml reference (PlantUML file ... cannot be read), which fails the build under -W (warnings-as-errors).

Fix

Both bugs are fixed upstream in eclipse-score/tooling#428, now merged to tooling's main branch (commit 8eb4166).

This PR pins score_tooling to that merged commit via a temporary git_override in MODULE.bazel, since it hasn't shipped in a released score_tooling version yet. A comment marks it for removal (reverting to the plain bazel_dep(name = "score_tooling", version = "...") pin) once a new release is cut.

Verification

  • bazel build //docs/sphinx:sphinx_doc succeeds with -W.
  • Both dependable elements' "Software Architectural Level" pages now link to and correctly render their design write-up and PlantUML diagrams:
    • Message Passing: client-server, static_design, private_api, public_api
    • mw::com / LoLa: static_view

Follow-up

Once eclipse-score/tooling cuts a release containing PR #428, bump score_tooling's bazel_dep version here and drop the git_override.

limdor
limdor previously approved these changes Aug 18, 2026
@limdor
limdor added this pull request to the merge queue Aug 18, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to a conflict with the base branch Aug 18, 2026
@castler
castler force-pushed the js_fix_architecture_in_docu branch from 8563880 to 1c3e740 Compare August 18, 2026 07:41
@limdor
limdor enabled auto-merge August 18, 2026 07:43
@limdor
limdor added this pull request to the merge queue Aug 18, 2026
Merged via the queue into eclipse-score:main with commit e39b8db Aug 18, 2026
13 checks passed
@limdor
limdor deleted the js_fix_architecture_in_docu branch August 18, 2026 08:07
@github-project-automation github-project-automation Bot moved this from Backlog to Done in COM - Communication FT Aug 18, 2026
score_tooling 2.0.1 (bumped in e82cb57) silently drops this repo's
architectural_design docs (static_design/private_api/public_api
diagrams, client-server.md) from the Sphinx build even though their
toctree entries in software_arch.rst are still generated: its
DEFAULT_EXCLUDE_PATTERNS glob "**/*_design" -- meant to exclude
generated units/unit_N_design/ include-fragments -- also matches
architectural_design/ and software_architectural_design/ themselves,
so those pages never make it into the build. A second, previously
masked bug then breaks the wrapper/diagram `.. uml::` sibling
reference once that exclusion is lifted.

Both are fixed upstream in
eclipse-score/tooling#428. Pin score_tooling
to that fix commit via git_override until it ships in a released
version; remove this override and restore the plain
`bazel_dep(name = "score_tooling", version = "...")` pin once bumped.

Verified: bazel build //docs/sphinx:sphinx_doc succeeds with -W, and
both dependable elements' Software Architectural Level pages now link
to their design write-up and PlantUML diagrams.
eclipse-score/tooling#428 has been merged to main. Update the
temporary git_override commit pin from the fix branch head (17851a2)
to the resulting main commit (8eb4166) so we track the merged,
reviewed history instead of a branch that may be deleted.

No functional change: same tree contents, build verified unaffected
(bazel build //docs/sphinx:sphinx_doc still succeeds with -W and both
Message Passing / mw::com architecture pages still render).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants