@tangle-network/agent-knowledge 22.0.11 → 22.0.12
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/docs/architecture.md
CHANGED
|
@@ -50,7 +50,7 @@ A waiting writer stops new readers from entering, and a finishing writer admits
|
|
|
50
50
|
A mutation cannot start inside a read of the same root; it fails instead of waiting on itself.
|
|
51
51
|
Other processes still meet the file lock and the epoch.
|
|
52
52
|
Every holder of the lock, including a reader healing an abandoned epoch, records its label, pid, host, OS start token, boot id, pid namespace and the identity (dev, ino, nanosecond birthtime) of the lock directory it took (`src/lock-holder.ts`).
|
|
53
|
-
A holder is provably dead only when that record was written for the current lock directory, on this host and pid namespace, and the host has rebooted since, the pid is gone, or the pid now has a different start token.
|
|
53
|
+
A holder is provably dead only when that record was written for the current lock directory, on this host and pid namespace, and the host has rebooted since, the pid is gone, or the pid now has a different start token. agent-eval's `@tangle-network/agent-eval/lock-holder` (`lockHolderVerdict`) owns that rule for the whole stack; this package reads the record and the lock directory and acts on the verdict.
|
|
54
54
|
A provably dead holder's lock is broken at once, under the `mutation.lock.takeover` guard, and the taker emits an `AGENT_KNOWLEDGE_LOCK_TAKEOVER` warning; any other holder, including one on another host, with an old or missing record, or on a filesystem without birthtimes, keeps the whole `staleMs` lease.
|
|
55
55
|
A knowledge-improvement run's lease (`acquireRunLease`, `src/kb-improvement/state.ts`) follows the same rule through the same owner: a provably dead holder's lease is taken over at once with the same warning, and any other holder makes the next run, promotion or restore fail fast with `ELOCKED` for the lease's `leaseTtlMs`.
|
|
56
56
|
Two limits follow from that rule. Every caller of one root must use the same `staleMs`, because a shorter window treats a live holder as stale and can race a takeover. Two machines that share a store root over a network filesystem, have the same hostname and both run in the init pid namespace look like one rebooted host, so give such hosts distinct hostnames.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tangle-network/agent-knowledge",
|
|
3
|
-
"version": "22.0.
|
|
3
|
+
"version": "22.0.12",
|
|
4
4
|
"description": "Build, search, evaluate, and improve source-backed knowledge bases.",
|
|
5
5
|
"homepage": "https://github.com/tangle-network/agent-knowledge#readme",
|
|
6
6
|
"repository": {
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
"zod": "4.6.5"
|
|
86
86
|
},
|
|
87
87
|
"peerDependencies": {
|
|
88
|
-
"@tangle-network/agent-eval": ">=0.
|
|
88
|
+
"@tangle-network/agent-eval": ">=0.218.1 <0.219.0",
|
|
89
89
|
"@tangle-network/agent-interface": "^5.2.0"
|
|
90
90
|
},
|
|
91
91
|
"devDependencies": {
|