| 255 | use tempfile::TempDir; |
| 256 | |
| 257 | fn record_all(repo: &Repository, message: &str) -> Hash { |
| 258 | let header = ChangeHeader::new(message); |
| 259 | // `enrich_kg(false)` reproduces the opencode workflow: changes are |
| 260 | // recorded WITHOUT KG enrichment, so no `MODIFIES` edge is ever created. |
| 261 | // Coverage must still resolve from the change's own `file_ops`. |
| 262 | let options = RecordOptions::new() |
| 263 | .with_all(true) |
| 264 | .save_to_store(true) |
| 265 | .apply_after_record(true) |
| 266 | .enrich_kg(false); |
| 267 | *repo.record(header, options).unwrap().hash() |
| 268 | } |
| 269 | |
| 270 | /// The key regression: coverage resolves from the change's own `file_ops` |
| 271 | /// even when the KG has NO `MODIFIES` edge for the change (i.e. the |