diff --git a/brave/src/main/java/brave/baggage/BaggageFields.java b/brave/src/main/java/brave/baggage/BaggageFields.java
index fa3e991b02..0b51322a6b 100644
--- a/brave/src/main/java/brave/baggage/BaggageFields.java
+++ b/brave/src/main/java/brave/baggage/BaggageFields.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2013-2020 The OpenZipkin Authors
+ * Copyright 2013-2024 The OpenZipkin Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
@@ -25,7 +25,7 @@
*
Built-in fields
* The following are fields that dispatch to methods on the {@link TraceContext}. They are available
* regardless of {@link BaggagePropagation}. None will return in lookups such as {@link
- * BaggageField#getAll(TraceContext)} or {@link BaggageField#getByName(TraceContext, String)}
+ * BaggageField#getAllValues(TraceContext)} or {@link BaggageField#getByName(TraceContext, String)}.
*
*
*
{@link #TRACE_ID}
diff --git a/brave/src/main/java/brave/propagation/TraceContext.java b/brave/src/main/java/brave/propagation/TraceContext.java
index 3c1c537ed9..65bb0f3f6c 100644
--- a/brave/src/main/java/brave/propagation/TraceContext.java
+++ b/brave/src/main/java/brave/propagation/TraceContext.java
@@ -14,9 +14,12 @@
package brave.propagation;
import brave.Span;
+import brave.baggage.BaggageFields;
+import brave.baggage.BaggagePropagation;
import brave.internal.InternalPropagation;
import brave.internal.Nullable;
import brave.internal.Platform;
+import brave.internal.baggage.ExtraBaggageContext;
import java.lang.ref.WeakReference;
import java.util.Collections;
import java.util.List;
@@ -182,15 +185,15 @@ public boolean shared() {
}
/**
- * Returns a list of additional data propagated through this trace.
+ * Used internally by propagation plugins to search for their instance of state regardless of if
+ * it is in a {@linkplain TraceContext} or {@linkplain TraceContextOrSamplingFlags}.
*
- *
The contents are intentionally opaque, deferring to {@linkplain Propagation} to define. An
- * example implementation could be storing a class containing a correlation value, which is
- * extracted from incoming requests and injected as-is onto outgoing requests.
- *
- *
Implementations are responsible for scoping any data stored here. This can be performed
- * when {@link Propagation.Factory#decorate(TraceContext)} is called.
+ *
Tools that work only on {@linkplain TraceContext} should use {@link #findExtra(Class)}
+ * instead.
*
+ * @see #findExtra(Class)
+ * @see TraceContextOrSamplingFlags#extra()
+ * @see Builder#addExtra(Object) for notes on extra values.
* @since 4.9
*/
public List