Repository navigation
Conversation
…on_url (#61) - buildItem: body wire announcement = title (fallback 'Pengumuman'), bukan JSON payload beku - feed mobile tampil teks normal. - validator announcement: host lock dihapus; https + URL valid cukup. Pembeda deep link in-app vs eksternal jadi tanggung jawab client. - test: unit announcement-feed (2) + e2e host eksternal diizinkan. Co-authored-by: Ibnul Mutaki <36250619+cacing69@users.noreply.github.com>
- schema + migration 0066: kolom body_type enum default plain. - validator: body_type enum (create default plain, update optional); response announcement + feed wire announcement.bodyType. - write-through payload feed ikut bawa bodyType (frozen copy). - e2e: enum valid 200, invalid 400, default plain; unit feed 2 baru. - 1147/1147 + tsc OK. Co-authored-by: Ibnul Mutaki <36250619+cacing69@users.noreply.github.com>
- pinned_at: schema, migrasi 0068, listPinned publik, PATCH pinned_at - notifikasi inbox kirim body_type (plain/html/md/webview) ke klien - perbaiki listPinned: gt() drizzle (konversi detik) vs raw sql Date ms - campaign: body_type + pin terkait Co-authored-by: Cursor <cursoragent@cursor.com>
…an /:id - updateAnnouncementBodySchema & create: field pinned_at (dibuang zod sebelumnya, pin dari console tidak pernah tersimpan) - announcementItemSchema: pinned_at di response (console selalu tampil '-') - listPinnedRoute didaftarkan sebelum getRoute (Hono match urutan, /pinned nyangkut di /:id = 400) - e2e: pin/unpin end-to-end Co-authored-by: Cursor <cursoragent@cursor.com>
Allow both legacy `role` string and new `roles` array in create admin user payload. Normalizes to `roles` array internally. Fixes console create user flow.
toWire() activity.controller strip body_type dari objek announcement di wire /activity - serializer kedua (serialize announcement.controller) sudah benar. Akibatnya md/webview jatuh plain diam-diam di mobile: markdown tidak render di detail dari jalur feed. Assert di batas e2e (bentuk wire), bukan unit repo (assert objek domain - celah yang bikin bug lolos).
…i feed & pinned (#124) Kontrak webview kini terkunci e2e: create body_type=webview + body URL → tersimpan utuh, feed /activity bawa body_type webview (serializer toWire #64), /pinned juga. Fix assertion: cari tile feed by announcement.id, bukan id compose.
item feed verifikasi merender 'Verifikasi · Verifikasi' karena
subtitleFor mengembalikan 'Verifikasi' sementara mobile sudah memakai
kindLabel 'Verifikasi' - meta = [kindLabel, subtitle].join(' · ').
suggestion_selfapply ikut terdampak lebih parah: kindLabel 'Usulan' +
subtitle 'Verifikasi' = 'Usulan · Verifikasi' (salah kategori).
Keduanya kini null. Test regresi e2e: verification.subtitle toBeNull.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Backport dari ke :
Auth (Admin Users)
Announcements (Pinned + bodyType)
Tests
Related issues: #3 (admin user role validation), #124 (announcement body_type)