- Delete dead ArticleCard.svelte and five zero-call-site backend exports
(getTagsByIds, unclusteredItemsForSources, itemsByCluster, deleteAllContentItems,
latestArticleInThread)
- Drop poe2_primary_currency_name from the schema entirely (dev DB, no migration
concerns)
- settings.ts: bind named params instead of 33 positional ?s to remove the
reorder-and-silently-corrupt risk
- Remove the long-dead stooqToYahooSymbols unconditional startup rewrite
- Share direct-publish logic between runPassthroughCycle/runSynthesisCycle via a new
publishItemsDirect helper, and cache sourcesDb.listSources() once per synthesis tick
instead of a per-item getSource() call
- Remove the 'custom' source type (had no adapter of its own, aliased to api)