Files
minstrel/android/app/build/intermediates/incremental/debug-mergeJavaRes/zip-cache/6lnbt6z5qpMkSIKdgSK2JQ==
T
bvandeusen 0b72827682 fix(android): unblock first device test — auth contrast + dynamic base URL
Two regressions surfaced on the first real device run.

1. Contrast on ServerUrl + Login screens: both wrapped content in a
   bare Box(fillMaxSize), no Surface. The obsidian background never
   painted (rendered against the system root view's default),
   LocalContentColor cascade fell through to Material's default
   contentColor — the screens rendered as near-invisible dark text
   on dark grey. Wrap both in Surface(color = background, contentColor
   = onBackground) so the bg paints AND the M3 contentColor pipeline
   flows correctly through OutlinedTextField labels / cursor /
   placeholders + the Button content tint.

2. The bigger bug: NetworkModule.provideRetrofit read
   authStore.baseUrl.value ONCE at Retrofit creation. AuthStore loads
   from Room async, so at injection time the value was still the
   localhost:8080 placeholder. Result: even after the user typed
   their real server URL on the ServerUrl screen, every API call
   kept hitting localhost:8080 ("Failed to connect to
   localhost/127.0.0.1:8080" on the login attempt). The pre-fix
   NetworkModule comment even acknowledged it — *"Server-URL
   changes require an app relaunch"*.

   Fix: per-request rewrite. New BaseUrlInterceptor reads the live
   AuthStore.baseUrl.value on every request and rewrites
   scheme/host/port of the outgoing URL. Retrofit now keeps a
   placeholder baseUrl ("http://placeholder.invalid/") solely to
   satisfy its parser; the actual target host is dynamic. Order in
   OkHttp chain: BaseUrl first → Auth → logging, so the cookie
   interceptor sees the final URL.

New:
  - api/BaseUrlInterceptor.kt — per-request scheme/host/port rewrite
    from AuthStore.baseUrl. Falls through to the original request
    when the stored URL is unparseable.

Modified:
  - api/NetworkModule.kt — adds BaseUrlInterceptor to the OkHttp
    chain. Drops the AuthStore dependency from provideRetrofit;
    swaps baseUrl for the placeholder.
  - auth/ui/ServerUrlScreen.kt — Box → Surface wrap.
  - auth/ui/LoginScreen.kt — Box → Surface wrap.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-26 00:27:05 -04:00

1 line
12 KiB
Plaintext

[{"key":"META-INF/MANIFEST.MF","name":"META-INF/MANIFEST.MF","size":1172,"crc":-1247649773},{"key":"META-INF/okio.kotlin_module","name":"META-INF/okio.kotlin_module","size":452,"crc":-538821570},{"key":"okio/-Base64.class","name":"okio/-Base64.class","size":3917,"crc":1703178039},{"key":"okio/-DeflaterSinkExtensions.class","name":"okio/-DeflaterSinkExtensions.class","size":1432,"crc":1845420310},{"key":"okio/-DeprecatedOkio.class","name":"okio/-DeprecatedOkio.class","size":4690,"crc":157594013},{"key":"okio/-DeprecatedUpgrade.class","name":"okio/-DeprecatedUpgrade.class","size":993,"crc":-1355922544},{"key":"okio/-DeprecatedUtf8.class","name":"okio/-DeprecatedUtf8.class","size":1708,"crc":1214267686},{"key":"okio/-GzipSinkExtensions.class","name":"okio/-GzipSinkExtensions.class","size":925,"crc":804347262},{"key":"okio/-GzipSourceExtensions.class","name":"okio/-GzipSourceExtensions.class","size":1619,"crc":1853117435},{"key":"okio/-InflaterSourceExtensions.class","name":"okio/-InflaterSourceExtensions.class","size":1454,"crc":-1475251230},{"key":"okio/-SegmentedByteString.class","name":"okio/-SegmentedByteString.class","size":7040,"crc":1543526173},{"key":"okio/AsyncTimeout$Companion.class","name":"okio/AsyncTimeout$Companion.class","size":4591,"crc":-1316471157},{"key":"okio/AsyncTimeout$Watchdog.class","name":"okio/AsyncTimeout$Watchdog.class","size":1724,"crc":756727502},{"key":"okio/AsyncTimeout$sink$1.class","name":"okio/AsyncTimeout$sink$1.class","size":5299,"crc":773409837},{"key":"okio/AsyncTimeout$source$1.class","name":"okio/AsyncTimeout$source$1.class","size":3988,"crc":-97392382},{"key":"okio/AsyncTimeout.class","name":"okio/AsyncTimeout.class","size":7893,"crc":-1894051916},{"key":"okio/BlackholeSink.class","name":"okio/BlackholeSink.class","size":1330,"crc":1708113837},{"key":"okio/Buffer$UnsafeCursor.class","name":"okio/Buffer$UnsafeCursor.class","size":8341,"crc":-1920221073},{"key":"okio/Buffer$inputStream$1.class","name":"okio/Buffer$inputStream$1.class","size":2665,"crc":-1965217649},{"key":"okio/Buffer$outputStream$1.class","name":"okio/Buffer$outputStream$1.class","size":1875,"crc":-732132093},{"key":"okio/Buffer.class","name":"okio/Buffer.class","size":64059,"crc":-271439713},{"key":"okio/BufferedSink.class","name":"okio/BufferedSink.class","size":3565,"crc":-464846843},{"key":"okio/BufferedSource.class","name":"okio/BufferedSource.class","size":4531,"crc":-886450956},{"key":"okio/ByteString$Companion.class","name":"okio/ByteString$Companion.class","size":9282,"crc":-1977303042},{"key":"okio/ByteString.class","name":"okio/ByteString.class","size":24180,"crc":-2113340044},{"key":"okio/CipherSink.class","name":"okio/CipherSink.class","size":5612,"crc":1874790632},{"key":"okio/CipherSource.class","name":"okio/CipherSource.class","size":4945,"crc":-1754180194},{"key":"okio/DeflaterSink.class","name":"okio/DeflaterSink.class","size":5210,"crc":1764972056},{"key":"okio/ExperimentalFileSystem.class","name":"okio/ExperimentalFileSystem.class","size":991,"crc":664637900},{"key":"okio/FileHandle$FileHandleSink.class","name":"okio/FileHandle$FileHandleSink.class","size":4319,"crc":1451399623},{"key":"okio/FileHandle$FileHandleSource.class","name":"okio/FileHandle$FileHandleSource.class","size":4147,"crc":-1476950216},{"key":"okio/FileHandle.class","name":"okio/FileHandle.class","size":15539,"crc":-594373190},{"key":"okio/FileMetadata.class","name":"okio/FileMetadata.class","size":6412,"crc":145484025},{"key":"okio/FileSystem$Companion.class","name":"okio/FileSystem$Companion.class","size":1582,"crc":1583801665},{"key":"okio/FileSystem.class","name":"okio/FileSystem.class","size":14158,"crc":-734049029},{"key":"okio/ForwardingFileSystem$listRecursively$1.class","name":"okio/ForwardingFileSystem$listRecursively$1.class","size":1585,"crc":-715660176},{"key":"okio/ForwardingFileSystem.class","name":"okio/ForwardingFileSystem.class","size":8547,"crc":-1087833185},{"key":"okio/ForwardingSink.class","name":"okio/ForwardingSink.class","size":2470,"crc":-736343852},{"key":"okio/ForwardingSource.class","name":"okio/ForwardingSource.class","size":2374,"crc":256964953},{"key":"okio/ForwardingTimeout.class","name":"okio/ForwardingTimeout.class","size":3005,"crc":971974079},{"key":"okio/GzipSink.class","name":"okio/GzipSink.class","size":5551,"crc":-240198501},{"key":"okio/GzipSource.class","name":"okio/GzipSource.class","size":7389,"crc":882897078},{"key":"okio/HashingSink$Companion.class","name":"okio/HashingSink$Companion.class","size":2532,"crc":1370722868},{"key":"okio/HashingSink.class","name":"okio/HashingSink.class","size":6280,"crc":616812603},{"key":"okio/HashingSource$Companion.class","name":"okio/HashingSource$Companion.class","size":2558,"crc":-803486970},{"key":"okio/HashingSource.class","name":"okio/HashingSource.class","size":5718,"crc":-1357895144},{"key":"okio/InflaterSource.class","name":"okio/InflaterSource.class","size":5329,"crc":1641023318},{"key":"okio/InputStreamSource.class","name":"okio/InputStreamSource.class","size":3863,"crc":-950756002},{"key":"okio/JvmFileHandle.class","name":"okio/JvmFileHandle.class","size":2488,"crc":-773352805},{"key":"okio/JvmSystemFileSystem.class","name":"okio/JvmSystemFileSystem.class","size":8584,"crc":-2027300724},{"key":"okio/NioFileSystemFileHandle.class","name":"okio/NioFileSystemFileHandle.class","size":2640,"crc":820067736},{"key":"okio/NioFileSystemWrappingFileSystem.class","name":"okio/NioFileSystemWrappingFileSystem.class","size":13052,"crc":43658993},{"key":"okio/NioSystemFileSystem.class","name":"okio/NioSystemFileSystem.class","size":5629,"crc":-1040428164},{"key":"okio/Okio.class","name":"okio/Okio.class","size":5129,"crc":325441305},{"key":"okio/Okio__JvmOkioKt.class","name":"okio/Okio__JvmOkioKt.class","size":8004,"crc":-69307768},{"key":"okio/Okio__OkioKt.class","name":"okio/Okio__OkioKt.class","size":3001,"crc":-603253998},{"key":"okio/Okio__ZlibOkioKt.class","name":"okio/Okio__ZlibOkioKt.class","size":1098,"crc":-1028271842},{"key":"okio/Options$Companion.class","name":"okio/Options$Companion.class","size":8176,"crc":-1476210770},{"key":"okio/Options.class","name":"okio/Options.class","size":3159,"crc":1349417992},{"key":"okio/OutputStreamSink.class","name":"okio/OutputStreamSink.class","size":3326,"crc":-849556360},{"key":"okio/Path$Companion.class","name":"okio/Path$Companion.class","size":3057,"crc":-1468069468},{"key":"okio/Path.class","name":"okio/Path.class","size":15401,"crc":-1940585813},{"key":"okio/PeekSource.class","name":"okio/PeekSource.class","size":3502,"crc":-1438757631},{"key":"okio/Pipe$sink$1.class","name":"okio/Pipe$sink$1.class","size":9089,"crc":1436357702},{"key":"okio/Pipe$source$1.class","name":"okio/Pipe$source$1.class","size":3256,"crc":-1684999848},{"key":"okio/Pipe.class","name":"okio/Pipe.class","size":8938,"crc":-2025901254},{"key":"okio/RealBufferedSink$outputStream$1.class","name":"okio/RealBufferedSink$outputStream$1.class","size":3084,"crc":-1414278961},{"key":"okio/RealBufferedSink.class","name":"okio/RealBufferedSink.class","size":19557,"crc":148535048},{"key":"okio/RealBufferedSource$inputStream$1.class","name":"okio/RealBufferedSource$inputStream$1.class","size":4057,"crc":582032581},{"key":"okio/RealBufferedSource.class","name":"okio/RealBufferedSource.class","size":27842,"crc":-469775944},{"key":"okio/Segment$Companion.class","name":"okio/Segment$Companion.class","size":807,"crc":-1015157867},{"key":"okio/Segment.class","name":"okio/Segment.class","size":4845,"crc":-636016842},{"key":"okio/SegmentPool.class","name":"okio/SegmentPool.class","size":3393,"crc":-1620192945},{"key":"okio/SegmentedByteString.class","name":"okio/SegmentedByteString.class","size":17675,"crc":1845651295},{"key":"okio/Sink.class","name":"okio/Sink.class","size":903,"crc":1603684367},{"key":"okio/SocketAsyncTimeout.class","name":"okio/SocketAsyncTimeout.class","size":2513,"crc":47816018},{"key":"okio/Source.class","name":"okio/Source.class","size":838,"crc":1940801274},{"key":"okio/SystemFileSystem.class","name":"okio/SystemFileSystem.class","size":1078,"crc":-1302706536},{"key":"okio/Throttler$sink$1.class","name":"okio/Throttler$sink$1.class","size":1753,"crc":-1247951848},{"key":"okio/Throttler$source$1.class","name":"okio/Throttler$source$1.class","size":1617,"crc":1530213030},{"key":"okio/Throttler.class","name":"okio/Throttler.class","size":4980,"crc":504874675},{"key":"okio/Timeout$Companion$NONE$1.class","name":"okio/Timeout$Companion$NONE$1.class","size":1288,"crc":-1842734800},{"key":"okio/Timeout$Companion.class","name":"okio/Timeout$Companion.class","size":2222,"crc":-344727566},{"key":"okio/Timeout.class","name":"okio/Timeout.class","size":7004,"crc":-2135801364},{"key":"okio/TypedOptions$Companion.class","name":"okio/TypedOptions$Companion.class","size":2416,"crc":850279310},{"key":"okio/TypedOptions.class","name":"okio/TypedOptions.class","size":3145,"crc":-1160484551},{"key":"okio/Utf8.class","name":"okio/Utf8.class","size":22943,"crc":1397522987},{"key":"okio/ZipFileSystem$Companion.class","name":"okio/ZipFileSystem$Companion.class","size":1011,"crc":-1578269257},{"key":"okio/ZipFileSystem.class","name":"okio/ZipFileSystem.class","size":11805,"crc":149850848},{"key":"okio/_JvmPlatformKt.class","name":"okio/_JvmPlatformKt.class","size":3068,"crc":-1534222390},{"key":"okio/internal/-Buffer.class","name":"okio/internal/-Buffer.class","size":51848,"crc":510223799},{"key":"okio/internal/-BufferedSource.class","name":"okio/internal/-BufferedSource.class","size":1432,"crc":-397196878},{"key":"okio/internal/-ByteString.class","name":"okio/internal/-ByteString.class","size":30805,"crc":-51939243},{"key":"okio/internal/-FileSystem$collectRecursively$1.class","name":"okio/internal/-FileSystem$collectRecursively$1.class","size":1822,"crc":1136250640},{"key":"okio/internal/-FileSystem$commonDeleteRecursively$sequence$1.class","name":"okio/internal/-FileSystem$commonDeleteRecursively$sequence$1.class","size":3819,"crc":-1368889406},{"key":"okio/internal/-FileSystem$commonListRecursively$1.class","name":"okio/internal/-FileSystem$commonListRecursively$1.class","size":4457,"crc":59679248},{"key":"okio/internal/-FileSystem.class","name":"okio/internal/-FileSystem.class","size":11691,"crc":-1750107618},{"key":"okio/internal/-Path.class","name":"okio/internal/-Path.class","size":17040,"crc":-713656819},{"key":"okio/internal/-RealBufferedSink.class","name":"okio/internal/-RealBufferedSink.class","size":14409,"crc":-616276779},{"key":"okio/internal/-RealBufferedSource.class","name":"okio/internal/-RealBufferedSource.class","size":23195,"crc":-1487015902},{"key":"okio/internal/-SegmentedByteString.class","name":"okio/internal/-SegmentedByteString.class","size":13094,"crc":1911565268},{"key":"okio/internal/EocdRecord.class","name":"okio/internal/EocdRecord.class","size":1065,"crc":449432263},{"key":"okio/internal/FixedLengthSource.class","name":"okio/internal/FixedLengthSource.class","size":2406,"crc":515264959},{"key":"okio/internal/ResourceFileSystem$Companion.class","name":"okio/internal/ResourceFileSystem$Companion.class","size":2327,"crc":-1703121856},{"key":"okio/internal/ResourceFileSystem$roots$2.class","name":"okio/internal/ResourceFileSystem$roots$2.class","size":1641,"crc":-866262903},{"key":"okio/internal/ResourceFileSystem$toJarRoot$zip$1.class","name":"okio/internal/ResourceFileSystem$toJarRoot$zip$1.class","size":1930,"crc":-1683055901},{"key":"okio/internal/ResourceFileSystem.class","name":"okio/internal/ResourceFileSystem.class","size":16326,"crc":-865159752},{"key":"okio/internal/ZipEntry.class","name":"okio/internal/ZipEntry.class","size":6741,"crc":2008953078},{"key":"okio/internal/ZipFilesKt$buildIndex$$inlined$sortedBy$1.class","name":"okio/internal/ZipFilesKt$buildIndex$$inlined$sortedBy$1.class","size":2149,"crc":-878791106},{"key":"okio/internal/ZipFilesKt$openZip$1.class","name":"okio/internal/ZipFilesKt$openZip$1.class","size":1665,"crc":1437961248},{"key":"okio/internal/ZipFilesKt$readCentralDirectoryZipEntry$1$1.class","name":"okio/internal/ZipFilesKt$readCentralDirectoryZipEntry$1$1.class","size":2646,"crc":-547697920},{"key":"okio/internal/ZipFilesKt$readCentralDirectoryZipEntry$1.class","name":"okio/internal/ZipFilesKt$readCentralDirectoryZipEntry$1.class","size":3909,"crc":1853026452},{"key":"okio/internal/ZipFilesKt$readOrSkipLocalHeader$1.class","name":"okio/internal/ZipFilesKt$readOrSkipLocalHeader$1.class","size":3201,"crc":-1609483388},{"key":"okio/internal/ZipFilesKt.class","name":"okio/internal/ZipFilesKt.class","size":21385,"crc":553299536},{"key":"okio/internal/_Utf8Kt.class","name":"okio/internal/_Utf8Kt.class","size":14121,"crc":100000244},{"key":"okio/internal/_ZlibJvmKt.class","name":"okio/internal/_ZlibJvmKt.class","size":1173,"crc":-54146638}]