Repository navigation
Full system/repo review: deps, toolchain, security, test coverage - #9
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A full re-pass of
REVIEW.md, widened beyond the original code review to cover dependencies, build toolchain, security, and test-coverage gaps — plus three small fixes surfaced along the way.REVIEW.md changes
pdf_combiner/file_picker/share_plus/archiveare multiple majors behind (with a note thatpdf_combinerupgrading likely lets thefile_magic_numberoverride be dropped entirely); documents the JDK/Gradle-daemon toolchain trap hit while verifying PR Add in-app tutorial screen with a first-launch welcome prompt #8 on the emulator (flutter config --jdk-dirsilently overridesJAVA_HOME, and killed processes can leave stale Gradle/Kotlin daemons pinned to a dead JDK); flags that CI only runsanalyze+test, never an actualflutter build apk.lib/, no hardcoded secrets, no path-traversal/zip-slip surface (archiveonly builds zips, never extracts untrusted ones), no missing Android permissions (image_picker/file_picker/share_plus merge their own via AAR manifests). Unencrypted local storage and the web build's un-pinned pdf.js CDN load are noted as Info-level, standard for the app's threat model.SettingsScreen,LatexEditorScreen,PreviewScreen,PdfCombinerScreen,ExportSheet,SignaturePicker,contact_section.dart, and the resume/letter editors' actual save/dirty-state flow), withSignaturePickercalled out as highest-value since it feeds directly into the still-open M3 finding.cupertino_iconsdependency (C1); thedevtools_options.yamltracking issue (C4) — the.gitignoreentry from PR Rewrite README and add architecture + contributing docs #3 didn't actually untrack it since it had already beengit add -A'd in PR Replace personal CV content with generic placeholder data #2, so it kept showing up as a diff in every subsequent PR.Code changes
pubspec.yaml— removed unusedcupertino_icons(C1).devtools_options.yaml— untracked viagit rm --cached(C4); stays on disk,.gitignorenow actually takes effect.README.md— added the JDK/Gradle-daemon troubleshooting note to the build section (D2), so the next person who hits "JAVA_HOME is set to an invalid directory" after exportingJAVA_HOMEdoesn't lose the time I did.flutter analyzeclean · all 32 tests pass.🤖 Generated with Claude Code