Thin the app's comments
The same pass the server had, on the Kotlin side: comments restating what the code says are gone, and the ones recording a measurement, a constraint or an incident are kept but cut to a few lines each. 6540 comment lines to 5674, and 920 lines off the app. Two doc comments had drifted onto the item above the one they describe -- `contextAfter`'s onto `sessionWorking` in Events.kt, and `UsageMonitor`'s equivalent on the server was fixed in the previous commit. Each is back on its own item, which is the only non-comment line this diff moves. The comments are reflowed to the column limit at their own indentation: several were written wide, and ktfmt re-wrapped them into lines holding a single orphan word. `/tmp` script, not kept -- ktfmt is idempotent over the result, which is the check. Left alone deliberately: this codebase's remaining comment density is high because the comments carry things the code cannot say -- what a null means, what a number was measured against, which bug a guard exists for. Of the 238 one-line doc comments in the app, five were pure restatement of the name and were removed; the rest each say something the signature does not. ktfmtFormat, compileDebugKotlin, lintDebug and testDebugUnitTest pass; cargo test (127), clippy --all-targets and fmt still clean. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
79682f03a7
commit
edc39c7371
68 files changed
+2077
-2997
No files matched your search
@@ -12,10 +12,9 @@ import java.util.concurrent.atomic.AtomicLong
|
||||
*
|
||||
* Here because the emulator cannot answer the question this is for. Its own scroll sits at the same
|
||||
* frame times as the stock Settings app -- 21ms at the median for both -- so every app-level cost
|
||||
* is under the floor of what it can measure, and a frame number taken in it says nothing about a
|
||||
* 120Hz phone. Counts do not have that problem: how many times a row was composed, or a reply
|
||||
* parsed, is the same number on any machine, and it is the number that says whether the work is
|
||||
* proportional to what is on screen or to everything ever loaded.
|
||||
* is under the floor of what it can measure. Counts do not have that problem: how many times a row
|
||||
* was composed, or a reply parsed, is the same number on any machine, and it is the number that
|
||||
* says whether the work is proportional to what is on screen or to everything ever loaded.
|
||||
*
|
||||
* Always on rather than behind a build flag. What is measured is an atomic increment on paths that
|
||||
* already allocate lists and parse markdown, and a counter that is only compiled into the build
|
||||
@@ -90,14 +89,12 @@ object DebugStats {
|
||||
*
|
||||
* The draw phase is where Compose's measurement lands as well as its recording -- the platform
|
||||
* calls `measureAndLayout()` from `dispatchDraw` -- so "draw is high" has never said which of three
|
||||
* different things is high. The transcript times its own measure, its own placement and its own
|
||||
* recording, and this is the subtraction that was otherwise done by hand in a conversation every
|
||||
* time a report arrived. What is left over is the framework's per-frame bookkeeping after a layout,
|
||||
* which grows with how many nodes are alive rather than with how many are on screen.
|
||||
* different things is high. The transcript times its own measure, placement and recording, and this
|
||||
* is the subtraction. What is left over is the framework's per-frame bookkeeping after a layout,
|
||||
* which grows with how many nodes are alive rather than how many are on screen.
|
||||
*
|
||||
* Per frame rather than in total, because the budget it has to fit in is per frame. The recordings
|
||||
* are not themselves per-frame -- a measurement happens on the frames that need one -- so these are
|
||||
* shares of an average frame, not a claim about any particular one.
|
||||
* are not themselves per-frame, so these are shares of an average frame.
|
||||
*/
|
||||
fun drawAccounting(drawNanos: Long, frames: Int): List<String> {
|
||||
if (frames == 0 || drawNanos == 0L) return emptyList()
|
||||
@@ -122,8 +119,7 @@ fun drawAccounting(drawNanos: Long, frames: Int): List<String> {
|
||||
* frames went, and what the app did to produce them.
|
||||
*
|
||||
* Written for somebody to paste into a conversation, so it is plain text with the units on every
|
||||
* number -- a report whose reader has to ask what the columns mean costs another round trip, and
|
||||
* the whole point of it is to save one.
|
||||
* number -- a report whose reader has to ask what the columns mean costs another round trip.
|
||||
*/
|
||||
fun debugReport(
|
||||
device: String,
|
||||
|
||||
Reference in new issue
Block a user