brief: library sync follow-up, client timeout, STATUS codes and README (row 222 deferrals, #1723)
This commit is contained in:
1 parent
0b33f5e9db
commit
0de97f429d
1 file changed
+35
@@ -0,0 +1,35 @@
|
||||
# Brief: library sync follow-up, client timeout, STATUS codes and README (C2-03a deferrals)
|
||||
|
||||
Sage, 2026-10-21, for the deferrals Dewey named in the row 222 approval (#1723 comment 30138). Row 222
|
||||
landed as 0b33f5e9d. Owner Megavolt, reviewer Dewey, gate owner Sage. Chained after row 196: `human-cli.mjs`
|
||||
is pinned by hash in the channel proof, and row 196 changes that proof, so this row builds on 196's landing.
|
||||
|
||||
## What this row does
|
||||
|
||||
1. **Client timeout.** `library.sync` can run longer than the human client's 5 s timeout. Today that fails
|
||||
safe: the sync keeps running, a second call gets `library-sync-busy`, and `library.status` shows the
|
||||
result. Give `library.sync` a longer client timeout in `packages/bus/src/human-cli.mjs`, and in the
|
||||
Console route when one exists. Re-pin the channel proof for the new `human-cli.mjs` hash, and say in
|
||||
BUILD.md which proof file and test change.
|
||||
2. **STATUS codes (Dewey's 215 N3).** Add entries in `packages/webui/src/bus.mjs` for `library-sync-busy`,
|
||||
`library-diverged`, `library-accept-stale`, `library-accept-invalid`, `library-credential-missing` and
|
||||
`library-fetch-failed`, with a test that each code maps to its status.
|
||||
3. **README (222 N4).** In `packages/library/README.md`'s Sync section, say that a client timeout leaves the
|
||||
sync running and that `library.status` shows its result. Correct BUILD.md's "the Console gets the call"
|
||||
line in this row's BUILD.md: `cli.mjs` passes `librarySync` to `startServer`, and `serve.mjs` doesn't
|
||||
read it yet.
|
||||
|
||||
Dewey's other 222 notes don't bind this row: N1 (a close waits on every entry left in a pass), N2 (a held
|
||||
tip still gets its tree read) and N3 (held states log every tick). Fix one here only if it is a few lines in
|
||||
a file this row already changes, and say so in BUILD.md. Otherwise list it as deferred.
|
||||
|
||||
## Boundaries
|
||||
|
||||
- No test touches `~/.mosaic-dev`, `~/.config/mosaic-dev`, the live units, a slot file, .53 or .54.
|
||||
- No Gitea fetch against a real server. Use the fakes row 222's tests use.
|
||||
|
||||
## Gate
|
||||
|
||||
Dewey approves the manifest. On Sage's slot: the bus, library and webui suites whole, and every
|
||||
`scripts/test-*.sh`, green. A mutant that drops the longer timeout and one that drops a STATUS entry are
|
||||
both killed.
|
||||
Reference in new issue
Block a user