On-disk content and thumbnail cache with per-photo fetch and prefetch (closes #46)
check / check (push) Successful in 33s
check / check (push) Successful in 33s
Adds the on-disk content and thumbnail cache keyed by fileID: originals/ and thumbnails/ under cacheDirectory, present-means-complete (streaming atomic rename), orphan temp reaping on open. Photo.original/thumbnail return a cached path with no network when present, else fetch through the shared request pool; thumbnails.ensure drives the thumbnail pool with priority, dedup and AbortSignal. One shared RequestPools set serves both the ML fetch and the content cache. Content-hash integrity is deferred (#68); authenticated streaming decrypt guarantees integrity now. Model: opus-4-8
This commit was merged in pull request #66.
This commit is contained in:
@@ -49,7 +49,27 @@ export {
|
||||
type PhotoFilter,
|
||||
type TimelineGroup,
|
||||
type GroupBy,
|
||||
type ContentSource,
|
||||
type ContentResult,
|
||||
type ContentEvent,
|
||||
type ContentOptions,
|
||||
type PhotoContent,
|
||||
type ThumbnailsAPI,
|
||||
type ThumbnailPriority,
|
||||
type EnsureOptions,
|
||||
type EnsureResult,
|
||||
type EnsureEvent,
|
||||
} from "./library/index.js";
|
||||
export {
|
||||
RequestPools,
|
||||
BoundedPool,
|
||||
DEFAULT_METADATA_CONCURRENCY,
|
||||
DEFAULT_CONTENT_CONCURRENCY,
|
||||
DEFAULT_THUMBNAIL_CONCURRENCY,
|
||||
type RequestPoolsOptions,
|
||||
type Priority,
|
||||
type RunOptions,
|
||||
} from "./library/pools.js";
|
||||
export type {
|
||||
AlbumRecord,
|
||||
PhotoRecord,
|
||||
|
||||
Reference in New Issue
Block a user