Skip to content

Port DOOM-ED to latest Orion and expand triangulation edge-case coverage - #45

Merged
corepunch merged 3 commits into
mainfrom
copilot/port-to-latest-orion
May 10, 2026
Merged

Port DOOM-ED to latest Orion and expand triangulation edge-case coverage#45
corepunch merged 3 commits into
mainfrom
copilot/port-to-latest-orion

Conversation

Copilot AI commented May 10, 2026

Copy link
Copy Markdown
Contributor

This PR updates DOOM-ED to track the latest Orion UI framework and strengthens geometry verification where coverage was weakest. The scope is compatibility with current Orion plus materially broader triangulation correctness checks.

  • Orion upgrade

    • Bumps the ui submodule to latest upstream main (current Orion head).
    • Aligns the repo with recent Orion API/runtime behavior without app-level logic changes.
  • Build bootstrap hardening

    • Updates root Makefile to auto-initialize the ui submodule when missing, avoiding first-run failures from fresh clones/checkouts.
    • Keeps existing build flow intact once submodules are present.
  • Triangulation coverage expansion

    • Extends tests/triangulate_test.c with focused edge/correctness cases:
      • all-collinear input (expects no triangles),
      • polygons with collinear edge points,
      • repeated points robustness,
      • larger convex polygon scaling checks,
      • output-vertex membership validation (no synthetic vertices),
      • additional area-preservation assertions on new cases.
$(LIBORION):
	@if [ ! -f $(UI_DIR)/Makefile ]; then \
		echo "Initializing $(UI_DIR) submodule..."; \
		git submodule update --init --recursive $(UI_DIR); \
	fi
	@echo "Building liborion via ui/Makefile..."
	@$(MAKE) -C $(UI_DIR) library

Copilot AI and others added 3 commits May 10, 2026 12:45

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.

Pull request overview

This pull request strengthens DOOM-ED’s geometry verification by expanding the triangulation test suite with additional edge cases, and hardens the build bootstrap by auto-initializing the Orion UI submodule when missing.

Changes:

  • Added polygon area and output-vertex provenance helpers to improve triangulation correctness assertions.
  • Expanded triangulate_test coverage to include collinear-only input, collinear edge points, repeated points, and larger convex polygons.
  • Updated the root Makefile to auto-run git submodule update --init --recursive ui when ui/Makefile is missing.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
tests/triangulate_test.c Adds new helpers and multiple triangulation edge-case tests (degenerate, collinear, repeated points, scaling).
Makefile Auto-initializes the ui submodule when needed before building liborion.

@corepunch
corepunch marked this pull request as ready for review May 10, 2026 19:52
@corepunch
corepunch merged commit a416069 into main May 10, 2026
4 of 6 checks passed
@corepunch
corepunch deleted the copilot/port-to-latest-orion branch May 10, 2026 19:52
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.

3 participants