@@ -94,14 +94,15 @@ before/after values, aggregate mobile packet-pressure drops, primitive
9494client/flow topology, platform transport-budget use, Android PSS, Java/native
9595heaps, threads, descriptors, route state, and aggregate carrier counters. The
9696steady streamline signal is ` goRuntimeBytes ` :
97- five quiet connected minutes should have p50 and p95 at or below 20 MiB. Keep
97+ five quiet connected minutes after burst ownership drains should have p50 and
98+ p95 at or below 24 MiB. Keep
9899the active peak and time-to-recover separate, and investigate every sample over
99100the 28-MiB active diagnostic threshold. Neither threshold is Android whole-app
100101PSS or an iOS Network Extension ` phys_footprint ` ceiling.
101102
102103Ordinary Android and Apple SDK libraries start the Go runtime with
103- ` memprofilerate=0 ` . Android and iOS also use the same ` GOGC=10 ` pacing for the
104- 20 -MiB campaign; a looser Android heap float is not a valid surrogate for the
104+ ` memprofilerate=0 ` . Android and iOS also use the same ` GOGC=25 ` pacing for the
105+ 24 -MiB campaign; a looser Android heap float is not a valid surrogate for the
105106iOS Network Extension. A private diagnostic build can opt in before native
106107runtime initialization with ` -PurnetworkMemoryProfileRateBytes=65536 ` ; the
107108Gradle value is passed to both the AAR linker and the diagnostic app API.
@@ -115,10 +116,15 @@ mobile reclaimer waits for payload quiet and bounded outstanding ownership,
115116then performs at most one pass per cooldown; use its deferred, below-target,
116117cooldown, and before/after counters to distinguish policy from a leak.
117118` packetPressureDropCount ` is a cumulative overload counter, not a pool leak:
118- the <=20 -MiB mobile profile samples packet-root ownership every fourth ingress
119+ the <=24 -MiB mobile profile samples packet-root ownership every fourth ingress
119120call below pressure, rejects a complete native ingress batch at 512 or more
120121roots, and samples every call until ownership drains. Rejected batch ownership
121122is returned immediately; TCP retransmission/backpressure provides recovery.
123+ The accepted performance profile keeps the H3-safe 16-message sequence and
124+ 16-packet/24-KiB group ceilings, fixes Auto quality/speed windows at 4/1, and
125+ retains a 512-KiB packet warm set after reclaim. Do not raise the aggregate
126+ gate or double the per-flow/group ceilings without repeating the explicit-H3
127+ 28-MiB failure test; both experiments breached it on the physical surrogate.
122128Server/default devices do not instantiate this gate. The same mobile profile
123129retires inactive TCP flow state after three minutes so a closed browser burst
124130does not preserve the desktop ten-minute graph throughout the five-minute
0 commit comments