Cross-check compact event dispatch-strip descriptors
This commit is contained in:
parent
03658aa59a
commit
a66fe1c4db
2 changed files with 53 additions and 7 deletions
|
|
@ -9452,6 +9452,27 @@ fn parse_event_runtime_collection_summary_with_tag_width(
|
|||
.collect::<Vec<_>>();
|
||||
mutation_candidate_opcodes.sort_unstable();
|
||||
mutation_candidate_opcodes.dedup();
|
||||
let mut mutation_candidate_descriptor_labels = records
|
||||
.iter()
|
||||
.flat_map(|record| record.grouped_effect_rows.iter())
|
||||
.filter(|row| {
|
||||
opcode_reaches_world_apply_compact_runtime_effect_dispatch_strip(row.opcode)
|
||||
})
|
||||
.filter_map(|row| row.descriptor_label.clone())
|
||||
.collect::<Vec<_>>();
|
||||
mutation_candidate_descriptor_labels.sort_unstable();
|
||||
mutation_candidate_descriptor_labels.dedup();
|
||||
let mut mutation_candidate_unknown_descriptor_ids = records
|
||||
.iter()
|
||||
.flat_map(|record| record.grouped_effect_rows.iter())
|
||||
.filter(|row| {
|
||||
opcode_reaches_world_apply_compact_runtime_effect_dispatch_strip(row.opcode)
|
||||
&& row.descriptor_label.is_none()
|
||||
})
|
||||
.map(|row| row.descriptor_id)
|
||||
.collect::<Vec<_>>();
|
||||
mutation_candidate_unknown_descriptor_ids.sort_unstable();
|
||||
mutation_candidate_unknown_descriptor_ids.dedup();
|
||||
let mut control_lane_notes = Vec::new();
|
||||
if nondirect_compact_record_count != 0
|
||||
&& nondirect_compact_record_count == nondirect_compact_records_missing_trigger_kind
|
||||
|
|
@ -9468,13 +9489,25 @@ fn parse_event_runtime_collection_summary_with_tag_width(
|
|||
}
|
||||
if !mutation_candidate_record_indexes.is_empty() {
|
||||
control_lane_notes.push(format!(
|
||||
"records with grouped opcodes already in the 0x00431b20 mutation strip = {:?}",
|
||||
"records with grouped opcodes already in the 0x00431b20 dispatch strip = {:?}",
|
||||
mutation_candidate_record_indexes
|
||||
));
|
||||
control_lane_notes.push(format!(
|
||||
"0x00431b20 mutation-strip opcodes present in decoded grouped rows = {:?}",
|
||||
"0x00431b20 dispatch-strip opcodes present in decoded grouped rows = {:?}",
|
||||
mutation_candidate_opcodes
|
||||
));
|
||||
if !mutation_candidate_descriptor_labels.is_empty() {
|
||||
control_lane_notes.push(format!(
|
||||
"decoded grouped descriptor labels present in the 0x00431b20 dispatch strip = {:?}",
|
||||
mutation_candidate_descriptor_labels
|
||||
));
|
||||
}
|
||||
if !mutation_candidate_unknown_descriptor_ids.is_empty() {
|
||||
control_lane_notes.push(format!(
|
||||
"grouped descriptor ids still missing checked-in labels in the 0x00431b20 dispatch strip = {:?}",
|
||||
mutation_candidate_unknown_descriptor_ids
|
||||
));
|
||||
}
|
||||
}
|
||||
|
||||
return Some(SmpLoadedEventRuntimeCollectionSummary {
|
||||
|
|
@ -22181,11 +22214,16 @@ mod tests {
|
|||
}));
|
||||
assert!(summary.control_lane_notes.iter().any(|line| {
|
||||
line.contains(
|
||||
"records with grouped opcodes already in the 0x00431b20 mutation strip = [0]",
|
||||
"records with grouped opcodes already in the 0x00431b20 dispatch strip = [0]",
|
||||
)
|
||||
}));
|
||||
assert!(summary.control_lane_notes.iter().any(|line| {
|
||||
line.contains("0x00431b20 mutation-strip opcodes present in decoded grouped rows = [4]")
|
||||
line.contains("0x00431b20 dispatch-strip opcodes present in decoded grouped rows = [4]")
|
||||
}));
|
||||
assert!(summary.control_lane_notes.iter().any(|line| {
|
||||
line.contains(
|
||||
"decoded grouped descriptor labels present in the 0x00431b20 dispatch strip = [\"Company Variable 1\"]",
|
||||
)
|
||||
}));
|
||||
let record = summary
|
||||
.records
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue