Commit Graph
39 Commits
Author SHA1 Message Date
ik e48b9ef876 refactor: extract public data router 2026-09-12 21:15:51 +07:00
ik 6974ae690d refactor: extract activity and spot router
CI / backend-and-migrations (push) Canceled after 0s
CI / astro-build (push) Canceled after 0s
CI / dependency-audit (push) Canceled after 0s
CI / compose-e2e (push) Canceled after 0s
2026-09-12 21:12:35 +07:00
ik b84f1fe815 refactor: extract public catalog router
CI / backend-and-migrations (push) Canceled after 0s
CI / astro-build (push) Canceled after 0s
CI / dependency-audit (push) Canceled after 0s
CI / compose-e2e (push) Canceled after 0s
2026-09-12 21:05:13 +07:00
ik 0b7bbc78a6 fix: make report and idempotency insert transactional 2026-09-11 07:47:36 +07:00
ik fc963101b3 fix: handle concurrent idempotency key conflicts 2026-09-11 07:46:50 +07:00
ik 5b2db1cf48 fix: reject idempotency key payload conflicts 2026-09-11 07:44:07 +07:00
ik 531f1aa82f fix: replay idempotent upload token safely 2026-09-11 07:42:41 +07:00
ik bea3b9ccbb fix: align recovery schema idempotency and record counts 2026-09-11 07:40:58 +07:00
ik 641374ddbc A05: Add server-side idempotency for catch report creation via Idempotency-Key header 2026-09-11 07:35:01 +07:00
ik f29ec706fd R09: Add PaginatedOfficialRecordOut schema and paginated /api/v1/records endpoint 2026-09-10 20:27:45 +07:00
ik e2bed0db89 R13: Fix X-Forwarded-For trust boundary — only trust from known proxies
- Add _is_trusted_proxy() to check client IP against trusted CIDRs
- Only use X-Forwarded-For if connection came from trusted proxy
- Add TRUSTED_PROXY_CIDRS config (default: 127.0.0.1/32, ::1/128)
- Add parse_comma_separated_lists for env var parsing
- Add 3 unit tests: trusted CIDR check, untrusted ignores forwarded, trusted uses forwarded
2026-09-10 05:49:23 +07:00
ik 0b3a5ece4b fix: R06 community_observations filters by fish/waterbody slug via JOIN (#1788956171115) 2026-09-10 05:38:22 +07:00
ik 63e33e1861 fix: audit P0-P1 — T03-T07, D01-D08, U01-U02 (#1788956171115) 2026-09-09 20:02:52 +07:00
ik 1f63f71600 Fix review queue pagination and API fallback handling
CI / backend-and-migrations (push) Canceled after 0s
CI / astro-build (push) Canceled after 0s
CI / compose-e2e (push) Canceled after 0s
2026-09-08 13:24:58 +07:00
ik ddb6909c4d sync
CI / backend-and-migrations (push) Canceled after 0s
CI / astro-build (push) Canceled after 0s
CI / compose-e2e (push) Canceled after 0s
2026-09-08 09:31:41 +07:00
ik 8b2d7e2e1c feat: suggest confirmed external aliases
CI / backend-and-migrations (push) Canceled after 0s
CI / astro-build (push) Canceled after 0s
CI / compose-e2e (push) Canceled after 0s
2026-09-07 18:57:09 +07:00
ik 214b328cd2 perf: cache public activity aggregates 2026-09-07 18:54:58 +07:00
ik fa3b24fb1f feat: add safe diagnostics export 2026-09-07 18:49:53 +07:00
ik 02b67741f8 feat: expose deployment build identity 2026-09-07 18:43:20 +07:00
ik 486016d977 feat: expose safe source health status
CI / backend-and-migrations (push) Canceled after 0s
CI / astro-build (push) Canceled after 0s
CI / compose-e2e (push) Canceled after 0s
2026-09-07 16:57:14 +07:00
ik 4e037eb7e8 feat: add canonical spot URLs 2026-09-07 16:43:12 +07:00
ik 9275799ce7 feat: display provenance and incomplete signals
CI / backend-and-migrations (push) Canceled after 0s
CI / astro-build (push) Canceled after 0s
CI / compose-e2e (push) Canceled after 0s
2026-09-07 13:21:15 +07:00
ik 5e27a5b066 perf: stabilize list queries for pilot
CI / backend-and-migrations (push) Canceled after 0s
CI / astro-build (push) Canceled after 0s
CI / compose-e2e (push) Canceled after 0s
2026-09-07 08:02:37 +07:00
ik c45b4511b7 feat: serialize official record imports
CI / backend-and-migrations (push) Canceled after 0s
CI / astro-build (push) Canceled after 0s
CI / compose-e2e (push) Canceled after 0s
2026-09-07 07:54:07 +07:00
ik 687b4c9cb5 feat: harden production security boundaries 2026-09-07 07:51:25 +07:00
ik 870d9cc7f9 feat: harden production data and backups
CI / backend-and-migrations (push) Canceled after 0s
CI / astro-build (push) Canceled after 0s
CI / compose-e2e (push) Canceled after 0s
2026-09-06 14:08:07 +07:00
ik a4bd395856 feat: add production deployment for rf4spotter.ru 2026-09-06 13:52:30 +07:00
ik 398b35e843 feat: add privacy-safe structured logging 2026-09-04 07:49:14 +07:00
ik 3b26c59219 feat: add dependency readiness checks 2026-09-04 07:38:34 +07:00
ik c4f4deb24b feat: add external observation review queue 2026-09-03 18:47:31 +07:00
ik 97afd2730e feat: explain activity data quality 2026-09-03 18:23:43 +07:00
ik a7bfc7ee8d Validate screenshot MIME and filename metadata 2026-09-03 08:17:00 +07:00
ik b73580c720 Persist privacy-safe submission rate limits 2026-09-03 08:16:12 +07:00
ik 0b3e6d4b2f Add audited user report deletion 2026-09-03 08:14:56 +07:00
ik 03a0ecb5f4 Add Astro moderation queue 2026-09-03 08:11:23 +07:00
ik ddd8b84055 Add administrative official import API 2026-09-03 07:59:15 +07:00
ik c5242720b1 Apply reference design to Astro and add screenshot storage 2026-09-03 07:53:53 +07:00
ik 6d536d0ade Add user catch submission and moderation workflow 2026-09-02 20:33:58 +07:00
ik d3a45248ef Build Dockerized MVP scaffold and records importer 2026-09-02 20:29:02 +07:00