Commit graph

26 commits

Author SHA1 Message Date
ThatGuySam
d45b587434 Finish axios migration via shared native HTTP helper
Replace all in-scope axios callsites with a new helpers/http.js wrapper over native fetch, including JSON/text GET, JSON POST, HEAD checks, and transient 5xx retry behavior; update all browser, build, script, and proxy API clients to use it; add focused unit tests; and remove axios from package dependencies.

Constraint: Preserve API/build and deployment behavior while lowering transport surface area.

Rejected: inline fetch replacements at each callsite | rejected to avoid inconsistent error/retry semantics.

Confidence: high

Scope-risk: moderate

Directive: Keep helper in place as the transport boundary and update tests when changing request semantics.

Tested: pnpm run -s typecheck, pnpm -s run test-prebuild, pnpm -s run test, pnpm -s run test:browser, pnpm -s run netlify-build, smoke GETs on /apple-silicon-app-test and /apple-silicon-app-test/?version=2

Not-tested: branch/netlify deployment health in CI pipeline after merge
2026-04-06 12:09:16 -05:00
ThatGuySam
d026a5420b fix(scanner): rename plist parser module to avoid CI cycle false positive
Some checks failed
Deploy to Cloudflare Workers with Wrangler / Deploy (push) Has been cancelled
Run Node 24 Checks / build (24.x) (push) Has been cancelled
Madge treated the local plist parser module name as a circular dependency during the Netlify build lane after the TypeScript refactor. Rename the local module to plist-parser so the internal file no longer collides with the external plist package name, while keeping parser behavior unchanged.

Constraint: Must restore the deploy gate without changing parser semantics
Rejected: Disable the circular-dependency check | would hide a useful guard instead of fixing the naming conflict that triggered it
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Avoid naming local modules after direct external package imports when the repo relies on static dependency graph tooling
Tested: pnpm run typecheck; pnpm exec vitest run test/scanner/plist.test.ts test/scanner/file-api.test.ts test/scanner/client.test.ts test/prebuild/load-sitemap-endpoints.test.ts; pnpm run test-prebuild
Not-tested: Full production deploy completion before push
2026-04-04 18:31:46 -05:00
ThatGuySam
cd41143f0d refactor(scanner): type plist and file-api helpers
Convert the scanner's plist parser and Node-style file shim to TypeScript and add small unit tests so common parser and file-reader failures are caught before we need to lean on Playwright or the higher-level scanner test.

Constraint: Must preserve current scanner behavior while tightening the lowest-level helper surface
Rejected: Jump straight to Mach-O parser conversion | harder to isolate regressions without first proving the smaller helper-test pattern
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Add small module-level regression tests for repeatable scanner breakage before expanding browser coverage
Tested: pnpm run typecheck; pnpm exec vitest run test/scanner/plist.test.ts test/scanner/file-api.test.ts test/scanner/client.test.ts; pnpm run test; pnpm run test:browser
Not-tested: Production deploy behavior prior to push
2026-04-04 18:13:32 -05:00
ThatGuySam
689fc0d13d refactor(scanner): type the worker path and align app-test results
Move the worker scanner surface into TypeScript, add a direct worker regression, and make the version=2 app-test path populate the same visible result data and final status as the legacy scanner. This keeps the refactor bounded while making the worker route safe to exercise.

Constraint: Must preserve the existing Apple Silicon app-test behavior while changing the worker internals
Rejected: Flip production to the worker path immediately | still needs the normal deploy path and broader production soak
Confidence: medium
Scope-risk: moderate
Reversibility: clean
Directive: Keep the version=2 adapter using the shared finishFileScan path until the legacy scanner can be removed entirely
Tested: pnpm run typecheck; pnpm exec vitest run test/scanner/client.test.ts; pnpm run test:browser (original workspace); netlify build --context deploy-preview (original workspace)
Not-tested: Browser suite from the clean clone environment (local Astro dev server startup timed out there)
2026-04-04 14:58:25 -05:00
ThatGuySam
fddfa9d5a4 update: disable ava test suites 2024-12-27 14:48:54 -06:00
Sam Carlton
8b15f2580b Pass all message details through receivers 2022-08-20 21:34:29 -05:00
Sam Carlton
d37603fcd5 Move scan business login into scan file 2022-08-07 14:33:58 -05:00
Sam Carlton
50e707a4ac Test using worker 2022-08-07 14:18:41 -05:00
Sam Carlton
ceba0cadaa Import vitest/web-worker 2022-08-05 14:10:31 -05:00
Sam Carlton
ffab2c6f67 Fix scanner cleint import 2022-07-21 22:14:14 -05:00
Sam Carlton
ca58913ccc Convertr scanner client to mjs 2022-07-21 21:52:12 -05:00
Sam Carlton
4d690b1856 Convert scanner test to module 2022-07-21 19:54:01 -05:00
Sam Carlton
31276924aa Add note about Coreform-Cubit 2022-07-18 21:38:15 -05:00
Sam Carlton
f98a3f7ae1 Add experimental 7z compressor 2022-07-18 21:23:21 -05:00
Sam Carlton
4b73486688 Delete existing archives 2022-07-18 21:22:48 -05:00
Sam Carlton
383a4b2730 Add notes on unsupported bundles 2022-07-18 21:21:53 -05:00
Sam Carlton
1f1adde7f9 Disable processorSubType test 2022-07-18 18:43:24 -05:00
Sam Carlton
e37d0418bd Use scan.supportedArchitectures getter 2022-07-18 18:43:12 -05:00
Sam Carlton
d9e37b473c Test that processorType is valid 2022-07-18 18:03:38 -05:00
Sam Carlton
b96353dc3c Expect processorSubType to be truthy 2022-07-18 16:55:44 -05:00
Sam Carlton
298436da95 Enable result info 2022-07-16 22:54:32 -05:00
Sam Carlton
70e72a86e4 Enable parsing macho file 2022-07-16 22:01:01 -05:00
Sam Carlton
33dbd93dec Test each app concurently 2022-07-16 18:46:09 -05:00
Sam Carlton
2a525d93d5 Test that App Scan can read plist 2022-07-16 18:37:42 -05:00
Sam Carlton
48d229dde1 Import scanner the same way it’s imported in usage 2022-07-16 13:58:44 -05:00
Sam Carlton
41283f9e6b Test that scanner can be intialized 2022-07-16 13:57:20 -05:00