diigo-cache: date windows and search on the public page (1d)
/public/<username> takes days, after, before, in (year, month, quarter, ISO week), by=updated|created, and q (words, "phrases", #tags, -negation, gmail/Slack/GitHub date operators). JSON answers echo the parsed filter; a malformed one is a 400. Filters query the stored items in sqlite through the read-only viewer instead of walking diigo pages: the public page keeps no fetch authority, and a filled cache already holds every item. Results say `complete` when every diigo page is stored; freshness is 1f's head refresh. So the fetch budget and the O(log pages) walk test go, and the fake deep account shrinks to 300. Generated-by: Claude Opus 5.5
This commit is contained in:
1 parent
efb54ad4cc
commit
002f08b456
9 files changed
+418
-120
No files matched your search
@@ -19,3 +19,14 @@ where cast(items.updated as integer) >= ?;
|
||||
|
||||
-- pagesThrough:
|
||||
select count(*) as n from pages where page_num <= ?;
|
||||
|
||||
-- itemsByUpdated:
|
||||
select json from items
|
||||
where cast(updated as integer) >= ? and cast(updated as integer) < ?
|
||||
order by cast(updated as integer) desc, item_id;
|
||||
|
||||
-- itemsByCreated:
|
||||
select json from items
|
||||
where cast(json_extract(json, '$.created_at') as integer) >= ?
|
||||
and cast(json_extract(json, '$.created_at') as integer) < ?
|
||||
order by cast(json_extract(json, '$.created_at') as integer) desc, item_id;
|
||||
Reference in new issue
Block a user