feat/packages_download #45

Merged
garrett merged 5 commits from feat/packages_download into develop 2026-03-02 19:48:00 +00:00
Owner

🛠 Type of Change

  • 🐛 Bug fix
  • New Feature (androidqf module)
  • ️ Performance / Refactoring
  • 📝 Documentation

📖 Description

Introduce la possibilita' di scaricare artefatti apk.
Rifattorizza l'interfaccia di risultato di acquisizione per prevedere la restituzioni di piu' file
Implementa compressione degli artefatti di acquisizione in modalita' streaming senza pesare sulle risorse del browser o ricorrere a JSZip che e' limitata a 2GB

🧪 Testing

  • Manually tested with device: Pixel 7
  • Unit tests passed (pnpm test)
  • Lint verified (pnpm lint)

⚖️ Forensics Integrity Checklist

  • The change does not alter the integrity of extracted data.
  • Logs are clear and follow project standards.
  • No sensitive data is leaked in logs.
### 🛠 Type of Change - [ ] 🐛 Bug fix - [x] ✨ New Feature (androidqf module) - [x] ⚡️ Performance / Refactoring - [ ] 📝 Documentation ### 📖 Description Introduce la possibilita' di scaricare artefatti apk. Rifattorizza l'interfaccia di risultato di acquisizione per prevedere la restituzioni di piu' file Implementa compressione degli artefatti di acquisizione in modalita' streaming senza pesare sulle risorse del browser o ricorrere a JSZip che e' limitata a 2GB ### 🧪 Testing - [x] Manually tested with device: Pixel 7 - [x] Unit tests passed (`pnpm test`) - [x] Lint verified (`pnpm lint`) ### ⚖️ Forensics Integrity Checklist - [x] The change does not alter the integrity of extracted data. - [x] Logs are clear and follow project standards. - [x] No sensitive data is leaked in logs.
garrett self-assigned this 2026-02-25 15:20:05 +00:00
- Add AcquisitionFile interface with fileName, fileSize, blob, hash, description, mimeType.
- Replace top-level fields (fileName, fileSize, hash, blob) in AcquisitionResult with files: AcquisitionFile[].
- Update all acquirers (excluding packages.ts) to build and attach AcquisitionFile entries.
- Move hash computation from result level to file level.
- Export new types from index.
- Add configuration options: downloadApks, downloadOnlyThirdParty, downloadAllSplits, maxApkSize, maxTotalSize, parallelDownloads.
- Implement createApksDirectory to download APKs (smart selection or all splits).
- Add helper methods: filterPackagesForDownload, selectBestApk, sanitizeFileName, formatBytes.
- Include downloaded APKs as additional AcquisitionFile entries in result.
- Update result metadata with downloadedApks count.
- Adjust tests to disable APK download by default and cover new functionality.
- Rename tmpAcquirer.ts to tmp.ts and adapt to the new result structure.
- Update all import references accordingly.
- Add hybrid ZIP creation: use File System Access API for direct-to-disk streaming if available, fallback to JSZip.
- Implement createZipWithStreaming (modern browsers) and createZipWithJSZip (fallback).
- Generate manifest.json with metadata and file summary.
- Show UI hint when advanced mode is available.
test(acquisition): update all tests for new result structure
Some checks failed
WAFB CI + Deploy / quality (pull_request) Failing after 48s
WAFB CI + Deploy / deploy-dev (pull_request) Has been skipped
WAFB CI + Deploy / release (pull_request) Has been skipped
30759458a3
- Adjust all test files to access result data via result.files[0] instead of top-level fileName, fileSize, hash, blob.
- Update assertions to match the new structure.
- Remove obsolete tests (e.g., buildLogsZip test in logs.test.ts).
garrett force-pushed feat/packages_download from 30759458a3
Some checks failed
WAFB CI + Deploy / quality (pull_request) Failing after 48s
WAFB CI + Deploy / deploy-dev (pull_request) Has been skipped
WAFB CI + Deploy / release (pull_request) Has been skipped
to 1c6893bda1
All checks were successful
WAFB CI + Deploy / quality (pull_request) Successful in 3m24s
WAFB CI + Deploy / deploy-dev (pull_request) Has been skipped
WAFB CI + Deploy / release (pull_request) Has been skipped
WAFB CI + Deploy / quality (push) Successful in 2m35s
WAFB CI + Deploy / release (push) Has been skipped
WAFB CI + Deploy / deploy-dev (push) Successful in 36s
2026-02-25 22:58:43 +00:00
Compare
garrett merged commit 1c6893bda1 into develop 2026-03-02 19:48:00 +00:00
garrett deleted branch feat/packages_download 2026-03-02 19:48:00 +00:00
Sign in to join this conversation.
No reviewers
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
garrett/wafb!45
No description provided.