Two-tier notification system: new_booking (all public bookings) + pending_booking (notes/today). Priority-sorted queue, unread count polling, enriched responses with user_name/booking_start_time. Fix critical bug: edit_requested cleanup was broken (wrong reason string in 3 handlers). Add 15 new tests covering priority ordering, enrichment, and notification creation flows. Update Admin Manual, Technical Manual, and gap backlog docs.
186 lines
4.9 KiB
JSON
186 lines
4.9 KiB
JSON
{
|
|
"main": {
|
|
"id": "118cffd7cdee3b11",
|
|
"type": "split",
|
|
"children": [
|
|
{
|
|
"id": "88f82a6e53bb7e58",
|
|
"type": "tabs",
|
|
"children": [
|
|
{
|
|
"id": "0e456d61bc5b6ded",
|
|
"type": "leaf",
|
|
"state": {
|
|
"type": "markdown",
|
|
"state": {
|
|
"file": "Crussell/Future Work - Gap Backlog.md",
|
|
"mode": "source",
|
|
"source": false
|
|
},
|
|
"icon": "lucide-file",
|
|
"title": "Future Work - Gap Backlog"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"direction": "vertical"
|
|
},
|
|
"left": {
|
|
"id": "53a883d203e9233d",
|
|
"type": "split",
|
|
"children": [
|
|
{
|
|
"id": "490f9de080de140d",
|
|
"type": "tabs",
|
|
"children": [
|
|
{
|
|
"id": "42aca4a7881f98cd",
|
|
"type": "leaf",
|
|
"state": {
|
|
"type": "file-explorer",
|
|
"state": {
|
|
"sortOrder": "alphabetical",
|
|
"autoReveal": false
|
|
},
|
|
"icon": "lucide-folder-closed",
|
|
"title": "Files"
|
|
}
|
|
},
|
|
{
|
|
"id": "3f5a2398495786b0",
|
|
"type": "leaf",
|
|
"state": {
|
|
"type": "search",
|
|
"state": {
|
|
"query": "",
|
|
"matchingCase": false,
|
|
"explainSearch": false,
|
|
"collapseAll": false,
|
|
"extraContext": false,
|
|
"sortOrder": "alphabetical"
|
|
},
|
|
"icon": "lucide-search",
|
|
"title": "Search"
|
|
}
|
|
},
|
|
{
|
|
"id": "332fce93850753ed",
|
|
"type": "leaf",
|
|
"state": {
|
|
"type": "bookmarks",
|
|
"state": {},
|
|
"icon": "lucide-bookmark",
|
|
"title": "Bookmarks"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"direction": "horizontal",
|
|
"width": 300
|
|
},
|
|
"right": {
|
|
"id": "2750d7726f904ef3",
|
|
"type": "split",
|
|
"children": [
|
|
{
|
|
"id": "8cf8aee55a46981b",
|
|
"type": "tabs",
|
|
"children": [
|
|
{
|
|
"id": "5c7ce50806d60318",
|
|
"type": "leaf",
|
|
"state": {
|
|
"type": "backlink",
|
|
"state": {
|
|
"file": "Crussell/Future Work - Gap Backlog.md",
|
|
"collapseAll": false,
|
|
"extraContext": false,
|
|
"sortOrder": "alphabetical",
|
|
"showSearch": false,
|
|
"searchQuery": "",
|
|
"backlinkCollapsed": false,
|
|
"unlinkedCollapsed": true
|
|
},
|
|
"icon": "links-coming-in",
|
|
"title": "Backlinks for Future Work - Gap Backlog"
|
|
}
|
|
},
|
|
{
|
|
"id": "77c2a28112c134e9",
|
|
"type": "leaf",
|
|
"state": {
|
|
"type": "outgoing-link",
|
|
"state": {
|
|
"file": "Crussell/Crussell Nails.md",
|
|
"linksCollapsed": false,
|
|
"unlinkedCollapsed": true
|
|
},
|
|
"icon": "links-going-out",
|
|
"title": "Outgoing links from Crussell Nails"
|
|
}
|
|
},
|
|
{
|
|
"id": "0f217e57cf9fb6d9",
|
|
"type": "leaf",
|
|
"state": {
|
|
"type": "tag",
|
|
"state": {
|
|
"sortOrder": "frequency",
|
|
"useHierarchy": true,
|
|
"showSearch": false,
|
|
"searchQuery": ""
|
|
},
|
|
"icon": "lucide-tags",
|
|
"title": "Tags"
|
|
}
|
|
},
|
|
{
|
|
"id": "013dd65f19607fbd",
|
|
"type": "leaf",
|
|
"state": {
|
|
"type": "outline",
|
|
"state": {
|
|
"file": "Crussell/Crussell Nails.md",
|
|
"followCursor": false,
|
|
"showSearch": false,
|
|
"searchQuery": ""
|
|
},
|
|
"icon": "lucide-list",
|
|
"title": "Outline of Crussell Nails"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"direction": "horizontal",
|
|
"width": 300,
|
|
"collapsed": true
|
|
},
|
|
"left-ribbon": {
|
|
"hiddenItems": {
|
|
"switcher:Open quick switcher": false,
|
|
"graph:Open graph view": false,
|
|
"canvas:Create new canvas": false,
|
|
"daily-notes:Open today's daily note": false,
|
|
"templates:Insert template": false,
|
|
"command-palette:Open command palette": false,
|
|
"bases:Create new base": false
|
|
}
|
|
},
|
|
"active": "0e456d61bc5b6ded",
|
|
"lastOpenFiles": [
|
|
"Crussell/Overview.md",
|
|
"Crussell/Future Work - Gap Backlog.md",
|
|
"Crussell/Technical Manual.md",
|
|
"Crussell/User Manual.md",
|
|
"Crussell/Admin Manual.md",
|
|
"Crussell/Test Implementation Plan.md",
|
|
"Crussell/Crussell Nails.md",
|
|
"Crussell/Backend/bookings.md",
|
|
"Untitled.base",
|
|
"Untitled.canvas",
|
|
"Express.js Cheat Sheet.md"
|
|
]
|
|
} |