feat(core): add FeedController orchestration layer

Adds orchestration for feed reconciliation with context-driven updates:

- FeedController: holds context, debounces updates, reconciles sources
- ContextBridge: bridges context providers to controller
- ContextProvider: reactive + on-demand context value interface
- Branded ContextKey<T> for type-safe context keys

Moves source files to src/ directory and consolidates tests into
integration test.

Co-authored-by: Ona <no-reply@ona.com>
This commit is contained in:
2026-01-18 00:58:29 +00:00
parent 2eff7b49dc
commit 3c16dd4275
15 changed files with 965 additions and 272 deletions

View File

@@ -0,0 +1,23 @@
// Context
export type { Context, ContextKey } from "./context"
export { contextKey, contextValue } from "./context"
// Feed
export type { FeedItem } from "./feed"
// Data Source
export type { DataSource } from "./data-source"
// Context Provider
export type { ContextProvider } from "./context-provider"
// Context Bridge
export { ContextBridge } from "./context-bridge"
// Reconciler
export type { ReconcileResult, ReconcilerConfig, SourceError } from "./reconciler"
export { Reconciler } from "./reconciler"
// Feed Controller
export type { FeedControllerConfig, FeedSubscriber } from "./feed-controller"
export { FeedController } from "./feed-controller"