Stream: brlcad

Topic: GSoC 2026 - Agentic Modernization of libgcv


view this post on Zulip Rishith Kumar Guntuka (Mar 27 2026 at 11:53):

Hi @Sean , Rishith here.

I have finalized my GSoC draft proposal for the "Agentic Modernization of libgcv" project.
Link to Proposal: GSoC Proposal

To manage the risk of AI hallucinations and ensure strict C89/C99 compliance, I’ve structured the project execution into two sequential tracks:

Track 1: Agentic refactoring of legacy converters (e.g., STL, OBJ) to standardize the plugin API, bounded by rigorous Valgrind/ASan memory profiling.

Track 2: Vibe-driven prototyping for modern formats (glTF, USD, MaterialX) built on top of the stabilized API.

As I review the timeline, I have two technical questions regarding BRL-CAD's CI practices to ensure my Track 1 verification loop is accurate:

  1. Verification: For checking conversion fidelity on the AI-generated code, does BRL-CAD have a preferred benchmarking suite (e.g., comparing raytracing outputs), or should I plan to build a custom gcv testing script to validate bounding boxes and object counts?

  2. Orchestration: For the agentic pipeline, is there a preference between using a tool like Aider, or building a custom Python orchestrator to strictly enforce the bu_malloc/bu_free rules during prompt injection?

I'd appreciate any feedback on the proposal structure or the verification approach before the final deadline.

Thanks

view this post on Zulip Sean (Mar 30 2026 at 05:52):

There is not a a preferred. Most of our unit and integration testing is simple argc/argv main programs that do very little in the way of scaffolding and that works well. There are some existing unit tests in gcv that you can browse. We've also used several other systems like googletest or cppunit but really just depends.

There is not a preference on the pipeline -- propose what you think would be most effective (and why). I'm more concerned with what the end state is going to look like and less on how we get there. More specifically, how do we know the current and future status of conversion paths through gcv?

view this post on Zulip Rishith Kumar Guntuka (Mar 30 2026 at 15:15):

Thank for the feedback @Sean

I just submitted my official proposal to the GSoC Portal. To answer you questions:

  1. The Pipeline: I'm proposing a custom Python script. It will compile the AI's C code, run ASan, and automatically make the AI fix any memory leaks or bu_exit crashes before I even review it.
  2. Status Visibility: I added a Conversion Health Matrix as a final deliverable. It runs those simple argc/argv tests and outputs a clear dashboard showing which formats are currently working and safe.

Also, I audited the code and found 38 bu_exit calls in asc_v4.cpp and a global filter_table in gcv.c:456. Fixing those is my top priority for Phase 1.

Anyways, I would appreciate your quick look on my proposal.
Link: BRLCAD Proposal


Last updated: Mar 31 2026 at 01:22 UTC