-
871ef7c53a
fix: rename on-time rate label, hoist getApiKey above escalation loop, remove broken capa-owner incident link
admin
2026-07-11 19:03:23 +08:00
-
87264a5497
feat: i18n — EN/MS/ZH translations with cookie-based locale switching, report form translated

adminandClaude Sonnet 4.6
2026-07-11 19:01:44 +08:00
-
c67c489ab3
chore: mark Phase 3 complete in progress ledger
admin
2026-07-11 18:56:10 +08:00
-
b9def9c957
feat: CAPA effectiveness re-check cron — 30/60/90-day email + WhatsApp notifications

adminandClaude Sonnet 4.6
2026-07-11 18:55:27 +08:00
-
76d9363c3c
test: RCA draft route test
admin
2026-07-11 18:54:53 +08:00
-
edb0bde4c5
fix: restore phase4 migration (recheck_round column + WhatsApp app_settings rows)

adminandClaude Sonnet 4.6
2026-07-11 18:51:44 +08:00
-
a47f3aabc9
feat: WhatsApp notifications — new incident alert and CAPA overdue escalation

adminandClaude Sonnet 4.6
2026-07-11 18:50:25 +08:00
-
121433ddf8
Revert "feat: WhatsApp notification helper + phase 4 migration (recheck_round, WhatsApp settings)"
admin
2026-07-11 18:47:08 +08:00
-
dfca872629
feat: CSV export endpoint for HSE and management dashboards
admin
2026-07-11 18:44:52 +08:00
-
b6845f5bb5
feat: WhatsApp notification helper + phase 4 migration (recheck_round, WhatsApp settings)
admin
2026-07-11 18:43:57 +08:00
-
e631d04aba
fix: reporter dashboard — guard reported_at null before new Date()
admin
2026-07-11 18:41:43 +08:00
-
55b6dac646
feat: reporter dashboard — user-scoped incident submissions with status
admin
2026-07-11 18:39:18 +08:00
-
070e2d1d5d
fix: CAPA owner dashboard — priority null guard, nulls-last due_date sort
admin
2026-07-11 18:22:21 +08:00
-
a2f1be7eaf
feat: CAPA owner dashboard — user-scoped active and completed CAPAs
admin
2026-07-11 18:19:41 +08:00
-
69df45250c
fix: supervisor dashboard — dedup incident ID queries, accurate counts, due_date null guard

adminandClaude Sonnet 4.6
2026-07-11 18:16:54 +08:00
-
ceb5c7994a
feat: supervisor dashboard — site-scoped open incidents, overdue CAPAs
admin
2026-07-11 18:13:26 +08:00
-
3dac469314
feat: management dashboard — month delta, LTI, severity distribution, site comparison
admin
2026-07-11 18:10:33 +08:00
-
16e8f9d01b
docs: update Phase 3 plan — AI features already done, focus on remaining dashboards
admin
2026-07-11 18:04:10 +08:00
-
b9ab94c9da
feat: API key settings page — store ANTHROPIC/VOYAGE keys in DB with admin UI

adminandClaude Sonnet 4.6
2026-07-11 17:46:40 +08:00
-
a07c9f0910
docs: Phase 3 design spec — AI features + dashboard upgrade
admin
2026-07-11 17:39:18 +08:00
-
3297198179
chore: log Phase 3 final fixes in progress ledger
admin
2026-07-11 16:49:18 +08:00
-
c07bdb77ad
fix: RLS guard in match_incidents + try/catch around AI/embed calls

adminandClaude Sonnet 4.6
2026-07-11 16:48:20 +08:00
-
28b4951b68
chore: mark Phase 3 complete in progress ledger
admin
2026-07-11 16:41:17 +08:00
-
3473cf8ab7
feat: dashboard — leading/lagging, zone heatmap, CAPA on-time rate, DOSH filing status

adminandClaude Sonnet 4.6
2026-07-11 16:38:57 +08:00
-
10e71969dd
feat: AI RCA draft assistant in investigation form

adminandClaude Sonnet 4.6
2026-07-11 16:35:12 +08:00
-
547cc6e817
feat: pgvector similar-incident retrieval + SimilarIncidentsPanel

adminandClaude Sonnet 4.6
2026-07-11 16:31:02 +08:00
-
f10fa071f9
feat: AI triage suggestion — severity + DOSH flags pre-fill

adminandClaude Sonnet 4.6
2026-07-11 16:27:29 +08:00
-
a5933d2cd9
fix: guard JSON parse and validate Claude tool output in quality-check route
admin
2026-07-11 16:23:31 +08:00
-
3bec95aaf8
feat: AI report quality check before submission

adminandClaude Sonnet 4.6
2026-07-11 16:18:39 +08:00
-
ab6299f963
feat: pgvector extension + incidents.embedding column + match_incidents RPC
admin
2026-07-11 16:14:32 +08:00
-
ebaa98d9f4
feat: Claude client + Voyage AI embed helper

adminandClaude Sonnet 4.6
2026-07-11 16:10:26 +08:00
-
0e53d5c771
chore: mark Phase 2 Tasks 3-8 complete in progress ledger

adminandClaude Opus 4.8
2026-07-11 15:24:32 +08:00
-
54332d0297
feat: JKKP 6/7 PDF generation via pdf-lib, download from incident detail

adminandClaude Opus 4.8
2026-07-11 15:24:18 +08:00
-
75fa2605bf
feat: CAPA overdue escalation cron — 4 thresholds, once-per-threshold via notifications_log

adminandClaude Opus 4.8
2026-07-11 15:20:15 +08:00
-
804b1fbf33
feat: verification flow — HSE verify/reopen CAPA, auto-transition incident to verification

adminandClaude Opus 4.8
2026-07-11 15:18:17 +08:00
-
1780586185
feat: CAPA board — kanban/table view, create CAPA from incident, status tracking

adminandClaude Opus 4.8
2026-07-11 15:16:49 +08:00
-
63cb28f520
feat: investigation workspace — 5-Why/fishbone RCA, transitions triaged→investigating→capa_pending

adminandClaude Opus 4.8
2026-07-11 15:14:27 +08:00
-
e55c5284a7
feat: triage panel — severity + DOSH checklist, transitions reported→triaged

adminandClaude Opus 4.8
2026-07-11 15:12:35 +08:00
-
8b00c72014
feat: DOSH obligation pure function with NADOPOD 2004 rules
admin
2026-07-11 14:51:35 +08:00
-
a718a2ddbb
fix: drop write_audit_log before recreate to handle existing function with different param names
admin
2026-07-11 14:50:03 +08:00
-
dbbb663611
feat: phase2 migration — triage fields, RCA structured data, write_audit_log RPC
admin
2026-07-11 08:35:51 +08:00
-
1fe646d82d
fix: extract zone fields explicitly to avoid Supabase join type narrowing to never

adminandClaude Sonnet 4.6
2026-07-11 07:59:07 +08:00
-
33875395fb
fix: cast Supabase join types through unknown for TSC compatibility

adminandClaude Sonnet 4.6
2026-07-11 07:57:00 +08:00
-
7d3f8ec757
fix: export Incident types, replace any casts with typed unknown casts

adminandClaude Sonnet 4.6
2026-07-11 07:55:26 +08:00
-
ed14885253
fix: replace any casts with typed casts for Supabase join results

adminandClaude Sonnet 4.6
2026-07-11 07:52:53 +08:00
-
b281420810
feat: HSE dashboard with incident stats by type and site

adminandClaude Sonnet 4.6
2026-07-11 07:40:22 +08:00
-
713556631b
feat: incident detail page with evidence gallery for HSE and supervisor roles

adminandClaude Sonnet 4.6
2026-07-11 07:40:06 +08:00
-
2f2018f27a
feat: incident inbox pages with filter/search for HSE and supervisor roles

adminandClaude Sonnet 4.6
2026-07-11 07:39:43 +08:00
-
2239b6e2df
feat: email notifications via Resend on new incident
admin
2026-07-10 13:24:44 +08:00
-
3f8da5bd91
feat: incident report form, API route, middleware shared-route + redirect
admin
2026-07-10 13:19:45 +08:00
-
a40a0f7c59
fix: signed URLs for private bucket, 10MB server-side limit, safe auth destructuring
admin
2026-07-10 12:00:52 +08:00
-
8a9758c8a6
feat: Phase 1 foundation - incident components, storage, and migrations
admin
2026-07-10 10:48:56 +08:00
-
28957f1e0f
fix: patch critical auth and RLS security findings from final review
admin
2026-07-10 06:01:36 +08:00
-
152a6602d6
feat: add QR code generation script for seeded zones

adminandClaude Sonnet 4.6
2026-07-09 22:36:50 +08:00
-
c3ba543ebb
feat: add protected role dashboard placeholders

adminandClaude Sonnet 4.6
2026-07-09 22:32:29 +08:00
-
559859470b
feat: add login page and auth callback route

adminandClaude Sonnet 4.6
2026-07-09 22:18:21 +08:00
-
05daf70177
feat: add database schema migrations and seed data

adminandClaude Sonnet 4.6
2026-07-09 21:44:24 +08:00
-
6939a21183
feat: add user role types and auth middleware

adminandClaude Sonnet 4.6
2026-07-09 21:39:32 +08:00
-
9b5b21381f
chore: fix layout metadata and mark Task 1 complete in ledger
admin
2026-07-09 21:37:23 +08:00
-
f83686fcca
chore: scaffold Next.js 15 + Supabase clients + vitest
admin
2026-07-09 21:33:59 +08:00