# Validation report — Fileworkbench source release 0.2.1 Date: 2026-09-24. **Source hotfix, not a verified Android APK.** ## Change scope Corrected the invalid `PdfDocument().use` call in the Android instrumentation smoke test. Added explicit page/document/client cleanup and unique temporary-file cleanup. No production feature or dependency changes. Updated version metadata and documentation, and added a narrow source-pattern regression guard. Details: `HOTFIX-0.2.1.md`. ## Executed in this session | Check | Result | Boundary | |---|---|---| | Portable core/JVM checks | **112/112 passed** | Kotlin/JVM 1.9.0, JDK 21.0.11; not pinned Android/Gradle toolchain | | Kotlin PSI syntax | **44 files, zero parse errors** | Does not resolve Android or Compose types | | XML and source invariants | Passed | Includes guard against the exact invalid constructor/use expression | | Regression guard positive/negative check | Passed | Rejects original source; accepts fixed source; not type checking | | One-file patch application and reversal | Passed | Exact original 0.2.0 ViewerSmokeTest; output matches supplied fixed file | | `:androidApp:compileDebugAndroidTestKotlin` retry | **Blocked before compilation** | Gradle-wrapper download failed at DNS resolution; exit 6 | | APK / installation / device tests | **Not produced / not run** | No Android SDK or emulator installed here | The new source guard catches the reported expression only; it does not establish that arbitrary `use` calls have valid receivers. No Android build is claimed. Raw evidence is under `validation/0.2.1/`. Historical 0.2.0 evidence remains in its original files; the previous report is preserved as `VALIDATION-0.2.0.md`. The attempted Android command was: ```sh ./gradlew --no-daemon --console=plain :androidApp:compileDebugAndroidTestKotlin ``` The failure was: ```text curl: (6) Could not resolve host: raw.githubusercontent.com ``` ## Still required on a configured build machine Retry instrumentation compilation, then assemble the debug app and test APKs, run unit tests and lint, and run instrumented tests on a phone or emulator. Follow the existing `BROWSER_ACCEPTANCE.md` checklist. iOS framework/application verification is unchanged and remains outstanding.