Skip to content

feat(crashtracking): include Kind in crash ping and clarify requirements#1595

Merged
gh-worker-dd-mergequeue-cf854d[bot] merged 1 commit intomainfrom
gyuheon0h/crash-ping-kind
Feb 19, 2026
Merged

feat(crashtracking): include Kind in crash ping and clarify requirements#1595
gh-worker-dd-mergequeue-cf854d[bot] merged 1 commit intomainfrom
gyuheon0h/crash-ping-kind

Conversation

@gyuheon0h
Copy link
Copy Markdown
Contributor

@gyuheon0h gyuheon0h commented Feb 18, 2026

What does this PR do?

This PR updates what a CrashPing consists of. This is in preparation of allowing the crashtracker to not only handle UNIX signal based crashes, but other types of program terminations, such as unhandled exceptions.

These are the biggest changes

  1. We add a CRASHTRACK_*_KIND block in the communication protocol of the receiver. Previously, we always defaulted to UnixSignal in the receiver, which is not true in the world of supporting unhandled exceptions
    • This involves adding a public with_kind API to the crash info builder, which is why this PR is marked as feat
  2. We also set Kind as an explicit ErrorKind for the CrashPing. Previously, under the assumption that we were only supporting unix signal based crashes, we would set it to Crash ping. This was bad design and this PR fixes that.

This PR does not contain any changes for actually handling unhandled exceptions. It is still in the world of unix signals only, it can now be extended, however, in the PR above this one

Additional Notes

PR on top of this on the stack: feat(crashtracking): report unhandled exceptions

How to test the change?

Unit tests have been updated to include Kind. If not, then any time Kind is not included, crash ping build will fail

Copy link
Copy Markdown
Contributor Author

gyuheon0h commented Feb 18, 2026

/// which has not previously been dropped.
/// All arguments must be valid.
/// This method requires that the builder has a UUID and metadata set
/// This method requires that the builder has `metadata` and `kind` set
Copy link
Copy Markdown
Contributor Author

@gyuheon0h gyuheon0h Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

uuid is set automatically (stale inline comment). We always know what Kind a crash is. We should send it

@github-actions
Copy link
Copy Markdown

Clippy Allow Annotation Report

Comparing clippy allow annotations between branches:

  • Base Branch: origin/main
  • PR Branch: origin/gyuheon0h/crash-ping-kind

Summary by Rule

Rule Base Branch PR Branch Change
unwrap_used 12 12 No change (0%)
Total 12 12 No change (0%)

Annotation Counts by File

File Base Branch PR Branch Change
libdd-crashtracker/src/collector/emitters.rs 12 12 No change (0%)

Annotation Stats by Crate

Crate Base Branch PR Branch Change
clippy-annotation-reporter 5 5 No change (0%)
datadog-ffe-ffi 1 1 No change (0%)
datadog-ipc 27 27 No change (0%)
datadog-live-debugger 6 6 No change (0%)
datadog-live-debugger-ffi 10 10 No change (0%)
datadog-profiling-replayer 4 4 No change (0%)
datadog-remote-config 3 3 No change (0%)
datadog-sidecar 59 59 No change (0%)
libdd-common 10 10 No change (0%)
libdd-common-ffi 12 12 No change (0%)
libdd-crashtracker 12 12 No change (0%)
libdd-data-pipeline 6 6 No change (0%)
libdd-ddsketch 2 2 No change (0%)
libdd-dogstatsd-client 1 1 No change (0%)
libdd-profiling 13 13 No change (0%)
libdd-telemetry 19 19 No change (0%)
libdd-tinybytes 4 4 No change (0%)
libdd-trace-normalization 2 2 No change (0%)
libdd-trace-obfuscation 9 9 No change (0%)
libdd-trace-utils 15 15 No change (0%)
Total 220 220 No change (0%)

About This Report

This report tracks Clippy allow annotations for specific rules, showing how they've changed in this PR. Decreasing the number of these annotations generally improves code quality.

@gyuheon0h gyuheon0h force-pushed the gyuheon0h/crash-ping-kind branch from a5dd6fc to fb63033 Compare February 18, 2026 02:48
@datadog-datadog-prod-us1

This comment has been minimized.

@pr-commenter
Copy link
Copy Markdown

pr-commenter bot commented Feb 18, 2026

Benchmarks

Comparison

Benchmark execution time: 2026-02-18 05:34:54

Comparing candidate commit 99181d9 in PR branch gyuheon0h/crash-ping-kind with baseline commit aa58f2d in branch main.

Found 0 performance improvements and 0 performance regressions! Performance is the same for 57 metrics, 2 unstable metrics.

Candidate

Candidate benchmark details

Group 1

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
sql/obfuscate_sql_string execution_time 90.267µs 90.575µs ± 0.149µs 90.556µs ± 0.047µs 90.615µs 90.709µs 91.184µs 92.008µs 1.60% 5.315 44.585 0.16% 0.011µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
sql/obfuscate_sql_string execution_time [90.555µs; 90.596µs] or [-0.023%; +0.023%] None None None

Group 2

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
credit_card/is_card_number/ execution_time 3.892µs 3.912µs ± 0.003µs 3.912µs ± 0.002µs 3.914µs 3.916µs 3.919µs 3.927µs 0.39% -0.572 8.852 0.08% 0.000µs 1 200
credit_card/is_card_number/ throughput 254630830.605op/s 255627802.848op/s ± 208254.023op/s 255633100.869op/s ± 133686.539op/s 255759777.503op/s 255893199.366op/s 255949058.157op/s 256947712.397op/s 0.51% 0.598 8.949 0.08% 14725.783op/s 1 200
credit_card/is_card_number/ 3782-8224-6310-005 execution_time 78.770µs 80.882µs ± 0.825µs 80.869µs ± 0.546µs 81.426µs 82.237µs 82.646µs 82.955µs 2.58% 0.044 -0.246 1.02% 0.058µs 1 200
credit_card/is_card_number/ 3782-8224-6310-005 throughput 12054728.467op/s 12364989.198op/s ± 126077.162op/s 12365641.781op/s ± 83701.749op/s 12449208.434op/s 12587290.690op/s 12640316.738op/s 12695199.006op/s 2.67% 0.010 -0.239 1.02% 8915.002op/s 1 200
credit_card/is_card_number/ 378282246310005 execution_time 71.804µs 72.386µs ± 0.438µs 72.270µs ± 0.218µs 72.638µs 73.281µs 73.679µs 73.856µs 2.19% 1.100 0.755 0.60% 0.031µs 1 200
credit_card/is_card_number/ 378282246310005 throughput 13539831.017op/s 13815357.521op/s ± 83106.031op/s 13836947.796op/s ± 41676.663op/s 13868757.504op/s 13914115.313op/s 13925547.085op/s 13926876.085op/s 0.65% -1.073 0.677 0.60% 5876.484op/s 1 200
credit_card/is_card_number/37828224631 execution_time 3.895µs 3.913µs ± 0.003µs 3.913µs ± 0.002µs 3.914µs 3.917µs 3.919µs 3.919µs 0.17% -0.947 7.163 0.07% 0.000µs 1 200
credit_card/is_card_number/37828224631 throughput 255148038.249op/s 255581281.844op/s ± 177802.598op/s 255585088.944op/s ± 118321.098op/s 255690386.067op/s 255816541.064op/s 255868330.919op/s 256720206.099op/s 0.44% 0.964 7.278 0.07% 12572.542op/s 1 200
credit_card/is_card_number/378282246310005 execution_time 68.576µs 69.090µs ± 0.294µs 69.041µs ± 0.208µs 69.264µs 69.656µs 69.965µs 70.103µs 1.54% 0.843 0.697 0.42% 0.021µs 1 200
credit_card/is_card_number/378282246310005 throughput 14264691.082op/s 14474160.922op/s ± 61437.879op/s 14484068.973op/s ± 43445.207op/s 14518944.682op/s 14550264.617op/s 14573227.105op/s 14582387.573op/s 0.68% -0.818 0.627 0.42% 4344.314op/s 1 200
credit_card/is_card_number/37828224631000521389798 execution_time 45.433µs 45.735µs ± 0.086µs 45.735µs ± 0.055µs 45.789µs 45.879µs 45.903µs 45.995µs 0.57% -0.130 0.355 0.19% 0.006µs 1 200
credit_card/is_card_number/37828224631000521389798 throughput 21741333.919op/s 21865055.029op/s ± 40913.623op/s 21864865.349op/s ± 26506.163op/s 21891641.225op/s 21933533.764op/s 21955282.547op/s 22010461.703op/s 0.67% 0.143 0.363 0.19% 2893.030op/s 1 200
credit_card/is_card_number/x371413321323331 execution_time 6.427µs 6.435µs ± 0.007µs 6.433µs ± 0.003µs 6.437µs 6.446µs 6.468µs 6.475µs 0.65% 3.049 13.665 0.10% 0.000µs 1 200
credit_card/is_card_number/x371413321323331 throughput 154438109.152op/s 155395367.311op/s ± 158257.191op/s 155437018.547op/s ± 61819.878op/s 155486710.999op/s 155547884.579op/s 155576978.948op/s 155584958.315op/s 0.10% -3.030 13.514 0.10% 11190.473op/s 1 200
credit_card/is_card_number_no_luhn/ execution_time 3.892µs 3.912µs ± 0.003µs 3.911µs ± 0.001µs 3.913µs 3.918µs 3.921µs 3.922µs 0.29% -0.576 9.878 0.08% 0.000µs 1 200
credit_card/is_card_number_no_luhn/ throughput 254939820.443op/s 255637245.545op/s ± 197298.689op/s 255671658.799op/s ± 94067.686op/s 255746373.215op/s 255863713.118op/s 255901715.847op/s 256952308.466op/s 0.50% 0.603 10.032 0.08% 13951.124op/s 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time 61.281µs 62.867µs ± 0.633µs 62.854µs ± 0.418µs 63.270µs 63.934µs 64.339µs 64.568µs 2.73% 0.116 -0.096 1.00% 0.045µs 1 200
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput 15487640.035op/s 15908215.869op/s ± 160011.048op/s 15909849.790op/s ± 105276.949op/s 16014926.584op/s 16193628.195op/s 16233175.852op/s 16318328.511op/s 2.57% -0.059 -0.106 1.00% 11314.490op/s 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time 53.837µs 54.036µs ± 0.072µs 54.033µs ± 0.046µs 54.080µs 54.165µs 54.208µs 54.287µs 0.47% 0.208 0.466 0.13% 0.005µs 1 200
credit_card/is_card_number_no_luhn/ 378282246310005 throughput 18420683.853op/s 18506379.126op/s ± 24562.414op/s 18507183.698op/s ± 15690.853op/s 18522271.752op/s 18544997.486op/s 18556810.120op/s 18574439.714op/s 0.36% -0.198 0.457 0.13% 1736.825op/s 1 200
credit_card/is_card_number_no_luhn/37828224631 execution_time 3.891µs 3.912µs ± 0.003µs 3.912µs ± 0.002µs 3.914µs 3.917µs 3.921µs 3.924µs 0.31% -0.820 12.840 0.08% 0.000µs 1 200
credit_card/is_card_number_no_luhn/37828224631 throughput 254863106.019op/s 255613677.873op/s ± 196708.515op/s 255642058.739op/s ± 101337.268op/s 255727011.167op/s 255818330.048op/s 255863188.012op/s 257009979.867op/s 0.54% 0.853 13.046 0.08% 13909.392op/s 1 200
credit_card/is_card_number_no_luhn/378282246310005 execution_time 50.169µs 50.336µs ± 0.088µs 50.321µs ± 0.055µs 50.386µs 50.499µs 50.578µs 50.797µs 0.95% 1.271 3.441 0.17% 0.006µs 1 200
credit_card/is_card_number_no_luhn/378282246310005 throughput 19686059.777op/s 19866508.043op/s ± 34468.468op/s 19872556.993op/s ± 21803.951op/s 19890917.339op/s 19906367.052op/s 19922366.274op/s 19932651.677op/s 0.30% -1.251 3.336 0.17% 2437.289op/s 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time 45.521µs 45.727µs ± 0.091µs 45.726µs ± 0.063µs 45.784µs 45.860µs 45.906µs 46.205µs 1.05% 0.892 3.263 0.20% 0.006µs 1 200
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput 21642764.918op/s 21869035.018op/s ± 43376.794op/s 21869330.455op/s ± 30326.816op/s 21900481.266op/s 21932998.966op/s 21945758.711op/s 21967867.530op/s 0.45% -0.865 3.130 0.20% 3067.203op/s 1 200
credit_card/is_card_number_no_luhn/x371413321323331 execution_time 6.428µs 6.436µs ± 0.004µs 6.436µs ± 0.003µs 6.439µs 6.443µs 6.446µs 6.452µs 0.25% 0.369 0.405 0.06% 0.000µs 1 200
credit_card/is_card_number_no_luhn/x371413321323331 throughput 154982884.109op/s 155367450.826op/s ± 97095.273op/s 155366672.091op/s ± 69078.542op/s 155441270.403op/s 155517764.034op/s 155551030.851op/s 155571702.998op/s 0.13% -0.365 0.394 0.06% 6865.673op/s 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
credit_card/is_card_number/ execution_time [3.911µs; 3.912µs] or [-0.011%; +0.011%] None None None
credit_card/is_card_number/ throughput [255598940.843op/s; 255656664.853op/s] or [-0.011%; +0.011%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 execution_time [80.768µs; 80.996µs] or [-0.141%; +0.141%] None None None
credit_card/is_card_number/ 3782-8224-6310-005 throughput [12347516.116op/s; 12382462.280op/s] or [-0.141%; +0.141%] None None None
credit_card/is_card_number/ 378282246310005 execution_time [72.325µs; 72.447µs] or [-0.084%; +0.084%] None None None
credit_card/is_card_number/ 378282246310005 throughput [13803839.825op/s; 13826875.218op/s] or [-0.083%; +0.083%] None None None
credit_card/is_card_number/37828224631 execution_time [3.912µs; 3.913µs] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/37828224631 throughput [255556640.114op/s; 255605923.574op/s] or [-0.010%; +0.010%] None None None
credit_card/is_card_number/378282246310005 execution_time [69.049µs; 69.131µs] or [-0.059%; +0.059%] None None None
credit_card/is_card_number/378282246310005 throughput [14465646.223op/s; 14482675.621op/s] or [-0.059%; +0.059%] None None None
credit_card/is_card_number/37828224631000521389798 execution_time [45.723µs; 45.747µs] or [-0.026%; +0.026%] None None None
credit_card/is_card_number/37828224631000521389798 throughput [21859384.794op/s; 21870725.264op/s] or [-0.026%; +0.026%] None None None
credit_card/is_card_number/x371413321323331 execution_time [6.434µs; 6.436µs] or [-0.014%; +0.014%] None None None
credit_card/is_card_number/x371413321323331 throughput [155373434.387op/s; 155417300.236op/s] or [-0.014%; +0.014%] None None None
credit_card/is_card_number_no_luhn/ execution_time [3.911µs; 3.912µs] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/ throughput [255609901.844op/s; 255664589.246op/s] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 execution_time [62.779µs; 62.955µs] or [-0.140%; +0.140%] None None None
credit_card/is_card_number_no_luhn/ 3782-8224-6310-005 throughput [15886039.876op/s; 15930391.861op/s] or [-0.139%; +0.139%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 execution_time [54.026µs; 54.045µs] or [-0.018%; +0.018%] None None None
credit_card/is_card_number_no_luhn/ 378282246310005 throughput [18502975.012op/s; 18509783.240op/s] or [-0.018%; +0.018%] None None None
credit_card/is_card_number_no_luhn/37828224631 execution_time [3.912µs; 3.913µs] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/37828224631 throughput [255586415.965op/s; 255640939.781op/s] or [-0.011%; +0.011%] None None None
credit_card/is_card_number_no_luhn/378282246310005 execution_time [50.324µs; 50.348µs] or [-0.024%; +0.024%] None None None
credit_card/is_card_number_no_luhn/378282246310005 throughput [19861731.045op/s; 19871285.041op/s] or [-0.024%; +0.024%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 execution_time [45.714µs; 45.740µs] or [-0.028%; +0.028%] None None None
credit_card/is_card_number_no_luhn/37828224631000521389798 throughput [21863023.412op/s; 21875046.625op/s] or [-0.027%; +0.027%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 execution_time [6.436µs; 6.437µs] or [-0.009%; +0.009%] None None None
credit_card/is_card_number_no_luhn/x371413321323331 throughput [155353994.355op/s; 155380907.297op/s] or [-0.009%; +0.009%] None None None

Group 3

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
concentrator/add_spans_to_concentrator execution_time 10.627ms 10.655ms ± 0.015ms 10.654ms ± 0.008ms 10.661ms 10.678ms 10.694ms 10.741ms 0.82% 1.578 6.123 0.14% 0.001ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
concentrator/add_spans_to_concentrator execution_time [10.653ms; 10.657ms] or [-0.019%; +0.019%] None None None

Group 4

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... execution_time 185.534µs 186.280µs ± 0.701µs 186.000µs ± 0.243µs 186.531µs 187.680µs 188.419µs 188.576µs 1.39% 1.433 1.240 0.38% 0.050µs 1 200
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput 5302888.391op/s 5368337.753op/s ± 20090.109op/s 5376350.228op/s ± 7035.289op/s 5382164.638op/s 5387010.657op/s 5388697.088op/s 5389833.884op/s 0.25% -1.420 1.190 0.37% 1420.585op/s 1 200
normalization/normalize_name/normalize_name/bad-name execution_time 17.201µs 17.400µs ± 0.139µs 17.350µs ± 0.056µs 17.419µs 17.682µs 17.735µs 17.781µs 2.49% 1.223 0.157 0.80% 0.010µs 1 200
normalization/normalize_name/normalize_name/bad-name throughput 56238583.922op/s 57476193.874op/s ± 455208.501op/s 57638157.854op/s ± 186958.157op/s 57791649.956op/s 57917324.099op/s 57989878.643op/s 58135416.438op/s 0.86% -1.207 0.125 0.79% 32188.102op/s 1 200
normalization/normalize_name/normalize_name/good execution_time 9.882µs 9.948µs ± 0.048µs 9.924µs ± 0.024µs 9.986µs 10.038µs 10.064µs 10.118µs 1.96% 0.802 -0.264 0.48% 0.003µs 1 200
normalization/normalize_name/normalize_name/good throughput 98830089.527op/s 100527547.228op/s ± 486090.312op/s 100767996.119op/s ± 242628.853op/s 100931970.146op/s 101045087.307op/s 101114518.514op/s 101196554.143op/s 0.43% -0.787 -0.314 0.48% 34371.776op/s 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... execution_time [186.183µs; 186.377µs] or [-0.052%; +0.052%] None None None
normalization/normalize_name/normalize_name/Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Long-.Too-Lo... throughput [5365553.458op/s; 5371122.049op/s] or [-0.052%; +0.052%] None None None
normalization/normalize_name/normalize_name/bad-name execution_time [17.380µs; 17.419µs] or [-0.111%; +0.111%] None None None
normalization/normalize_name/normalize_name/bad-name throughput [57413106.353op/s; 57539281.394op/s] or [-0.110%; +0.110%] None None None
normalization/normalize_name/normalize_name/good execution_time [9.941µs; 9.954µs] or [-0.067%; +0.067%] None None None
normalization/normalize_name/normalize_name/good throughput [100460179.786op/s; 100594914.670op/s] or [-0.067%; +0.067%] None None None

Group 5

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... execution_time 493.050µs 493.901µs ± 0.461µs 493.835µs ± 0.267µs 494.133µs 494.604µs 495.118µs 497.375µs 0.72% 2.515 15.087 0.09% 0.033µs 1 200
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput 2010554.742op/s 2024699.032op/s ± 1885.851op/s 2024966.031op/s ± 1094.603op/s 2025938.599op/s 2026886.572op/s 2027489.382op/s 2028191.410op/s 0.16% -2.485 14.800 0.09% 133.350op/s 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time 371.592µs 372.196µs ± 0.273µs 372.166µs ± 0.164µs 372.319µs 372.709µs 372.920µs 373.344µs 0.32% 0.770 1.126 0.07% 0.019µs 1 200
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput 2678491.469op/s 2686761.148op/s ± 1969.954op/s 2686971.134op/s ± 1184.835op/s 2688180.291op/s 2689436.150op/s 2690195.853op/s 2691120.134op/s 0.15% -0.764 1.109 0.07% 139.297op/s 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time 167.592µs 167.967µs ± 0.147µs 167.962µs ± 0.100µs 168.056µs 168.216µs 168.341µs 168.417µs 0.27% 0.310 0.027 0.09% 0.010µs 1 200
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput 5937630.576op/s 5953567.786op/s ± 5201.469op/s 5953729.690op/s ± 3541.849op/s 5957362.739op/s 5961795.167op/s 5963646.177op/s 5966865.303op/s 0.22% -0.305 0.021 0.09% 367.799op/s 1 200
normalization/normalize_service/normalize_service/[empty string] execution_time 38.736µs 38.853µs ± 0.048µs 38.852µs ± 0.033µs 38.887µs 38.931µs 38.949µs 38.975µs 0.32% -0.028 -0.442 0.12% 0.003µs 1 200
normalization/normalize_service/normalize_service/[empty string] throughput 25657315.062op/s 25737792.762op/s ± 31765.468op/s 25738482.532op/s ± 21848.882op/s 25759179.514op/s 25790837.227op/s 25806724.049op/s 25815618.975op/s 0.30% 0.034 -0.442 0.12% 2246.158op/s 1 200
normalization/normalize_service/normalize_service/test_ASCII execution_time 45.522µs 45.734µs ± 0.125µs 45.736µs ± 0.047µs 45.780µs 45.830µs 45.860µs 47.219µs 3.24% 8.294 97.179 0.27% 0.009µs 1 200
normalization/normalize_service/normalize_service/test_ASCII throughput 21178005.371op/s 21865755.647op/s ± 58550.900op/s 21864531.977op/s ± 22635.476op/s 21890590.591op/s 21924394.225op/s 21943005.856op/s 21967502.253op/s 0.47% -8.046 93.414 0.27% 4140.174op/s 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... execution_time [493.837µs; 493.965µs] or [-0.013%; +0.013%] None None None
normalization/normalize_service/normalize_service/A0000000000000000000000000000000000000000000000000... throughput [2024437.671op/s; 2024960.392op/s] or [-0.013%; +0.013%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて execution_time [372.158µs; 372.233µs] or [-0.010%; +0.010%] None None None
normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて throughput [2686488.132op/s; 2687034.165op/s] or [-0.010%; +0.010%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters execution_time [167.946µs; 167.987µs] or [-0.012%; +0.012%] None None None
normalization/normalize_service/normalize_service/Test Conversion 0f Weird !@#$%^&**() Characters throughput [5952846.912op/s; 5954288.659op/s] or [-0.012%; +0.012%] None None None
normalization/normalize_service/normalize_service/[empty string] execution_time [38.847µs; 38.860µs] or [-0.017%; +0.017%] None None None
normalization/normalize_service/normalize_service/[empty string] throughput [25733390.374op/s; 25742195.150op/s] or [-0.017%; +0.017%] None None None
normalization/normalize_service/normalize_service/test_ASCII execution_time [45.717µs; 45.751µs] or [-0.038%; +0.038%] None None None
normalization/normalize_service/normalize_service/test_ASCII throughput [21857641.055op/s; 21873870.238op/s] or [-0.037%; +0.037%] None None None

Group 6

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
redis/obfuscate_redis_string execution_time 34.544µs 35.123µs ± 0.871µs 34.741µs ± 0.082µs 34.892µs 36.962µs 37.003µs 38.233µs 10.05% 1.723 1.207 2.47% 0.062µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
redis/obfuscate_redis_string execution_time [35.002µs; 35.243µs] or [-0.344%; +0.344%] None None None

Group 7

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
benching string interning on wordpress profile execution_time 160.107µs 161.076µs ± 0.411µs 161.011µs ± 0.150µs 161.220µs 161.500µs 162.672µs 164.855µs 2.39% 4.739 37.785 0.25% 0.029µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
benching string interning on wordpress profile execution_time [161.019µs; 161.133µs] or [-0.035%; +0.035%] None None None

Group 8

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
profile_add_sample2_frames_x1000 execution_time 724.109µs 726.275µs ± 0.821µs 726.266µs ± 0.563µs 726.891µs 727.682µs 727.961µs 728.333µs 0.28% -0.008 -0.201 0.11% 0.058µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
profile_add_sample2_frames_x1000 execution_time [726.161µs; 726.389µs] or [-0.016%; +0.016%] None None None

Group 9

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
benching deserializing traces from msgpack to their internal representation execution_time 48.124ms 48.605ms ± 1.139ms 48.472ms ± 0.095ms 48.546ms 48.717ms 56.965ms 58.279ms 20.23% 7.676 58.795 2.34% 0.081ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
benching deserializing traces from msgpack to their internal representation execution_time [48.447ms; 48.762ms] or [-0.325%; +0.325%] None None None

Group 10

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
normalization/normalize_trace/test_trace execution_time 240.334ns 251.626ns ± 13.721ns 245.357ns ± 2.625ns 255.941ns 285.184ns 297.358ns 298.208ns 21.54% 1.812 2.461 5.44% 0.970ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
normalization/normalize_trace/test_trace execution_time [249.725ns; 253.528ns] or [-0.756%; +0.756%] None None None

Group 11

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
ip_address/quantize_peer_ip_address_benchmark execution_time 4.937µs 5.015µs ± 0.032µs 5.009µs ± 0.024µs 5.039µs 5.068µs 5.069µs 5.073µs 1.26% 0.049 -0.818 0.63% 0.002µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
ip_address/quantize_peer_ip_address_benchmark execution_time [5.010µs; 5.019µs] or [-0.087%; +0.087%] None None None

Group 12

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
profile_add_sample_frames_x1000 execution_time 4.141ms 4.146ms ± 0.006ms 4.145ms ± 0.001ms 4.147ms 4.150ms 4.153ms 4.229ms 2.00% 11.425 147.024 0.15% 0.000ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
profile_add_sample_frames_x1000 execution_time [4.145ms; 4.147ms] or [-0.021%; +0.021%] None None None

Group 13

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
single_flag_killswitch/rules-based execution_time 188.089ns 191.265ns ± 2.533ns 190.895ns ± 1.363ns 192.201ns 195.736ns 199.953ns 204.040ns 6.89% 1.891 5.491 1.32% 0.179ns 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
single_flag_killswitch/rules-based execution_time [190.913ns; 191.616ns] or [-0.184%; +0.184%] None None None

Group 14

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
sdk_test_data/rules-based execution_time 144.526µs 146.634µs ± 1.607µs 146.384µs ± 0.520µs 146.920µs 148.254µs 154.006µs 161.845µs 10.56% 5.484 43.338 1.09% 0.114µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
sdk_test_data/rules-based execution_time [146.412µs; 146.857µs] or [-0.152%; +0.152%] None None None

Group 15

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
receiver_entry_point/report/2597 execution_time 3.392ms 3.423ms ± 0.012ms 3.423ms ± 0.007ms 3.432ms 3.444ms 3.455ms 3.468ms 1.32% 0.496 0.759 0.35% 0.001ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
receiver_entry_point/report/2597 execution_time [3.422ms; 3.425ms] or [-0.048%; +0.048%] None None None

Group 16

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
tags/replace_trace_tags execution_time 2.331µs 2.391µs ± 0.016µs 2.392µs ± 0.007µs 2.401µs 2.412µs 2.421µs 2.427µs 1.48% -1.433 3.435 0.66% 0.001µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
tags/replace_trace_tags execution_time [2.389µs; 2.394µs] or [-0.092%; +0.092%] None None None

Group 17

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
two way interface execution_time 17.587µs 25.487µs ± 9.112µs 18.481µs ± 0.273µs 33.347µs 42.473µs 42.963µs 68.543µs 270.87% 0.994 0.929 35.66% 0.644µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
two way interface execution_time [24.224µs; 26.750µs] or [-4.955%; +4.955%] None None None

Group 18

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
write only interface execution_time 1.216µs 3.151µs ± 1.410µs 2.981µs ± 0.029µs 3.006µs 3.382µs 13.551µs 14.993µs 402.99% 7.503 56.957 44.65% 0.100µs 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
write only interface execution_time [2.956µs; 3.347µs] or [-6.203%; +6.203%] None None None

Group 19

cpu_model git_commit_sha git_commit_date git_branch
Intel(R) Xeon(R) Platinum 8259CL CPU @ 2.50GHz 99181d9 1771391732 gyuheon0h/crash-ping-kind
scenario metric min mean ± sd median ± mad p75 p95 p99 max peak_to_median_ratio skewness kurtosis cv sem runs sample_size
benching serializing traces from their internal representation to msgpack execution_time 14.835ms 14.873ms ± 0.029ms 14.867ms ± 0.009ms 14.876ms 14.926ms 14.993ms 15.037ms 1.14% 2.892 9.900 0.19% 0.002ms 1 200
scenario metric 95% CI mean Shapiro-Wilk pvalue Ljung-Box pvalue (lag=1) Dip test pvalue
benching serializing traces from their internal representation to msgpack execution_time [14.869ms; 14.877ms] or [-0.027%; +0.027%] None None None

Baseline

Omitted due to size.

@gyuheon0h gyuheon0h changed the title Add kind to crash ping and clarify requirements chore(crashtracking): include Kind in crash ping and clarify requirements Feb 18, 2026
@gyuheon0h gyuheon0h force-pushed the gyuheon0h/crash-ping-kind branch from fb63033 to 9d890c4 Compare February 18, 2026 04:29
@gyuheon0h gyuheon0h force-pushed the gyuheon0h/crash-ping-kind branch 2 times, most recently from b876b7b to f198560 Compare February 18, 2026 05:04
}

pub fn is_ping_ready(&self) -> bool {
// On Unix platforms, wait for both metadata and siginfo
Copy link
Copy Markdown
Contributor Author

@gyuheon0h gyuheon0h Feb 18, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We dont need to know sig info. It is documented for the runtimes to decide to send it if they wish to enhance the ping message

@gyuheon0h gyuheon0h force-pushed the gyuheon0h/crash-ping-kind branch from f198560 to 285bf36 Compare February 18, 2026 05:12
@gyuheon0h gyuheon0h force-pushed the gyuheon0h/crash-ping-kind branch from 285bf36 to 99181d9 Compare February 18, 2026 05:15
@gyuheon0h gyuheon0h marked this pull request as ready for review February 18, 2026 05:20
@gyuheon0h gyuheon0h requested a review from a team as a code owner February 18, 2026 05:20
@codecov-commenter
Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 82.00000% with 9 lines in your changes missing coverage. Please review.
✅ Project coverage is 70.96%. Comparing base (aa58f2d) to head (99181d9).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1595      +/-   ##
==========================================
- Coverage   70.96%   70.96%   -0.01%     
==========================================
  Files         424      424              
  Lines       62077    62117      +40     
==========================================
+ Hits        44056    44084      +28     
- Misses      18021    18033      +12     
Components Coverage Δ
libdd-crashtracker 62.54% <82.00%> (+0.11%) ⬆️
libdd-crashtracker-ffi 15.80% <ø> (ø)
libdd-alloc 98.77% <ø> (ø)
libdd-data-pipeline 85.96% <ø> (ø)
libdd-data-pipeline-ffi 75.63% <ø> (ø)
libdd-common 80.58% <ø> (ø)
libdd-common-ffi 73.75% <ø> (ø)
libdd-telemetry 62.52% <ø> (ø)
libdd-telemetry-ffi 16.75% <ø> (ø)
libdd-dogstatsd-client 82.64% <ø> (ø)
datadog-ipc 80.71% <ø> (ø)
libdd-profiling 81.36% <ø> (-0.02%) ⬇️
libdd-profiling-ffi 63.66% <ø> (ø)
datadog-sidecar 32.76% <ø> (ø)
datdog-sidecar-ffi 9.50% <ø> (ø)
spawn-worker 54.69% <ø> (ø)
libdd-tinybytes 93.16% <ø> (ø)
libdd-trace-normalization 81.71% <ø> (ø)
libdd-trace-obfuscation 94.18% <ø> (ø)
libdd-trace-protobuf 68.00% <ø> (ø)
libdd-trace-utils 89.09% <ø> (-0.14%) ⬇️
datadog-tracer-flare 88.95% <ø> (ø)
libdd-log 74.69% <ø> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@dd-octo-sts
Copy link
Copy Markdown
Contributor

dd-octo-sts bot commented Feb 18, 2026

Artifact Size Benchmark Report

aarch64-alpine-linux-musl
Artifact Baseline Commit Change
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.a 91.61 MB 91.63 MB +.02% (+23.19 KB) 🔍
/aarch64-alpine-linux-musl/lib/libdatadog_profiling.so 8.38 MB 8.38 MB 0% (0 B) 👌
aarch64-unknown-linux-gnu
Artifact Baseline Commit Change
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so 10.76 MB 10.76 MB +0% (+864 B) 👌
/aarch64-unknown-linux-gnu/lib/libdatadog_profiling.a 106.31 MB 106.34 MB +.02% (+27.00 KB) 🔍
libdatadog-x64-windows
Artifact Baseline Commit Change
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.dll 25.01 MB 25.01 MB +0% (+512 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.lib 75.94 KB 75.94 KB 0% (0 B) 👌
/libdatadog-x64-windows/debug/dynamic/datadog_profiling_ffi.pdb 166.58 MB 166.58 MB +0% (+8.00 KB) 👌
/libdatadog-x64-windows/debug/static/datadog_profiling_ffi.lib 838.66 MB 838.67 MB +0% (+12.52 KB) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.dll 9.57 MB 9.57 MB -0% (-512 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.lib 75.94 KB 75.94 KB 0% (0 B) 👌
/libdatadog-x64-windows/release/dynamic/datadog_profiling_ffi.pdb 23.02 MB 23.01 MB --.03% (-8.00 KB) 💪
/libdatadog-x64-windows/release/static/datadog_profiling_ffi.lib 48.42 MB 48.42 MB -0% (-850 B) 👌
libdatadog-x86-windows
Artifact Baseline Commit Change
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.dll 21.09 MB 21.09 MB +0% (+1.50 KB) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.lib 77.12 KB 77.12 KB 0% (0 B) 👌
/libdatadog-x86-windows/debug/dynamic/datadog_profiling_ffi.pdb 170.37 MB 170.38 MB +0% (+16.00 KB) 👌
/libdatadog-x86-windows/debug/static/datadog_profiling_ffi.lib 824.63 MB 824.64 MB +0% (+11.71 KB) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.dll 7.24 MB 7.24 MB +0% (+512 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.lib 77.12 KB 77.12 KB 0% (0 B) 👌
/libdatadog-x86-windows/release/dynamic/datadog_profiling_ffi.pdb 24.62 MB 24.62 MB 0% (0 B) 👌
/libdatadog-x86-windows/release/static/datadog_profiling_ffi.lib 44.15 MB 44.15 MB +0% (+1.28 KB) 👌
x86_64-alpine-linux-musl
Artifact Baseline Commit Change
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.a 80.15 MB 80.17 MB +.02% (+21.65 KB) 🔍
/x86_64-alpine-linux-musl/lib/libdatadog_profiling.so 9.87 MB 9.88 MB +.03% (+4.00 KB) 🔍
x86_64-unknown-linux-gnu
Artifact Baseline Commit Change
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.a 100.25 MB 100.27 MB +.02% (+24.69 KB) 🔍
/x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so 11.44 MB 11.45 MB +.03% (+4.61 KB) 🔍

@gyuheon0h gyuheon0h changed the title chore(crashtracking): include Kind in crash ping and clarify requirements feat(crashtracking): include Kind in crash ping and clarify requirements Feb 18, 2026
Copy link
Copy Markdown
Contributor

@gleocadie gleocadie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@gyuheon0h
Copy link
Copy Markdown
Contributor Author

/merge

@gh-worker-devflow-routing-ef8351
Copy link
Copy Markdown

gh-worker-devflow-routing-ef8351 bot commented Feb 19, 2026

View all feedbacks in Devflow UI.

2026-02-19 16:52:05 UTC ℹ️ Start processing command /merge


2026-02-19 16:52:10 UTC ℹ️ MergeQueue: pull request added to the queue

The expected merge time in main is approximately 45m (p90).


2026-02-19 17:29:19 UTC ℹ️ MergeQueue: This merge request was merged

@gh-worker-dd-mergequeue-cf854d gh-worker-dd-mergequeue-cf854d bot merged commit 27de9f3 into main Feb 19, 2026
90 of 93 checks passed
@ivoanjo
Copy link
Copy Markdown
Member

ivoanjo commented Feb 20, 2026

👍 I just gave this an after-merge pass, looks great!

gh-worker-dd-mergequeue-cf854d bot pushed a commit that referenced this pull request Feb 20, 2026
# What does this PR do?

This PR adds support for applications to report unhandled exceptions through the libdatadog crashtracking infrastructure. 

I expose an API `report_unhandled_exception` which takes in a complete stacktrace, optional exception message, and optional exception type. It then uses pre-existing functionality to pipe over this data along with other data collected by the crashtracker to the receiver, generating a crash report for unhandled exceptions. 

I decide to reuse the current emit code logic and an enum for ErrorKind specific parameters and have conditional logic to decide what to emit based on Kind. This lets us keep the report generation largely unified, making sure that there is no drift. 

Another design choice could have been implementing a separate flow to create the crash report piece by piece for unhandled exceptions and upload it directly to an endpoint, but I greatly!!! prefer to reuse a slightly modified emit flow, to minimize drift and ensure parity between to two different "types" of crash reports.


PR below on the stack: [feat(crashtracking): include Kind in crash ping and clarify requirements](#1595 (comment))
PR above on the stack: [feat(crashtracking): unhandled exception reporting FFI](#1597)

# Motivation


# Additional Notes
Example output
```
{
  "counters": {
    "profiler_inactive": 0,
    "profiler_collecting_sample": 0,
    "profiler_serializing": 0,
    "profiler_unwinding": 0
  },
  "data_schema_version": "1.5",
  "error": {
    "is_crash": true,
    "kind": "UnhandledException",
    "message": "Process was terminated due to an unhandled exception of type 'com.example.UncaughtRuntimeException'. Message: Something went very wrong in the runtime",
    "thread_name": "crashtracking_u",
    "source_type": "Crashtracking",
    "stack": {
      "format": "Datadog Crashtracker 1.0",
      "frames": [
        {
          "function": "com.example.MyApp.processRequest"
        },
        {
          "function": "com.example.runtime.EventLoop.run"
        },
        {
          "function": "com.example.runtime.main"
        }
      ],
      "incomplete": false
    }
  },
  "experimental": {},
  "files": {
    "/proc/self/maps": [
      "5f06e90e8000-5f06e90e9000 r--p 00000000 103:03 20388557                  /home/bits/go/src/github.com/DataDog/libdatadog/examples/ffi/build/crashtracking_unhandled_exception",
      "5f06e90e9000-5f06e90ea000 r-xp 00001000 103:03 20388557                  /home/bits/go/src/github.com/DataDog/libdatadog/examples/ffi/build/crashtracking_unhandled_exception",
      "5f06e90ea000-5f06e90eb000 r--p 00002000 103:03 20388557                  /home/bits/go/src/github.com/DataDog/libdatadog/examples/ffi/build/crashtracking_unhandled_exception",
      "5f06e90eb000-5f06e90ec000 r--p 00002000 103:03 20388557                  /home/bits/go/src/github.com/DataDog/libdatadog/examples/ffi/build/crashtracking_unhandled_exception",
      "5f06e90ec000-5f06e90ed000 rw-p 00003000 103:03 20388557                  /home/bits/go/src/github.com/DataDog/libdatadog/examples/ffi/build/crashtracking_unhandled_exception",
      "5f0706a0b000-5f0706a2c000 rw-p 00000000 00:00 0                          [heap]",
      "7b23aaec5000-7b23aaec8000 rw-p 00000000 00:00 0 ",
      "7b23aaec8000-7b23aaed6000 r--p 00000000 00:33 18157635                   /usr/lib/x86_64-linux-gnu/libm.so.6",
      "7b23aaed6000-7b23aaf52000 r-xp 0000e000 00:33 18157635                   /usr/lib/x86_64-linux-gnu/libm.so.6",
      "7b23aaf52000-7b23aafad000 r--p 0008a000 00:33 18157635                   /usr/lib/x86_64-linux-gnu/libm.so.6",
      "7b23aafad000-7b23aafae000 r--p 000e4000 00:33 18157635                   /usr/lib/x86_64-linux-gnu/libm.so.6",
      "7b23aafae000-7b23aafaf000 rw-p 000e5000 00:33 18157635                   /usr/lib/x86_64-linux-gnu/libm.so.6",
      "7b23aafaf000-7b23aafb2000 r--p 00000000 00:33 526021                     /usr/lib/x86_64-linux-gnu/libgcc_s.so.1",
      "7b23aafb2000-7b23aafc9000 r-xp 00003000 00:33 526021                     /usr/lib/x86_64-linux-gnu/libgcc_s.so.1",
      "7b23aafc9000-7b23aafcd000 r--p 0001a000 00:33 526021                     /usr/lib/x86_64-linux-gnu/libgcc_s.so.1",
      "7b23aafcd000-7b23aafce000 r--p 0001d000 00:33 526021                     /usr/lib/x86_64-linux-gnu/libgcc_s.so.1",
      "7b23aafce000-7b23aafcf000 rw-p 0001e000 00:33 526021                     /usr/lib/x86_64-linux-gnu/libgcc_s.so.1",
      "7b23aafcf000-7b23aaff7000 r--p 00000000 00:33 18157632                   /usr/lib/x86_64-linux-gnu/libc.so.6",
      "7b23aaff7000-7b23ab18c000 r-xp 00028000 00:33 18157632                   /usr/lib/x86_64-linux-gnu/libc.so.6",
      "7b23ab18c000-7b23ab1e4000 r--p 001bd000 00:33 18157632                   /usr/lib/x86_64-linux-gnu/libc.so.6",
      "7b23ab1e4000-7b23ab1e5000 ---p 00215000 00:33 18157632                   /usr/lib/x86_64-linux-gnu/libc.so.6",
      "7b23ab1e5000-7b23ab1e9000 r--p 00215000 00:33 18157632                   /usr/lib/x86_64-linux-gnu/libc.so.6",
      "7b23ab1e9000-7b23ab1eb000 rw-p 00219000 00:33 18157632                   /usr/lib/x86_64-linux-gnu/libc.so.6",
      "7b23ab1eb000-7b23ab1f8000 rw-p 00000000 00:00 0 ",
      "7b23ab200000-7b23ab4be000 r--p 00000000 103:03 19134266                  /home/bits/go/src/github.com/DataDog/libdatadog/release/lib/libdatadog_profiling.so",
      "7b23ab4be000-7b23abb38000 r-xp 002bd000 103:03 19134266                  /home/bits/go/src/github.com/DataDog/libdatadog/release/lib/libdatadog_profiling.so",
      "7b23abb38000-7b23abbae000 r--p 00936000 103:03 19134266                  /home/bits/go/src/github.com/DataDog/libdatadog/release/lib/libdatadog_profiling.so",
      "7b23abbae000-7b23abbb1000 rw-p 009ab000 103:03 19134266                  /home/bits/go/src/github.com/DataDog/libdatadog/release/lib/libdatadog_profiling.so",
      "7b23abbb1000-7b23abbcf000 rw-p 00000000 00:00 0 ",
      "7b23abbcf000-7b23abbd3000 rw-p 00000000 00:00 0 ",
      "7b23abbd3000-7b23abbd5000 r--p 00000000 00:33 18157629                   /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2",
      "7b23abbd5000-7b23abbff000 r-xp 00002000 00:33 18157629                   /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2",
      "7b23abbff000-7b23abc0a000 r--p 0002c000 00:33 18157629                   /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2",
      "7b23abc0b000-7b23abc0d000 r--p 00037000 00:33 18157629                   /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2",
      "7b23abc0d000-7b23abc0f000 rw-p 00039000 00:33 18157629                   /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2",
      "7ffd13b11000-7ffd13b33000 rw-p 00000000 00:00 0                          [stack]",
      "7ffd13ba9000-7ffd13bad000 r--p 00000000 00:00 0                          [vvar]",
      "7ffd13bad000-7ffd13baf000 r-xp 00000000 00:00 0                          [vdso]",
      "ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0                  [vsyscall]",
      ""
    ]
  },
  "incomplete": false,
  "metadata": {
    "library_name": "crashtracking-ffi-test",
    "library_version": "0.0.0",
    "family": "native"
  },
  "os_info": {
    "architecture": "x86_64",
    "bitness": "64-bit",
    "os_type": "Ubuntu",
    "version": "22.4.0"
  },
  "proc_info": {
    "pid": 3794082,
    "tid": 3794082
  },
  "timestamp": "2026-02-18 07:11:37.317056506 UTC",
  "uuid": "930d6e20-f14d-42fd-bdac-c4263da9a6ca"
}
```
# How to test the change?

Unit test, bin test, instrument application and emit a crash report for an unhandled exception

Co-authored-by: gyuheon.oh <[email protected]>
hoolioh pushed a commit that referenced this pull request Mar 17, 2026
# Release proposal for libdd-crashtracker and its dependencies

This PR contains version bumps based on public API changes and commits
since last release.

## libdd-crashtracker
**Next version:** `2.0.0`

**Semver bump:** `major`
**Tag:** `libdd-crashtracker-v2.0.0`

### Commits

- chore(crashtracking): add tag for target triple (#1741)
- refactor(libdd-crashtracker)!: avoid leaking Endpoint through the
public API (#1705)
- chore(cargo): bump to 29.0.0 (#1702)
- fix(crashtracking): use libunwind to unwind frames (#1663)
- chore(deps): bump blazesym to 0.2.3 and blazesym-c to 0.1.7 (#1654)
- chore(ci): fix crashtracker receiver binary rpath setting (#1652)
- chore(crashtracking): emit a best effort stacktrace for Mac (#1645)
- chore(crashtracker): use default-features=false for aws-lc-sys (#1625)
- feat(crashtracking): report unhandled exceptions (#1596)
- refactor(ddcommon)!: remove direct dependency on hyper client
everywhere in common (#1604)
- feat(crashtracking): include `Kind` in crash ping and clarify
requirements (#1595)
- fix(crashtracking): add process_tags to application field (#1576)
- ci: update nightly in CI to 2026-02-08 (#1539)
- fix(telemetry)!: fix logs payload format [APMSP-2590] (#1498)
- chore(crashtracking): bump os_info crate to 3.14 (#1507)
- Don't bail (#1494)
- feat(crashtracking)!: emit crashing thread name in crash report for
linux crashes (#1485)
- test(crashtracking): add minimal LD preload test for crashtracker
collector (#1428)
- chore: release libddcommon-v1.1.0 (#1456)
- chore: prepare libdd-telemetry-v2.0.0 (#1457)
- [crashtracker] Retrieve panic message when crashing (#1361)
- fix(sidecar): AWS lambda also can return EACCESS for shm_open (#1446)
- chore(crashtracking): add `is_crash_debug` tag to crashtracker
receiver debug logs (#1445)
- [crashtracker] Log errors in crashtracker receiver (#1395)
- chore: add changelog for every published crate (#1396)
- Fix CI (#1389)
- [crashtracker] Set OS info in the crash info builder when receiving
report (#1388)
- crashtracker: support cxx bindings for crashinfo (#1379)

[APMSP-2590]:
https://datadoghq.atlassian.net/browse/APMSP-2590?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

Co-authored-by: dd-octo-sts[bot] <200755185+dd-octo-sts[bot]@users.noreply.github.com>
hoolioh pushed a commit that referenced this pull request Mar 17, 2026
# Release proposal for libdd-crashtracker and its dependencies

This PR contains version bumps based on public API changes and commits
since last release.

## libdd-crashtracker
**Next version:** `2.0.0`

**Semver bump:** `major`
**Tag:** `libdd-crashtracker-v2.0.0`

### Commits

- chore(crashtracking): add tag for target triple (#1741)
- refactor(libdd-crashtracker)!: avoid leaking Endpoint through the
public API (#1705)
- chore(cargo): bump to 29.0.0 (#1702)
- fix(crashtracking): use libunwind to unwind frames (#1663)
- chore(deps): bump blazesym to 0.2.3 and blazesym-c to 0.1.7 (#1654)
- chore(ci): fix crashtracker receiver binary rpath setting (#1652)
- chore(crashtracking): emit a best effort stacktrace for Mac (#1645)
- chore(crashtracker): use default-features=false for aws-lc-sys (#1625)
- feat(crashtracking): report unhandled exceptions (#1596)
- refactor(ddcommon)!: remove direct dependency on hyper client
everywhere in common (#1604)
- feat(crashtracking): include `Kind` in crash ping and clarify
requirements (#1595)
- fix(crashtracking): add process_tags to application field (#1576)
- ci: update nightly in CI to 2026-02-08 (#1539)
- fix(telemetry)!: fix logs payload format [APMSP-2590] (#1498)
- chore(crashtracking): bump os_info crate to 3.14 (#1507)
- Don't bail (#1494)
- feat(crashtracking)!: emit crashing thread name in crash report for
linux crashes (#1485)
- test(crashtracking): add minimal LD preload test for crashtracker
collector (#1428)
- chore: release libddcommon-v1.1.0 (#1456)
- chore: prepare libdd-telemetry-v2.0.0 (#1457)
- [crashtracker] Retrieve panic message when crashing (#1361)
- fix(sidecar): AWS lambda also can return EACCESS for shm_open (#1446)
- chore(crashtracking): add `is_crash_debug` tag to crashtracker
receiver debug logs (#1445)
- [crashtracker] Log errors in crashtracker receiver (#1395)
- chore: add changelog for every published crate (#1396)
- Fix CI (#1389)
- [crashtracker] Set OS info in the crash info builder when receiving
report (#1388)
- crashtracker: support cxx bindings for crashinfo (#1379)

[APMSP-2590]:
https://datadoghq.atlassian.net/browse/APMSP-2590?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

Co-authored-by: dd-octo-sts[bot] <200755185+dd-octo-sts[bot]@users.noreply.github.com>
hoolioh pushed a commit that referenced this pull request Mar 17, 2026
# Release proposal for libdd-crashtracker and its dependencies

This PR contains version bumps based on public API changes and commits
since last release.

## libdd-crashtracker
**Next version:** `2.0.0`

**Semver bump:** `major`
**Tag:** `libdd-crashtracker-v2.0.0`

### Commits

- chore(ci): give libdd-libunwind-sys its own version (#1743)
- chore(crashtracking): add tag for target triple (#1741)
- refactor(libdd-crashtracker)!: avoid leaking Endpoint through the
public API (#1705)
- chore(cargo): bump to 29.0.0 (#1702)
- fix(crashtracking): use libunwind to unwind frames (#1663)
- chore(deps): bump blazesym to 0.2.3 and blazesym-c to 0.1.7 (#1654)
- chore(ci): fix crashtracker receiver binary rpath setting (#1652)
- chore(crashtracking): emit a best effort stacktrace for Mac (#1645)
- chore(crashtracker): use default-features=false for aws-lc-sys (#1625)
- feat(crashtracking): report unhandled exceptions (#1596)
- refactor(ddcommon)!: remove direct dependency on hyper client
everywhere in common (#1604)
- feat(crashtracking): include `Kind` in crash ping and clarify
requirements (#1595)
- fix(crashtracking): add process_tags to application field (#1576)
- ci: update nightly in CI to 2026-02-08 (#1539)
- fix(telemetry)!: fix logs payload format [APMSP-2590] (#1498)
- chore(crashtracking): bump os_info crate to 3.14 (#1507)
- Don't bail (#1494)
- feat(crashtracking)!: emit crashing thread name in crash report for
linux crashes (#1485)
- test(crashtracking): add minimal LD preload test for crashtracker
collector (#1428)
- chore: release libddcommon-v1.1.0 (#1456)
- chore: prepare libdd-telemetry-v2.0.0 (#1457)
- [crashtracker] Retrieve panic message when crashing (#1361)
- fix(sidecar): AWS lambda also can return EACCESS for shm_open (#1446)
- chore(crashtracking): add `is_crash_debug` tag to crashtracker
receiver debug logs (#1445)
- [crashtracker] Log errors in crashtracker receiver (#1395)
- chore: add changelog for every published crate (#1396)
- Fix CI (#1389)
- [crashtracker] Set OS info in the crash info builder when receiving
report (#1388)
- crashtracker: support cxx bindings for crashinfo (#1379)

[APMSP-2590]:
https://datadoghq.atlassian.net/browse/APMSP-2590?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

Co-authored-by: dd-octo-sts[bot] <200755185+dd-octo-sts[bot]@users.noreply.github.com>
hoolioh pushed a commit that referenced this pull request Mar 17, 2026
# Release proposal for libdd-crashtracker and its dependencies

This PR contains version bumps based on public API changes and commits
since last release.

## libdd-crashtracker
**Next version:** `2.0.0`

**Semver bump:** `major`
**Tag:** `libdd-crashtracker-v2.0.0`

### Commits

- chore(crashtracking): rename target triple to runtime platform (#1747)
- chore(ci): give libdd-libunwind-sys its own version (#1743)
- chore(crashtracking): add tag for target triple (#1741)
- refactor(libdd-crashtracker)!: avoid leaking Endpoint through the
public API (#1705)
- chore(cargo): bump to 29.0.0 (#1702)
- fix(crashtracking): use libunwind to unwind frames (#1663)
- chore(deps): bump blazesym to 0.2.3 and blazesym-c to 0.1.7 (#1654)
- chore(ci): fix crashtracker receiver binary rpath setting (#1652)
- chore(crashtracking): emit a best effort stacktrace for Mac (#1645)
- chore(crashtracker): use default-features=false for aws-lc-sys (#1625)
- feat(crashtracking): report unhandled exceptions (#1596)
- refactor(ddcommon)!: remove direct dependency on hyper client
everywhere in common (#1604)
- feat(crashtracking): include `Kind` in crash ping and clarify
requirements (#1595)
- fix(crashtracking): add process_tags to application field (#1576)
- ci: update nightly in CI to 2026-02-08 (#1539)
- fix(telemetry)!: fix logs payload format [APMSP-2590] (#1498)
- chore(crashtracking): bump os_info crate to 3.14 (#1507)
- Don't bail (#1494)
- feat(crashtracking)!: emit crashing thread name in crash report for
linux crashes (#1485)
- test(crashtracking): add minimal LD preload test for crashtracker
collector (#1428)
- chore: release libddcommon-v1.1.0 (#1456)
- chore: prepare libdd-telemetry-v2.0.0 (#1457)
- [crashtracker] Retrieve panic message when crashing (#1361)
- fix(sidecar): AWS lambda also can return EACCESS for shm_open (#1446)
- chore(crashtracking): add `is_crash_debug` tag to crashtracker
receiver debug logs (#1445)
- [crashtracker] Log errors in crashtracker receiver (#1395)
- chore: add changelog for every published crate (#1396)
- Fix CI (#1389)
- [crashtracker] Set OS info in the crash info builder when receiving
report (#1388)
- crashtracker: support cxx bindings for crashinfo (#1379)

Co-authored-by: dd-octo-sts[bot] <200755185+dd-octo-sts[bot]@users.noreply.github.com>
hoolioh pushed a commit that referenced this pull request Mar 17, 2026
# Release proposal for libdd-crashtracker and its dependencies

This PR contains version bumps based on public API changes and commits
since last release.

## libdd-crashtracker
**Next version:** `2.0.0`

**Semver bump:** `major`
**Tag:** `libdd-crashtracker-v2.0.0`

### Commits

- chore(crashtracking): rename target triple to runtime platform (#1747)
- chore(ci): give libdd-libunwind-sys its own version (#1743)
- chore(crashtracking): add tag for target triple (#1741)
- refactor(libdd-crashtracker)!: avoid leaking Endpoint through the
public API (#1705)
- chore(cargo): bump to 29.0.0 (#1702)
- fix(crashtracking): use libunwind to unwind frames (#1663)
- chore(deps): bump blazesym to 0.2.3 and blazesym-c to 0.1.7 (#1654)
- chore(ci): fix crashtracker receiver binary rpath setting (#1652)
- chore(crashtracking): emit a best effort stacktrace for Mac (#1645)
- chore(crashtracker): use default-features=false for aws-lc-sys (#1625)
- feat(crashtracking): report unhandled exceptions (#1596)
- refactor(ddcommon)!: remove direct dependency on hyper client
everywhere in common (#1604)
- feat(crashtracking): include `Kind` in crash ping and clarify
requirements (#1595)
- fix(crashtracking): add process_tags to application field (#1576)
- ci: update nightly in CI to 2026-02-08 (#1539)
- fix(telemetry)!: fix logs payload format [APMSP-2590] (#1498)
- chore(crashtracking): bump os_info crate to 3.14 (#1507)
- Don't bail (#1494)
- feat(crashtracking)!: emit crashing thread name in crash report for
linux crashes (#1485)
- test(crashtracking): add minimal LD preload test for crashtracker
collector (#1428)
- chore: release libddcommon-v1.1.0 (#1456)
- chore: prepare libdd-telemetry-v2.0.0 (#1457)
- [crashtracker] Retrieve panic message when crashing (#1361)
- fix(sidecar): AWS lambda also can return EACCESS for shm_open (#1446)
- chore(crashtracking): add `is_crash_debug` tag to crashtracker
receiver debug logs (#1445)
- [crashtracker] Log errors in crashtracker receiver (#1395)
- chore: add changelog for every published crate (#1396)
- Fix CI (#1389)
- [crashtracker] Set OS info in the crash info builder when receiving
report (#1388)
- crashtracker: support cxx bindings for crashinfo (#1379)

Co-authored-by: dd-octo-sts[bot] <200755185+dd-octo-sts[bot]@users.noreply.github.com>
hoolioh pushed a commit that referenced this pull request Mar 18, 2026
# Release proposal for libdd-crashtracker and its dependencies

This PR contains version bumps based on public API changes and commits
since last release.

## libdd-common
**Next version:** `3.0.0`

**Semver bump:** `major`
**Tag:** `libdd-common-v3.0.0`

### Commits

- refactor(trace-utils)!: change header name type to accept dynamic
values (#1722)
## libdd-crashtracker
**Next version:** `2.0.0`

**Semver bump:** `major`
**Tag:** `libdd-crashtracker-v2.0.0`

### Commits

- chore(crashtracking): rename target triple to runtime platform (#1747)
- chore(ci): give libdd-libunwind-sys its own version (#1743)
- chore(crashtracking): add tag for target triple (#1741)
- refactor(libdd-crashtracker)!: avoid leaking Endpoint through the
public API (#1705)
- chore(cargo): bump to 29.0.0 (#1702)
- fix(crashtracking): use libunwind to unwind frames (#1663)
- chore(deps): bump blazesym to 0.2.3 and blazesym-c to 0.1.7 (#1654)
- chore(ci): fix crashtracker receiver binary rpath setting (#1652)
- chore(crashtracking): emit a best effort stacktrace for Mac (#1645)
- chore(crashtracker): use default-features=false for aws-lc-sys (#1625)
- feat(crashtracking): report unhandled exceptions (#1596)
- refactor(ddcommon)!: remove direct dependency on hyper client
everywhere in common (#1604)
- feat(crashtracking): include `Kind` in crash ping and clarify
requirements (#1595)
- fix(crashtracking): add process_tags to application field (#1576)
- ci: update nightly in CI to 2026-02-08 (#1539)
- fix(telemetry)!: fix logs payload format [APMSP-2590] (#1498)
- chore(crashtracking): bump os_info crate to 3.14 (#1507)
- Don't bail (#1494)
- feat(crashtracking)!: emit crashing thread name in crash report for
linux crashes (#1485)
- test(crashtracking): add minimal LD preload test for crashtracker
collector (#1428)
- chore: release libddcommon-v1.1.0 (#1456)
- chore: prepare libdd-telemetry-v2.0.0 (#1457)
- [crashtracker] Retrieve panic message when crashing (#1361)
- fix(sidecar): AWS lambda also can return EACCESS for shm_open (#1446)
- chore(crashtracking): add `is_crash_debug` tag to crashtracker
receiver debug logs (#1445)
- [crashtracker] Log errors in crashtracker receiver (#1395)
- chore: add changelog for every published crate (#1396)
- Fix CI (#1389)
- [crashtracker] Set OS info in the crash info builder when receiving
report (#1388)
- crashtracker: support cxx bindings for crashinfo (#1379)

[APMSP-2590]:
https://datadoghq.atlassian.net/browse/APMSP-2590?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

---------

Co-authored-by: dd-octo-sts[bot] <200755185+dd-octo-sts[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants