Problem: `credentials.lua` cached username/password immediately on input without any server-side validation. `scraper.lua` only used the browser/FHS path for the `submit` subcommand. Solution: rewrite `M.login()` to call `scraper.login()` with ndjson status callbacks and only cache credentials on success. Generalize the four submit-only guards in `run_scraper` to a `needs_browser` flag covering both `submit` and `login` subcommands. |
||
|---|---|---|
| .. | ||
| cp | ||