Skip to content

[AI] Add support for thinkingSummaries and thoughtSignatures #7272

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 20 commits into from
Aug 20, 2025
Merged

Conversation

rlazo
Copy link
Collaborator

@rlazo rlazo commented Aug 19, 2025

Added support for returning thought summaries when using thinking-compatible models.

Additionally, it adds support for automatic handling of thoughtSignatures.

Copy link
Contributor

github-actions bot commented Aug 19, 2025

Javadoc Changes:
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/ai/type/CodeExecutionResultPart.html	2025-08-19 18:05:28.140688835 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/ai/type/CodeExecutionResultPart.html	2025-08-19 18:02:06.754944954 +0000
@@ -25,6 +25,12 @@
         </thead>
         <tbody class="list">
           <tr>
+            <td><code>boolean</code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/CodeExecutionResultPart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code>final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/CodeExecutionResultPart.html#outcome()">outcome</a></code></div>
@@ -61,6 +67,10 @@
     </div>
     <div class="list">
       <h2>Public fields</h2>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;boolean&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/CodeExecutionResultPart.html#isThought()">isThought</a></pre>
+      </div>
       <div class="api-item"><a name="getOutcome()"></a><a name="setOutcome()"></a><a name="getOutcome--"></a><a name="setOutcome--"></a>
         <h3 class="api-name" id="outcome()">outcome</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/CodeExecutionResultPart.html#outcome()">outcome</a></pre>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/ai/type/ExecutableCodePart.html	2025-08-19 18:05:28.141688848 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/ai/type/ExecutableCodePart.html	2025-08-19 18:02:06.755944967 +0000
@@ -31,6 +31,12 @@
             </td>
           </tr>
           <tr>
+            <td><code>boolean</code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ExecutableCodePart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code>final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ExecutableCodePart.html#language()">language</a></code></div>
@@ -65,6 +71,10 @@
         <h3 class="api-name" id="code()">code</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ExecutableCodePart.html#code()">code</a></pre>
       </div>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;boolean&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ExecutableCodePart.html#isThought()">isThought</a></pre>
+      </div>
       <div class="api-item"><a name="getLanguage()"></a><a name="setLanguage()"></a><a name="getLanguage--"></a><a name="setLanguage--"></a>
         <h3 class="api-name" id="language()">language</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ExecutableCodePart.html#language()">language</a></pre>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/ai/type/FileDataPart.html	2025-08-19 18:05:28.154689026 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/ai/type/FileDataPart.html	2025-08-19 18:02:06.765945104 +0000
@@ -26,6 +26,12 @@
         </thead>
         <tbody class="list">
           <tr>
+            <td><code>boolean</code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FileDataPart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code>final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FileDataPart.html#mimeType()">mimeType</a></code></div>
@@ -64,6 +70,10 @@
     </div>
     <div class="list">
       <h2>Public fields</h2>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;boolean&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FileDataPart.html#isThought()">isThought</a></pre>
+      </div>
       <div class="api-item"><a name="getMimeType()"></a><a name="setMimeType()"></a><a name="getMimeType--"></a><a name="setMimeType--"></a>
         <h3 class="api-name" id="mimeType()">mimeType</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FileDataPart.html#mimeType()">mimeType</a></pre>
@@ -80,33 +90,6 @@
       <div class="api-item"><a name="FileDataPart(kotlin.String, kotlin.String)"></a><a name="FileDataPart-kotlin.String-kotlin.String-"></a><a name="filedatapart"></a>
         <h3 class="api-name" id="FileDataPart(kotlin.String,kotlin.String)">FileDataPart</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FileDataPart.html#FileDataPart(kotlin.String,kotlin.String)">FileDataPart</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;uri,&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;mimeType)</pre>
-        <div class="devsite-table-wrapper">
-          <table class="responsive">
-            <colgroup>
-              <col width="40%">
-              <col>
-            </colgroup>
-            <thead>
-              <tr>
-                <th colspan="100%">Parameters</th>
-              </tr>
-            </thead>
-            <tbody class="list">
-              <tr>
-                <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;uri</code></td>
-                <td>
-                  <p>The <code>&quot;gs://&quot;</code>-prefixed URI of the file in Cloud Storage for Firebase, for example, <code>&quot;gs://bucket-name/path/image.jpg&quot;</code></p>
-                </td>
-              </tr>
-              <tr>
-                <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;mimeType</code></td>
-                <td>
-                  <p>an IANA standard MIME type. For supported MIME type values see the <a href="https://firebase.google.com/docs/vertex-ai/input-file-requirements">Firebase documentation</a>.</p>
-                </td>
-              </tr>
-            </tbody>
-          </table>
-        </div>
       </div>
     </div>
   </body>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/ai/type/FunctionCallPart.html	2025-08-19 18:05:28.154689026 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/ai/type/FunctionCallPart.html	2025-08-19 18:02:06.764945090 +0000
@@ -40,6 +40,12 @@
             </td>
           </tr>
           <tr>
+            <td><code>boolean</code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionCallPart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code>final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionCallPart.html#name()">name</a></code></div>
@@ -81,6 +87,10 @@
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;<a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionCallPart.html#id()">id</a></pre>
         <p>Unique id of the function call. If present, the returned <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionResponsePart.html">FunctionResponsePart</a></code> should have a matching <code>id</code> field.</p>
       </div>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;boolean&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionCallPart.html#isThought()">isThought</a></pre>
+      </div>
       <div class="api-item"><a name="getName()"></a><a name="setName()"></a><a name="getName--"></a><a name="setName--"></a>
         <h3 class="api-name" id="name()">name</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionCallPart.html#name()">name</a></pre>
@@ -92,39 +102,6 @@
       <div class="api-item"><a name="FunctionCallPart(kotlin.String, kotlin.collections.Map, kotlin.String)"></a><a name="FunctionCallPart-kotlin.String-kotlin.collections.Map-kotlin.String-"></a><a name="functioncallpart"></a>
         <h3 class="api-name" id="FunctionCallPart(kotlin.String,kotlin.collections.Map,kotlin.String)">FunctionCallPart</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionCallPart.html#FunctionCallPart(kotlin.String,kotlin.collections.Map,kotlin.String)">FunctionCallPart</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;name,<br>&nbsp;&nbsp;&nbsp;&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/util/Map.html">Map</a>&lt;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>,&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://github.com/docs/reference/android/kotlinx/serialization/json/JsonElement.html">JsonElement</a>&gt;&nbsp;args,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;id<br>)</pre>
-        <div class="devsite-table-wrapper">
-          <table class="responsive">
-            <colgroup>
-              <col width="40%">
-              <col>
-            </colgroup>
-            <thead>
-              <tr>
-                <th colspan="100%">Parameters</th>
-              </tr>
-            </thead>
-            <tbody class="list">
-              <tr>
-                <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;name</code></td>
-                <td>
-                  <p>the name of the function to call</p>
-                </td>
-              </tr>
-              <tr>
-                <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/util/Map.html">Map</a>&lt;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>,&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://github.com/docs/reference/android/kotlinx/serialization/json/JsonElement.html">JsonElement</a>&gt;&nbsp;args</code></td>
-                <td>
-                  <p>the function parameters and values as a <code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html">Map</a></code></p>
-                </td>
-              </tr>
-              <tr>
-                <td><code><a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;id</code></td>
-                <td>
-                  <p>Unique id of the function call. If present, the returned <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionResponsePart.html">FunctionResponsePart</a></code> should have a matching <code>id</code> field.</p>
-                </td>
-              </tr>
-            </tbody>
-          </table>
-        </div>
       </div>
     </div>
   </body>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/ai/type/FunctionResponsePart.html	2025-08-19 18:05:28.173689285 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/ai/type/FunctionResponsePart.html	2025-08-19 18:02:06.774945226 +0000
@@ -33,6 +33,12 @@
             </td>
           </tr>
           <tr>
+            <td><code>boolean</code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionResponsePart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code>final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionResponsePart.html#name()">name</a></code></div>
@@ -76,6 +82,10 @@
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;<a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionResponsePart.html#id()">id</a></pre>
         <p>Matching <code>id</code> for a <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionCallPart.html">FunctionCallPart</a></code>, if one was provided.</p>
       </div>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;boolean&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionResponsePart.html#isThought()">isThought</a></pre>
+      </div>
       <div class="api-item"><a name="getName()"></a><a name="setName()"></a><a name="getName--"></a><a name="setName--"></a>
         <h3 class="api-name" id="name()">name</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionResponsePart.html#name()">name</a></pre>
@@ -92,39 +102,6 @@
       <div class="api-item"><a name="FunctionResponsePart(kotlin.String, kotlinx.serialization.json.JsonObject, kotlin.String)"></a><a name="FunctionResponsePart-kotlin.String-kotlinx.serialization.json.JsonObject-kotlin.String-"></a><a name="functionresponsepart"></a>
         <h3 class="api-name" id="FunctionResponsePart(kotlin.String,kotlinx.serialization.json.JsonObject,kotlin.String)">FunctionResponsePart</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionResponsePart.html#FunctionResponsePart(kotlin.String,kotlinx.serialization.json.JsonObject,kotlin.String)">FunctionResponsePart</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;name,<br>&nbsp;&nbsp;&nbsp;&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://github.com/docs/reference/android/kotlinx/serialization/json/JsonObject.html">JsonObject</a>&nbsp;response,<br>&nbsp;&nbsp;&nbsp;&nbsp;<a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;id<br>)</pre>
-        <div class="devsite-table-wrapper">
-          <table class="responsive">
-            <colgroup>
-              <col width="40%">
-              <col>
-            </colgroup>
-            <thead>
-              <tr>
-                <th colspan="100%">Parameters</th>
-              </tr>
-            </thead>
-            <tbody class="list">
-              <tr>
-                <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;name</code></td>
-                <td>
-                  <p>The name of the called function.</p>
-                </td>
-              </tr>
-              <tr>
-                <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://github.com/docs/reference/android/kotlinx/serialization/json/JsonObject.html">JsonObject</a>&nbsp;response</code></td>
-                <td>
-                  <p>The response produced by the function as a <code><a href="https://developer.android.com/reference/kotlin/org/json/JSONObject.html">JSONObject</a></code>.</p>
-                </td>
-              </tr>
-              <tr>
-                <td><code><a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;id</code></td>
-                <td>
-                  <p>Matching <code>id</code> for a <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionCallPart.html">FunctionCallPart</a></code>, if one was provided.</p>
-                </td>
-              </tr>
-            </tbody>
-          </table>
-        </div>
       </div>
     </div>
   </body>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/ai/type/GenerateContentResponse.html	2025-08-19 18:05:28.172689271 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/ai/type/GenerateContentResponse.html	2025-08-19 18:02:06.773945213 +0000
@@ -43,7 +43,7 @@
             <td><code>final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/util/List.html">List</a>&lt;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a>&gt;</code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/GenerateContentResponse.html#inlineDataParts()">inlineDataParts</a></code></div>
-              <p>Convenience field representing all the <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a></code>s in the first candidate, if they exist.</p>
+              <p>Convenience field representing all the <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a></code>s in the first candidate.</p>
             </td>
           </tr>
           <tr>
@@ -61,6 +61,13 @@
             </td>
           </tr>
           <tr>
+            <td><code>final <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a></code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/GenerateContentResponse.html#thoughtSummary()">thoughtSummary</a></code></div>
+              <p>Convenience field representing all the text parts in the response that are marked as thoughts as a single string, if they exists.</p>
+            </td>
+          </tr>
+          <tr>
             <td><code>final <a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/UsageMetadata.html">UsageMetadata</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/GenerateContentResponse.html#usageMetadata()">usageMetadata</a></code></div>
@@ -102,13 +109,15 @@
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/util/List.html">List</a>&lt;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionCallPart.html">FunctionCallPart</a>&gt;&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/GenerateContentResponse.html#functionCalls()">functionCalls</a></pre>
         <p>Convenience field to list all the <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/FunctionCallPart.html">FunctionCallPart</a></code>s in the response.</p>
         <p>The value is an empty list if the response contains no <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/GenerateContentResponse.html#candidates()">candidates</a></code>.</p>
+        <p>Any part that's marked as a thought will be ignored. Learn more about <a href="https://firebase.google.com/docs/ai-logic/thinking?api=dev">thinking</a>.</p>
       </div>
       <div class="api-item"><a name="getInlineDataParts()"></a><a name="setInlineDataParts()"></a><a name="getInlineDataParts--"></a><a name="setInlineDataParts--"></a>
         <h3 class="api-name" id="inlineDataParts()">inlineDataParts</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/util/List.html">List</a>&lt;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a>&gt;&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/GenerateContentResponse.html#inlineDataParts()">inlineDataParts</a></pre>
-        <p>Convenience field representing all the <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a></code>s in the first candidate, if they exist.</p>
+        <p>Convenience field representing all the <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a></code>s in the first candidate.</p>
         <p>This also includes any <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ImagePart.html">ImagePart</a></code>, but they will be represented as <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a></code> instead.</p>
         <p>The value is an empty list if the response contains no <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/GenerateContentResponse.html#candidates()">candidates</a></code>.</p>
+        <p>Any part that's marked as a thought will be ignored. Learn more about <a href="https://firebase.google.com/docs/ai-logic/thinking?api=dev">thinking</a>.</p>
       </div>
       <div class="api-item"><a name="getPromptFeedback()"></a><a name="setPromptFeedback()"></a><a name="getPromptFeedback--"></a><a name="setPromptFeedback--"></a>
         <h3 class="api-name" id="promptFeedback()">promptFeedback</h3>
@@ -119,7 +128,14 @@
         <h3 class="api-name" id="text()">text</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;<a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/GenerateContentResponse.html#text()">text</a></pre>
         <p>Convenience field representing all the text parts in the response as a single string.</p>
-        <p>The value is null if the response contains no <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/GenerateContentResponse.html#candidates()">candidates</a></code>.</p>
+        <p>The value is null if the response contains no valid text <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/GenerateContentResponse.html#candidates()">candidates</a></code>.</p>
+        <p>Any part that's marked as a thought will be ignored. Learn more about <a href="https://firebase.google.com/docs/ai-logic/thinking?api=dev">thinking</a>.</p>
+      </div>
+      <div class="api-item"><a name="getThoughtSummary()"></a><a name="setThoughtSummary()"></a><a name="getThoughtSummary--"></a><a name="setThoughtSummary--"></a>
+        <h3 class="api-name" id="thoughtSummary()">thoughtSummary</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;<a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/GenerateContentResponse.html#thoughtSummary()">thoughtSummary</a></pre>
+        <p>Convenience field representing all the text parts in the response that are marked as thoughts as a single string, if they exists.</p>
+        <p>Learn more about <a href="https://firebase.google.com/docs/ai-logic/thinking?api=dev">thinking</a>.</p>
       </div>
       <div class="api-item"><a name="getUsageMetadata()"></a><a name="setUsageMetadata()"></a><a name="getUsageMetadata--"></a><a name="setUsageMetadata--"></a>
         <h3 class="api-name" id="usageMetadata()">usageMetadata</h3>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/ai/type/ImagePart.html	2025-08-19 18:05:28.162689135 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/ai/type/ImagePart.html	2025-08-19 18:02:06.768945145 +0000
@@ -32,6 +32,12 @@
               <p><code><a href="https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html">Bitmap</a></code> to convert into a <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/Part.html">Part</a></code></p>
             </td>
           </tr>
+          <tr>
+            <td><code>boolean</code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ImagePart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
         </tbody>
       </table>
     </div>
@@ -62,33 +68,16 @@
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html">Bitmap</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ImagePart.html#image()">image</a></pre>
         <p><code><a href="https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html">Bitmap</a></code> to convert into a <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/Part.html">Part</a></code></p>
       </div>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;boolean&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ImagePart.html#isThought()">isThought</a></pre>
+      </div>
     </div>
     <div class="list">
       <h2>Public constructors</h2>
       <div class="api-item"><a name="ImagePart-android.graphics.Bitmap-"></a><a name="imagepart"></a>
         <h3 class="api-name" id="ImagePart(android.graphics.Bitmap)">ImagePart</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ImagePart.html#ImagePart(android.graphics.Bitmap)">ImagePart</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html">Bitmap</a>&nbsp;image)</pre>
-        <div class="devsite-table-wrapper">
-          <table class="responsive">
-            <colgroup>
-              <col width="40%">
-              <col>
-            </colgroup>
-            <thead>
-              <tr>
-                <th colspan="100%">Parameters</th>
-              </tr>
-            </thead>
-            <tbody class="list">
-              <tr>
-                <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html">Bitmap</a>&nbsp;image</code></td>
-                <td>
-                  <p><code><a href="https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html">Bitmap</a></code> to convert into a <code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/Part.html">Part</a></code></p>
-                </td>
-              </tr>
-            </tbody>
-          </table>
-        </div>
       </div>
     </div>
   </body>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/ai/type/InlineDataPart.html	2025-08-19 18:05:28.141688848 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/ai/type/InlineDataPart.html	2025-08-19 18:02:06.755944967 +0000
@@ -33,6 +33,12 @@
             </td>
           </tr>
           <tr>
+            <td><code>boolean</code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code>final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html#mimeType()">mimeType</a></code></div>
@@ -69,6 +75,10 @@
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> byte[]&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html#inlineData()">inlineData</a></pre>
         <p>the binary data as a <code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html">ByteArray</a></code></p>
       </div>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;boolean&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html#isThought()">isThought</a></pre>
+      </div>
       <div class="api-item"><a name="getMimeType()"></a><a name="setMimeType()"></a><a name="getMimeType--"></a><a name="setMimeType--"></a>
         <h3 class="api-name" id="mimeType()">mimeType</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html#mimeType()">mimeType</a></pre>
@@ -80,33 +90,6 @@
       <div class="api-item"><a name="InlineDataPart(kotlin.ByteArray, kotlin.String)"></a><a name="InlineDataPart-kotlin.ByteArray-kotlin.String-"></a><a name="inlinedatapart"></a>
         <h3 class="api-name" id="InlineDataPart(kotlin.ByteArray,kotlin.String)">InlineDataPart</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/InlineDataPart.html#InlineDataPart(kotlin.ByteArray,kotlin.String)">InlineDataPart</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> byte[]&nbsp;inlineData,&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;mimeType)</pre>
-        <div class="devsite-table-wrapper">
-          <table class="responsive">
-            <colgroup>
-              <col width="40%">
-              <col>
-            </colgroup>
-            <thead>
-              <tr>
-                <th colspan="100%">Parameters</th>
-              </tr>
-            </thead>
-            <tbody class="list">
-              <tr>
-                <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> byte[]&nbsp;inlineData</code></td>
-                <td>
-                  <p>the binary data as a <code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html">ByteArray</a></code></p>
-                </td>
-              </tr>
-              <tr>
-                <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;mimeType</code></td>
-                <td>
-                  <p>an IANA standard MIME type. For supported values, see the <a href="https://cloud.google.com/vertex-ai/generative-ai/docs/multimodal/send-multimodal-prompts#media_requirements">Vertex AI documentation</a></p>
-                </td>
-              </tr>
-            </tbody>
-          </table>
-        </div>
       </div>
     </div>
   </body>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/ai/type/Part.html	2025-08-19 18:05:28.164689162 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/ai/type/Part.html	2025-08-19 18:02:06.770945172 +0000
@@ -81,6 +81,27 @@
         </colgroup>
         <thead>
           <tr>
+            <th colspan="100%"><h3>Public fields</h3></th>
+          </tr>
+        </thead>
+        <tbody class="list">
+          <tr>
+            <td><code>abstract boolean</code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/Part.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+        </tbody>
+      </table>
+    </div>
+    <div class="devsite-table-wrapper">
+      <table class="responsive">
+        <colgroup>
+          <col width="40%">
+          <col>
+        </colgroup>
+        <thead>
+          <tr>
             <th colspan="100%"><h3>Extension functions</h3></th>
           </tr>
         </thead>
@@ -117,6 +138,13 @@
       </table>
     </div>
     <div class="list">
+      <h2>Public fields</h2>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">abstract&nbsp;boolean&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/Part.html#isThought()">isThought</a></pre>
+      </div>
+    </div>
+    <div class="list">
       <h2>Extension functions</h2>
       <div class="api-item"><a name="-com.google.firebase.ai.type.Part-.asFileDataOrNull--"></a><a name="asfiledataornull"></a>
         <h3 class="api-name" id="(com.google.firebase.ai.type.Part).asFileDataOrNull()">PartKt.asFileDataOrNull</h3>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/ai/type/TextPart.html	2025-08-19 18:05:28.104688344 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/ai/type/TextPart.html	2025-08-19 18:02:06.738944735 +0000
@@ -26,6 +26,12 @@
         </thead>
         <tbody class="list">
           <tr>
+            <td><code>boolean</code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/TextPart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code>final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/TextPart.html#text()">text</a></code></div>
@@ -56,6 +62,10 @@
     </div>
     <div class="list">
       <h2>Public fields</h2>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;boolean&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/TextPart.html#isThought()">isThought</a></pre>
+      </div>
       <div class="api-item"><a name="getText()"></a><a name="setText()"></a><a name="getText--"></a><a name="setText--"></a>
         <h3 class="api-name" id="text()">text</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/TextPart.html#text()">text</a></pre>
--- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html	2025-08-19 18:05:28.140688835 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html	2025-08-19 18:02:06.754944954 +0000
@@ -25,6 +25,12 @@
         </thead>
         <tbody class="list">
           <tr>
+            <td><code>final <a href="https://developer.android.com/reference/kotlin/java/lang/Boolean.html">Boolean</a></code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html#includeThoughts()">includeThoughts</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code>final <a href="https://developer.android.com/reference/kotlin/java/lang/Integer.html">Integer</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html#thinkingBudget()">thinkingBudget</a></code></div>
@@ -74,6 +80,13 @@
           <tr>
             <td><code>final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html">ThinkingConfig.Builder</a></code></td>
             <td>
+              <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html#setIncludeThoughts(kotlin.Boolean)">setIncludeThoughts</a>(boolean&nbsp;includeThoughts)</code></div>
+              <p>Indicates whether to request the model to include the thoughts parts in the response.</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code>final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html">ThinkingConfig.Builder</a></code></td>
+            <td>
               <div><code><a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html#setThinkingBudget(kotlin.Int)">setThinkingBudget</a>(int&nbsp;thinkingBudget)</code></div>
               <p>Indicates the thinking budget in tokens.</p>
             </td>
@@ -83,6 +96,10 @@
     </div>
     <div class="list">
       <h2>Public fields</h2>
+      <div class="api-item"><a name="getIncludeThoughts()"></a><a name="setIncludeThoughts()"></a><a name="getIncludeThoughts--"></a><a name="setIncludeThoughts--"></a>
+        <h3 class="api-name" id="includeThoughts()">includeThoughts</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;<a href="https://developer.android.com/reference/kotlin/java/lang/Boolean.html">Boolean</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html#includeThoughts()">includeThoughts</a></pre>
+      </div>
       <div class="api-item"><a name="getThinkingBudget()"></a><a name="setThinkingBudget()"></a><a name="getThinkingBudget--"></a><a name="setThinkingBudget--"></a>
         <h3 class="api-name" id="thinkingBudget()">thinkingBudget</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;<a href="https://developer.android.com/reference/kotlin/java/lang/Integer.html">Integer</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html#thinkingBudget()">thinkingBudget</a></pre>
@@ -101,6 +118,13 @@
         <h3 class="api-name" id="build()">build</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.html">ThinkingConfig</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html#build()">build</a>()</pre>
       </div>
+      <div class="api-item"><a name="setIncludeThoughts-kotlin.Boolean-"></a><a name="setincludethoughts"></a>
+        <h3 class="api-name" id="setIncludeThoughts(kotlin.Boolean)">setIncludeThoughts</h3>
+        <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html">ThinkingConfig.Builder</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html#setIncludeThoughts(kotlin.Boolean)">setIncludeThoughts</a>(boolean&nbsp;includeThoughts)</pre>
+        <p>Indicates whether to request the model to include the thoughts parts in the response.</p>
+        <p>Keep in mind that once enabled, you should check for the <code>isThought</code> property when processing a <code>Part</code> instance to correctly handle both thoughts and the actual response.</p>
+        <p>The default value is <code>false</code>.</p>
+      </div>
       <div class="api-item"><a name="setThinkingBudget-kotlin.Int-"></a><a name="setthinkingbudget"></a>
         <h3 class="api-name" id="setThinkingBudget(kotlin.Int)">setThinkingBudget</h3>
         <pre class="api-signature no-pretty-print">public&nbsp;final&nbsp;@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html">ThinkingConfig.Builder</a>&nbsp;<a href="https://github.com/docs/reference/android/com/google/firebase/ai/type/ThinkingConfig.Builder.html#setThinkingBudget(kotlin.Int)">setThinkingBudget</a>(int&nbsp;thinkingBudget)</pre>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/CodeExecutionResultPart.html	2025-08-19 18:05:28.054687662 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/CodeExecutionResultPart.html	2025-08-19 18:02:06.722944517 +0000
@@ -45,6 +45,12 @@
         </thead>
         <tbody class="list">
           <tr>
+            <td><code>open <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/CodeExecutionResultPart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/CodeExecutionResultPart.html#outcome()">outcome</a></code></div>
@@ -68,6 +74,10 @@
     </div>
     <div class="list">
       <h2>Public properties</h2>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">open&nbsp;val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/CodeExecutionResultPart.html#isThought()">isThought</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></pre>
+      </div>
       <div class="api-item"><a name="getOutcome()"></a><a name="setOutcome()"></a><a name="getOutcome--"></a><a name="setOutcome--"></a>
         <h3 class="api-name" id="outcome()">outcome</h3>
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/CodeExecutionResultPart.html#outcome()">outcome</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></pre>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/ExecutableCodePart.html	2025-08-19 18:05:28.061687757 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/ExecutableCodePart.html	2025-08-19 18:02:06.723944531 +0000
@@ -51,6 +51,12 @@
             </td>
           </tr>
           <tr>
+            <td><code>open <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ExecutableCodePart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ExecutableCodePart.html#language()">language</a></code></div>
@@ -72,6 +78,10 @@
         <h3 class="api-name" id="code()">code</h3>
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ExecutableCodePart.html#code()">code</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></pre>
       </div>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">open&nbsp;val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ExecutableCodePart.html#isThought()">isThought</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></pre>
+      </div>
       <div class="api-item"><a name="getLanguage()"></a><a name="setLanguage()"></a><a name="getLanguage--"></a><a name="setLanguage--"></a>
         <h3 class="api-name" id="language()">language</h3>
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ExecutableCodePart.html#language()">language</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></pre>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/FileDataPart.html	2025-08-19 18:05:28.069687866 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/FileDataPart.html	2025-08-19 18:02:06.726944572 +0000
@@ -46,6 +46,12 @@
         </thead>
         <tbody class="list">
           <tr>
+            <td><code>open <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FileDataPart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FileDataPart.html#mimeType()">mimeType</a></code></div>
@@ -67,37 +73,14 @@
       <div class="api-item"><a name="FileDataPart(kotlin.String, kotlin.String)"></a><a name="FileDataPart-kotlin.String-kotlin.String-"></a><a name="filedatapart"></a>
         <h3 class="api-name" id="FileDataPart(kotlin.String,kotlin.String)">FileDataPart</h3>
         <pre class="api-signature no-pretty-print"><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FileDataPart.html#FileDataPart(kotlin.String,kotlin.String)">FileDataPart</a>(uri:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>,&nbsp;mimeType:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>)</pre>
-        <div class="devsite-table-wrapper">
-          <table class="responsive">
-            <colgroup>
-              <col width="40%">
-              <col>
-            </colgroup>
-            <thead>
-              <tr>
-                <th colspan="100%">Parameters</th>
-              </tr>
-            </thead>
-            <tbody class="list">
-              <tr>
-                <td><code>uri:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></code></td>
-                <td>
-                  <p>The <code>&quot;gs://&quot;</code>-prefixed URI of the file in Cloud Storage for Firebase, for example, <code>&quot;gs://bucket-name/path/image.jpg&quot;</code></p>
-                </td>
-              </tr>
-              <tr>
-                <td><code>mimeType:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></code></td>
-                <td>
-                  <p>an IANA standard MIME type. For supported MIME type values see the <a href="https://firebase.google.com/docs/vertex-ai/input-file-requirements">Firebase documentation</a>.</p>
-                </td>
-              </tr>
-            </tbody>
-          </table>
-        </div>
       </div>
     </div>
     <div class="list">
       <h2>Public properties</h2>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">open&nbsp;val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FileDataPart.html#isThought()">isThought</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></pre>
+      </div>
       <div class="api-item"><a name="getMimeType()"></a><a name="setMimeType()"></a><a name="getMimeType--"></a><a name="setMimeType--"></a>
         <h3 class="api-name" id="mimeType()">mimeType</h3>
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FileDataPart.html#mimeType()">mimeType</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></pre>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/FunctionCallPart.html	2025-08-19 18:05:28.063687785 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/FunctionCallPart.html	2025-08-19 18:02:06.725944558 +0000
@@ -60,6 +60,12 @@
             </td>
           </tr>
           <tr>
+            <td><code>open <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionCallPart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionCallPart.html#name()">name</a></code></div>
@@ -74,39 +80,6 @@
       <div class="api-item"><a name="FunctionCallPart(kotlin.String, kotlin.collections.Map, kotlin.String)"></a><a name="FunctionCallPart-kotlin.String-kotlin.collections.Map-kotlin.String-"></a><a name="functioncallpart"></a>
         <h3 class="api-name" id="FunctionCallPart(kotlin.String,kotlin.collections.Map,kotlin.String)">FunctionCallPart</h3>
         <pre class="api-signature no-pretty-print"><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionCallPart.html#FunctionCallPart(kotlin.String,kotlin.collections.Map,kotlin.String)">FunctionCallPart</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;args:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html">Map</a>&lt;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>,&nbsp;<a href="https://github.com/docs/reference/kotlin/kotlinx/serialization/json/JsonElement.html">JsonElement</a>&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;id:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>? = null<br>)</pre>
-        <div class="devsite-table-wrapper">
-          <table class="responsive">
-            <colgroup>
-              <col width="40%">
-              <col>
-            </colgroup>
-            <thead>
-              <tr>
-                <th colspan="100%">Parameters</th>
-              </tr>
-            </thead>
-            <tbody class="list">
-              <tr>
-                <td><code>name:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></code></td>
-                <td>
-                  <p>the name of the function to call</p>
-                </td>
-              </tr>
-              <tr>
-                <td><code>args:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html">Map</a>&lt;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>,&nbsp;<a href="https://github.com/docs/reference/kotlin/kotlinx/serialization/json/JsonElement.html">JsonElement</a>&gt;</code></td>
-                <td>
-                  <p>the function parameters and values as a <code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html">Map</a></code></p>
-                </td>
-              </tr>
-              <tr>
-                <td><code>id:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>? = null</code></td>
-                <td>
-                  <p>Unique id of the function call. If present, the returned <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionResponsePart.html">FunctionResponsePart</a></code> should have a matching <code>id</code> field.</p>
-                </td>
-              </tr>
-            </tbody>
-          </table>
-        </div>
       </div>
     </div>
     <div class="list">
@@ -121,6 +94,10 @@
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionCallPart.html#id()">id</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>?</pre>
         <p>Unique id of the function call. If present, the returned <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionResponsePart.html">FunctionResponsePart</a></code> should have a matching <code>id</code> field.</p>
       </div>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">open&nbsp;val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionCallPart.html#isThought()">isThought</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></pre>
+      </div>
       <div class="api-item"><a name="getName()"></a><a name="setName()"></a><a name="getName--"></a><a name="setName--"></a>
         <h3 class="api-name" id="name()">name</h3>
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionCallPart.html#name()">name</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></pre>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/FunctionResponsePart.html	2025-08-19 18:05:28.084688071 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/FunctionResponsePart.html	2025-08-19 18:02:06.731944640 +0000
@@ -53,6 +53,12 @@
             </td>
           </tr>
           <tr>
+            <td><code>open <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionResponsePart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionResponsePart.html#name()">name</a></code></div>
@@ -74,39 +80,6 @@
       <div class="api-item"><a name="FunctionResponsePart(kotlin.String, kotlinx.serialization.json.JsonObject, kotlin.String)"></a><a name="FunctionResponsePart-kotlin.String-kotlinx.serialization.json.JsonObject-kotlin.String-"></a><a name="functionresponsepart"></a>
         <h3 class="api-name" id="FunctionResponsePart(kotlin.String,kotlinx.serialization.json.JsonObject,kotlin.String)">FunctionResponsePart</h3>
         <pre class="api-signature no-pretty-print"><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionResponsePart.html#FunctionResponsePart(kotlin.String,kotlinx.serialization.json.JsonObject,kotlin.String)">FunctionResponsePart</a>(name:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>,&nbsp;response:&nbsp;<a href="https://github.com/docs/reference/kotlin/kotlinx/serialization/json/JsonObject.html">JsonObject</a>,&nbsp;id:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>? = null)</pre>
-        <div class="devsite-table-wrapper">
-          <table class="responsive">
-            <colgroup>
-              <col width="40%">
-              <col>
-            </colgroup>
-            <thead>
-              <tr>
-                <th colspan="100%">Parameters</th>
-              </tr>
-            </thead>
-            <tbody class="list">
-              <tr>
-                <td><code>name:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></code></td>
-                <td>
-                  <p>The name of the called function.</p>
-                </td>
-              </tr>
-              <tr>
-                <td><code>response:&nbsp;<a href="https://github.com/docs/reference/kotlin/kotlinx/serialization/json/JsonObject.html">JsonObject</a></code></td>
-                <td>
-                  <p>The response produced by the function as a <code><a href="https://developer.android.com/reference/kotlin/org/json/JSONObject.html">JSONObject</a></code>.</p>
-                </td>
-              </tr>
-              <tr>
-                <td><code>id:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>? = null</code></td>
-                <td>
-                  <p>Matching <code>id</code> for a <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionCallPart.html">FunctionCallPart</a></code>, if one was provided.</p>
-                </td>
-              </tr>
-            </tbody>
-          </table>
-        </div>
       </div>
     </div>
     <div class="list">
@@ -116,6 +89,10 @@
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionResponsePart.html#id()">id</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>?</pre>
         <p>Matching <code>id</code> for a <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionCallPart.html">FunctionCallPart</a></code>, if one was provided.</p>
       </div>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">open&nbsp;val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionResponsePart.html#isThought()">isThought</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></pre>
+      </div>
       <div class="api-item"><a name="getName()"></a><a name="setName()"></a><a name="getName--"></a><a name="setName--"></a>
         <h3 class="api-name" id="name()">name</h3>
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionResponsePart.html#name()">name</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></pre>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html	2025-08-19 18:05:28.083688057 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html	2025-08-19 18:02:06.731944640 +0000
@@ -63,7 +63,7 @@
             <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html">List</a>&lt;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a>&gt;</code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html#inlineDataParts()">inlineDataParts</a></code></div>
-              <p>Convenience field representing all the <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a></code>s in the first candidate, if they exist.</p>
+              <p>Convenience field representing all the <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a></code>s in the first candidate.</p>
             </td>
           </tr>
           <tr>
@@ -81,6 +81,13 @@
             </td>
           </tr>
           <tr>
+            <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>?</code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html#thoughtSummary()">thoughtSummary</a></code></div>
+              <p>Convenience field representing all the text parts in the response that are marked as thoughts as a single string, if they exists.</p>
+            </td>
+          </tr>
+          <tr>
             <td><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/UsageMetadata.html">UsageMetadata</a>?</code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html#usageMetadata()">usageMetadata</a></code></div>
@@ -109,13 +116,15 @@
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html#functionCalls()">functionCalls</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html">List</a>&lt;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionCallPart.html">FunctionCallPart</a>&gt;</pre>
         <p>Convenience field to list all the <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/FunctionCallPart.html">FunctionCallPart</a></code>s in the response.</p>
         <p>The value is an empty list if the response contains no <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html#candidates()">candidates</a></code>.</p>
+        <p>Any part that's marked as a thought will be ignored. Learn more about <a href="https://firebase.google.com/docs/ai-logic/thinking?api=dev">thinking</a>.</p>
       </div>
       <div class="api-item"><a name="getInlineDataParts()"></a><a name="setInlineDataParts()"></a><a name="getInlineDataParts--"></a><a name="setInlineDataParts--"></a>
         <h3 class="api-name" id="inlineDataParts()">inlineDataParts</h3>
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html#inlineDataParts()">inlineDataParts</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html">List</a>&lt;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a>&gt;</pre>
-        <p>Convenience field representing all the <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a></code>s in the first candidate, if they exist.</p>
+        <p>Convenience field representing all the <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a></code>s in the first candidate.</p>
         <p>This also includes any <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ImagePart.html">ImagePart</a></code>, but they will be represented as <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html">InlineDataPart</a></code> instead.</p>
         <p>The value is an empty list if the response contains no <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html#candidates()">candidates</a></code>.</p>
+        <p>Any part that's marked as a thought will be ignored. Learn more about <a href="https://firebase.google.com/docs/ai-logic/thinking?api=dev">thinking</a>.</p>
       </div>
       <div class="api-item"><a name="getPromptFeedback()"></a><a name="setPromptFeedback()"></a><a name="getPromptFeedback--"></a><a name="setPromptFeedback--"></a>
         <h3 class="api-name" id="promptFeedback()">promptFeedback</h3>
@@ -126,7 +135,14 @@
         <h3 class="api-name" id="text()">text</h3>
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html#text()">text</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>?</pre>
         <p>Convenience field representing all the text parts in the response as a single string.</p>
-        <p>The value is null if the response contains no <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html#candidates()">candidates</a></code>.</p>
+        <p>The value is null if the response contains no valid text <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html#candidates()">candidates</a></code>.</p>
+        <p>Any part that's marked as a thought will be ignored. Learn more about <a href="https://firebase.google.com/docs/ai-logic/thinking?api=dev">thinking</a>.</p>
+      </div>
+      <div class="api-item"><a name="getThoughtSummary()"></a><a name="setThoughtSummary()"></a><a name="getThoughtSummary--"></a><a name="setThoughtSummary--"></a>
+        <h3 class="api-name" id="thoughtSummary()">thoughtSummary</h3>
+        <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/GenerateContentResponse.html#thoughtSummary()">thoughtSummary</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>?</pre>
+        <p>Convenience field representing all the text parts in the response that are marked as thoughts as a single string, if they exists.</p>
+        <p>Learn more about <a href="https://firebase.google.com/docs/ai-logic/thinking?api=dev">thinking</a>.</p>
       </div>
       <div class="api-item"><a name="getUsageMetadata()"></a><a name="setUsageMetadata()"></a><a name="getUsageMetadata--"></a><a name="setUsageMetadata--"></a>
         <h3 class="api-name" id="usageMetadata()">usageMetadata</h3>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/ImagePart.html	2025-08-19 18:05:28.070687880 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/ImagePart.html	2025-08-19 18:02:06.728944599 +0000
@@ -52,6 +52,12 @@
               <p><code><a href="https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html">Bitmap</a></code> to convert into a <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/Part.html">Part</a></code></p>
             </td>
           </tr>
+          <tr>
+            <td><code>open <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ImagePart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
         </tbody>
       </table>
     </div>
@@ -60,27 +66,6 @@
       <div class="api-item"><a name="ImagePart-android.graphics.Bitmap-"></a><a name="imagepart"></a>
         <h3 class="api-name" id="ImagePart(android.graphics.Bitmap)">ImagePart</h3>
         <pre class="api-signature no-pretty-print"><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ImagePart.html#ImagePart(android.graphics.Bitmap)">ImagePart</a>(image:&nbsp;<a href="https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html">Bitmap</a>)</pre>
-        <div class="devsite-table-wrapper">
-          <table class="responsive">
-            <colgroup>
-              <col width="40%">
-              <col>
-            </colgroup>
-            <thead>
-              <tr>
-                <th colspan="100%">Parameters</th>
-              </tr>
-            </thead>
-            <tbody class="list">
-              <tr>
-                <td><code>image:&nbsp;<a href="https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html">Bitmap</a></code></td>
-                <td>
-                  <p><code><a href="https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html">Bitmap</a></code> to convert into a <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/Part.html">Part</a></code></p>
-                </td>
-              </tr>
-            </tbody>
-          </table>
-        </div>
       </div>
     </div>
     <div class="list">
@@ -90,6 +75,10 @@
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ImagePart.html#image()">image</a>:&nbsp;<a href="https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html">Bitmap</a></pre>
         <p><code><a href="https://developer.android.com/reference/kotlin/android/graphics/Bitmap.html">Bitmap</a></code> to convert into a <code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/Part.html">Part</a></code></p>
       </div>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">open&nbsp;val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ImagePart.html#isThought()">isThought</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></pre>
+      </div>
     </div>
   </body>
 </html>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/InlineDataPart.html	2025-08-19 18:05:28.061687757 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/InlineDataPart.html	2025-08-19 18:02:06.723944531 +0000
@@ -53,6 +53,12 @@
             </td>
           </tr>
           <tr>
+            <td><code>open <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html#mimeType()">mimeType</a></code></div>
@@ -67,33 +73,6 @@
       <div class="api-item"><a name="InlineDataPart(kotlin.ByteArray, kotlin.String)"></a><a name="InlineDataPart-kotlin.ByteArray-kotlin.String-"></a><a name="inlinedatapart"></a>
         <h3 class="api-name" id="InlineDataPart(kotlin.ByteArray,kotlin.String)">InlineDataPart</h3>
         <pre class="api-signature no-pretty-print"><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html#InlineDataPart(kotlin.ByteArray,kotlin.String)">InlineDataPart</a>(inlineData:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html">ByteArray</a>,&nbsp;mimeType:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>)</pre>
-        <div class="devsite-table-wrapper">
-          <table class="responsive">
-            <colgroup>
-              <col width="40%">
-              <col>
-            </colgroup>
-            <thead>
-              <tr>
-                <th colspan="100%">Parameters</th>
-              </tr>
-            </thead>
-            <tbody class="list">
-              <tr>
-                <td><code>inlineData:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html">ByteArray</a></code></td>
-                <td>
-                  <p>the binary data as a <code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html">ByteArray</a></code></p>
-                </td>
-              </tr>
-              <tr>
-                <td><code>mimeType:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></code></td>
-                <td>
-                  <p>an IANA standard MIME type. For supported values, see the <a href="https://cloud.google.com/vertex-ai/generative-ai/docs/multimodal/send-multimodal-prompts#media_requirements">Vertex AI documentation</a></p>
-                </td>
-              </tr>
-            </tbody>
-          </table>
-        </div>
       </div>
     </div>
     <div class="list">
@@ -103,6 +82,10 @@
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html#inlineData()">inlineData</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html">ByteArray</a></pre>
         <p>the binary data as a <code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-byte-array/index.html">ByteArray</a></code></p>
       </div>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">open&nbsp;val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html#isThought()">isThought</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></pre>
+      </div>
       <div class="api-item"><a name="getMimeType()"></a><a name="setMimeType()"></a><a name="getMimeType--"></a><a name="setMimeType--"></a>
         <h3 class="api-name" id="mimeType()">mimeType</h3>
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/InlineDataPart.html#mimeType()">mimeType</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></pre>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/Part.html	2025-08-19 18:05:28.082688044 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/Part.html	2025-08-19 18:02:06.730944626 +0000
@@ -81,6 +81,27 @@
         </colgroup>
         <thead>
           <tr>
+            <th colspan="100%"><h3>Public properties</h3></th>
+          </tr>
+        </thead>
+        <tbody class="list">
+          <tr>
+            <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/Part.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+        </tbody>
+      </table>
+    </div>
+    <div class="devsite-table-wrapper">
+      <table class="responsive">
+        <colgroup>
+          <col width="40%">
+          <col>
+        </colgroup>
+        <thead>
+          <tr>
             <th colspan="100%"><h3>Extension functions</h3></th>
           </tr>
         </thead>
@@ -117,6 +138,13 @@
       </table>
     </div>
     <div class="list">
+      <h2>Public properties</h2>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/Part.html#isThought()">isThought</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></pre>
+      </div>
+    </div>
+    <div class="list">
       <h2>Extension functions</h2>
       <div class="api-item"><a name="-com.google.firebase.ai.type.Part-.asFileDataOrNull--"></a><a name="asfiledataornull"></a>
         <h3 class="api-name" id="(com.google.firebase.ai.type.Part).asFileDataOrNull()">asFileDataOrNull</h3>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/TextPart.html	2025-08-19 18:05:28.041687485 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/TextPart.html	2025-08-19 18:02:06.716944435 +0000
@@ -46,6 +46,12 @@
         </thead>
         <tbody class="list">
           <tr>
+            <td><code>open <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/TextPart.html#isThought()">isThought</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/TextPart.html#text()">text</a></code></div>
@@ -63,6 +69,10 @@
     </div>
     <div class="list">
       <h2>Public properties</h2>
+      <div class="api-item"><a name="getIsThought()"></a><a name="setIsThought()"></a><a name="getIsThought--"></a><a name="setIsThought--"></a>
+        <h3 class="api-name" id="isThought()">isThought</h3>
+        <pre class="api-signature no-pretty-print">open&nbsp;val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/TextPart.html#isThought()">isThought</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a></pre>
+      </div>
       <div class="api-item"><a name="getText()"></a><a name="setText()"></a><a name="getText--"></a><a name="setText--"></a>
         <h3 class="api-name" id="text()">text</h3>
         <pre class="api-signature no-pretty-print">val&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/TextPart.html#text()">text</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a></pre>
--- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html	2025-08-19 18:05:28.054687662 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html	2025-08-19 18:02:06.722944517 +0000
@@ -53,6 +53,13 @@
           <tr>
             <td><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html">ThinkingConfig.Builder</a></code></td>
             <td>
+              <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html#setIncludeThoughts(kotlin.Boolean)">setIncludeThoughts</a>(includeThoughts:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a>)</code></div>
+              <p>Indicates whether to request the model to include the thoughts parts in the response.</p>
+            </td>
+          </tr>
+          <tr>
+            <td><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html">ThinkingConfig.Builder</a></code></td>
+            <td>
               <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html#setThinkingBudget(kotlin.Int)">setThinkingBudget</a>(thinkingBudget:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html">Int</a>)</code></div>
               <p>Indicates the thinking budget in tokens.</p>
             </td>
@@ -73,6 +80,12 @@
         </thead>
         <tbody class="list">
           <tr>
+            <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a>?</code></td>
+            <td>
+              <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html#includeThoughts()">includeThoughts</a></code></div>
+            </td>
+          </tr>
+          <tr>
             <td><code><a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html">Int</a>?</code></td>
             <td>
               <div><code><a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html#thinkingBudget()">thinkingBudget</a></code></div>
@@ -94,6 +107,13 @@
         <h3 class="api-name" id="build()">build</h3>
         <pre class="api-signature no-pretty-print">fun&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html#build()">build</a>():&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.html">ThinkingConfig</a></pre>
       </div>
+      <div class="api-item"><a name="setIncludeThoughts-kotlin.Boolean-"></a><a name="setincludethoughts"></a>
+        <h3 class="api-name" id="setIncludeThoughts(kotlin.Boolean)">setIncludeThoughts</h3>
+        <pre class="api-signature no-pretty-print">fun&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html#setIncludeThoughts(kotlin.Boolean)">setIncludeThoughts</a>(includeThoughts:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a>):&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html">ThinkingConfig.Builder</a></pre>
+        <p>Indicates whether to request the model to include the thoughts parts in the response.</p>
+        <p>Keep in mind that once enabled, you should check for the <code>isThought</code> property when processing a <code>Part</code> instance to correctly handle both thoughts and the actual response.</p>
+        <p>The default value is <code>false</code>.</p>
+      </div>
       <div class="api-item"><a name="setThinkingBudget-kotlin.Int-"></a><a name="setthinkingbudget"></a>
         <h3 class="api-name" id="setThinkingBudget(kotlin.Int)">setThinkingBudget</h3>
         <pre class="api-signature no-pretty-print">fun&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html#setThinkingBudget(kotlin.Int)">setThinkingBudget</a>(thinkingBudget:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html">Int</a>):&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html">ThinkingConfig.Builder</a></pre>
@@ -102,6 +122,10 @@
     </div>
     <div class="list">
       <h2>Public properties</h2>
+      <div class="api-item"><a name="getIncludeThoughts()"></a><a name="setIncludeThoughts()"></a><a name="getIncludeThoughts--"></a><a name="setIncludeThoughts--"></a>
+        <h3 class="api-name" id="includeThoughts()">includeThoughts</h3>
+        <pre class="api-signature no-pretty-print">var&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html#includeThoughts()">includeThoughts</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html">Boolean</a>?</pre>
+      </div>
       <div class="api-item"><a name="getThinkingBudget()"></a><a name="setThinkingBudget()"></a><a name="getThinkingBudget--"></a><a name="setThinkingBudget--"></a>
         <h3 class="api-name" id="thinkingBudget()">thinkingBudget</h3>
         <pre class="api-signature no-pretty-print">var&nbsp;<a href="https://github.com/docs/reference/kotlin/com/google/firebase/ai/type/ThinkingConfig.Builder.html#thinkingBudget()">thinkingBudget</a>:&nbsp;<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html">Int</a>?</pre>
--- /home/runner/diff/original/reports/problems/problems-report.html	2025-08-19 18:06:33.390581340 +0000
+++ /home/runner/diff/modified/reports/problems/problems-report.html	2025-08-19 18:04:21.905787978 +0000
@@ -650,7 +650,7 @@
 <script type="text/javascript">
 function configurationCacheProblems() { return (
 // begin-report-data
-{"diagnostics":[{"locations":[{"pluginId":"firebase-library"}],"problem":[{"text":"The Report.destination property has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 9.0."}],"contextualLabel":"The Report.destination property has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/dsl/org.gradle.api.reporting.Report.html#org.gradle.api.reporting.Report:destination","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"the-report-destination-property-has-been-deprecated","displayName":"The Report.destination property has been deprecated."}],"solutions":[[{"text":"Please use the outputLocation property instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-abt/firebase-abt.gradle'","line":31}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('abortOnError = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-abt/firebase-abt.gradle'","line":34}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"locations":[{"pluginId":"firebase-java-library"}],"problem":[{"text":"The Report.destination property has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 9.0."}],"contextualLabel":"The Report.destination property has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/dsl/org.gradle.api.reporting.Report.html#org.gradle.api.reporting.Report:destination","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"the-report-destination-property-has-been-deprecated","displayName":"The Report.destination property has been deprecated."}],"solutions":[[{"text":"Please use the outputLocation property instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution/firebase-appdistribution.gradle'","line":31}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution/firebase-appdistribution.gradle'","line":37}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('multiDexEnabled = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution-api/firebase-appdistribution-api.gradle'","line":30}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution-api/firebase-appdistribution-api.gradle'","line":36}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('multiDexEnabled = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('multiDexEnabled = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('ndkVersion = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('includeAndroidResources = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('compileSdk = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('abortOnError = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('sourceCompatibility = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('targetCompatibility = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('testBuildType = <value>') instead."}]]}],"problemsReport":{"totalProblemCount":17,"buildName":"com.google.firebase","requestedTasks":"kotlindoc","documentationLink":"https://docs.gradle.org/8.13/userguide/reporting_problems.html","documentationLinkCaption":"Problem report","summaries":[{"problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"count":4}]}}
+{"diagnostics":[{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/plugins/src/main/java/com/google/firebase/gradle/plugins/ci/device/FirebaseTestServer.java"},{"taskPath":":plugins:compileJava"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/plugins/src/main/java/com/google/firebase/gradle/plugins/ci/device/FirebaseTestServer.java"},{"taskPath":":plugins:compileJava"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"pluginId":"com.android.internal.library"}],"problem":[{"text":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"Starting with Gradle 9.0, this property will be ignored by Gradle."}],"contextualLabel":"Declaring an 'is-' property with a Boolean type has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_boolean_properties","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"declaring-an-is-property-with-a-boolean-type","displayName":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"solutions":[[{"text":"Add a method named 'getCrunchPngs' with the same behavior and mark the old one with @Deprecated, or change the type of 'com.android.build.gradle.internal.dsl.BuildType$AgpDecorated.isCrunchPngs' (and the setter) to 'boolean'."}],[{"text":"The combination of method name and return type is not consistent with Java Bean property rules and will become unsupported in future versions of Groovy."}]]},{"locations":[{"pluginId":"com.android.internal.library"}],"problem":[{"text":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"Starting with Gradle 9.0, this property will be ignored by Gradle."}],"contextualLabel":"Declaring an 'is-' property with a Boolean type has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_boolean_properties","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"declaring-an-is-property-with-a-boolean-type","displayName":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"solutions":[[{"text":"Add a method named 'getUseProguard' with the same behavior and mark the old one with @Deprecated, or change the type of 'com.android.build.gradle.internal.dsl.BuildType.isUseProguard' (and the setter) to 'boolean'."}],[{"text":"The combination of method name and return type is not consistent with Java Bean property rules and will become unsupported in future versions of Groovy."}]]},{"locations":[{"pluginId":"firebase-library"}],"problem":[{"text":"The Report.destination property has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 9.0."}],"contextualLabel":"The Report.destination property has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/dsl/org.gradle.api.reporting.Report.html#org.gradle.api.reporting.Report:destination","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"the-report-destination-property-has-been-deprecated","displayName":"The Report.destination property has been deprecated."}],"solutions":[[{"text":"Please use the outputLocation property instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-abt/firebase-abt.gradle'","line":31}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('abortOnError = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-abt/firebase-abt.gradle'","line":34}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"locations":[{"pluginId":"firebase-java-library"}],"problem":[{"text":"The Report.destination property has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 9.0."}],"contextualLabel":"The Report.destination property has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/dsl/org.gradle.api.reporting.Report.html#org.gradle.api.reporting.Report:destination","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"the-report-destination-property-has-been-deprecated","displayName":"The Report.destination property has been deprecated."}],"solutions":[[{"text":"Please use the outputLocation property instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution/firebase-appdistribution.gradle'","line":31}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution/firebase-appdistribution.gradle'","line":37}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('multiDexEnabled = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution-api/firebase-appdistribution-api.gradle'","line":30}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"locations":[{"path":"build file '/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-appdistribution-api/firebase-appdistribution-api.gradle'","line":36}],"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('multiDexEnabled = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('namespace = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('multiDexEnabled = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('ndkVersion = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('includeAndroidResources = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('compileSdk = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('abortOnError = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('sourceCompatibility = <value>') instead."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('targetCompatibility = <value>') instead."}]]},{"locations":[{"pluginId":"com.android.internal.application"}],"problem":[{"text":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"Starting with Gradle 9.0, this property will be ignored by Gradle."}],"contextualLabel":"Declaring an 'is-' property with a Boolean type has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_boolean_properties","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"declaring-an-is-property-with-a-boolean-type","displayName":"Declaring an 'is-' property with a Boolean type has been deprecated."}],"solutions":[[{"text":"Add a method named 'getWearAppUnbundled' with the same behavior and mark the old one with @Deprecated, or change the type of 'com.android.build.api.variant.impl.ApplicationVariantImpl.isWearAppUnbundled' (and the setter) to 'boolean'."}],[{"text":"The combination of method name and return type is not consistent with Java Bean property rules and will become unsupported in future versions of Groovy."}]]},{"problem":[{"text":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 10.0."}],"contextualLabel":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#groovy_space_assignment_syntax","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"solutions":[[{"text":"Use assignment ('testBuildType = <value>') instead."}]]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-config/src/main/java/com/google/firebase/remoteconfig/RemoteConfigComponent.java"},{"taskPath":":firebase-config:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-config/src/main/java/com/google/firebase/remoteconfig/RemoteConfigComponent.java"},{"taskPath":":firebase-config:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-common/src/main/java/com/google/firebase/FirebaseCommonRegistrar.java"},{"taskPath":":firebase-common:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-common/src/main/java/com/google/firebase/FirebaseCommonRegistrar.java"},{"taskPath":":firebase-common:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-common/src/main/java/com/google/firebase/heartbeatinfo/HeartBeatInfoStorage.java"},{"taskPath":":firebase-common:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-common/src/main/java/com/google/firebase/heartbeatinfo/HeartBeatInfoStorage.java uses unchecked or unsafe operations."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-common/src/main/java/com/google/firebase/heartbeatinfo/HeartBeatInfoStorage.java uses unchecked or unsafe operations.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-common/src/main/java/com/google/firebase/heartbeatinfo/HeartBeatInfoStorage.java"},{"taskPath":":firebase-common:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:unchecked for details."}],"contextualLabel":"Recompile with -Xlint:unchecked for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-database/src/main/java/com/google/firebase/database/core/utilities/Utilities.java"},{"taskPath":":firebase-database:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use unchecked or unsafe operations."}],"contextualLabel":"Some input files use unchecked or unsafe operations.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-database/src/main/java/com/google/firebase/database/core/utilities/Utilities.java"},{"taskPath":":firebase-database:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:unchecked for details."}],"contextualLabel":"Recompile with -Xlint:unchecked for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/util/Executors.java","line":17,"column":18,"length":10},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/util/Executors.java:17: warning: [deprecation] AsyncTask in android.os has been deprecated\nimport android.os.AsyncTask;\n                 ^"}],"contextualLabel":"android.os.AsyncTask in android.os has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/FirestoreRegistrar.java","line":56,"column":28,"length":9},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/FirestoreRegistrar.java:56: warning: [deprecation] optional(Class<?>) in Dependency has been deprecated\n            .add(Dependency.optional(FirebaseOptions.class))\n                           ^"}],"contextualLabel":"optional(java.lang.Class<?>) in com.google.firebase.components.Dependency has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java","line":417,"column":21,"length":21},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java:417: warning: [deprecation] isPersistenceEnabled() in FirebaseFirestoreSettings has been deprecated\n        && (settings.isPersistenceEnabled()\n                    ^"}],"contextualLabel":"isPersistenceEnabled() in com.google.firebase.firestore.FirebaseFirestoreSettings has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java","line":499,"column":18,"length":5},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/FirebaseFirestore.java:499: warning: [deprecation] <TResult>call(Executor,Callable<TResult>) in Tasks has been deprecated\n            Tasks.call(\n                 ^\n  where TResult is a type-variable:\n    TResult extends Object declared in method <TResult>call(Executor,Callable<TResult>)"}],"contextualLabel":"<TResult>call(java.util.concurrent.Executor,java.util.concurrent.Callable<TResult>) in com.google.android.gms.tasks.Tasks has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/core/ComponentProvider.java","line":62,"column":20,"length":21},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/core/ComponentProvider.java:62: warning: [deprecation] isPersistenceEnabled() in FirebaseFirestoreSettings has been deprecated\n    return settings.isPersistenceEnabled()\n                   ^"}],"contextualLabel":"isPersistenceEnabled() in com.google.firebase.firestore.FirebaseFirestoreSettings has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/GrpcCallProvider.java","line":239,"column":14,"length":5},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/GrpcCallProvider.java:239: warning: [deprecation] <TResult>call(Executor,Callable<TResult>) in Tasks has been deprecated\n        Tasks.call(\n             ^\n  where TResult is a type-variable:\n    TResult extends Object declared in method <TResult>call(Executor,Callable<TResult>)"}],"contextualLabel":"<TResult>call(java.util.concurrent.Executor,java.util.concurrent.Callable<TResult>) in com.google.android.gms.tasks.Tasks has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/core/MemoryComponentProvider.java","line":83,"column":65,"length":18},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/core/MemoryComponentProvider.java:83: warning: [deprecation] getCacheSizeBytes() in FirebaseFirestoreSettings has been deprecated\n          LruGarbageCollector.Params.WithCacheSizeBytes(settings.getCacheSizeBytes());\n                                                                ^"}],"contextualLabel":"getCacheSizeBytes() in com.google.firebase.firestore.FirebaseFirestoreSettings has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/core/SQLiteComponentProvider.java","line":49,"column":63,"length":18},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/core/SQLiteComponentProvider.java:49: warning: [deprecation] getCacheSizeBytes() in FirebaseFirestoreSettings has been deprecated\n        LruGarbageCollector.Params.WithCacheSizeBytes(settings.getCacheSizeBytes());\n                                                              ^"}],"contextualLabel":"getCacheSizeBytes() in com.google.firebase.firestore.FirebaseFirestoreSettings has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/FirestoreCallCredentials.java","line":52,"column":15,"length":24},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/FirestoreCallCredentials.java:52: warning: [deprecation] thisUsesUnstableApi() in CallCredentials has been deprecated\n  public void thisUsesUnstableApi() {}\n              ^"}],"contextualLabel":"thisUsesUnstableApi() in io.grpc.CallCredentials has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/AndroidConnectivityMonitor.java","line":209,"column":16,"length":12},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/AndroidConnectivityMonitor.java:209: warning: [deprecation] NetworkInfo in android.net has been deprecated\n    android.net.NetworkInfo networkInfo = conn.getActiveNetworkInfo();\n               ^"}],"contextualLabel":"android.net.NetworkInfo in android.net has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/AndroidConnectivityMonitor.java","line":209,"column":47,"length":21},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/AndroidConnectivityMonitor.java:209: warning: [deprecation] getActiveNetworkInfo() in ConnectivityManager has been deprecated\n    android.net.NetworkInfo networkInfo = conn.getActiveNetworkInfo();\n                                              ^"}],"contextualLabel":"getActiveNetworkInfo() in android.net.ConnectivityManager has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/AndroidConnectivityMonitor.java","line":210,"column":46,"length":12},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/remote/AndroidConnectivityMonitor.java:210: warning: [deprecation] isConnected() in NetworkInfo has been deprecated\n    return networkInfo != null && networkInfo.isConnected();\n                                             ^"}],"contextualLabel":"isConnected() in android.net.NetworkInfo has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/util/Executors.java","line":44,"column":50,"length":9},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/util/Executors.java:44: warning: [deprecation] AsyncTask in android.os has been deprecated\n          ASYNC_THREAD_POOL_MAXIMUM_CONCURRENCY, AsyncTask.THREAD_POOL_EXECUTOR);\n                                                 ^"}],"contextualLabel":"android.os.AsyncTask in android.os has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/util/Executors.java","line":44,"column":59,"length":21},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/util/Executors.java:44: warning: [deprecation] THREAD_POOL_EXECUTOR in AsyncTask has been deprecated\n          ASYNC_THREAD_POOL_MAXIMUM_CONCURRENCY, AsyncTask.THREAD_POOL_EXECUTOR);\n                                                          ^"}],"contextualLabel":"THREAD_POOL_EXECUTOR in android.os.AsyncTask has been deprecated","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-has-been-deprecated","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/model/BasePath.java"},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use unchecked or unsafe operations."}],"contextualLabel":"Some input files use unchecked or unsafe operations.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-firestore/src/main/java/com/google/firebase/firestore/model/BasePath.java"},{"taskPath":":firebase-firestore:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:unchecked for details."}],"contextualLabel":"Recompile with -Xlint:unchecked for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-crashlytics/src/main/java/com/google/firebase/crashlytics/internal/model/CrashlyticsReport.java","line":246,"column":30,"length":14},{"taskPath":":firebase-crashlytics:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation warning"}],"severity":"WARNING","problemDetails":[{"text":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-crashlytics/src/main/java/com/google/firebase/crashlytics/internal/model/CrashlyticsReport.java:246: warning: [AutoValueMutable] An @AutoValue property that is a primitive array returns the original array, which can therefore be modified by the caller. If this is OK, you can suppress this warning with @SuppressWarnings(\"mutable\"). Otherwise, you should replace the property with an immutable type, perhaps a simple wrapper around the original array.\n      public abstract byte[] getContents();\n                             ^"}],"contextualLabel":"[AutoValueMutable] An @AutoValue property that is a primitive array returns the original array, which can therefore be modified by the caller. If this is OK, you can suppress this warning with @SuppressWarnings(\"mutable\"). Otherwise, you should replace the property with an immutable type, perhaps a simple wrapper around the original array.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-warn-proc-messager","displayName":"Java compilation warning"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-crashlytics/src/main/java/com/google/firebase/crashlytics/internal/common/CommonUtils.java"},{"taskPath":":firebase-crashlytics:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-crashlytics/src/main/java/com/google/firebase/crashlytics/internal/common/CommonUtils.java"},{"taskPath":":firebase-crashlytics:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-installations/src/main/java/com/google/firebase/installations/FirebaseInstallationsException.java"},{"taskPath":":firebase-installations:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-installations/src/main/java/com/google/firebase/installations/FirebaseInstallationsException.java"},{"taskPath":":firebase-installations:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging/src/main/java/com/google/firebase/inappmessaging/internal/ForegroundNotifier.java"},{"taskPath":":firebase-inappmessaging:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging/src/main/java/com/google/firebase/inappmessaging/internal/ForegroundNotifier.java"},{"taskPath":":firebase-inappmessaging:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging/src/main/java/com/google/firebase/inappmessaging/internal/DeveloperListenerManager.java"},{"taskPath":":firebase-inappmessaging:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging/src/main/java/com/google/firebase/inappmessaging/internal/DeveloperListenerManager.java uses unchecked or unsafe operations."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging/src/main/java/com/google/firebase/inappmessaging/internal/DeveloperListenerManager.java uses unchecked or unsafe operations.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging/src/main/java/com/google/firebase/inappmessaging/internal/DeveloperListenerManager.java"},{"taskPath":":firebase-inappmessaging:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:unchecked for details."}],"contextualLabel":"Recompile with -Xlint:unchecked for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-ml-modeldownloader/src/main/java/com/google/firebase/ml/modeldownloader/internal/CustomModelDownloadService.java"},{"taskPath":":firebase-ml-modeldownloader:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-ml-modeldownloader/src/main/java/com/google/firebase/ml/modeldownloader/internal/CustomModelDownloadService.java"},{"taskPath":":firebase-ml-modeldownloader:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"taskPath":":encoders:protoc-gen-firebase-encoders:shadowJar"}],"problem":[{"text":"The FileTreeElement.getMode() method has been deprecated."}],"severity":"WARNING","problemDetails":[{"text":"This is scheduled to be removed in Gradle 9.0."}],"contextualLabel":"The FileTreeElement.getMode() method has been deprecated.","documentationLink":"https://docs.gradle.org/8.13/userguide/upgrading_version_8.html#unix_file_permissions_deprecated","problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"the-filetreeelement-getmode-method-has-been-deprecated","displayName":"The FileTreeElement.getMode() method has been deprecated."}],"solutions":[[{"text":"Please use the getPermissions() method instead."}]]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-messaging/src/main/java/com/google/firebase/messaging/TopicsSyncTask.java"},{"taskPath":":firebase-messaging:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-messaging/src/main/java/com/google/firebase/messaging/TopicsSyncTask.java"},{"taskPath":":firebase-messaging:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/NetworkClient.java"},{"taskPath":":appcheck:firebase-appcheck:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/NetworkClient.java uses or overrides a deprecated API."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/NetworkClient.java uses or overrides a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/NetworkClient.java"},{"taskPath":":appcheck:firebase-appcheck:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/StorageHelper.java"},{"taskPath":":appcheck:firebase-appcheck:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/StorageHelper.java uses unchecked or unsafe operations."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/StorageHelper.java uses unchecked or unsafe operations.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck/src/main/java/com/google/firebase/appcheck/internal/StorageHelper.java"},{"taskPath":":appcheck:firebase-appcheck:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:unchecked for details."}],"contextualLabel":"Recompile with -Xlint:unchecked for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug/src/main/java/com/google/firebase/appcheck/debug/internal/DebugAppCheckProvider.java"},{"taskPath":":appcheck:firebase-appcheck-debug:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug/src/main/java/com/google/firebase/appcheck/debug/internal/DebugAppCheckProvider.java uses or overrides a deprecated API."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug/src/main/java/com/google/firebase/appcheck/debug/internal/DebugAppCheckProvider.java uses or overrides a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug/src/main/java/com/google/firebase/appcheck/debug/internal/DebugAppCheckProvider.java"},{"taskPath":":appcheck:firebase-appcheck-debug:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging-display/src/main/java/com/google/firebase/inappmessaging/display/internal/bindingwrappers/CardBindingWrapper.java"},{"taskPath":":firebase-inappmessaging-display:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-inappmessaging-display/src/main/java/com/google/firebase/inappmessaging/display/internal/bindingwrappers/CardBindingWrapper.java"},{"taskPath":":firebase-inappmessaging-display:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-perf/src/main/java/com/google/firebase/perf/metrics/AppStartTrace.java"},{"taskPath":":firebase-perf:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Some input files use or override a deprecated API."}],"contextualLabel":"Some input files use or override a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-plural","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/firebase-perf/src/main/java/com/google/firebase/perf/metrics/AppStartTrace.java"},{"taskPath":":firebase-perf:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-playintegrity/src/main/java/com/google/firebase/appcheck/playintegrity/internal/PlayIntegrityAppCheckProvider.java"},{"taskPath":":appcheck:firebase-appcheck-playintegrity:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-playintegrity/src/main/java/com/google/firebase/appcheck/playintegrity/internal/PlayIntegrityAppCheckProvider.java uses or overrides a deprecated API."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-playintegrity/src/main/java/com/google/firebase/appcheck/playintegrity/internal/PlayIntegrityAppCheckProvider.java uses or overrides a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-playintegrity/src/main/java/com/google/firebase/appcheck/playintegrity/internal/PlayIntegrityAppCheckProvider.java"},{"taskPath":":appcheck:firebase-appcheck-playintegrity:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug-testing/src/main/java/com/google/firebase/appcheck/debug/testing/DebugAppCheckTestHelper.java"},{"taskPath":":appcheck:firebase-appcheck-debug-testing:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug-testing/src/main/java/com/google/firebase/appcheck/debug/testing/DebugAppCheckTestHelper.java uses unchecked or unsafe operations."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug-testing/src/main/java/com/google/firebase/appcheck/debug/testing/DebugAppCheckTestHelper.java uses unchecked or unsafe operations.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-debug-testing/src/main/java/com/google/firebase/appcheck/debug/testing/DebugAppCheckTestHelper.java"},{"taskPath":":appcheck:firebase-appcheck-debug-testing:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:unchecked for details."}],"contextualLabel":"Recompile with -Xlint:unchecked for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-unchecked-recompile","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-recaptchaenterprise/src/main/java/com/google/firebase/appcheck/recaptchaenterprise/internal/RecaptchaEnterpriseAppCheckProvider.java"},{"taskPath":":appcheck:firebase-appcheck-recaptchaenterprise:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: /home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-recaptchaenterprise/src/main/java/com/google/firebase/appcheck/recaptchaenterprise/internal/RecaptchaEnterpriseAppCheckProvider.java uses or overrides a deprecated API."}],"contextualLabel":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-recaptchaenterprise/src/main/java/com/google/firebase/appcheck/recaptchaenterprise/internal/RecaptchaEnterpriseAppCheckProvider.java uses or overrides a deprecated API.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-filename","displayName":"Java compilation note"}]},{"locations":[{"path":"/home/runner/work/firebase-android-sdk/firebase-android-sdk/appcheck/firebase-appcheck-recaptchaenterprise/src/main/java/com/google/firebase/appcheck/recaptchaenterprise/internal/RecaptchaEnterpriseAppCheckProvider.java"},{"taskPath":":appcheck:firebase-appcheck-recaptchaenterprise:compileReleaseJavaWithJavac"}],"problem":[{"text":"Java compilation note"}],"severity":"ADVICE","problemDetails":[{"text":"Note: Recompile with -Xlint:deprecation for details."}],"contextualLabel":"Recompile with -Xlint:deprecation for details.","problemId":[{"name":"java","displayName":"Java compilation"},{"name":"compilation","displayName":"Compilation"},{"name":"compiler-note-deprecated-recompile","displayName":"Java compilation note"}]}],"problemsReport":{"totalProblemCount":76,"buildName":"com.google.firebase","requestedTasks":"kotlindoc","documentationLink":"https://docs.gradle.org/8.13/userguide/reporting_problems.html","documentationLinkCaption":"Problem report","summaries":[{"problemId":[{"name":"deprecation","displayName":"Deprecation"},{"name":"properties-should-be-assigned-using-the-propname-value-syntax-setting-a-property-via-the-gradle-generated-propname-value-or-propname-value-syntax-in-groovy-dsl","displayName":"Properties should be assigned using the 'propName = value' syntax. Setting a property via the Gradle-generated 'propName value' or 'propName(value)' syntax in Groovy DSL has been deprecated."}],"count":4}]}}
 // end-report-data
 );}
 </script>

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Summary of Changes

Hello @rlazo, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly enhances the AI client library by integrating support for 'thinking summaries' and 'thought signatures' from thinking-compatible models. The core change involves adding mechanisms to capture and expose the model's internal reasoning process, while also ensuring that standard response fields remain focused on user-facing content. This allows developers to gain deeper insights into how the AI model arrives at its responses and provides more control over the output.

Highlights

  • Thought Summaries in Responses: Introduced a new thoughtSummary property to GenerateContentResponse to provide a consolidated string of all text parts marked as thoughts. This allows developers to easily access the model's internal reasoning process.
  • Exclusion of Thought Parts from Standard Fields: Modified existing convenience fields (text, functionCalls, inlineDataParts) in GenerateContentResponse to explicitly filter out and ignore any parts that are marked as 'thoughts', ensuring that these fields only return user-facing content.
  • Enhanced Part Type Definitions: Updated the Part interface and all its concrete implementations (e.g., TextPart, FunctionCallPart, ImagePart) to include isThought and thoughtSignature properties. This enables the API to distinguish between regular content and internal thought processes, and to provide unique identifiers for thoughts.
  • Configurable Thought Inclusion: Extended ThinkingConfig with an includeThoughts option, allowing users to explicitly request that the model's internal thought processes be included in the response. This provides fine-grained control over the level of detail received from thinking-compatible models.
  • New Test Coverage: Added new test cases to verify the correct handling and serialization of thought summaries and thought signatures, ensuring the new features function as expected.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request adds support for thought summaries and thought signatures, which is a significant feature enhancement. The changes are mostly well-implemented, particularly in Part.kt and ThinkingConfig.kt. However, I've identified two critical bugs in GenerateContentResponse.kt where functionCalls doesn't filter out thoughts as documented, and thoughtSummary is implemented incorrectly, which would lead to incorrect output. I've also pointed out a couple of typos in test names to improve code clarity and maintainability. Please address the critical issues before merging.

@google-oss-bot

This comment was marked as outdated.

@google-oss-bot
Copy link
Contributor

google-oss-bot commented Aug 19, 2025

rlazo and others added 3 commits August 19, 2025 13:40
…ConfigTest.kt

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
…apshotTests.kt

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
…teContentResponse.kt

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
@google-oss-bot

This comment was marked as outdated.

rlazo and others added 2 commits August 19, 2025 13:47
…teContentResponse.kt

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
@google-oss-bot

This comment was marked as outdated.

2 similar comments
@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-ai:
error: Added method com.google.firebase.ai.type.CodeExecutionResultPart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.ExecutableCodePart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.FileDataPart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.FunctionCallPart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.FunctionResponsePart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.GenerateContentResponse.getThoughtSummary() [AddedMethod]
error: Added method com.google.firebase.ai.type.ImagePart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.InlineDataPart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.Part.isThought() [AddedAbstractMethod]
error: Added method com.google.firebase.ai.type.TextPart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.ThinkingConfig.Builder.setIncludeThoughts(boolean) [AddedMethod]

Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly.

@google-oss-bot
Copy link
Contributor

The public api surface has changed for the subproject firebase-ai:
error: Added method com.google.firebase.ai.type.CodeExecutionResultPart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.ExecutableCodePart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.FileDataPart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.FunctionCallPart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.FunctionResponsePart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.GenerateContentResponse.getThoughtSummary() [AddedMethod]
error: Added method com.google.firebase.ai.type.ImagePart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.InlineDataPart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.Part.isThought() [AddedAbstractMethod]
error: Added method com.google.firebase.ai.type.TextPart.isThought() [AddedMethod]
error: Added method com.google.firebase.ai.type.ThinkingConfig.Builder.setIncludeThoughts(boolean) [AddedMethod]

Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly.

@google-oss-bot
Copy link
Contributor

Size Report 1

Affected Products

  • firebase-ai

    TypeBase (c85227e)Merge (65537e4)Diff
    aar940 kB952 kB+11.9 kB (+1.3%)
    apk (aggressive)1.62 MB1.63 MB+8.51 kB (+0.5%)
    apk (release)10.7 MB10.8 MB+19.5 kB (+0.2%)

Test Logs

  1. https://storage.googleapis.com/firebase-sdk-metric-reports/Hs3rJW6cyb.html

@rlazo
Copy link
Collaborator Author

rlazo commented Aug 20, 2025

Semver check is failing due to a missing major version bump caused by:

  MAJOR: Added method com.google.firebase.ai.type.Part.isThought() [AddedAbstractMethod]

While technically correct, the interface Part is public to enable it being consumed, but it's by no means intended to be implemented by the user. This makes it safe to add methods without breaking backwards compatibility.

@rlazo rlazo merged commit be8f480 into main Aug 20, 2025
31 of 32 checks passed
@rlazo rlazo deleted the rl.thinking branch August 20, 2025 16:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants