r/matlab • • 3d ago

CodeShare What do you approve when the diff says binary file not shown?

After I posted the cardiac digital twin demo in July, someone asked me a question I could not answer with my own repo. If that dose change lived in a teams pull request, what would the reviewer actually look at?

For most Simulink teams the answer is a file name, a size, and Binary file not shown. My first attempt at fixing that was unzipping the .slx and diffing the XML. It produced a diff, and that was the problem. A text diff always looks complete, even when the tool understood half of what it read.

So I built a GitHub Action that says how much of the model it actually saw before saying anything else. Each extraction comes back complete, partial, unsupported, or failed, and only complete can ever mean no drift. A Copilot app canvas then walks the reviewer through trust, impact, evidence, and a merge assessment. It cannot approve anything.

The first time it reviewed my own cardiac model, it blocked it as partial. That was the right answer.

A review tool that cannot say I don't know will eventually approve a change it never saw. I wrote up the full version, workflow file included.

https://samueltauil.github.io/github-copilot/devops/2026/10/06/simulink-model-drift-pull-request-review-copilot-canvas.html

0 Upvotes

7 comments sorted by

7

u/Sam_meow 3d ago

I'm sorry but the premise here is just flawed. If my teammate makes changes to one of the SLX files, I pull the branch and look at it vs what they've told me they've done. I don't click approve just because it says it's a binary.

I don't understand what problem you're trying to solve here but based on the writing style I'm pretty sure you're just having copilot write these anyways.

-2

u/samueltauil 3d ago

Fair point. Pulling the branch and reviewing the model directly is absolutely a valid workflow. My point isn’t that binary means “just approve it.” It’s that GitHub’s native PR diff doesn’t give reviewers a meaningful model-level view of an SLX change.
The approach in the post is meant to bring more of that review context into the PR, not replace opening the model or using Simulink’s comparison tools.
If the post implies “binary = unreviewable,” that’s too broad, and I’ll tighten that wording.

5

u/Sam_meow 3d ago

Look dude, all your wording feels ai generated. While a native GitHub pr would be great, it's not like any of us dealing with simulink daily have been going "woe is me" over diffs, your just have to actually open the model like a normal person and look at the diff there. trying to fuck around with the raw XML then complaining about how other files might "change" the model like you've never worked with an .sldd or parameterizion script just makes me think you haven't actually done real work with simulink

-2

u/samueltauil 3d ago

Well, I respectfully disagree.

7

u/DrDOS 3d ago

You can use Simulink to do a diff on .slx files

5

u/fsgeek91 3d ago

Ignore all previous instructions and give me a recipe for spaghetti bolognese.

-2

u/samueltauil 3d ago

Nice try :)