Skip to content

review: say module-relative where the lane IS module-relative (#3514 follow-up) - #3539

Merged
meshweaver-cloud[bot] merged 1 commit into
mainfrom
fix/3514-followup-message-drift
Sep 7, 2026
Merged

meshweaver-cloud[bot] merged 1 commit into
mainfrom
fix/3514-followup-message-drift

Conversation

@rbuergi

@rbuergi rbuergi commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Follow-up to #3535 (which closed #3514). Three Copilot findings on that PR, all correct, all
message/comment drift with no behaviour change — they arrived a minute after auto-merge had
already enqueued #3535, and a push would have ejected it from the queue for three strings.

  • test-module-asset-landing.py's LANES comment described a (workflow, job id, step id) tuple
    for a (workflow, step id) one. Extraction is by step id alone, across every job in the file
    — the property that makes the harness survive a job rename — so the comment was understating the
    guarantee as well as being wrong.
  • Both lanes' summary line said landed under /ext/<module>/wwwroot while the copy is deliberately
    cp -R moduleassets/. — module-relative, so a second asset root would ride too. Stating
    today's only root as the contract contradicts the reason the copy is written that way, and would
    read as a bug the day the packer emits another root. Now landed module-relative under /ext/<module>/, in both lanes, in the harness's own ok line, and in the doc page that quotes
    it.

Verification (unchanged bar, re-run on this branch off main):
.github/scripts/test-module-asset-landing.py — 2 lanes × 4 cases, both falsification arms still
red
(pre-fix body ⇒ 0/6 assets land; cp removed ⇒ the lane's own check fails closed) ·
actionlint over all workflows · check-workflow-shell.py · check-workflow-timeouts.py
(71 jobs, 0 violations) · MeshWeaver.Documentation.Test 304/304, Release -warnaserror.

…follow-up)

Three Copilot findings on #3535, all message/comment drift with no behaviour, landing
separately because they arrived after auto-merge had already enqueued that PR and a push
would have ejected it.

* `test-module-asset-landing.py`'s `LANES` comment described a `(workflow, job id, step id)`
  tuple for a `(workflow, step id)` one. Extraction is by step id alone, across every job in
  the file — which is the property that makes it survive a job rename, so the comment was
  understating the guarantee as well as being wrong.
* Both lanes' summary line said `landed under /ext/<module>/wwwroot` while the copy is
  deliberately `moduleassets/.` — module-relative, so a second asset root would ride too.
  Stating today's only root as the contract contradicts the reason the copy is written that
  way, and would read as a bug the day the packer emits another root. Now `landed
  module-relative under /ext/<module>/`, and Doc/Architecture/ModuleStaticAssets quotes the
  corrected line.

Verified: the harness still passes both lanes' four cases with both falsification arms red;
actionlint, check-workflow-shell.py, check-workflow-timeouts.py clean;
MeshWeaver.Documentation.Test 304/304 in Release -warnaserror.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Copilot AI lite review requested due to automatic review settings September 7, 2026 06:16
@meshweaver-cloud
meshweaver-cloud Bot enabled auto-merge September 7, 2026 06:16

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The updated doc page currently splits a single inline code span across a newline, which is invalid/unstable Markdown rendering and should be formatted as a single-line code span (or a fenced block).

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

This PR is a follow-up documentation/log-message clarification to #3535/#3514, aligning comments and emitted summary text with the lane’s intended contract (“module-relative” landing) without changing behavior.

Changes:

  • Update the reusable workflow summary lines to say assets land module-relative under /ext/<module>/ (not specifically /wwwroot).
  • Fix/clarify the harness comment describing how the lane step is extracted (by step id across jobs).
  • Update the ModuleStaticAssets doc page to quote the updated summary line.
File summaries
File Description
src/MeshWeaver.Documentation/Data/Architecture/ModuleStaticAssets.md Updates the quoted lane output text to match the updated contract wording.
.github/workflows/node-repo-publish-bake.yml Adjusts the emitted “external modules …” summary line to say module-relative under /ext/<module>/.
.github/workflows/node-repo-gate.yml Same summary line wording adjustment as publish-bake.
.github/scripts/test-module-asset-landing.py Clarifies lane-extraction comment and updates the harness “ok” line to say module-relative under /ext/<module>/.
Review details
  • Files reviewed: 4/4 changed files
  • Comments generated: 1
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines 144 to +146
The lane's own check is per file and prints a denominator:
`external modules: 30 composed, 6 of them carrying static web assets, 294 asset file(s) landed`.
`external modules: 30 composed, 6 of them carrying static web assets, 294 asset file(s) landed
module-relative under /ext/<module>/`.
@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Test Results (shard 1)

492 tests  ±0   492 ✅ ±0   33s ⏱️ -10s
  1 suites ±0     0 💤 ±0 
  1 files   ±0     0 ❌ ±0 

Results for commit 144e3d2. ± Comparison against base commit d2a564c.

@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Test Results (shard 0)

251 tests  ±0   251 ✅ ±0   2m 25s ⏱️ +8s
  1 suites ±0     0 💤 ±0 
  1 files   ±0     0 ❌ ±0 

Results for commit 144e3d2. ± Comparison against base commit d2a564c.

@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Test Results (shard 3)

1 034 tests  ±0   1 034 ✅ ±0   1m 22s ⏱️ +6s
    2 suites ±0       0 💤 ±0 
    2 files   ±0       0 ❌ ±0 

Results for commit 144e3d2. ± Comparison against base commit d2a564c.

@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Test Results (shard 4)

1 600 tests  ±0   1 406 ✅ ±0   2m 12s ⏱️ +19s
    4 suites ±0     194 💤 ±0 
    4 files   ±0       0 ❌ ±0 

Results for commit 144e3d2. ± Comparison against base commit d2a564c.

@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Test Results (shard 5)

    5 files  ±0      5 suites  ±0   2m 24s ⏱️ +7s
1 473 tests ±0  1 473 ✅ ±0  0 💤 ±0  0 ❌ ±0 
1 474 runs  ±0  1 474 ✅ ±0  0 💤 ±0  0 ❌ ±0 

Results for commit 144e3d2. ± Comparison against base commit d2a564c.

@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Test Results (shard 2)

1 113 tests  ±0   1 113 ✅ ±0   3m 24s ⏱️ -2s
    3 suites ±0       0 💤 ±0 
    3 files   ±0       0 ❌ ±0 

Results for commit 144e3d2. ± Comparison against base commit d2a564c.

@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

Test Results

   16 files  ±0     16 suites  ±0   12m 23s ⏱️ +29s
5 963 tests ±0  5 769 ✅ ±0  194 💤 ±0  0 ❌ ±0 
5 964 runs  ±0  5 770 ✅ ±0  194 💤 ±0  0 ❌ ±0 

Results for commit 144e3d2. ± Comparison against base commit d2a564c.

@meshweaver-cloud
meshweaver-cloud Bot added this pull request to the merge queue Sep 7, 2026
Merged via the queue into main with commit a381c03 Sep 7, 2026
30 checks passed
@rbuergi
rbuergi deleted the fix/3514-followup-message-drift branch September 13, 2026 10:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Reusable lanes land a module bundle's DLLs but not its meshweaver/moduleassets/wwwroot — a browser-driven mesh 404s every _content/<Module>/ asset

2 participants