Skip to content

Commit ae09760

Browse files
committed
docs:update
1 parent f4dfe59 commit ae09760

3 files changed

Lines changed: 40 additions & 0 deletions

File tree

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,12 @@ Still in progress:
9292
- downloader flow beyond the current scaffold / persistence layer
9393
- more complete local-first and offline-friendly browsing flows
9494

95+
Persistence status note:
96+
97+
- SQLite exists today as schema/bootstrap groundwork, not as the primary source of truth for browse/detail data
98+
- database-backed resource persistence is intentionally deferred until the UI and local-first flows that consume it are defined more concretely
99+
- for now, only persist data with a clear local ownership story such as renderer UI restore state, auth/session artifacts managed by the main process, download tasks, local file links, and future user-authored metadata
100+
95101
## Documentation
96102

97103
- [docs/README.md](docs/README.md)

docs/architecture.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -254,6 +254,14 @@ Status note:
254254

255255
- The schema is broader than currently shipped UI features.
256256
- Some tables support planned local-first capabilities that are only partially wired today.
257+
- Database-backed resource persistence is intentionally deferred for now; the app still treats upstream API responses as the source of truth for homepage browsing and detail loading.
258+
- Do not treat the presence of a table as a requirement to persist that upstream resource yet.
259+
- Near-term persistence should stay narrow and local-first:
260+
renderer UI restore state
261+
main-process auth/session artifacts
262+
download queue state
263+
local installation/link metadata
264+
explicitly user-authored local metadata once that UI is implemented
257265

258266
## Current Feature Status
259267

@@ -281,6 +289,7 @@ Status note:
281289
- Local metadata cache usage is still limited
282290
- Downloader is scaffolded, not full end-to-end
283291
- Offline-first search is not yet the main browse path
292+
- Deciding which upstream resource payloads deserve durable SQLite storage is still deferred work, not a settled requirement
284293

285294
## Important Constraints
286295

docs/decisions.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,31 @@ Reason:
265265

266266
- users expect “退出高级模式” to return to ordinary browsing immediately, not only flip an internal mode flag
267267

268+
## Local Persistence
269+
270+
### SQLite scope is intentionally deferred
271+
272+
Rule:
273+
274+
- do not assume every upstream resource or detail payload should be persisted just because a schema/table exists
275+
- upstream TouchGal browse/detail responses remain the source of truth for now
276+
- add durable SQLite persistence only when a concrete local consumer is defined, such as offline browse, cache invalidation, download orchestration, local library linking, or user-authored metadata
277+
- when in doubt, prefer not persisting a resource payload yet
278+
279+
For now, safe persistence targets are:
280+
281+
- renderer UI restore state such as homepage query/page and interaction preferences
282+
- main-process auth/session artifacts
283+
- download tasks and related local execution state
284+
- local file/library links
285+
- future personal notes, play state, and other user-authored metadata
286+
287+
Reason:
288+
289+
- the current database layer is broader than the shipped product surface
290+
- persisting upstream resource payloads prematurely creates schema obligations, sync questions, and invalidation work before the app has a settled local-first read path
291+
- narrowing persistence scope keeps the current implementation aligned with the actual product state
292+
268293
### Advanced filter execution is button-driven
269294

270295
Rule:

0 commit comments

Comments
 (0)