@serfab/cadre-core 1.9.0 → 1.10.0
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/dist/cadre-node.d.ts +148 -17
- package/dist/cadre-node.js +361 -45
- package/dist/cadre-node.js.map +1 -1
- package/dist/control-authorization.d.ts +2 -2
- package/dist/control-authorization.js +1 -0
- package/dist/control-authorization.js.map +1 -1
- package/dist/control-cohort.d.ts +1 -1
- package/dist/control-cohort.js +1 -1
- package/dist/control-database.d.ts +105 -14
- package/dist/control-database.js +242 -73
- package/dist/control-database.js.map +1 -1
- package/dist/control-formation-recorder.d.ts +6 -6
- package/dist/control-formation-recorder.js +7 -8
- package/dist/control-formation-recorder.js.map +1 -1
- package/dist/control-schema.d.ts +1 -1
- package/dist/control-schema.js +90 -3
- package/dist/control-schema.js.map +1 -1
- package/dist/control-write-retry.d.ts +21 -15
- package/dist/control-write-retry.js +21 -15
- package/dist/control-write-retry.js.map +1 -1
- package/dist/index.d.ts +5 -3
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/invitation-bootstrap.d.ts +32 -0
- package/dist/invitation-bootstrap.js +30 -0
- package/dist/invitation-bootstrap.js.map +1 -0
- package/dist/link-budget.d.ts +204 -119
- package/dist/link-budget.js +208 -120
- package/dist/link-budget.js.map +1 -1
- package/dist/membership-connection-gater.d.ts +3 -3
- package/dist/membership-connection-gater.js +3 -3
- package/dist/peer-dial.d.ts +18 -14
- package/dist/peer-dial.js +18 -14
- package/dist/peer-dial.js.map +1 -1
- package/dist/peer-join-backfill.d.ts +3 -3
- package/dist/pending-join-runner.d.ts +186 -0
- package/dist/pending-join-runner.js +649 -0
- package/dist/pending-join-runner.js.map +1 -0
- package/dist/push-fanout.d.ts +1 -1
- package/dist/push-fanout.js +1 -1
- package/dist/seed-bootstrap.d.ts +2 -2
- package/dist/seed-bootstrap.js +1 -1
- package/dist/strand-addr-protocol.js +2 -2
- package/dist/strand-formation-deadlines.d.ts +5 -5
- package/dist/strand-formation-deadlines.js +5 -5
- package/dist/strand-formation-manager.d.ts +18 -4
- package/dist/strand-formation-manager.js +48 -33
- package/dist/strand-formation-manager.js.map +1 -1
- package/dist/strand-formation-protocol.d.ts +71 -14
- package/dist/strand-formation-protocol.js +222 -47
- package/dist/strand-formation-protocol.js.map +1 -1
- package/dist/strand-formation-rejection.d.ts +94 -0
- package/dist/strand-formation-rejection.js +77 -0
- package/dist/strand-formation-rejection.js.map +1 -0
- package/dist/strand-instance-manager.js +4 -1
- package/dist/strand-instance-manager.js.map +1 -1
- package/dist/strand-solicitation.d.ts +11 -3
- package/dist/strand-solicitation.js +9 -0
- package/dist/strand-solicitation.js.map +1 -1
- package/dist/types.d.ts +103 -17
- package/dist/types.js +5 -9
- package/dist/types.js.map +1 -1
- package/package.json +22 -22
- package/src/cadre-node.ts +399 -46
- package/src/control-authorization.ts +117 -116
- package/src/control-cohort.ts +1 -1
- package/src/control-database.ts +303 -82
- package/src/control-formation-recorder.ts +8 -9
- package/src/control-schema.ts +90 -3
- package/src/control-write-retry.ts +21 -15
- package/src/index.ts +21 -1
- package/src/invitation-bootstrap.ts +40 -0
- package/src/link-budget.ts +221 -120
- package/src/membership-connection-gater.ts +3 -3
- package/src/peer-dial.ts +18 -14
- package/src/peer-join-backfill.ts +3 -3
- package/src/pending-join-runner.ts +735 -0
- package/src/push-fanout.ts +1 -1
- package/src/seed-bootstrap.ts +2 -2
- package/src/strand-addr-protocol.ts +2 -2
- package/src/strand-formation-deadlines.ts +5 -5
- package/src/strand-formation-manager.ts +62 -37
- package/src/strand-formation-protocol.ts +1036 -802
- package/src/strand-formation-rejection.ts +129 -0
- package/src/strand-instance-manager.ts +4 -1
- package/src/strand-solicitation.ts +17 -4
- package/src/types.ts +99 -17
package/dist/types.js
CHANGED
|
@@ -80,15 +80,11 @@ export const HIBERNATION_TIMEOUTS = {
|
|
|
80
80
|
*
|
|
81
81
|
* WHY THE DEADLINE IS PINNED rather than given room to adapt. `pingTimeout` is an
|
|
82
82
|
* adaptive-timeout init, and equal `minTimeout`/`maxTimeout` clamp it to one value on
|
|
83
|
-
* every libp2p version.
|
|
84
|
-
*
|
|
85
|
-
*
|
|
86
|
-
*
|
|
87
|
-
*
|
|
88
|
-
* the overlapping-ping abort above straight back. Pinning both ends keeps the interval's
|
|
89
|
-
* margin true on the version bump instead of making it something to remember. It also
|
|
90
|
-
* sidesteps 3.3's other surprise: the monitor keeps one `AdaptiveTimeout` for all of a
|
|
91
|
-
* node's connections, so one slow peer would otherwise lengthen the deadline for every
|
|
83
|
+
* every libp2p version. libp2p 3.3 reports each ping's duration back to the monitor's
|
|
84
|
+
* `AdaptiveTimeout`, so a ceiling above `pingInterval` would let the deadline grow past the
|
|
85
|
+
* interval and put the overlapping-ping abort above straight back. Pinning both ends keeps
|
|
86
|
+
* the interval's margin true. It also sidesteps the monitor keeping one `AdaptiveTimeout`
|
|
87
|
+
* for all of a node's connections, so one slow peer cannot lengthen the deadline for every
|
|
92
88
|
* connection on that node.
|
|
93
89
|
*/
|
|
94
90
|
export const DEFAULT_CONNECTION_MONITOR = Object.freeze({
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAoFA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAA6C;IAC5E,QAAQ,EAAE;QACR,WAAW,EAAE,QAAQ,EAAS,aAAa;QAC3C,gBAAgB,EAAE,QAAQ,EAAI,kBAAkB;QAChD,eAAe,EAAE,QAAQ,EAAK,MAAM;QACpC,oBAAoB,EAAE,CAAC;QACvB,kBAAkB,EAAE,QAAQ,CAAE,MAAM;KACrC;IACD,WAAW,EAAE;QACX,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAI,YAAY;QAC1C,gBAAgB,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,wBAAwB;QAC1D,eAAe,EAAE,EAAE,GAAG,IAAI,EAAI,mBAAmB;QACjD,oBAAoB,EAAE,CAAC;QACvB,kBAAkB,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe;KACnD;IACD,UAAU,EAAE;QACV,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAI,WAAW;QACzC,gBAAgB,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAG,uBAAuB;QACzD,eAAe,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAI,kBAAkB;QACpD,oBAAoB,EAAE,CAAC;QACvB,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,gBAAgB;KACxD;IACD,OAAO,EAAE;QACP,WAAW,EAAE,EAAE,GAAG,IAAI,EAAQ,aAAa;QAC3C,gBAAgB,EAAE,EAAE,GAAG,IAAI,EAAG,wBAAwB;QACtD,eAAe,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAG,eAAe;QACjD,oBAAoB,EAAE,CAAC;QACvB,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe;KAC5D;CACF,CAAC;AA0dF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC,MAAM,CAAC;IACtD,uFAAuF;IACvF,mFAAmF;IACnF,YAAY,EAAE,KAAM;IACpB,kFAAkF;IAClF,kFAAkF;IAClF,mBAAmB;IACnB,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAM,EAAE,UAAU,EAAE,KAAM,EAAE,CAAC;CACjC,CAAC,CAAC;AAmBzC;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,GAAG,IAAI,CAAC;AAYnD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,2BAA2B,EAC3B,sBAAsB,EACtB,2BAA2B,EAC3B,qBAAqB,EACrB,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,+BAA+B,CAAC;AAEvC;;;;;GAKG;AACH,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@serfab/cadre-core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.10.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Core library for Sereus cadre nodes - manages control networks and strand participation",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -70,37 +70,37 @@
|
|
|
70
70
|
"devDependencies": {
|
|
71
71
|
"@chainsafe/libp2p-noise": "^17.0.0",
|
|
72
72
|
"@chainsafe/libp2p-yamux": "^8.0.1",
|
|
73
|
-
"@libp2p/circuit-relay-v2": "^4.
|
|
74
|
-
"@libp2p/identify": "4.
|
|
75
|
-
"@libp2p/logger": "^6.2.
|
|
76
|
-
"@libp2p/peer-store": "^12.0.
|
|
77
|
-
"@libp2p/tcp": "^11.0.
|
|
78
|
-
"@libp2p/webrtc": "6.0.
|
|
79
|
-
"@libp2p/websockets": "^10.1.
|
|
80
|
-
"@optimystic/db-p2p-storage-fs": "^1.
|
|
73
|
+
"@libp2p/circuit-relay-v2": "^4.2.13",
|
|
74
|
+
"@libp2p/identify": "4.1.14",
|
|
75
|
+
"@libp2p/logger": "^6.2.13",
|
|
76
|
+
"@libp2p/peer-store": "^12.0.28",
|
|
77
|
+
"@libp2p/tcp": "^11.0.28",
|
|
78
|
+
"@libp2p/webrtc": "6.0.33",
|
|
79
|
+
"@libp2p/websockets": "^10.1.21",
|
|
80
|
+
"@optimystic/db-p2p-storage-fs": "^1.9.0",
|
|
81
81
|
"@types/debug": "^4.1.12",
|
|
82
82
|
"@types/node": "^25.0.10",
|
|
83
83
|
"@vitest/coverage-v8": "^4.0.17",
|
|
84
|
-
"datastore-core": "^
|
|
84
|
+
"datastore-core": "^12.0.1",
|
|
85
85
|
"main-event": "^1.0.1",
|
|
86
86
|
"rimraf": "^6.1.2",
|
|
87
87
|
"typescript": "^5.9.3",
|
|
88
88
|
"vitest": "^4.0.17"
|
|
89
89
|
},
|
|
90
90
|
"dependencies": {
|
|
91
|
-
"@libp2p/crypto": "^5.1.
|
|
92
|
-
"@libp2p/interface": "^3.
|
|
93
|
-
"@libp2p/peer-id": "^6.0.
|
|
94
|
-
"@libp2p/peer-record": "^9.0.
|
|
95
|
-
"@multiformats/multiaddr": "^
|
|
96
|
-
"@optimystic/db-core": "^1.
|
|
97
|
-
"@optimystic/db-p2p": "^1.
|
|
98
|
-
"@optimystic/quereus-plugin-crypto": "^1.
|
|
99
|
-
"@optimystic/quereus-plugin-optimystic": "^1.
|
|
91
|
+
"@libp2p/crypto": "^5.1.23",
|
|
92
|
+
"@libp2p/interface": "^3.3.0",
|
|
93
|
+
"@libp2p/peer-id": "^6.0.15",
|
|
94
|
+
"@libp2p/peer-record": "^9.0.16",
|
|
95
|
+
"@multiformats/multiaddr": "^13.0.3",
|
|
96
|
+
"@optimystic/db-core": "^1.9.0",
|
|
97
|
+
"@optimystic/db-p2p": "^1.9.0",
|
|
98
|
+
"@optimystic/quereus-plugin-crypto": "^1.9.0",
|
|
99
|
+
"@optimystic/quereus-plugin-optimystic": "^1.9.0",
|
|
100
100
|
"@quereus/quereus": "^4.20.0",
|
|
101
|
-
"@serfab/quereus-plugin-sereus": "^1.
|
|
101
|
+
"@serfab/quereus-plugin-sereus": "^1.10.0",
|
|
102
102
|
"debug": "^4.4.3",
|
|
103
|
-
"libp2p": "^3.
|
|
104
|
-
"uint8arrays": "^
|
|
103
|
+
"libp2p": "^3.3.11",
|
|
104
|
+
"uint8arrays": "^6.1.1"
|
|
105
105
|
}
|
|
106
106
|
}
|