Previous attempt failed with 403 Forbidden because CR_PAT doesn't have
scope for cross-repo access in Gitea actions. Use the built-in
github.token instead, which the runner provides for all repos it can
access.
actions/checkout@v3's Basic auth header fails with 403 Forbidden when
accessing a different private repository (CR_PAT only works for the
current repo's scope via that method).
Switch to a plain git clone with the token embedded in the HTTPS URL,
which matches how previous builds successfully cloned schwab-scraper.
actions/checkout@v3 fails when querying the default branch for a
different repository. Explicitly specifying ref:main skips the API
discovery that was returning 'Not found'.
Patch RequestResponder.respond() and cancel() at startup to handle
the race where a notifications/cancelled arrives between handler
return and respond(), which crashes the session with
"AssertionError: Request already responded to".
Also improve build.sh to handle registry push failures gracefully
and auto-restart the container after building.
- Dockerfile now installs schwab-scraper from vendor/ dir (no git needed)
- Upgrade playwright to latest to match browserless chromium container
- CI workflow checks out schwab-scraper into vendor/ before build
- Add scripts/build.sh for local builds via docker-test
- Add curl to runtime image for compose healthcheck
- Increase memory limit to 512M for large account position scraping
- Update schwab-scraper to f52774b (optimized lot extraction polling,
faster account switching with selector-based waits)
- Install curl in Docker image so compose healthcheck works
- Remove bundled schwab_scraper/ source (now installed via git dep)
- Increase memory limit to 512M for large account position scraping