database: page carries 'personal' (the personal-scope sibling punc) and sidebar carries 'icon' — previously stripped by the whitelist

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-04 18:21:30 -04:00
parent dc033296d7
commit 5885552192

View File

@ -13,6 +13,10 @@ pub struct Page {
pub sidebar: Option<Sidebar>, pub sidebar: Option<Sidebar>,
#[serde(skip_serializing_if = "Option::is_none")] #[serde(skip_serializing_if = "Option::is_none")]
pub actions: Option<IndexMap<String, Action>>, pub actions: Option<IndexMap<String, Action>>,
/// The personal-scope sibling punc for this page ("one surface, two scopes"):
/// the caller-scoped read the page issues when the app is in personal scope.
#[serde(skip_serializing_if = "Option::is_none")]
pub personal: Option<String>,
} }
#[derive(Debug, Clone, Serialize, Deserialize, Default)] #[derive(Debug, Clone, Serialize, Deserialize, Default)]
@ -22,4 +26,6 @@ pub struct Sidebar {
pub category: Option<String>, pub category: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")] #[serde(skip_serializing_if = "Option::is_none")]
pub priority: Option<i32>, pub priority: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub icon: Option<String>,
} }