Replace FeedItem.priority with signals (#39)

* feat: replace FeedItem.priority with signals

Remove priority field from FeedItem and engine-level sorting.
Add FeedItemSignals with urgency and timeRelevance fields.
Update all source packages to emit signals instead of priority.

Ranking is now the post-processing layer's responsibility.
Urgency values are unchanged from the old priority values.

Co-authored-by: Ona <no-reply@ona.com>

* fix: use TimeRelevance enum in all tests

Co-authored-by: Ona <no-reply@ona.com>

---------

Co-authored-by: Ona <no-reply@ona.com>
This commit is contained in:
2026-02-28 12:02:57 +00:00
committed by GitHub
parent 78b0ed94bd
commit 28d26b3c87
17 changed files with 278 additions and 145 deletions

View File

@@ -150,9 +150,6 @@ export class FeedEngine<TItems extends FeedItem = FeedItem> {
}
}
// Sort by priority descending
items.sort((a, b) => b.priority - a.priority)
this.context = context
const result: FeedResult<TItems> = { context, items: items as TItems[], errors }
@@ -314,8 +311,6 @@ export class FeedEngine<TItems extends FeedItem = FeedItem> {
}
}
items.sort((a, b) => b.priority - a.priority)
const result: FeedResult<TItems> = {
context: this.context,
items: items as TItems[],