Skip to content

Fix deletion of unassigned standalone edge treatments #6815

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 17 commits into from
May 10, 2025

Conversation

max-mrgrsk
Copy link
Contributor

Closes #6794

Explanation:

This PR addresses a bug where standalone edge treatments fillet(...) couldn't be deleted from the feature tree.

Problem:

Previously, our code could only handle two cases of edge treatments:

Edge treatments in pipes: const body = extrude(...) |> fillet(...)
Edge treatments assigned to variables: fillet0001 = fillet(...)

Solution:

The fix identifies all three forms of edge treatment expressions by:

  • Properly retrieving both VariableDeclarator and ExpressionStatement node types
  • Using the appropriate deletion strategy based on the node type
  • Handling standalone statements with deleteTopLevelStatement by @jtran
  • Handling piped cases with deleteNodeInExtrudePipe by @Irev-Dev

This ensures users can delete any edge treatment regardless of how it was created in the code.

delete.all.3.cases.mp4

@max-mrgrsk max-mrgrsk self-assigned this May 9, 2025
Copy link

qa-wolf bot commented May 9, 2025

QA Wolf here! As you write new code it's important that your test coverage is keeping up.
Click here to request test coverage for this PR!

Copy link

vercel bot commented May 9, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
modeling-app ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 10, 2025 4:53pm

Copy link
Contributor

@pierremtb pierremtb left a comment

Choose a reason for hiding this comment

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

Works like a charm on the old onboarding bracket and other tests I did! Awesome job.

@@ -2507,12 +2543,13 @@ fillet04 = fillet(extrude001, radius = 5, tags = [getOppositeEdge(seg02)])
await page.keyboard.press('Delete')
await page.waitForTimeout(500)
Copy link
Contributor

Choose a reason for hiding this comment

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

I'd be prob better to use scene.settled(cmdBar) here than a timeout but not a bit deal

Copy link
Contributor Author

Choose a reason for hiding this comment

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

thank you, done: a2343fc

@pierremtb pierremtb enabled auto-merge (squash) May 9, 2025 20:51
@max-mrgrsk max-mrgrsk enabled auto-merge (squash) May 10, 2025 16:37
@max-mrgrsk max-mrgrsk merged commit 039cb38 into main May 10, 2025
47 of 48 checks passed
@max-mrgrsk max-mrgrsk deleted the max/undeletable-unassigned-fillet branch May 10, 2025 16:53
@max-mrgrsk max-mrgrsk restored the max/undeletable-unassigned-fillet branch May 10, 2025 17:56
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.

[BUG]: Unassigned fillet expressions cannot be deleted from the feature tree
2 participants