Delete TRANSCRIPT_RENDERING.md, which was all finished work
The file was a week's record of the transcript work, and everything in its architecture, techniques and rejected sections has landed -- so it was a log of how the code got here, which the code's own comments and AGENTS.md already carry. Kept only what existed nowhere else: stream-bench.sh, trace-draw.sh and the two emulator-loop traps go to AGENTS.md beside transcript-bench.sh, along with the standing rule to run the benches either side of a transcript change; GrapheneOS's broken System Tracing goes to ~/.claude/MACHINE.md, since it is about the phone rather than this project. Its one unfinished item -- the reconnect loop after a restart onto a streaming session, which may already have been fixed by the restore's one-event-per-request fix -- moves to TODO.md. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
7997eeb7f8
commit
45e631ab96
3 files changed
+37
-310
No files matched your search
@@ -5,11 +5,6 @@ replacing the Claude app for daily use. Rust/Axum backend on the desktop,
|
||||
Kotlin/Compose Android app, WireGuard + pinned self-signed TLS + bearer token
|
||||
between them.
|
||||
|
||||
**`TRANSCRIPT_RENDERING.md` is the record of the transcript work** --
|
||||
measurements, techniques, the harness, and the ordered list of what is
|
||||
next. Read it before touching anything under `Markdown*.kt`,
|
||||
`Transcript*.kt` or `SessionScreen.kt`'s list.
|
||||
|
||||
**`PLAN.md` is the design source of truth.** Read it before building or
|
||||
changing anything structural. It records every decision with its date, its
|
||||
rationale, and the alternatives that were rejected and why — keep that habit
|
||||
@@ -370,7 +365,7 @@ first if a remote spawn ever mangles an argument.
|
||||
**An inline code chip is drawn behind the text** rather than as the
|
||||
renderer's span background, because a span background is part of the
|
||||
text's own drawing and hid the selection under it -- see
|
||||
`appendCodeChip` in `MarkdownLinks.kt` and TRANSCRIPT_RENDERING.md.
|
||||
`appendCodeChip` in `MarkdownLinks.kt`.
|
||||
- **A session can be moved to another directory** from the settings dialog
|
||||
(`POST /sessions/{id}/cwd`). It stops the process, because a working
|
||||
directory is settled at spawn; the next message starts it in the new one.
|
||||
@@ -523,7 +518,29 @@ first if a remote spawn ever mangles an argument.
|
||||
the in-app copy button produces, whose `on screen:` line names what the
|
||||
viewport was actually holding. Compare two runs of it with the same
|
||||
gestures; the emulator's absolute frame times transfer nothing, the
|
||||
report's accounting does.
|
||||
report's accounting does. Run it either side of any change under
|
||||
`Markdown*.kt`, `Transcript*.kt` or `SessionScreen.kt`'s list, and put the
|
||||
report in the commit; the numbers that move first are the worst
|
||||
`record: one block`, the reparse mean while streaming, and the draw
|
||||
phase's accounting line.
|
||||
- **`app/stream-bench.sh [-k] FILE` is that measurement for a reply still
|
||||
arriving.** It opens the first session, taps "Jump to latest" so the list
|
||||
is pinned to the newest end, resets the report, sends FILE, waits for the
|
||||
transcript to stop growing, and prints. Both of those are corrections to a
|
||||
first version that measured nothing: a transcript parked further back never
|
||||
redraws while a reply streams into it, and a session is idle at *both* ends
|
||||
of a turn, so polling for idle answers before the turn has started.
|
||||
- **`app/trace-draw.sh` names what a scrolling frame spends inside the
|
||||
framework**, from `atrace` text output with no trace processor needed. It
|
||||
is how the cost of a layout node per link was attributed to the framework
|
||||
rather than guessed at.
|
||||
- **Two traps in the emulator bench loop**, each of which cost a run.
|
||||
`adb shell pm clear` removes the enrolment and the notification permission
|
||||
along with the saved anchors, so the next run measures a permission dialog
|
||||
-- re-enrol with the command `ui-sandbox.sh` prints, and
|
||||
`pm grant ... POST_NOTIFICATIONS`. And a saved scroll anchor is per session
|
||||
id, so the only way two builds start a scroll from the same place is a
|
||||
*fresh session for each*.
|
||||
- **`ai-server --delay MS` holds every response back.** Over the tunnel a
|
||||
phone's requests take tens to hundreds of milliseconds, and several
|
||||
faults live entirely in what the app does *while* one is outstanding. On
|
||||
|
||||
Reference in new issue
Block a user