feat(core): add sourceId to FeedItem (#72)

Each FeedSource implementation now sets sourceId on items
it produces, allowing consumers to trace items back to
their originating source.

Co-authored-by: Ona <no-reply@ona.com>
This commit is contained in:
2026-03-14 23:51:41 +00:00
committed by GitHub
parent bed033652c
commit 5ea24b0a13
17 changed files with 92 additions and 12 deletions

View File

@@ -99,6 +99,7 @@ function createWeatherSource(
return [
{
id: `weather-${Date.now()}`,
sourceId: "weather",
type: "weather",
timestamp: new Date(),
data: {
@@ -130,6 +131,7 @@ function createAlertSource(): FeedSource<AlertFeedItem> {
return [
{
id: "alert-storm",
sourceId: "alert",
type: "alert",
timestamp: new Date(),
data: { message: "Storm warning!" },
@@ -423,6 +425,7 @@ describe("FeedEngine", () => {
return [
{
id: "item-1",
sourceId: "working",
type: "test",
priority: 0.5,
timestamp: new Date(),
@@ -746,6 +749,7 @@ describe("FeedEngine", () => {
return [
{
id: "item-1",
sourceId: "reactive-items",
type: "test",
priority: 0.5,
timestamp: new Date(),
@@ -830,6 +834,7 @@ describe("FeedEngine", () => {
return [
{
id: `item-${fetchCount}`,
sourceId: "counter",
type: "test",
priority: 0.5,
timestamp: new Date(),
@@ -895,6 +900,7 @@ describe("FeedEngine", () => {
return [
{
id: `weather-${Date.now()}`,
sourceId: "weather",
type: "weather",
priority: 0.5,
timestamp: new Date(),