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:
dckc committed 2026-10-07 09:06:55 -05:00
1 parent 1a3bc14416
commit 0bffff8175
1 file changed
+13 -3
+13 -3
View File
@@ -37,6 +37,10 @@ narrative.
`cache: HIT`.
- [x] 1c-v. Tests: `pnpm lint && pnpm test` (the real worker +
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
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
capability over Cap'n Web (`diigo-cache/src/api.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
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
their meaning; say so before changing them (capsite AGENTS.md).
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
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
(`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):