Skip to content

fix: escape boundary labels in DFD output - #360

Open
rajanpanth wants to merge 1 commit into
OWASP:masterfrom
rajanpanth:fix/boundary-greater-than-label
Open

fix: escape boundary labels in DFD output#360
rajanpanth wants to merge 1 commit into
OWASP:masterfrom
rajanpanth:fix/boundary-greater-than-label

Conversation

@rajanpanth

Copy link
Copy Markdown

Summary

  • Escapes boundary names before inserting them into Graphviz HTML-like labels
  • Adds a regression test for a boundary name containing >

Closes #278.

Testing

  • Direct reproduction check:
    • generated a DFD with Boundary("Client > API")
    • verified output contains Client > API and not the unescaped label
  • Not run: full pytest suite is unavailable because pytest is not installed in the current Python environment.

Notes

AI assistance was used to help prepare this change.

Signed-off-by: rajanpanth <rajan.pantha@samriddhicollege.edu.np>
@rajanpanth
rajanpanth requested a review from izar as a code owner August 15, 2026 14:37
@NoodlesNZ

Copy link
Copy Markdown
Contributor

LGTM, although you need to fix your AI environment if you're going to suggest changes like this. It's trivial to get pytest working, you can run it via poetry easily. I've validated that it passes and when the Github CI kicks off, it will also validate this.

@rajanpanth

Copy link
Copy Markdown
Author

Thanks for going through these. Grouping the follow-up into one comment rather than five.

These five are all green and mergeable, and have an LGTM from you:

They still show REVIEW_REQUIRED, because the LGTMs were posted as comments rather than as approving reviews, so the required-review gate hasn't cleared. If you're able to convert one into an approving review they should be unblocked; if merging sits with someone else, no rush — just flagging that they're ready rather than waiting on me for anything.

On your point in #360 about the environment: fair, and I've fixed it. I have the suite running locally now — pytest tests/ gives 243 passed, 4 failed, and the 4 (test_dfd, test_dfd_colormap, test_dfd_duplicates_ignore, test_multilevel_dfd) fail identically on master; they're Windows path-separator diffs in the DFD output, not related to any of these changes.

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.

Support ">" in Boundaries

2 participants