AletheiaFact / AletheiaFact/aletheia
Enhancement: Predefined Filtering Topics for Events
- 主要语言
- TypeScript
- 星标
- 55
- 派生
- 20
- 平均合并
- 2 天 6 小时
- 30 天内合并 PR
- 2
描述
# Problem Statement
Currently, event pages have no way to narrow down claim-reviews or verification requests beyond the event's single main topic. Admins and Fact Checkers need a way to define additional filtering topics per event so that the content shown on the event page is more precise and relevant to the audience.
## How
Each event already holds a `mainTopic` reference. The solution is to extend this with a `filterTopics` array — a list of secondary topics that Admins or Fact Checkers can manage through the event creation and edition drawer.
When the event detail page fetches claim-reviews or verification requests, it will use both the `mainTopic` and the `filterTopics` to build the query, narrowing results to only the content that matches at least one of those topics.
**Affected endpoints:**
- `PATCH /api/event/:id` — accepts `filterTopics` as an optional array in the update payload
- `GET /api/review` — receives the resolved topic IDs to scope the results
- `GET /api/verification-request` — same scoping logic applied to the verification requests collection
**UI changes:**
- The event creation and edition drawer will expose a multi-select input for `filterTopics`, restricted to Admin and Fact Checker roles
- The event detail page will pass the selected filter topics down to both `EventReviewsList` and `EventVerificationRequestList`
## Expected Behavior
- Admins and Fact Checkers can define one or more secondary filtering topics when creating or editing an event
- The event detail page renders only claim-reviews and verification requests that match the event's main topic or any of the defined filter topics
- Users browsing the event page see more precise, contextually relevant content
- Regular users have no access to manage filter topics — the input is hidden for non-privileged roles
## Scope / User Stories
- As an **Admin**, I want to define filtering topics for an event so that the event page only shows relevant claim-reviews and verification requests
- As a **Fact Checker**, I want to manage filtering topics for events I am working on so that my team's output is correctly scoped to the event
- As a **user**, I want to see only content that is relevant to the event I am browsing
## Must-haves
- [ ] `filterTopics` array field added to the Event schema (we already have)
- [ ] Event creation and edition drawer exposes a multi-select input for `filterTopics` (Admin and Fact Checker only)
- [ ] Claim-reviews on the event detail page are filtered using both `mainTopic` and `filterTopics`
- [ ] Verification requests on the event detail page are filtered using both `mainTopic` and `filterTopics`
贡献指南
这个仓库没有索引到贡献指南
评估
这个 Issue 还没有评估数据。