fixup! docs: goal tree aims at the weekly roundup (#23)
1c-vi: the cache proven complete against diigo's RSS export (and the 0-based page_num found on the way); 1e: the password-manager login; 1f: "invalidate the last N days" as today's stopgap; how-to-run: the webkey page and compare-export. Generated-by: Claude Opus 5.5
This commit is contained in:
1 parent
1a3bc14416
commit
0bffff8175
1 file changed
+13
-3
+13
-3
@@ -37,6 +37,10 @@ narrative.
|
|||||||
`cache: HIT`.
|
`cache: HIT`.
|
||||||
- [x] 1c-v. Tests: `pnpm lint && pnpm test` (the real worker +
|
- [x] 1c-v. Tests: `pnpm lint && pnpm test` (the real worker +
|
||||||
DOs against [a fake webapp](diigo-cache/tests/fake-webapp.js)).
|
DOs against [a fake webapp](diigo-cache/tests/fake-webapp.js)).
|
||||||
|
- [x] 1c-vi. Complete: a filled cache holds everything in diigo's
|
||||||
|
RSS export (16,744 of 16,744; differences are form only),
|
||||||
|
2026-10-07, via `scripts/compare-export.ts`. Getting there
|
||||||
|
found diigo's `page_num` is 0-based (schema v2 migration).
|
||||||
|
|
||||||
- [ ] **1d. Date windows and search on the public page**, toward the
|
- [ ] **1d. Date windows and search on the public page**, toward the
|
||||||
weekly PESOS roundup of [#23](https://github.com/dckc/madmode-blog/issues/23)
|
weekly PESOS roundup of [#23](https://github.com/dckc/madmode-blog/issues/23)
|
||||||
@@ -52,7 +56,8 @@ narrative.
|
|||||||
from the webkey page `/cache/#<key>`, which trades the key for a
|
from the webkey page `/cache/#<key>`, which trades the key for a
|
||||||
capability over Cap'n Web (`diigo-cache/src/api.ts`;
|
capability over Cap'n Web (`diigo-cache/src/api.ts`;
|
||||||
`startFill`/`fillStatus`/`stopFill` in `src/cache.ts`;
|
`startFill`/`fillStatus`/`stopFill` in `src/cache.ts`;
|
||||||
`tests/fill.test.ts`).
|
`tests/fill.test.ts`). `/cache/` without a key is a login form
|
||||||
|
the password manager fills.
|
||||||
|
|
||||||
- [ ] **1f. Cached pages go stale: the head must refresh.** A page hit
|
- [ ] **1f. Cached pages go stale: the head must refresh.** A page hit
|
||||||
never expires, and diigo pages are updated-desc, so every new or
|
never expires, and diigo pages are updated-desc, so every new or
|
||||||
@@ -66,7 +71,8 @@ narrative.
|
|||||||
**Durable state**: additive only if `pages`/`page_members` keep
|
**Durable state**: additive only if `pages`/`page_members` keep
|
||||||
their meaning; say so before changing them (capsite AGENTS.md).
|
their meaning; say so before changing them (capsite AGENTS.md).
|
||||||
Needs a test: an item added to the fake webapp shows up after a
|
Needs a test: an item added to the fake webapp shows up after a
|
||||||
refresh.
|
refresh. Stopgap today: "invalidate the last N days" on the
|
||||||
|
webkey page (`invalidateRecent`), then fill.
|
||||||
|
|
||||||
- [ ] **2. madmode reads the public cache**: public data, so no
|
- [ ] **2. madmode reads the public cache**: public data, so no
|
||||||
capability, no cookie, no plugin sync job, no cron on madmode's
|
capability, no cookie, no plugin sync job, no cron on madmode's
|
||||||
@@ -144,7 +150,11 @@ line (a repeat page is answered from DO sqlite storage). GET / is inert
|
|||||||
A private-only cache can be published later from its created page
|
A private-only cache can be published later from its created page
|
||||||
(`POST /_publish`, cache id in the body).
|
(`POST /_publish`, cache id in the body).
|
||||||
|
|
||||||
Checks: `cd diigo-cache && pnpm lint && pnpm test`.
|
Fill and invalidate a cache: http://localhost:8787/cache/ (log in with
|
||||||
|
the cache id from the password manager).
|
||||||
|
|
||||||
|
Checks: `cd diigo-cache && pnpm lint && pnpm test`. Against a diigo RSS
|
||||||
|
export: `node scripts/compare-export.ts <cache.sqlite> <export.xml> <out-dir>`.
|
||||||
|
|
||||||
madmode (EmDash site; separate worker, separate concerns):
|
madmode (EmDash site; separate worker, separate concerns):
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user