debugTree method

String debugTree({
  1. bool includeState = true,
})

Returns a deterministic, redaction-aware tree summary for humans.

Use toJson for protocol consumers. This string is intentionally optimized for failure messages, debug panels, and quick terminal output.

Implementation

String debugTree({bool includeState = true}) {
  final buffer = StringBuffer()
    ..write('SemanticInspectionSnapshot(')
    ..write('schemaVersion: ')
    ..write(schemaVersion)
    ..write(', nodeCount: ')
    ..write(nodeCount)
    ..write(', actionCount: ')
    ..write(actionCount)
    ..write(', focusedNodeId: ')
    ..write(focusedNodeId ?? 'none')
    ..write(', roleCounts: ')
    ..write(_debugMap(roleCounts))
    ..writeln(')');
  root._writeDebugTree(buffer, depth: 0, includeState: includeState);
  return buffer.toString().trimRight();
}