instar 1.3.528 → 1.3.530
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/commands/server.d.ts.map +1 -1
- package/dist/commands/server.js +114 -0
- package/dist/commands/server.js.map +1 -1
- package/dist/config/ConfigDefaults.d.ts.map +1 -1
- package/dist/config/ConfigDefaults.js +29 -0
- package/dist/config/ConfigDefaults.js.map +1 -1
- package/dist/core/CoherenceJournal.d.ts +1 -1
- package/dist/core/CoherenceJournal.d.ts.map +1 -1
- package/dist/core/CoherenceJournal.js +27 -2
- package/dist/core/CoherenceJournal.js.map +1 -1
- package/dist/core/EvolutionManager.d.ts +35 -0
- package/dist/core/EvolutionManager.d.ts.map +1 -1
- package/dist/core/EvolutionManager.js +49 -0
- package/dist/core/EvolutionManager.js.map +1 -1
- package/dist/core/KnowledgeReplicatedStore.d.ts +310 -0
- package/dist/core/KnowledgeReplicatedStore.d.ts.map +1 -0
- package/dist/core/KnowledgeReplicatedStore.js +526 -0
- package/dist/core/KnowledgeReplicatedStore.js.map +1 -0
- package/dist/core/LearningsReplicatedStore.d.ts +298 -0
- package/dist/core/LearningsReplicatedStore.d.ts.map +1 -0
- package/dist/core/LearningsReplicatedStore.js +574 -0
- package/dist/core/LearningsReplicatedStore.js.map +1 -0
- package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
- package/dist/core/PostUpdateMigrator.js +49 -1
- package/dist/core/PostUpdateMigrator.js.map +1 -1
- package/dist/core/devGatedFeatures.d.ts.map +1 -1
- package/dist/core/devGatedFeatures.js +10 -0
- package/dist/core/devGatedFeatures.js.map +1 -1
- package/dist/knowledge/KnowledgeManager.d.ts +37 -0
- package/dist/knowledge/KnowledgeManager.d.ts.map +1 -1
- package/dist/knowledge/KnowledgeManager.js +45 -0
- package/dist/knowledge/KnowledgeManager.js.map +1 -1
- package/dist/scaffold/templates.d.ts.map +1 -1
- package/dist/scaffold/templates.js +3 -1
- package/dist/scaffold/templates.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +20 -20
- package/src/scaffold/templates.ts +3 -1
- package/upgrades/1.3.529.md +33 -0
- package/upgrades/1.3.530.md +33 -0
- package/upgrades/side-effects/ws22-learnings.md +74 -0
- package/upgrades/side-effects/ws24-knowledge.md +77 -0
|
@@ -93,10 +93,25 @@ export class EvolutionManager {
|
|
|
93
93
|
* See docs/specs/OPENCLAW-IMPORT-WIKICLAIM-EVIDENCE-SPEC.md § Producers.
|
|
94
94
|
*/
|
|
95
95
|
semanticMemory = null;
|
|
96
|
+
/**
|
|
97
|
+
* WS2.2 learning-record replication emitter (injected, dark by default). Absent ⇒
|
|
98
|
+
* strict no-op (single-machine, byte-identical). server.ts late-binds a journal-backed
|
|
99
|
+
* emitter ONLY when `multiMachine.stateSync.learnings.enabled` is true.
|
|
100
|
+
*/
|
|
101
|
+
learningReplication = null;
|
|
96
102
|
constructor(config) {
|
|
97
103
|
this.config = config;
|
|
98
104
|
this.stateDir = config.stateDir;
|
|
99
105
|
}
|
|
106
|
+
/**
|
|
107
|
+
* Late-bind the WS2.2 learning-record replication emitter (server.ts constructs the
|
|
108
|
+
* journal/clock AFTER the manager). Idempotent; passing undefined/null detaches (back
|
|
109
|
+
* to single-machine no-op). The emit funnel checks `this.learningReplication` per
|
|
110
|
+
* write, so attaching mid-life takes effect on the next save.
|
|
111
|
+
*/
|
|
112
|
+
setLearningReplicationEmitter(emitter) {
|
|
113
|
+
this.learningReplication = emitter ?? null;
|
|
114
|
+
}
|
|
100
115
|
// ── TaskFlow wiring ─────────────────────────────────────────────
|
|
101
116
|
/**
|
|
102
117
|
* Wire a TaskFlow registry for Phase 3a dual-write. After this call:
|
|
@@ -728,6 +743,7 @@ export class EvolutionManager {
|
|
|
728
743
|
lastUpdated: this.now(),
|
|
729
744
|
};
|
|
730
745
|
const max = this.config.maxLearnings || 500;
|
|
746
|
+
const beforePrune = state.learnings;
|
|
731
747
|
if (state.learnings.length > max) {
|
|
732
748
|
const unapplied = state.learnings.filter(l => !l.applied);
|
|
733
749
|
const appliedEntries = state.learnings.filter(l => l.applied);
|
|
@@ -735,6 +751,39 @@ export class EvolutionManager {
|
|
|
735
751
|
state.learnings = [...unapplied, ...keep];
|
|
736
752
|
}
|
|
737
753
|
this.writeFile('learning-registry', state);
|
|
754
|
+
// WS2.2 — best-effort replication emission (dark by default; the emitter is only
|
|
755
|
+
// injected when multiMachine.stateSync.learnings.enabled is true). The emitter
|
|
756
|
+
// swallows its own errors, but we wrap defensively so a replication fault can NEVER
|
|
757
|
+
// break a local learning write. CRITICAL (tombstone resurrection guard): a learning
|
|
758
|
+
// that was PRUNED over maxLearnings emits an op:delete tombstone, else a peer
|
|
759
|
+
// re-replicates the locally-pruned learning forever.
|
|
760
|
+
const emitter = this.learningReplication;
|
|
761
|
+
if (emitter) {
|
|
762
|
+
const survivors = new Set(state.learnings.map(l => l.id));
|
|
763
|
+
const deletedAt = this.now();
|
|
764
|
+
for (const pruned of beforePrune) {
|
|
765
|
+
if (survivors.has(pruned.id))
|
|
766
|
+
continue;
|
|
767
|
+
try {
|
|
768
|
+
emitter.emitDelete(pruned.title, pruned.category, pruned.source, deletedAt);
|
|
769
|
+
}
|
|
770
|
+
catch {
|
|
771
|
+
// @silent-fallback-ok: a replication emit fault must never break or roll back
|
|
772
|
+
// a local learning write — the durable on-disk state is already persisted
|
|
773
|
+
// above. The emitter counts its own failures internally; this guard only
|
|
774
|
+
// ensures a throw from the seam cannot propagate into the local write path.
|
|
775
|
+
}
|
|
776
|
+
}
|
|
777
|
+
for (const l of state.learnings) {
|
|
778
|
+
try {
|
|
779
|
+
emitter.emitPut(l);
|
|
780
|
+
}
|
|
781
|
+
catch {
|
|
782
|
+
// @silent-fallback-ok: see the emitDelete guard above — replication is
|
|
783
|
+
// best-effort and must never break the local write.
|
|
784
|
+
}
|
|
785
|
+
}
|
|
786
|
+
}
|
|
738
787
|
}
|
|
739
788
|
nextLearningId(state) {
|
|
740
789
|
const existing = new Set(state.learnings.map(l => l.id));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EvolutionManager.js","sourceRoot":"","sources":["../../src/core/EvolutionManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EvolutionManager.js","sourceRoot":"","sources":["../../src/core/EvolutionManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KnowledgeReplicatedStore — the FOURTH concrete consumer of the HLC replicated-store
|
|
3
|
+
* foundation (WS2.4) and the THIRD memory-family kind (after WS2.3 relationships and
|
|
4
|
+
* WS2.2 learnings). It layers the `knowledge-record` replicated kind onto the generic
|
|
5
|
+
* substrate (ReplicatedRecordEnvelope / UnionReader / ConflictStore / RollbackUnmerge /
|
|
6
|
+
* ReplicationBudget / StoreSnapshot) so that a knowledge SOURCE the agent ingested on
|
|
7
|
+
* machine A is known on machine B — ONE knowledge catalog, not one-per-machine.
|
|
8
|
+
*
|
|
9
|
+
* It is the literal analog of `LearningsReplicatedStore.ts` (the WS2.2 memory-family
|
|
10
|
+
* reference consumer) and `RelationshipsReplicatedStore.ts` (the WS2.3 PII reference
|
|
11
|
+
* consumer). A knowledge source is a POINTER + SUMMARY (a `title`/`url`/`type` +
|
|
12
|
+
* `summary`/`tags`/`wordCount`), lower-PII than a relationship — but its
|
|
13
|
+
* `title`/`summary`/`url` CAN reference people or content, so it REUSES the established
|
|
14
|
+
* PII machinery (type-clamp, disclosure-min projection, tombstones, flag-coherence)
|
|
15
|
+
* rather than reinventing or downgrading it. THIS IS PURE LOGIC. No fs, no Date directly,
|
|
16
|
+
* no network. It defines:
|
|
17
|
+
*
|
|
18
|
+
* A. The `knowledge-record` store schema — a STRICT typed validator that
|
|
19
|
+
* TYPE-CLAMPS every known field: `ingestedAt` ISO-8601-only, `type` ∈ the
|
|
20
|
+
* {article,transcript,doc} enum, `wordCount` a finite number, `tags[]`/free text
|
|
21
|
+
* length-clamped. The schema is a DISCRIMINATED UNION on `op` — an `op:'put'` VALUE
|
|
22
|
+
* schema AND an `op:'delete'` TOMBSTONE schema coexist under the one kind, so a
|
|
23
|
+
* tombstone is never marked invalid by the value schema.
|
|
24
|
+
*
|
|
25
|
+
* B. The disclosure-minimized PROJECTION (fork #2) — `buildKnowledgeRecordData` emits
|
|
26
|
+
* ONLY the enumerated catalog-metadata fields, NEVER the markdown file BODY (the
|
|
27
|
+
* separate `filePath` file can be a huge transcript — full-content sync is a
|
|
28
|
+
* TRACKED follow-up, CMT-1416) and NEVER the local generated `id` OR the local
|
|
29
|
+
* `filePath` (a per-machine artifact path — meaningless and a mild info-leak on a
|
|
30
|
+
* peer). `recordKey` is the cross-machine IDENTITY SURFACE, derived deterministically
|
|
31
|
+
* from the stable content (normalize(url || title) + normalize(type)) — never the
|
|
32
|
+
* per-machine `generateId()` id (the cross-machine-UNSTABLE id, exactly the
|
|
33
|
+
* relationship-UUID / LRN-id trap the prior kinds solved with a stable identity
|
|
34
|
+
* surface). The SAME article ingested on two machines collapses to ONE record.
|
|
35
|
+
*
|
|
36
|
+
* C. The TOMBSTONE builder — `buildKnowledgeTombstoneData` emits an `op:'delete'`
|
|
37
|
+
* record `{ recordKey, op, hlc, origin, deletedAt }` so a `remove()` propagates as a
|
|
38
|
+
* positive signal across an offline-then-rejoining peer instead of a record absence.
|
|
39
|
+
* CRITICAL: the KnowledgeManager.remove() path MUST emit a tombstone per removed
|
|
40
|
+
* source, else a peer re-replicates the locally-removed source forever (resurrection).
|
|
41
|
+
*
|
|
42
|
+
* D. The union-aware read — `mergeUnionToKnowledge` collapses a
|
|
43
|
+
* `Map<recordKey, UnionResult>` into the merged catalog view. Knowledge is
|
|
44
|
+
* HIGH-impact at the REPLICATION layer (a concurrent divergent edit to the SAME
|
|
45
|
+
* recordKey — e.g. two machines re-summarize the same url differently — goes through
|
|
46
|
+
* APPEND-BOTH-AND-FLAG; both versions surface, never a silent clobber). The CONSUMER
|
|
47
|
+
* READ path is ADVISORY (fork #3): it injects BOTH variants of an open conflict as
|
|
48
|
+
* guidance — a knowledge source is REFERENCE, not authority — and NEVER blocks on an
|
|
49
|
+
* unresolved conflict. The read NEVER writes a foreign record into the local store.
|
|
50
|
+
*
|
|
51
|
+
* E. Foreign-record render safety — `renderForeignKnowledgeContext` wraps a replicated
|
|
52
|
+
* record in an explicit `<replicated-untrusted-data origin="…">` envelope and
|
|
53
|
+
* sanitizes EVERY rendered field. There is no "trusted because machine-set" render
|
|
54
|
+
* slot for a foreign record.
|
|
55
|
+
*
|
|
56
|
+
* DECIDED FORKS (Echo, 2026-06-13 — recorded verbatim in the PR ELI16):
|
|
57
|
+
* 1. recordKey = a content fingerprint over the STABLE source identity
|
|
58
|
+
* (sha256(normalize(url || title) + '\x1f' + normalize(type))), NEVER the local
|
|
59
|
+
* generated `id` (cross-machine identity surface — see deriveKnowledgeRecordKey).
|
|
60
|
+
* 2. Replicate the CATALOG ENTRY (metadata) ONLY — NOT the markdown file body. The
|
|
61
|
+
* projection carries { title, url, type, ingestedAt, tags[], summary, wordCount }
|
|
62
|
+
* and STRIPS the local `id` + `filePath`. Full-content-body sync is a TRACKED
|
|
63
|
+
* follow-up (CMT-1416).
|
|
64
|
+
* 3. Impact tier = HIGH at the REPLICATION layer (append-both-and-flag), ADVISORY at
|
|
65
|
+
* the READ layer (both variants injected as hints, never blocking) — a knowledge
|
|
66
|
+
* source is reference, not authority. See mergeUnionToKnowledge + KNOWLEDGE_IMPACT_TIER.
|
|
67
|
+
*
|
|
68
|
+
* SAFETY POSTURE: MECHANISM, dark by default. Nothing here blocks a user-initiated
|
|
69
|
+
* action. The local `id` + `filePath` are NEVER part of the replicated schema and are
|
|
70
|
+
* stripped from every emitted projection (disclosure minimization).
|
|
71
|
+
*/
|
|
72
|
+
import type { KnowledgeSource } from '../knowledge/KnowledgeManager.js';
|
|
73
|
+
import type { StoreFieldSchema, ReplicatedEnvelope } from './ReplicatedRecordEnvelope.js';
|
|
74
|
+
import type { ImpactTier, OriginRecord, UnionResult } from './UnionReader.js';
|
|
75
|
+
import type { ReplicatedKindBounds } from './ReplicationBudget.js';
|
|
76
|
+
import type { HlcTimestamp } from './HybridLogicalClock.js';
|
|
77
|
+
/** The stateSync config sub-key + advert suffix for this store (e.g.
|
|
78
|
+
* `multiMachine.stateSync.knowledge.enabled`). Equal to the advert flag key
|
|
79
|
+
* `stateSyncReceive['knowledge']`. */
|
|
80
|
+
export declare const KNOWLEDGE_STORE_KEY = "knowledge";
|
|
81
|
+
/** The JournalKind string this store rides — the DUAL-REGISTRY's dynamic half.
|
|
82
|
+
* MUST also be present in CoherenceJournal.JOURNAL_KINDS (the static half), or the
|
|
83
|
+
* store advertises receive=true yet serves/applies/pulls nothing. */
|
|
84
|
+
export declare const KNOWLEDGE_RECORD_KIND = "knowledge-record";
|
|
85
|
+
/**
|
|
86
|
+
* Knowledge is HIGH-impact at the REPLICATION layer (fork #3): a concurrent divergent
|
|
87
|
+
* VALUE edit to the SAME recordKey from different origins goes through
|
|
88
|
+
* APPEND-BOTH-AND-FLAG — both versions preserved, ONE deduped conflict, never a silent
|
|
89
|
+
* overwrite. The READ path (mergeUnionToKnowledge) is ADVISORY — both variants surface as
|
|
90
|
+
* guidance hints, the read never blocks on an open conflict — a knowledge source is
|
|
91
|
+
* reference, not authority. Operator resolution via POST /state/resolve-conflict is
|
|
92
|
+
* OPTIONAL cleanup that collapses the flag, never a gate on the hint.
|
|
93
|
+
*/
|
|
94
|
+
export declare const KNOWLEDGE_IMPACT_TIER: ImpactTier;
|
|
95
|
+
/** The valid `type` enum for a knowledge source (KnowledgeManager.KnowledgeSource). A
|
|
96
|
+
* foreign record whose `type` is outside this set is REJECTED (markup cannot survive an
|
|
97
|
+
* enum slot). */
|
|
98
|
+
export declare const KNOWLEDGE_TYPES: ReadonlyArray<string>;
|
|
99
|
+
/** A knowledge `summary` can be a paragraph. Clamp on receive (NOT the file body — the
|
|
100
|
+
* body is never replicated; only this short catalog summary crosses the wire). */
|
|
101
|
+
export declare const MAX_SUMMARY_LENGTH = 20000;
|
|
102
|
+
/** Per-free-text-string clamp for title / each tag. */
|
|
103
|
+
export declare const MAX_FREETEXT_LENGTH = 2000;
|
|
104
|
+
/** A url is bounded (the catalog url; never a file body). */
|
|
105
|
+
export declare const MAX_URL_LENGTH = 2048;
|
|
106
|
+
/** Tags cap (mirrors a reasonable per-source tag count). */
|
|
107
|
+
export declare const MAX_TAGS = 50;
|
|
108
|
+
/**
|
|
109
|
+
* Per-kind replication bounds. The knowledge store is FEW + bounded (a catalog of
|
|
110
|
+
* ingested sources), so the per-store retention mirrors the learning-record sibling (a
|
|
111
|
+
* small window with a few archives). NEVER `rotateKeep: 0` (rotate-but-never-delete
|
|
112
|
+
* would be a compliance defect for any memory-family kind). The rate cap COALESCES
|
|
113
|
+
* (latest state per recordKey per interval) so a churny re-ingest loop does not flood
|
|
114
|
+
* the stream.
|
|
115
|
+
*/
|
|
116
|
+
export declare const KNOWLEDGE_RECORD_BOUNDS: ReplicatedKindBounds;
|
|
117
|
+
/**
|
|
118
|
+
* Per-entry size cap RAISED to 64KB for this kind. The default
|
|
119
|
+
* APPLIER_MAX_ENTRY_BYTES = 8KB is SMALLER than a fat knowledge summary (a 20K summary
|
|
120
|
+
* alone exceeds it), so under it the longest summaries would never replicate AND would
|
|
121
|
+
* wedge the stream. 64KB is provably above the disclosure-minimized projection's maximum:
|
|
122
|
+
* summary(20k) is the dominant term — we additionally enforce a HARD post-projection
|
|
123
|
+
* ceiling: a record that STILL exceeds 64KB after projection is REJECTED with a named
|
|
124
|
+
* error (never silent-truncate, never suspect-wedge). See assertProjectionUnderCap.
|
|
125
|
+
*/
|
|
126
|
+
export declare const KNOWLEDGE_MAX_ENTRY_BYTES: number;
|
|
127
|
+
/**
|
|
128
|
+
* The store-specific field names the `knowledge-record` VALUE schema OWNS (the
|
|
129
|
+
* unknown-field counter's allowlist). The local generated `id` AND the local `filePath`
|
|
130
|
+
* are DELIBERATELY ABSENT — `id` is per-machine + generated and `filePath` is a local
|
|
131
|
+
* artifact path; NEITHER is replicated (the recordKey keys on the content fingerprint,
|
|
132
|
+
* not the id; the body the filePath points at is a tracked follow-up, CMT-1416).
|
|
133
|
+
* `recordKey`/`hlc`/`op`/`origin`/`observed` are reserved envelope fields, never store
|
|
134
|
+
* fields.
|
|
135
|
+
*/
|
|
136
|
+
export declare const KNOWLEDGE_STORE_KNOWN_FIELDS: ReadonlyArray<string>;
|
|
137
|
+
/** The tombstone's store-owned fields beyond the reserved envelope set. `deletedAt`
|
|
138
|
+
* is the only store field a delete carries. */
|
|
139
|
+
export declare const KNOWLEDGE_TOMBSTONE_KNOWN_FIELDS: ReadonlyArray<string>;
|
|
140
|
+
/** Is `v` a valid ISO-8601 date string (and ONLY a date — no smuggled markup)? A
|
|
141
|
+
* string Date.parse rejects, or that contains an injection char (`<`, `>`, `"`), is
|
|
142
|
+
* not a clean ISO date. */
|
|
143
|
+
export declare function isIso8601(v: unknown): v is string;
|
|
144
|
+
/**
|
|
145
|
+
* The `knowledge-record` store schema — a DISCRIMINATED UNION on `op`. Strict typed
|
|
146
|
+
* validation on top of the envelope: reject free text beyond the known fields,
|
|
147
|
+
* TYPE-CLAMP every known field (`ingestedAt` ISO-8601, `type` enum, `wordCount` finite
|
|
148
|
+
* number, `tags`/`summary`/`title` length-clamped, `url` jailed against a path-shaped
|
|
149
|
+
* value) so markup cannot smuggle through a render slot that bypasses sanitize().
|
|
150
|
+
* Returns the validated store-specific object (known fields only), or null to reject the
|
|
151
|
+
* WHOLE record. PURE (no I/O, no mutation of `raw`).
|
|
152
|
+
*
|
|
153
|
+
* The envelope validator has ALREADY validated `op` ∈ {put,delete} before calling this.
|
|
154
|
+
* We branch on it so a tombstone `{recordKey, op:'delete', hlc, origin, deletedAt}`
|
|
155
|
+
* passes (only `deletedAt` is a legal store field for a delete) WITHOUT being marked
|
|
156
|
+
* invalid by the rich VALUE schema.
|
|
157
|
+
*/
|
|
158
|
+
export declare const knowledgeRecordStoreSchema: StoreFieldSchema;
|
|
159
|
+
/** Normalize a string for the content fingerprint: trim + lowercase + collapse
|
|
160
|
+
* internal whitespace, so trivial formatting differences across machines do not split
|
|
161
|
+
* the same source into two records. */
|
|
162
|
+
export declare function normalizeForKey(v: string): string;
|
|
163
|
+
/**
|
|
164
|
+
* Derive the cross-machine-stable recordKey for a knowledge source (fork #1). A source is
|
|
165
|
+
* "the same" across machines by its STABLE CONTENT IDENTITY, NOT by the per-machine
|
|
166
|
+
* `generateId()` id — VM-A and VM-B mint different `kb_…` ids for the same article, so an
|
|
167
|
+
* id-keyed record could never collide them (exactly the relationship-UUID / LRN-id trap
|
|
168
|
+
* the prior kinds solved with a stable identity surface).
|
|
169
|
+
*
|
|
170
|
+
* The key is a deterministic, collision-resistant hash:
|
|
171
|
+
* sha256(normalize(url || title) + '\x1f' + normalize(type))
|
|
172
|
+
* hex-truncated to 32 chars (the same shape UnionReader.conflictId uses). The `\x1f`
|
|
173
|
+
* (unit separator) is an un-typeable delimiter so two sources cannot collide by
|
|
174
|
+
* straddling the field boundary.
|
|
175
|
+
*
|
|
176
|
+
* `url` is the NATURAL identity when present (the same article fetched on two machines
|
|
177
|
+
* has the same url even if its title was edited); when ABSENT we fall back to the title.
|
|
178
|
+
* Returns null when the identity anchor (url || title) is empty (a degenerate record with
|
|
179
|
+
* no stable identity surface — the caller skips emission; it can never collide a stranger
|
|
180
|
+
* by an empty key).
|
|
181
|
+
*
|
|
182
|
+
* COLLISION SAFETY: two DIFFERENT sources share a key ONLY if they share the EXACT same
|
|
183
|
+
* normalized (url || title) AND type — which IS the definition of "the same source".
|
|
184
|
+
* SPLIT-IDENTITY SAFETY: the same source derives the SAME key on both machines IFF both
|
|
185
|
+
* hold the same anchor + type; the normalization absorbs trivial formatting drift.
|
|
186
|
+
*/
|
|
187
|
+
export declare function deriveKnowledgeRecordKey(title: string, url: string | null | undefined, type: string): string | null;
|
|
188
|
+
/** The `data` object a `knowledge-record` journal entry carries. */
|
|
189
|
+
export type KnowledgeRecordData = Record<string, unknown>;
|
|
190
|
+
/** Input to buildKnowledgeRecordData: the record to emit, the freshly-ticked hlc, this
|
|
191
|
+
* machine's origin id, and the observed-witness (the hlc already merged for THIS
|
|
192
|
+
* recordKey before writing, or absent). */
|
|
193
|
+
export interface BuildKnowledgeRecordInput {
|
|
194
|
+
record: KnowledgeSource;
|
|
195
|
+
hlc: HlcTimestamp;
|
|
196
|
+
origin: string;
|
|
197
|
+
observed?: HlcTimestamp;
|
|
198
|
+
}
|
|
199
|
+
/** The named error a record-over-cap surfaces: not silent-truncate, not suspect-wedge. */
|
|
200
|
+
export declare class KnowledgeRecordTooLargeError extends Error {
|
|
201
|
+
readonly recordKey: string;
|
|
202
|
+
readonly bytes: number;
|
|
203
|
+
constructor(recordKey: string, bytes: number);
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Build the disclosure-minimized `knowledge-record` envelope `data` for an `op:'put'`
|
|
207
|
+
* (fork #2). Emits ONLY the enumerated CATALOG-METADATA projection — NEVER the markdown
|
|
208
|
+
* file BODY (the `filePath` file), NEVER the local generated `id`, NEVER the local
|
|
209
|
+
* `filePath` (a local artifact path — meaningless + a mild info-leak on a peer).
|
|
210
|
+
* recordKey = the derived content-fingerprint identity surface (fork #1).
|
|
211
|
+
*
|
|
212
|
+
* Returns null when the record has no stable identity surface (empty url+title ⇒
|
|
213
|
+
* deriveKnowledgeRecordKey null — the caller skips emission). Throws
|
|
214
|
+
* KnowledgeRecordTooLargeError when the projection STILL exceeds the 64KB per-entry cap
|
|
215
|
+
* (a NAMED, surfaced rejection — never silent-truncate).
|
|
216
|
+
*/
|
|
217
|
+
export declare function buildKnowledgeRecordData(input: BuildKnowledgeRecordInput): KnowledgeRecordData | null;
|
|
218
|
+
/** Throw KnowledgeRecordTooLargeError if the projected data serializes over the
|
|
219
|
+
* per-entry cap. The cap is set so a legal disclosure-minimized record can never reach
|
|
220
|
+
* it; this is the belt-and-suspenders named rejection. */
|
|
221
|
+
export declare function assertProjectionUnderCap(recordKey: string, data: KnowledgeRecordData): void;
|
|
222
|
+
/** Input to buildKnowledgeTombstoneData: the title/url/type of the removed source (to
|
|
223
|
+
* derive the recordKey identity surface), the freshly-ticked hlc, the origin, and the
|
|
224
|
+
* deletedAt timestamp. */
|
|
225
|
+
export interface BuildKnowledgeTombstoneInput {
|
|
226
|
+
title: string;
|
|
227
|
+
url: string | null | undefined;
|
|
228
|
+
type: string;
|
|
229
|
+
hlc: HlcTimestamp;
|
|
230
|
+
origin: string;
|
|
231
|
+
deletedAt: string;
|
|
232
|
+
observed?: HlcTimestamp;
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Build an `op:'delete'` TOMBSTONE `data` for a knowledge-source removal. recordKey = the
|
|
236
|
+
* SAME content-fingerprint identity surface the value records key on, so the tombstone
|
|
237
|
+
* reaches the same source's record on every machine even though the local ids differ.
|
|
238
|
+
* Returns null when the identity anchor (url || title) is empty (no identity surface to
|
|
239
|
+
* tombstone).
|
|
240
|
+
*
|
|
241
|
+
* CRITICAL (fork-adjacent): the KnowledgeManager.remove() path MUST call this for the
|
|
242
|
+
* removed source, else a peer re-replicates the locally-removed source forever
|
|
243
|
+
* (resurrection). The delete-resurrection guard lives in the merge (a later `delete` hlc
|
|
244
|
+
* wins over an earlier `put`).
|
|
245
|
+
*/
|
|
246
|
+
export declare function buildKnowledgeTombstoneData(input: BuildKnowledgeTombstoneInput): KnowledgeRecordData | null;
|
|
247
|
+
/** A merged knowledge view entry: the projected record fields PLUS its origin machine id
|
|
248
|
+
* (so a foreign record is rendered inside the untrusted-data envelope). READ-ONLY —
|
|
249
|
+
* NEVER written back into the local store. */
|
|
250
|
+
export interface MergedKnowledgeView {
|
|
251
|
+
recordKey: string;
|
|
252
|
+
origin: string;
|
|
253
|
+
/** The validated, type-clamped projection fields (the receive-side schema already ran
|
|
254
|
+
* on apply; here `data` is that validated portion). */
|
|
255
|
+
data: Record<string, unknown>;
|
|
256
|
+
/** True when this view entry is one of ≥2 concurrent variants of an OPEN conflict
|
|
257
|
+
* (append-both — both surface as advisory hints; the read NEVER suppresses a usable
|
|
258
|
+
* view AND NEVER blocks on the unresolved conflict). */
|
|
259
|
+
conflicted: boolean;
|
|
260
|
+
}
|
|
261
|
+
/**
|
|
262
|
+
* Collapse a `Map<recordKey, UnionResult>` into the merged knowledge view.
|
|
263
|
+
* HIGH-impact-at-replication / ADVISORY-at-read contract (fork #3):
|
|
264
|
+
* - A resolved single value ⇒ that one view entry.
|
|
265
|
+
* - An OPEN concurrent conflict ⇒ BOTH (all) `put` variants as separate entries
|
|
266
|
+
* (append-both — both surface as ADVISORY guidance; the read NEVER suppresses a
|
|
267
|
+
* usable view AND NEVER BLOCKS waiting on operator resolution — a knowledge source is
|
|
268
|
+
* reference, not authority). A `delete` variant contributes nothing to display.
|
|
269
|
+
* - A delete-resolved key (every origin's latest is a tombstone) ⇒ nothing (the
|
|
270
|
+
* delete-resurrection guard: a later delete wins over an earlier put).
|
|
271
|
+
* The read is READ-ONLY: a replicated record NEVER clobbers a divergent local record —
|
|
272
|
+
* the local store files are never written here.
|
|
273
|
+
*/
|
|
274
|
+
export declare function mergeUnionToKnowledge(union: Map<string, UnionResult>): MergedKnowledgeView[];
|
|
275
|
+
/**
|
|
276
|
+
* Render a FOREIGN (replicated) knowledge record into a session-context block, wrapped in
|
|
277
|
+
* an explicit `<replicated-untrusted-data origin="…">` envelope so the session model
|
|
278
|
+
* treats it as a PEER'S knowledge source to re-ground against, never a directive. EVERY
|
|
279
|
+
* rendered field is escaped — there is no "trusted because machine-set" slot. A null
|
|
280
|
+
* `data.title` (a malformed view) yields null.
|
|
281
|
+
*/
|
|
282
|
+
export declare function renderForeignKnowledgeContext(view: MergedKnowledgeView): string | null;
|
|
283
|
+
/**
|
|
284
|
+
* Build an OriginRecord for the OWN knowledge store (the single-origin materialization
|
|
285
|
+
* the union reader merges against peer replicas). recordKey = derived content-fingerprint
|
|
286
|
+
* identity surface; the envelope carries a SYNTHETIC own-origin HLC stamp derived
|
|
287
|
+
* deterministically from `ingestedAt` (physical) so the own record has a well-formed,
|
|
288
|
+
* stable position relative to peer records. Returns null for a degenerate record (no
|
|
289
|
+
* identity surface). The local `id` + `filePath` are NEVER carried into the replicated
|
|
290
|
+
* namespace.
|
|
291
|
+
*/
|
|
292
|
+
export declare function knowledgeToOriginRecord(record: KnowledgeSource, origin: string): OriginRecord | null;
|
|
293
|
+
/** The ReplicatedKindRegistry registration for the `knowledge-record` store. server.ts
|
|
294
|
+
* registers this onto the shared registry; the dual-registry coupling test asserts
|
|
295
|
+
* `kind` is also present in JOURNAL_KINDS. */
|
|
296
|
+
export declare const KNOWLEDGE_KIND_REGISTRATION: {
|
|
297
|
+
readonly kind: "knowledge-record";
|
|
298
|
+
readonly store: "knowledge";
|
|
299
|
+
readonly schema: StoreFieldSchema;
|
|
300
|
+
};
|
|
301
|
+
/** Convenience: the store's contributing journal kinds (for rollback-unmerge's
|
|
302
|
+
* kindsForStore('knowledge') wiring). */
|
|
303
|
+
export declare function knowledgeContributingKinds(): string[];
|
|
304
|
+
/** The store's impact tier resolver, for ReplicatedStoreReader.tierOf. Returns HIGH for
|
|
305
|
+
* the `knowledge` store (and HIGH for any unknown store — the conservative
|
|
306
|
+
* append-both-and-flag direction, never a silent clobber). */
|
|
307
|
+
export declare function knowledgeTierOf(_store: string): ImpactTier;
|
|
308
|
+
/** Re-export the envelope type for callers building/applying knowledge-record envelopes. */
|
|
309
|
+
export type { ReplicatedEnvelope };
|
|
310
|
+
//# sourceMappingURL=KnowledgeReplicatedStore.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KnowledgeReplicatedStore.d.ts","sourceRoot":"","sources":["../../src/core/KnowledgeReplicatedStore.ts"],"names":[],"mappings":"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"}
|