Repository source: docs/plans/qdb_site_news/qdb_site_news_step4_implementation_summary.md
QDB Site News — Step 4: Implementation Summary
Stage 1 - Canonical news selection
Changes:
Added QDB policy selection for visible
news-tagged threads in descending authored-date order.Supplied the Welcome template with the first three news entries and a flag for additional items, while retaining quote count and prior recent-thread data until the presentation stage.
Added policy coverage for a non-quote news entry and date ordering.
Verification:
php tests/run.php QdbBoardPolicyTest— 5 passed, 0 failed.git diff --check— passed.
Notes:
No database, route, API, or generic board behavior changed.
Stage 2 - Site News presentation
Changes:
Replaced the QDB Welcome “Recent activity” list with Site News title/date links, an empty state, and a conditional
/tags/newscontinuation.Added QDB Welcome coverage for a non-quote four-item news collection, three-item cap, authored-date order, title fallback, and the all-news link.
Updated the quote-collection regression to exclude Welcome, which is now a news surface rather than a quote collection.
Verification:
php tests/run.php QuoteCardDisplayNumberTest— 18 passed, 0 failed.git diff --check— passed.
Notes:
No new route or presentation-specific title/date formatter was introduced.
Stage 3 - Release-path verification
Changes:
Added a static-artifact regression proving QDB Welcome renders Site News, retains its all-news link, and generates
/tags/news.htmlfor a four-item news fixture.
Verification:
php tests/run.php QdbBoardPolicyTest QuoteCardDisplayNumberTest QdbExperienceRoutingTest— 26 passed, 0 failed.php tests/run.php— QDB Site News coverage passed; the suite reported four failures outside this change: two pending-submit browser-signing tests, anonymous-public-board session behavior, and platform-doc source-path rendering.git diff --check— passed.
Notes:
Reused the existing
/tags/newsroute and static artifact enumeration; no route, API, schema, or deployment configuration changed.