Skip to content

refactor: establish Geometry folder feature - #324

Open
jderochervlk wants to merge 1 commit into
codex/option5-animation-folderfrom
codex/option5-geometry-folder
Open

refactor: establish Geometry folder feature#324
jderochervlk wants to merge 1 commit into
codex/option5-animation-folderfrom
codex/option5-geometry-folder

Conversation

@jderochervlk

@jderochervlk jderochervlk commented Aug 3, 2026

Copy link
Copy Markdown
Collaborator

Tracking issue: #342

Stack context

Part 14 of the Option 5 folder-feature stack.

Review this PR as the incremental diff against #323.

Summary

  • add the target src/geometry folder on the unqualified internal Geometry feature
  • move the DOM matrix, point, and rectangle interface families out of the legacy broad DOM folder
  • add the supported WebAPI.Geometry feature with its WebAPI.DOM dependency
  • preserve all seven flat public module paths and binding signatures

Temporary state

  • the modules still use foundational DOM.* geometry records introduced by the earlier compatibility cleanup; the final cleanup layer will make the owning Geometry modules authoritative after all consumers move
  • this PR introduces no exclusions or module slices
  • DOMNodes, SVG, Observers, and Canvas dependencies on Geometry are added in their owning layers

Review focus

  • complete Geometry folder membership
  • the WebAPI.Geometry -> WebAPI.DOM + Geometry implication
  • unchanged public interfaces

Verification

  • node_modules/.bin/rescript clean
  • node_modules/.bin/rescript build --prod --features DOM,Geometry
  • npm run build
  • npm test
  • npm run format:check
  • git diff --check

Copy link
Copy Markdown
Collaborator Author

@codex

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 2844c280fd

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread rescript.json
"WebAPI.Event": ["WebAPI.DOM", "Event"],
"WebAPI.DOMPlatform": ["WebAPI.Event", "DOMPlatform"],
"WebAPI.Animation": ["WebAPI.Event", "Animation"],
"WebAPI.Geometry": ["WebAPI.DOM", "Geometry"],

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Keep the Geometry feature off the unbuildable DOM slice

When a consumer selects --features WebAPI.Geometry, the CLI transitively compiles implied features (as documented by rescript build --help), so this activates the broad source slice tagged WebAPI.DOM, not just the dependency-clean core DOM feature. That slice cannot currently compile selectively: DOMTree.res requires DOMStringMap from DOMPlatform, while TextTrackList.res requires EventTarget from Event, producing missing-module errors before any Geometry API can be used. The reported --features DOM,Geometry verification bypasses this new mapping; until the broad DOM slice is dependency-clean, this facade needs to imply DOM and Geometry directly or include all of the DOM slice's dependencies.

Useful? React with 👍 / 👎.

@jderochervlk
jderochervlk force-pushed the codex/option5-geometry-folder branch from 2844c28 to e945bdc Compare August 4, 2026 17:31
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.

1 participant