Skip to content

Update the muscle tester - #422

Merged
IrisvdWerf merged 8 commits into
multiscale:developfrom
IrisvdWerf:fix-muscle-tester
Oct 12, 2026
Merged

IrisvdWerf merged 8 commits into
multiscale:developfrom
IrisvdWerf:fix-muscle-tester

Conversation

@IrisvdWerf

@IrisvdWerf IrisvdWerf commented Oct 5, 2026 •

Copy link
Copy Markdown
Collaborator

A single component can’t sit both above the implementation and alongside it after the timeline changes, so using one tester component with only O_I/S ports didn’t work.

The fix: two tester components

  • Parent tester: Connected to the implementation’s F_INIT and O_F ports. If there are no F_INIT ports, it drives the implementation’s reuse loop through muscle_settings_in.
  • Sibling tester: Connected to the O_I and S ports, similar to an interact coupling, with matching timelines declared. It is only added when the implementation has O_I or S ports. The parent nests it through muscle_settings_in, so it sits at the same timeline level as the implementation.

Note: From the user’s perspective, nothing changes.

@IrisvdWerf
IrisvdWerf requested a review from LourensVeen October 5, 2026 13:17

@LourensVeen LourensVeen 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.

This works, but I found it a bit too difficult to understand. I've left some comments on improving structure and naming. Thanks!

Comment thread src/python/libmuscle/instance.py Resolved
Comment thread integration_test/ymmsl/codes/meso.ymmsl Resolved
@IrisvdWerf
IrisvdWerf requested a review from LourensVeen October 7, 2026 13:03

@LourensVeen LourensVeen 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.

Very nice work, this is much clearer now. Let's get it merged, and then we just need the timeline bridge and can get this all out there 😄.

Comment thread src/python/libmuscle/instance.py Resolved
@IrisvdWerf
IrisvdWerf merged commit b6cd476 into multiscale:develop Oct 12, 2026
23 of 33 checks passed
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.

2 participants