[PR #855] [MERGED] refactor(native): split Apple dispatch metadata decode facets #2292

Closed
opened 2026-10-16 21:16:50 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/morluto/rea/pull/855
Author: @morluto
Created: 10/7/2026
Status: ✅ Merged
Merged: 10/7/2026
Merged by: @morluto

Base: main ← Head: cursor/split-apple-dispatch-metadata-6404


📝 Commits (1)

  • d7067f1 refactor(native): split Apple dispatch metadata decode facets

📊 Changes

4 files changed (+743 additions, -561 deletions)

View changed files

📝 src/native/AppleDispatchMetadata.ts (+58 -561)
➕ src/native/AppleMachoSelection.ts (+172 -0)
➕ src/native/AppleObjcDispatchFacets.ts (+292 -0)
➕ src/native/AppleSwiftDispatchFacets.ts (+221 -0)

📄 Description

Summary

  • Extract Mach-O/FAT selection (AppleMachoSelection), Objective-C class/method/ivar facets (AppleObjcDispatchFacets), and Swift conformance/witness facets (AppleSwiftDispatchFacets).
  • Keep decodeAppleDispatchMetadata / inspectAppleDispatchMetadata as thin orchestrators on the same public path.
  • No behavior change; AppleSwiftVtables left as-is.

Verification

  • npm run test:focused -- src/native/AppleDispatchMetadata.test.ts (18 passed)
  • npm run check:fast
  • Real Apple/Ghidra verification was not run
Open in Web Open in Cursor 

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/morluto/rea/pull/855 **Author:** [@morluto](https://github.com/morluto) **Created:** 10/7/2026 **Status:** ✅ Merged **Merged:** 10/7/2026 **Merged by:** [@morluto](https://github.com/morluto) **Base:** `main` ← **Head:** `cursor/split-apple-dispatch-metadata-6404` --- ### 📝 Commits (1) - [`d7067f1`](https://github.com/morluto/rea/commit/d7067f14665713127ab4712aeb96dde3ea08c32b) refactor(native): split Apple dispatch metadata decode facets ### 📊 Changes **4 files changed** (+743 additions, -561 deletions) <details> <summary>View changed files</summary> 📝 `src/native/AppleDispatchMetadata.ts` (+58 -561) ➕ `src/native/AppleMachoSelection.ts` (+172 -0) ➕ `src/native/AppleObjcDispatchFacets.ts` (+292 -0) ➕ `src/native/AppleSwiftDispatchFacets.ts` (+221 -0) </details> ### 📄 Description <!-- CURSOR_AGENT_PR_BODY_BEGIN --> ## Summary - Extract Mach-O/FAT selection (`AppleMachoSelection`), Objective-C class/method/ivar facets (`AppleObjcDispatchFacets`), and Swift conformance/witness facets (`AppleSwiftDispatchFacets`). - Keep `decodeAppleDispatchMetadata` / `inspectAppleDispatchMetadata` as thin orchestrators on the same public path. - No behavior change; `AppleSwiftVtables` left as-is. ## Verification - `npm run test:focused -- src/native/AppleDispatchMetadata.test.ts` (18 passed) - `npm run check:fast` - Real Apple/Ghidra verification was **not** run <!-- CURSOR_AGENT_PR_BODY_END --> <div><a href="https://cursor.com/agents/bc-44a88d98-6d9b-4da2-a464-22f0c2a36404?cursor_ref=pr_footer&cursor_cta=open_in_web"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-web-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-web-light.png"><img alt="Open in Web" width="114" height="28" src="https://cursor.com/assets/images/open-in-web-dark.png"></picture></a>&nbsp;<a href="https://cursor.com/background-agent?bcId=bc-44a88d98-6d9b-4da2-a464-22f0c2a36404&cursor_ref=pr_footer&cursor_cta=open_in_cursor"><picture><source media="(prefers-color-scheme: dark)" srcset="https://cursor.com/assets/images/open-in-cursor-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://cursor.com/assets/images/open-in-cursor-light.png"><img alt="Open in Cursor" width="131" height="28" src="https://cursor.com/assets/images/open-in-cursor-dark.png"></picture></a>&nbsp;</div> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-16 21:16:50 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#2292
No description provided.