Skip to content

refactor(blender): stabilize naming synchronization and decouple translator architecture#242

Open
arounamounchili wants to merge 3 commits into
mainfrom
feat/blender-core-alignment
Open

refactor(blender): stabilize naming synchronization and decouple translator architecture#242
arounamounchili wants to merge 3 commits into
mainfrom
feat/blender-core-alignment

Conversation

@arounamounchili
Copy link
Copy Markdown
Owner

@arounamounchili arounamounchili commented May 11, 2026

📝 Description

This PR stabilizes the LinkForge Blender platform by implementing a robust asynchronous naming synchronization system and refactoring the scene translation logic into a decoupled, registry-based architecture.

🖼️ Visual Proof (Recommended)

Tip

For UI changes, 3D viewport features, or URDF exports, verification is much faster with a visual.
Drag and drop screenshots or GIFs here.

🧪 How to Test

  1. Open Blender...
  2. Run operation X...
  3. Verify result Y...

💻 Environment

  • LinkForge Version:
  • Blender Version:
  • Operating System:

🛠️ Type of change

  • 🧪 Tests (test)
  • 🧹 Refactor (refactor)

✅ Checklist

  • I have run uv run pytest and all tests pass
  • I have run uv run pre-commit run --all-files and all hooks pass
  • I have verified the changes manually in the Blender viewport
  • I have updated the documentation or verified no changes are needed

…itecture

- Implemented two-tier deferred renaming (timers for GUI, queue for background).
- Decoupled platform adapters into a registry-based Translator pattern.
- Resolved asynchronous naming inconsistencies and race conditions in CI/CD.
- Professionalized error handling and type safety across blender platform.
- Maintained 100% test pass rate across 170+ unit and integration tests.

Signed-off-by: arounamounchili <patouossa.mounchili@gmail.com>
@arounamounchili arounamounchili changed the title refactor(blender): stabilize naming sync and decouple translator architecture refactor(blender): stabilize naming synchronization and decouple translator architecture May 11, 2026
- Fix NoneType errors in view_layer access during headless tests\n- Stabilize MockCollection (hashability) and MockTimers (re-scheduling) for async operators\n- Cleanup temporary debug prints and optimize imports across the Blender platform\n- Resolve linting issues (duplicated keys, shadowed builtins, contextlib.suppress)

Signed-off-by: arounamounchili <patouossa.mounchili@gmail.com>
…tion

- Centralize mock_bpy_env.py to tests/ root for unified mocking.
- Implement high-fidelity operator mocks (add_empty_link) to ensure scene population.
- Fix NoneType errors in physics, sensors, and converter robustness tests.
- Remove temporary debug prints and standardize defensive assertions.
- Ensure 100% test pass rate in both headless and real Blender environments.

Signed-off-by: arounamounchili <patouossa.mounchili@gmail.com>
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