@cero-base/cero 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/src/build/CLAUDE.md +3 -0
- package/src/handle/CLAUDE.md +3 -0
- package/src/index.js +7 -3
- package/types/index.d.ts +2 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cero-base/cero",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.1",
|
|
4
4
|
"description": "The ideal p2p API — everything is a handle, handles contain refs, refs contain rows.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
"test": "ls test/*.test.js | xargs -P1 -n1 brittle-node"
|
|
84
84
|
},
|
|
85
85
|
"dependencies": {
|
|
86
|
-
"@cero-base/core": "^1.1.
|
|
86
|
+
"@cero-base/core": "^1.1.1",
|
|
87
87
|
"b4a": "^1.8.1",
|
|
88
88
|
"bare-abort-controller": "^1.1.2",
|
|
89
89
|
"bare-crypto": "^1.15.3",
|
package/src/index.js
CHANGED
|
@@ -65,7 +65,7 @@ export { t, schema } from './lib/spec.js'
|
|
|
65
65
|
* @property {Record<string, Function>} [routes] Custom RPC routes for the database dispatcher.
|
|
66
66
|
* @property {(err: any) => void} [onerror] Background-task error handler.
|
|
67
67
|
* @property {boolean} [recovery] Recovery flow — wipe local state and re-claim a writer slot.
|
|
68
|
-
* @property {number} [recoveryTimeout] Max wait for writer capability during recovery.
|
|
68
|
+
* @property {number} [recoveryTimeout] Max wait for peer data + writer capability during recovery.
|
|
69
69
|
*/
|
|
70
70
|
|
|
71
71
|
/**
|
|
@@ -140,7 +140,8 @@ export async function cero(dir, spec, opts = {}) {
|
|
|
140
140
|
const result = await me.bootstrap({
|
|
141
141
|
name: opts.name || null,
|
|
142
142
|
isMobile: opts.isMobile === true,
|
|
143
|
-
recovering: opts.recovery === true
|
|
143
|
+
recovering: opts.recovery === true,
|
|
144
|
+
...(opts.recoveryTimeout ? { timeout: opts.recoveryTimeout } : {})
|
|
144
145
|
})
|
|
145
146
|
if (local && result?.writer) {
|
|
146
147
|
await local.store.set('keypair', {
|
|
@@ -202,7 +203,9 @@ export async function restore(me, phrase) {
|
|
|
202
203
|
if (current.id === me.identity.id) return me
|
|
203
204
|
|
|
204
205
|
const { _dir: dir, spec, _opts: opts } = me
|
|
205
|
-
|
|
206
|
+
// channel must carry over — without it the recovered instance rejoins the
|
|
207
|
+
// global identity topic and never meets its channeled peers (recovery timeout).
|
|
208
|
+
const { name, bootstrap, isMobile, onerror, routes, recoveryTimeout, channel } = opts
|
|
206
209
|
|
|
207
210
|
await me.close()
|
|
208
211
|
await fs.promises.rm(`${dir}/main`, { recursive: true, force: true })
|
|
@@ -214,6 +217,7 @@ export async function restore(me, phrase) {
|
|
|
214
217
|
onerror,
|
|
215
218
|
routes,
|
|
216
219
|
recoveryTimeout,
|
|
220
|
+
channel,
|
|
217
221
|
phrase,
|
|
218
222
|
recovery: true
|
|
219
223
|
})
|
package/types/index.d.ts
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* @property {Record<string, Function>} [routes] Custom RPC routes for the database dispatcher.
|
|
17
17
|
* @property {(err: any) => void} [onerror] Background-task error handler.
|
|
18
18
|
* @property {boolean} [recovery] Recovery flow — wipe local state and re-claim a writer slot.
|
|
19
|
-
* @property {number} [recoveryTimeout] Max wait for writer capability during recovery.
|
|
19
|
+
* @property {number} [recoveryTimeout] Max wait for peer data + writer capability during recovery.
|
|
20
20
|
*/
|
|
21
21
|
/**
|
|
22
22
|
* Open (or create) a cero handle at `dir`. Sets up storage, network and
|
|
@@ -118,7 +118,7 @@ export type CeroOpts = {
|
|
|
118
118
|
*/
|
|
119
119
|
recovery?: boolean;
|
|
120
120
|
/**
|
|
121
|
-
* Max wait for writer capability during recovery.
|
|
121
|
+
* Max wait for peer data + writer capability during recovery.
|
|
122
122
|
*/
|
|
123
123
|
recoveryTimeout?: number;
|
|
124
124
|
};
|