ZIm/crates/eval/examples/libdevice_symbol_reexport/diff_criteria.md
Nathan Sobo bab28560ef
Systematically optimize agentic editing performance (#28961)
Now that we've established a proper eval in tree, this PR is reboots of
our agent loop back to a set of minimal tools and simpler prompts. We
should aim to get this branch feeling subjectively competitive with
what's on main and then merge it, and build from there.

Let's invest in our eval and use it to drive better performance of the
agent loop. How you can help: Pick an example, and then make the outcome
faster or better. It's fine to even use your own subjective judgment, as
our evaluation criteria likely need tuning as well at this point. Focus
on making the agent work better in your own subjective experience first.
Let's focus on simple/practical improvements to make this thing work
better, then determine how we can craft our judgment criteria to lock
those improvements in.

Release Notes:

- N/A

---------

Co-authored-by: Max <max@zed.dev>
Co-authored-by: Antonio <antonio@zed.dev>
Co-authored-by: Agus <agus@zed.dev>
Co-authored-by: Richard <richard@zed.dev>
Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-authored-by: Antonio Scandurra <me@as-cii.com>
Co-authored-by: Michael Sloan <mgsloan@gmail.com>
2025-04-19 02:47:59 +00:00

1.1 KiB

  1. Reexports LIBDEVICE_BITCODE for cleaner dependency usage: The LIBDEVICE_BITCODE symbol from the cust_raw::nvvm_sys crate is now reexported via the nvvm crate. This allows consuming crates to access the symbol directly from nvvm, abstracting away the internal structure and reducing tight coupling to cust_raw.
  2. Simplifies dependency graph and usage of NVVM internals: By removing the direct dependency on cust_raw from rustc_codegen_nvvm, the changes streamline the crate's external interface, reducing maintenance overhead and improving modularity. Consumers now only need to rely on the higher-level nvvm crate.
  3. Improves code readability and encapsulation: The change makes the source cleaner by reducing low-level, verbose paths like nvvm_sys::LIBDEVICE_BITCODE to a concise LIBDEVICE_BITCODE, enhancing readability and reinforcing a layered architecture.
  4. Maintains existing functionality: The code logic remains unchanged in behavior—LIBDEVICE_BITCODE is still used in the same way, ensuring that the refactor is safe, non-breaking, and purely organizational.