aboutsummaryrefslogtreecommitdiff
path: root/webmentions_ssg/tasks/receiver.py (follow)
Commit message (Collapse)AuthorAge
* refactor(core): improve typing and test coverageDennis Fink2026-08-19
| | | | | | | | | Restructure database and user CLI commands, make passwords write-only model properties, and use the UTC datetime constant throughout the application. Add PEP 287-style documentation and expand receiver, scanner, sender, and URL security tests to cover error paths and edge cases.
* feat(sender): add outgoing Webmention pipelineDennis Fink2026-08-15
| | | | | | | | | | | Scan generated h-entry documents for Webmention targets and track source revisions and delivery state in the database. Discover target endpoints, send Webmentions asynchronously, and reconcile updated, removed, restored, and deleted sources across scans. Add authenticated views for inspecting sent Webmentions and make the scanner schedule configurable.
* fix(receiver): prevent requests to non-public addressesDennis Fink2026-08-10
| | | | | | | | | Resolve source hostnames before fetching and reject addresses that are not globally routable to prevent SSRF against local or private services. Repeat the check for every HTTP request so redirects cannot bypass the initial source validation. Treat DNS resolution failures during verification as temporary fetch errors.
* Implement received Webmention handlingDennis Fink2026-08-09
Add the Flask application setup, database models and migrations, authentication, and configuration for development and testing. Implement asynchronous Webmention verification with Huey, including HTML and plain-text source validation, retries, status tracking, and size limits. Add status, login, and paginated received-Webmention views together with comprehensive tests for forms, views, and receiver tasks.