Commit Graph
188 Commits
Author SHA1 Message Date
ik fcc26a5b34 feat: add moderation decision history 2026-09-12 21:52:25 +07:00
ik 9681bdbd36 feat: show moderation provenance 2026-09-12 21:51:09 +07:00
ik def5c39aa1 feat: expose safe moderation provenance 2026-09-12 21:49:45 +07:00
ik 699a7c3857 feat: add safe moderation shortcuts 2026-09-12 21:47:49 +07:00
ik 0f078ab482 feat: prioritize risky moderation records 2026-09-12 21:45:29 +07:00
ik ba4c42f8f6 feat: streamline moderation decisions 2026-09-12 21:43:41 +07:00
ik 8e419c1832 feat: filter external moderation queue
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:37:10 +07:00
ik 6e18e8e565 feat: add admin operations dashboard 2026-09-12 21:35:18 +07:00
ik 7c28a0c36a security: rate limit admin authentication 2026-09-12 21:33:26 +07:00
ik ff8ea40d40 security: expire admin browser sessions 2026-09-12 21:29:18 +07:00
ik ca22042d18 security: harden admin external links 2026-09-12 21:26:51 +07:00
ik 1776283a95 refactor: assign submissions to dedicated router 2026-09-12 21:21:34 +07:00
ik 31bbc15535 refactor: isolate submission rate limiting 2026-09-12 21:19:10 +07:00
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 8d7fab97b9 ci: lock generated OpenAPI contract 2026-09-12 21:03:37 +07:00
ik d4ded77355 ci: schedule isolated production bootstrap
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 20:58:50 +07:00
ik f6e6211871 test: verify release schema upgrade 2026-09-12 20:57:58 +07:00
ik 049f1ef30a refactor: separate migrations from API runtime
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 16:02:19 +07:00
ik 868278fdba security: restrict MinIO app to one bucket 2026-09-12 16:01:00 +07:00
ik 926182a6cf feat: add alpha load-test methodology 2026-09-12 15:58:07 +07:00
ik 883ad2c73b feat: audit media catalog integrity 2026-09-12 15:57:04 +07:00
ik 215af73388 feat: add explicit media review workflow
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 15:55:39 +07:00
ik 26724c7675 feat: validate and unblock media downloads 2026-09-12 15:54:53 +07:00
ik bda0a0ef5e feat: add rate-limited RF4 media collector 2026-09-12 15:52:27 +07:00
ik 52ff29668e feat: add visual links between atlas entities 2026-09-12 15:46:36 +07:00
ik 45c7e65bc4 feat: connect atlas pages with breadcrumb line 2026-09-12 15:44:38 +07:00
ik cadd5607b8 feat: compose atlas identity for fishing pairs
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 15:37:54 +07:00
ik 2ce1e20af2 feat: add unique waterbody fingerprints 2026-09-12 15:35:57 +07:00
ik 80d534d549 feat: add semantic tackle glyphs 2026-09-12 15:30:40 +07:00
ik c3e847c249 feat: distinguish fish by visual family
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 15:28:24 +07:00
ik b71e4a22a2 docs: plan entity visual identification
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 15:23:45 +07:00
ik 966000b0b0 feat: transform catalogs into field atlas 2026-09-12 15:20:26 +07:00
ik a8b1775169 refactor: establish brand motion system
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 10:07:47 +07:00
ik 0c25cf020f refactor: unify action hierarchy 2026-09-12 10:05:49 +07:00
ik 2477543029 refactor: unify public state panels 2026-09-12 10:02:19 +07:00
ik c944db54af refactor: unify catalog page heroes
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 09:59:14 +07:00
ik 9647667ae2 refactor: unify editorial section headings 2026-09-12 09:57:56 +07:00
ik fc22795b63 refactor: clarify visual motif grammar
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 09:56:16 +07:00
ik 1fabf21935 refactor: introduce semantic brand tokens 2026-09-12 09:54:26 +07:00
ik b0dd703f72 feat: establish brand identity hierarchy 2026-09-12 09:49:19 +07:00
ik 987d9ea109 perf: establish frontend performance baseline 2026-09-12 09:46:52 +07:00
ik e7f3de1ddc fix: tighten narrow viewport behavior
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 09:42:17 +07:00
ik 4fef0e8b74 feat: add accessible queue loading states
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-11 08:08:52 +07:00
ik 45b73ec54a docs: refresh roadmap after recovery acceptance
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-11 08:06:40 +07:00
ik 7e08ecbfc6 A13: Finalize RECOVERY_FIXES_REPORT with verified status and commit history
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-10 20:06:28 +07:00
ik 69f052810c A13: Update RECOVERY_FIXES_REPORT with final verified status
Comprehensive update with all A01-A13 fixes:
- A01: Per-source health affects community_scheduler status (degraded/stale)
- A02: Fixed double cooldown reservation bug in main()
- A03: Manual redirect control with per-hop validation
- A04: Fixed pagination offset calculation and filter-advanced-field CSS
- A05: Added sessionStorage error handling (safeStorage helper)
- A06: Added Docker chain rate limit tests (independent limits, forged XFF)
- A07: Improved review_note to explain matching method
- A08: Added explicit errorPage prop to skip structuredData on error pages
- A10: Fixed Alembic head extraction (grep -oE for revision ID)
- A11: Replaced pip audit with real pip-audit, removed || true
- A13: Final acceptance documentation

Test results:
- 124/124 Python tests pass (1 skipped)
- Astro build: 0 errors
- All verification checks pass
2026-09-10 18:19:01 +07:00
ik 8f888671b0 A13: Update RECOVERY_FIXES_REPORT with A01-A13 final status
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
Updated recovery report with:
- A03 updated: manual redirect control with _StrictRedirectHandler
- A04 updated: pagination offset duplicate fix
- A05-A13 verification status (all already implemented)
- Current test results and remaining risks
- Final acceptance summary

All A01-A13 regressions from September 9 audit are now verified and complete.
2026-09-10 06:30:41 +07:00
ik 4189199120 A13: Add RECOVERY_FIXES_REPORT with A01-A10 status
- Document all fixes with problems, solutions, commits, verification
- List remaining risks and skipped tests
- Track P2 tasks (T08, S03, D09) separately
- 109 Python tests passed, 1 skipped (PostgreSQL-only)
- Astro check: 0 errors
2026-09-10 06:13:46 +07:00