[PR #1313] [CLOSED] fix(symbols): exclude Objective-C bookkeeping from declaration inventories #2793

Closed
opened 2026-10-17 21:10:18 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/morluto/rea/pull/1313
Author: @rudycelekli
Created: 10/9/2026
Status: ❌ Closed

Base: main ← Head: fix/objc-declaration-symbols


📝 Commits (1)

  • 5b875c1 fix(symbols): exclude Objective-C bookkeeping from declaration inventories

📊 Changes

3 files changed (+48 additions, -2 deletions)

View changed files

📝 src/domain/symbolAnalysis.test.ts (+20 -0)
📝 src/domain/symbolAnalysis.ts (+4 -2)
📝 tests/boundary/mcp/enhancedTools.04-uses-complete-inventories-inline.test.ts (+24 -0)

📄 Description

Objective-C class discovery matches the broad OBJC_CLASS substring, so compiler-emitted CLASS_RO, CLASSLIST_REFERENCES, and CLASS_NAME labels inflate class totals. Protocol discovery likewise mistakes PROTOCOL_REFERENCE slots for protocol definitions. Match the existing declaration label markers precisely while retaining the alternate legacy class convention and Swift protocol behavior. An owned Apple clang object verifies the producer label forms; domain and public MCP tests retain only declarations.

Validation: the exact baseline failed 3 regression tests with 30 passing controls. Fixed affected suites pass all 35 tests. npm run check passes all 6 tasks and git diff --check passes, with pinned Node 24.18.0/npm 11.16.0.

The producer fixture was compiled and inspected locally; tests use injected inventories and in-memory MCP transports. No real provider or full repository certification is claimed. Prepared with AI assistance.

Hosted validation: Hosted Static checks fail at jscpd on exact merge base 8b4c359135: unchanged 8041 duplicated lines and 730 clones already fail the 2.5% threshold before this PR. The original campaign base passes. Hosted other completed lanes pass; this inherited failure remains open.


🔄 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/1313 **Author:** [@rudycelekli](https://github.com/rudycelekli) **Created:** 10/9/2026 **Status:** ❌ Closed **Base:** `main` ← **Head:** `fix/objc-declaration-symbols` --- ### 📝 Commits (1) - [`5b875c1`](https://github.com/morluto/rea/commit/5b875c1375a3d329309bbd484ccf809fd65ed6e5) fix(symbols): exclude Objective-C bookkeeping from declaration inventories ### 📊 Changes **3 files changed** (+48 additions, -2 deletions) <details> <summary>View changed files</summary> 📝 `src/domain/symbolAnalysis.test.ts` (+20 -0) 📝 `src/domain/symbolAnalysis.ts` (+4 -2) 📝 `tests/boundary/mcp/enhancedTools.04-uses-complete-inventories-inline.test.ts` (+24 -0) </details> ### 📄 Description Objective-C class discovery matches the broad OBJC_CLASS substring, so compiler-emitted CLASS_RO, CLASSLIST_REFERENCES, and CLASS_NAME labels inflate class totals. Protocol discovery likewise mistakes PROTOCOL_REFERENCE slots for protocol definitions. Match the existing declaration label markers precisely while retaining the alternate legacy class convention and Swift protocol behavior. An owned Apple clang object verifies the producer label forms; domain and public MCP tests retain only declarations. Validation: the exact baseline failed 3 regression tests with 30 passing controls. Fixed affected suites pass all 35 tests. `npm run check` passes all 6 tasks and `git diff --check` passes, with pinned Node 24.18.0/npm 11.16.0. The producer fixture was compiled and inspected locally; tests use injected inventories and in-memory MCP transports. No real provider or full repository certification is claimed. Prepared with AI assistance. Hosted validation: Hosted Static checks fail at jscpd on exact merge base 8b4c3591358ee59297d8298ede1b63d08459d817: unchanged 8041 duplicated lines and 730 clones already fail the 2.5% threshold before this PR. The original campaign base passes. Hosted other completed lanes pass; this inherited failure remains open. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-17 21:10:18 +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#2793
No description provided.