the only real failure was rust-format. The other lint jobs (clippy, python, typescript) weren't actually failing, they got cancelled by fail-fast once rust-format failed. I fixed that.
@baml-sam , actually Right now the dependency-graph and reachability code lives in lib.rs (the generator). I think the cleaner approach is to move it into parser-database, since most of what we need is already there.
Breaking it down:
- Cycle results (the seed): already available in parser-database, so we reuse them and write nothing new.
- The dependency graph: parser-database already has class_dependencies, so we don't rebuild it. This is the part that gets eliminated from the generator.
- The reachability check ("does this class reach the seed?"): this still needs to be written, but it runs on the existing class_dependencies graph instead of building a new one.
Then we expose the result on the IR, and lib.rs just consumes it in one line. So we reuse the graph the engine already has, instead of rebuilding it in the generator.
but if you are ok with current approach, then i have already raised the fix for CI issues, please approve the workflow.