| ▲ | michalsustr 2 hours ago | ||||||||||||||||||||||
As someone said: Custom lints are super useful. What we do at https://minfx.ai (a Neptune/Wandb replacement) is we use TONS of custom lints. Anytime we see some undesireable repeatable agent behavior, we add it as a prompt modification and a lint. This is relatively easy to do in Rust. The kinds of things I did are: - Specify maximum number of lines / tabs, otherwise code must be refactored. - Do not use unsafe or RefCells. - Do custom formatting, where all code looks the same: order by mods, uses, constants, structs/enums, impls, etc. In particular, I added topological ordering (DAG-ordering) of structs, so when I review code, I build up understanding of what the LLM actually did, which is faster than to read the intermediate outputs. - Make sure there are no "depedency cycles": internal code does not use public re-exports, so whenever you click on definitions, you only go DEEPER in the code base or same file, you can't loop back. - And more :-) Generally I find that focusing on the code structure is super helpful for dev and for the LLM as well, it can find the relevant code to modify much faster. | |||||||||||||||||||||||
| ▲ | actionfromafar 2 hours ago | parent [-] | ||||||||||||||||||||||
What is DAG ordering of structs? | |||||||||||||||||||||||
| |||||||||||||||||||||||