Commit Graph

  • 9158ae3d8a data: store one authorized RF4 media asset ik 2026-09-12 21:25:28 +07:00
  • 1776283a95 refactor: assign submissions to dedicated router ik 2026-09-12 21:21:34 +07:00
  • 31bbc15535 refactor: isolate submission rate limiting ik 2026-09-12 21:19:10 +07:00
  • e48b9ef876 refactor: extract public data router ik 2026-09-12 21:15:51 +07:00
  • 6974ae690d refactor: extract activity and spot router ik 2026-09-12 21:12:35 +07:00
  • b84f1fe815 refactor: extract public catalog router ik 2026-09-12 21:05:13 +07:00
  • 8d7fab97b9 ci: lock generated OpenAPI contract ik 2026-09-12 21:03:37 +07:00
  • d4ded77355 ci: schedule isolated production bootstrap ik 2026-09-12 20:58:50 +07:00
  • f6e6211871 test: verify release schema upgrade ik 2026-09-12 20:57:58 +07:00
  • 049f1ef30a refactor: separate migrations from API runtime ik 2026-09-12 16:02:19 +07:00
  • 868278fdba security: restrict MinIO app to one bucket ik 2026-09-12 16:01:00 +07:00
  • 926182a6cf feat: add alpha load-test methodology ik 2026-09-12 15:58:07 +07:00
  • 883ad2c73b feat: audit media catalog integrity ik 2026-09-12 15:57:04 +07:00
  • 215af73388 feat: add explicit media review workflow ik 2026-09-12 15:55:39 +07:00
  • 26724c7675 feat: validate and unblock media downloads ik 2026-09-12 15:54:53 +07:00
  • bda0a0ef5e feat: add rate-limited RF4 media collector ik 2026-09-12 15:52:27 +07:00
  • 52ff29668e feat: add visual links between atlas entities ik 2026-09-12 15:46:36 +07:00
  • 45c7e65bc4 feat: connect atlas pages with breadcrumb line ik 2026-09-12 15:44:38 +07:00
  • cadd5607b8 feat: compose atlas identity for fishing pairs ik 2026-09-12 15:37:54 +07:00
  • 2ce1e20af2 feat: add unique waterbody fingerprints ik 2026-09-12 15:35:57 +07:00
  • 80d534d549 feat: add semantic tackle glyphs ik 2026-09-12 15:30:40 +07:00
  • c3e847c249 feat: distinguish fish by visual family ik 2026-09-12 15:28:24 +07:00
  • b71e4a22a2 docs: plan entity visual identification ik 2026-09-12 15:23:45 +07:00
  • 966000b0b0 feat: transform catalogs into field atlas ik 2026-09-12 15:20:26 +07:00
  • a8b1775169 refactor: establish brand motion system ik 2026-09-12 10:07:47 +07:00
  • 0c25cf020f refactor: unify action hierarchy ik 2026-09-12 10:05:49 +07:00
  • 2477543029 refactor: unify public state panels ik 2026-09-12 10:02:19 +07:00
  • c944db54af refactor: unify catalog page heroes ik 2026-09-12 09:59:14 +07:00
  • 9647667ae2 refactor: unify editorial section headings ik 2026-09-12 09:57:56 +07:00
  • fc22795b63 refactor: clarify visual motif grammar ik 2026-09-12 09:56:16 +07:00
  • 1fabf21935 refactor: introduce semantic brand tokens ik 2026-09-12 09:54:26 +07:00
  • b0dd703f72 feat: establish brand identity hierarchy ik 2026-09-12 09:49:19 +07:00
  • 987d9ea109 perf: establish frontend performance baseline ik 2026-09-12 09:46:52 +07:00
  • e7f3de1ddc fix: tighten narrow viewport behavior ik 2026-09-12 09:42:17 +07:00
  • 4fef0e8b74 feat: add accessible queue loading states ik 2026-09-11 08:08:52 +07:00
  • 45b73ec54a docs: refresh roadmap after recovery acceptance ik 2026-09-11 08:06:40 +07:00
  • 907ad537e2 fix: accept non-hex alembic revision ids ik 2026-09-11 07:58:40 +07:00
  • 51728bf3f2 test: clean up concurrent cooldown processes ik 2026-09-11 07:56:01 +07:00
  • 8f76f70409 feat: add activity level legend to spot view ik 2026-09-11 07:54:16 +07:00
  • 8c94d40766 feat: add one-click coordinate copying ik 2026-09-11 07:52:07 +07:00
  • 1ffaf7478d fix: synchronize normalized records on import revisions ik 2026-09-11 07:50:31 +07:00
  • 2ad2bdcdff fix: mark catalog outage pages as SEO errors ik 2026-09-11 07:49:58 +07:00
  • 6664f24f20 fix: invoke Caddy adapter correctly in bootstrap ik 2026-09-11 07:48:05 +07:00
  • 0b7bbc78a6 fix: make report and idempotency insert transactional ik 2026-09-11 07:47:36 +07:00
  • fc963101b3 fix: handle concurrent idempotency key conflicts ik 2026-09-11 07:46:50 +07:00
  • d28ad31aca fix: fail closed on bootstrap migration inspection ik 2026-09-11 07:46:10 +07:00
  • 67d81f81ff fix: keep advanced filters accessible on mobile ik 2026-09-11 07:45:45 +07:00
  • d6bc5ce85c fix: alert on degraded community scheduler health ik 2026-09-11 07:44:30 +07:00
  • 5b2db1cf48 fix: reject idempotency key payload conflicts ik 2026-09-11 07:44:07 +07:00
  • 42bdec6c2f fix: isolate scheduler validation in bootstrap ik 2026-09-11 07:43:14 +07:00
  • 531f1aa82f fix: replay idempotent upload token safely ik 2026-09-11 07:42:41 +07:00
  • 486e4c4673 fix: wire report idempotency and bootstrap scheduler check ik 2026-09-11 07:41:55 +07:00
  • bea3b9ccbb fix: align recovery schema idempotency and record counts ik 2026-09-11 07:40:58 +07:00
  • 13e04e6c66 A12: Add meaningful changes/provenance to ImportRecordEvent, skip events for unchanged data ik 2026-09-11 07:36:21 +07:00
  • 5107a7c467 A11: Use requirements-lock.txt in Dockerfile for reproducible builds ik 2026-09-11 07:35:35 +07:00
  • 2ba4f6027d A10: Add Caddy config validation and scheduler checks to bootstrap ik 2026-09-11 07:35:22 +07:00
  • 641374ddbc A05: Add server-side idempotency for catch report creation via Idempotency-Key header ik 2026-09-11 07:35:01 +07:00
  • 57aa3ffafb A02/A03: Add state validation and normalize subdomain keys for shared cooldown ik 2026-09-10 20:34:05 +07:00
  • f29ec706fd R09: Add PaginatedOfficialRecordOut schema and paginated /api/v1/records endpoint ik 2026-09-10 20:27:45 +07:00
  • 7e08ecbfc6 A13: Finalize RECOVERY_FIXES_REPORT with verified status and commit history ik 2026-09-10 20:06:28 +07:00
  • ec3a1ca516 A09: Use static registry for CLI choices, check enabled at runtime ik 2026-09-10 19:53:15 +07:00
  • e2223c6f24 A07: Fix _auto_publish to allow fish name fallback without external_id ik 2026-09-10 19:42:56 +07:00
  • 883e63aa8b A01: Fix scheduler aggregation to not mask stale/failed sources ik 2026-09-10 19:32:33 +07:00
  • e996c6da41 A08: Pass errorPage on all pages with potential errors ik 2026-09-10 19:12:15 +07:00
  • 2a0c7b2fa5 A04: Fix pagination 'load more' condition for server-side pages ik 2026-09-10 18:41:35 +07:00
  • 69f052810c A13: Update RECOVERY_FIXES_REPORT with final verified status ik 2026-09-10 18:19:01 +07:00
  • ed78a17109 A11: Replace pip audit with real pip-audit tool and remove error suppression ik 2026-09-10 18:18:09 +07:00
  • 0e592ea404 A08: Add explicit errorPage prop to skip structuredData on error pages ik 2026-09-10 18:17:13 +07:00
  • 56ce498eac A07: Improve review_note to explain matching method ik 2026-09-10 18:13:27 +07:00
  • 05d1f1616f A06: Add Docker chain rate limit tests for proxy scenarios ik 2026-09-10 18:12:32 +07:00
  • 1d403883a0 A05: Add sessionStorage error handling for unavailable storage ik 2026-09-10 18:10:57 +07:00
  • 6183fb3417 A04: Fix filter-advanced-field CSS to preserve label/select relationship ik 2026-09-10 18:10:13 +07:00
  • f2ad5ecfa3 A01: Per-source health affects community_scheduler overall status ik 2026-09-10 18:08:31 +07:00
  • 7386e7bea8 A10: Fix Alembic head extraction in bootstrap script ik 2026-09-10 17:57:46 +07:00
  • 5de8ea939a A04: Fix pagination offset calculation for server-side pages ik 2026-09-10 17:56:45 +07:00
  • 97660833ab A02: Fix double cooldown reservation bug in main() ik 2026-09-10 17:55:30 +07:00
  • 8f888671b0 A13: Update RECOVERY_FIXES_REPORT with A01-A13 final status ik 2026-09-10 06:30:41 +07:00
  • b7c00dca8a A04: Fix duplicate offset parameter in pagination link ik 2026-09-10 06:27:51 +07:00
  • d0d208ebd7 A03: Manual redirect control with per-hop validation ik 2026-09-10 06:26:15 +07:00
  • 4ac50db1db A02: Atomic check-and-reserve with lockfile for cross-process coordination ik 2026-09-10 06:23:14 +07:00
  • 4189199120 A13: Add RECOVERY_FIXES_REPORT with A01-A10 status ik 2026-09-10 06:13:46 +07:00
  • 49027306d9 A10: Fix bootstrap to use dynamic Alembic head check ik 2026-09-10 06:13:00 +07:00
  • 745a5ff9fd A08: Skip misleading structuredData on error pages ik 2026-09-10 06:12:32 +07:00
  • 9e4d7aefba A05: Restore draft on rate_limited/server_error/timeout states ik 2026-09-10 06:12:09 +07:00
  • 2ccca7350f A04: Fix selected attributes for all period options ik 2026-09-10 06:11:49 +07:00
  • 4974f362ac A03: Validate scheme/host/port before every network I/O ik 2026-09-10 06:11:17 +07:00
  • 79245965ec A02: Atomic cooldown state with exclusive lock and flush ik 2026-09-10 06:10:35 +07:00
  • 779d554057 A01: Separate API readiness from import health diagnostics ik 2026-09-10 06:10:01 +07:00
  • 98e7649f9d docs: define verified regression recovery plan and executor prompt ik 2026-09-10 06:07:36 +07:00
  • 4f68d6b004 D09: Import record event history for revision tracking ik 2026-09-10 05:54:31 +07:00
  • 3ea08fa706 S03: Consistent site origin — trailingSlash never, canonical URLs ik 2026-09-10 05:53:36 +07:00
  • 2c7dd27b4f T08: Python lock files, CI web unit tests, dependency audit ik 2026-09-10 05:53:15 +07:00
  • f550639456 R15: Fix D04/D06/D07 partial completion ik 2026-09-10 05:51:50 +07:00
  • e2bed0db89 R13: Fix X-Forwarded-For trust boundary — only trust from known proxies ik 2026-09-10 05:49:23 +07:00
  • cc3b42eaf6 R12: Fix readiness — stale/failed community_scheduler blocks ready ik 2026-09-10 05:46:49 +07:00
  • 39f66481be R11: Validate URL host before network I/O — prevent SSRF ik 2026-09-10 05:45:57 +07:00
  • 6e0077bd4d R10: Fix TimeoutError handling — use DOMException.TimeoutError check ik 2026-09-10 05:43:34 +07:00
  • 67681ee039 R09: Fix pagination — preserve filters and use offset from URL ik 2026-09-10 05:41:53 +07:00
  • 51b3eb5e17 docs: update REGRESSION_FIXES_REPORT.md with R03-R08 fixes (#1788956171115) ik 2026-09-10 05:39:13 +07:00
  • 38bb871638 fix: R08 filter-compact-hidden display:none + details fallback for no-JS (#1788956171115) ik 2026-09-10 05:39:06 +07:00