ik
|
c14ae0250e
|
fix: avoid nested admin main landmarks
|
2026-09-16 20:00:59 +07:00 |
|
ik
|
2e34fb20b5
|
feat: show source freshness in admin
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-16 20:00:30 +07:00 |
|
ik
|
74ff49062f
|
feat: show admin import results
|
2026-09-16 20:00:01 +07:00 |
|
ik
|
4c7051bc97
|
feat: add admin workspace navigation
|
2026-09-16 19:59:15 +07:00 |
|
ik
|
d9f58fb90e
|
fix: harden admin page cache headers
|
2026-09-16 19:57:05 +07:00 |
|
ik
|
eb4d6ccdb0
|
fix: unify admin error handling
|
2026-09-16 19:54:18 +07:00 |
|
ik
|
9bcb019d3a
|
feat: extend admin operations and media review
|
2026-09-16 19:50:01 +07:00 |
|
ik
|
4c75db1f74
|
feat: parse RF4DB waterbody catalog
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-15 17:19:15 +07:00 |
|
ik
|
75820125aa
|
data: publish collected RF4 assets
|
2026-09-15 17:14:26 +07:00 |
|
ik
|
6c67e5042f
|
data: store fifth RF4 fish quality batch
|
2026-09-15 17:09:29 +07:00 |
|
ik
|
a624066aab
|
data: store fourth RF4 fish quality batch
|
2026-09-15 15:15:57 +07:00 |
|
ik
|
f6ff400344
|
data: store third RF4 fish quality batch
|
2026-09-15 14:08:34 +07:00 |
|
ik
|
5be5964098
|
data: complete second RF4 fish quality batch
|
2026-09-15 13:10:03 +07:00 |
|
ik
|
399afe5ea5
|
data: store second RF4 fish quality batch
|
2026-09-15 13:08:42 +07:00 |
|
ik
|
a8c0da837a
|
Publish first RF4 fish quality upgrades
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-15 11:45:54 +07:00 |
|
ik
|
7d009c932f
|
chore: audit RF4 media quality
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-14 22:25:45 +07:00 |
|
ik
|
b47a6cc366
|
feat: publish approved RF4 media catalog
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-14 22:20:46 +07:00 |
|
ik
|
6146ea9eb0
|
data: store RF4DB fish gap batch
|
2026-09-14 21:45:55 +07:00 |
|
ik
|
61c7ac7d51
|
feat: reconcile RF4DB media catalog
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-14 07:45:29 +07:00 |
|
ik
|
0eca44c11a
|
data: complete media download 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-14 07:39:21 +07:00 |
|
ik
|
79daea4ae1
|
data: version media assets in git
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-14 07:22:00 +07:00 |
|
ik
|
7d94fbadb5
|
data: store penultimate media queue batch
|
2026-09-14 06:58:54 +07:00 |
|
ik
|
22485efe10
|
data: store penultimate RF4MAP media batch
|
2026-09-14 06:28:10 +07:00 |
|
ik
|
6c9bbd7fd7
|
data: store next tackle media batch
|
2026-09-14 05:57:53 +07:00 |
|
ik
|
3682f3ad61
|
data: store mixed RF4MAP media batch
|
2026-09-14 05:27:09 +07:00 |
|
ik
|
2dd5f97143
|
data: store next RF4MAP media batch
|
2026-09-14 04:56:56 +07:00 |
|
ik
|
064e731d25
|
data: store next fish icon batch
|
2026-09-14 04:26:35 +07:00 |
|
ik
|
e08bfaffba
|
data: store next verified media batch
|
2026-09-14 03:56:56 +07:00 |
|
ik
|
1d27fbde30
|
data: store expanded media batch
|
2026-09-14 03:27:17 +07:00 |
|
ik
|
0152593815
|
data: store next media batch
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-13 17:31:20 +07:00 |
|
ik
|
8207d3ae02
|
feat: download media in bounded domain batches
|
2026-09-13 16:58:45 +07:00 |
|
ik
|
787a5065bc
|
data: review next prioritized media assets
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-13 16:53:19 +07:00 |
|
ik
|
f243807fc8
|
feat: plan media queue without network access
|
2026-09-13 16:50:27 +07:00 |
|
ik
|
73feb75767
|
perf: add reproducible query plan gate
|
2026-09-13 16:46:41 +07:00 |
|
ik
|
abe51b38d0
|
docs: reconcile roadmap with current project state
|
2026-09-13 16:40:47 +07:00 |
|
ik
|
86ed3a966a
|
security: enforce nonce based content policy
|
2026-09-13 16:38:47 +07:00 |
|
ik
|
1305cccfa5
|
feat: check source links during scheduled fetches
|
2026-09-13 16:32:10 +07:00 |
|
ik
|
bc3ceb5dfe
|
feat: manage external source lifecycle
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-13 16:26:34 +07:00 |
|
ik
|
bb8040d6fb
|
feat: adapt raster media to dark theme
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-13 16:20:40 +07:00 |
|
ik
|
aed541c70c
|
feat: synchronize theme browser chrome
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-13 16:17:22 +07:00 |
|
ik
|
54a1e6c042
|
data: approve hijacker lure asset
|
2026-09-13 16:12:18 +07:00 |
|
ik
|
d8b0c08aaa
|
feat: theme fishing data graphics
|
2026-09-13 16:09:56 +07:00 |
|
ik
|
99c1498810
|
data: validate official guide media
|
2026-09-13 16:07:37 +07:00 |
|
ik
|
7567ac9191
|
feat: theme forms tables and data states
|
2026-09-13 15:54:45 +07:00 |
|
ik
|
4f5fb6d7c2
|
feat: theme atlas and state components
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-13 15:52:03 +07:00 |
|
ik
|
703a0ba32f
|
data: approve another tackle asset
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-13 15:42:05 +07:00 |
|
ik
|
35b00d7fd6
|
feat: add persistent theme switcher
|
2026-09-13 15:40:44 +07:00 |
|
ik
|
8ffbd7f9ec
|
feat: add system dark theme foundation
|
2026-09-13 15:23:33 +07:00 |
|
ik
|
b7b49a3a63
|
docs: plan dark theme rollout
|
2026-09-13 15:18:52 +07:00 |
|
ik
|
fe9367b5e9
|
security: forbid inline style attributes
|
2026-09-13 15:17:00 +07:00 |
|
ik
|
14958be302
|
security: externalize astro scripts and styles
|
2026-09-13 15:14:21 +07:00 |
|
ik
|
cd319a32c2
|
data: review media queue batch
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-13 14:39:44 +07:00 |
|
ik
|
3886c4f167
|
data: review media queue batch
|
2026-09-13 14:09:15 +07:00 |
|
ik
|
8cf453f86b
|
data: review media queue batch
|
2026-09-13 13:23:16 +07:00 |
|
ik
|
48cd217479
|
data: review media queue batch
|
2026-09-13 12:32:25 +07:00 |
|
ik
|
04ac25c818
|
data: review media queue batch
|
2026-09-13 11:55:26 +07:00 |
|
ik
|
976b386e6b
|
data: review media queue batch
|
2026-09-13 11:08:58 +07:00 |
|
ik
|
bb6fc6cd53
|
data: review media queue batch
|
2026-09-13 10:32:50 +07:00 |
|
ik
|
1adeff5e94
|
data: review next media queue batch
|
2026-09-13 10:02:42 +07:00 |
|
ik
|
9c44cfc08f
|
refactor: extract admin api router
|
2026-09-13 09:59:55 +07:00 |
|
ik
|
b76da2edd0
|
refactor: remove legacy submission handlers
|
2026-09-13 09:42:15 +07:00 |
|
ik
|
30bfccd0e7
|
refactor: move submission endpoints to router
|
2026-09-13 09:38:20 +07:00 |
|
ik
|
c93c6adc7a
|
security: restrict production content origins
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-13 09:33:39 +07:00 |
|
ik
|
aae5e0926a
|
docs: define alpha observability baseline
|
2026-09-13 09:32:22 +07:00 |
|
ik
|
016d459861
|
feat: degrade home sections independently
|
2026-09-13 09:28:12 +07:00 |
|
ik
|
0abe1a2bb4
|
feat: lock concurrent moderation decisions
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-13 09:26:18 +07:00 |
|
ik
|
cbd854d933
|
docs: add source permission register
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-13 09:21:57 +07:00 |
|
ik
|
6aaee107a9
|
docs: add architecture and incident runbooks
|
2026-09-13 09:19:46 +07:00 |
|
ik
|
c6ffded8d7
|
feat: complete moderation history dashboard
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-13 09:07:32 +07:00 |
|
ik
|
392e1e534a
|
fix: exclude generic maps from coverage
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-13 08:54:53 +07:00 |
|
ik
|
3547598d37
|
fix: prioritize media URL classification
|
2026-09-13 08:46:42 +07:00 |
|
ik
|
0b7df7f721
|
fix: count unique media coverage
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-13 08:22:10 +07:00 |
|
ik
|
7e464ef598
|
feat: track media catalog coverage
|
2026-09-13 08:14:56 +07:00 |
|
ik
|
674bc5627f
|
feat: expand RF4 media inventory
|
2026-09-13 08:06:48 +07:00 |
|
ik
|
4042c80f00
|
feat: audit catalog media coverage
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:57:07 +07:00 |
|
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
|
9158ae3d8a
|
data: store one authorized RF4 media asset
|
2026-09-12 21:25:28 +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 |
|