Fix world briefing & add LLM enrichment, colophon fix, x4 cover fix
- World Briefing now starts with yesterday, preserves complete nested event hierarchies and Wikipedia links, fetches deduplicated article leads concurrently, and adds stable-ID summaries plus a daily overview. - Enrichment runs after normal editorial work and degrades safely with report warnings. - Colophon facts now use X4-safe block paragraphs. - Standard cover remains 1200×1600 RGB PNG. - X4 cover is a 480×800 baseline RGB JPEG with consistent XHTML and OPF declarations. - Added CrossInk cache-clearing guidance to README.md. - Worked around an epub-builder duplicate XML-ID defect discovered by validation.
This commit is contained in:
+23
-2
@@ -399,8 +399,29 @@ pub struct WorldBriefing {
|
||||
pub date: Date,
|
||||
/// Portal URL the content came from (also used for CC BY-SA attribution).
|
||||
pub source_url: String,
|
||||
/// Sanitized `<ul>`-style markup of the day's events.
|
||||
pub body_html: String,
|
||||
/// Optional synthesized overview of the completed day's events.
|
||||
pub overview: Option<String>,
|
||||
/// Categories in portal order, including every nested list item.
|
||||
pub sections: Vec<WorldBriefingSection>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
|
||||
pub struct WorldBriefingSection {
|
||||
pub title: String,
|
||||
pub events: Vec<WorldEvent>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
|
||||
pub struct WorldEvent {
|
||||
/// Stable positional key such as `s1-e2-1`.
|
||||
pub id: String,
|
||||
/// Plain source text from the Wikipedia list item (excluding child lists).
|
||||
pub source_text: String,
|
||||
/// Same-host English Wikipedia article links found in this list item.
|
||||
pub links: Vec<String>,
|
||||
pub children: Vec<WorldEvent>,
|
||||
/// LLM enrichment, attached only to leaf news statements.
|
||||
pub summary: Option<String>,
|
||||
}
|
||||
|
||||
/// Reserved section name for [`WorldBriefing`] — never offered to the LLM (§3.6).
|
||||
|
||||
Reference in New Issue
Block a user