@openclawbrain/cli 0.4.4 → 0.4.5
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/README.md +7 -7
- package/dist/src/cli.d.ts +1 -0
- package/dist/src/cli.js +99 -39
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/learning-spine.d.ts +1 -1
- package/dist/src/learning-spine.js +1 -1
- package/dist/src/local-learner.d.ts +490 -0
- package/dist/src/local-learner.js +4979 -0
- package/dist/src/traced-learning-bridge.js +48 -0
- package/package.json +1 -1
|
@@ -132,6 +132,48 @@ function loadTrainingStateJson(db, key) {
|
|
|
132
132
|
function writeTrainingStateJson(db, key, value) {
|
|
133
133
|
db.prepare(`INSERT OR REPLACE INTO brain_training_state (key, value) VALUES (?, ?)`).run(key, JSON.stringify(value));
|
|
134
134
|
}
|
|
135
|
+
function buildTracedLearningRoutingBuildFromServeTime(serveTimeLearning) {
|
|
136
|
+
return {
|
|
137
|
+
learnedRoutingPath: serveTimeLearning.pgVersion === "v2" ? "policy_gradient_v2" : "policy_gradient_v1",
|
|
138
|
+
pgVersionRequested: serveTimeLearning.pgVersion,
|
|
139
|
+
pgVersionUsed: serveTimeLearning.pgVersion,
|
|
140
|
+
decisionLogCount: normalizeCount(serveTimeLearning.decisionLogCount),
|
|
141
|
+
fallbackReason: serveTimeLearning.pgVersion === "v1"
|
|
142
|
+
? normalizeOptionalString(serveTimeLearning.fallbackReason) ?? "no_serve_time_decisions"
|
|
143
|
+
: null,
|
|
144
|
+
updatedBaseline: null
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
export function buildTracedLearningBridgePayloadFromRuntime(input) {
|
|
148
|
+
const lastMaterialization = input?.lastMaterialization ?? null;
|
|
149
|
+
const serveTimeLearning = input?.serveTimeLearning ?? {
|
|
150
|
+
pgVersion: "v1",
|
|
151
|
+
decisionLogCount: 0,
|
|
152
|
+
fallbackReason: null
|
|
153
|
+
};
|
|
154
|
+
const learnedRouter = lastMaterialization?.candidate?.summary?.learnedRouter ?? null;
|
|
155
|
+
const routingBuild = lastMaterialization?.candidate?.routingBuild ?? buildTracedLearningRoutingBuildFromServeTime(serveTimeLearning);
|
|
156
|
+
const fallbackReason = routingBuild.fallbackReason ??
|
|
157
|
+
(routingBuild.pgVersionUsed === "v1"
|
|
158
|
+
? normalizeOptionalString(serveTimeLearning.fallbackReason) ?? "no_serve_time_decisions"
|
|
159
|
+
: null);
|
|
160
|
+
return normalizeBridgePayload({
|
|
161
|
+
updatedAt: input?.updatedAt,
|
|
162
|
+
routeTraceCount: learnedRouter?.routeTraceCount ?? serveTimeLearning.decisionLogCount,
|
|
163
|
+
supervisionCount: learnedRouter?.supervisionCount ?? 0,
|
|
164
|
+
routerUpdateCount: learnedRouter?.updateCount ?? 0,
|
|
165
|
+
teacherArtifactCount: input?.teacherArtifactCount ?? 0,
|
|
166
|
+
pgVersionRequested: routingBuild.pgVersionRequested,
|
|
167
|
+
pgVersionUsed: routingBuild.pgVersionUsed,
|
|
168
|
+
decisionLogCount: routingBuild.decisionLogCount,
|
|
169
|
+
fallbackReason,
|
|
170
|
+
routerNoOpReason: learnedRouter?.noOpReason ?? null,
|
|
171
|
+
materializedPackId: input?.materializedPackId ?? lastMaterialization?.candidate?.summary?.packId ?? null,
|
|
172
|
+
promoted: input?.promoted === true,
|
|
173
|
+
baselinePersisted: input?.baselinePersisted === true,
|
|
174
|
+
source: input?.source
|
|
175
|
+
});
|
|
176
|
+
}
|
|
135
177
|
function countRows(db, tableName) {
|
|
136
178
|
const row = db.prepare(`SELECT COUNT(*) as count FROM ${tableName}`).get();
|
|
137
179
|
return normalizeCount(row?.count);
|
|
@@ -323,6 +365,12 @@ export function persistBrainStoreTracedLearningBridge(payload, options = {}) {
|
|
|
323
365
|
}
|
|
324
366
|
}
|
|
325
367
|
}
|
|
368
|
+
export function persistTracedLearningBridgeState(activationRoot, payload, options = {}) {
|
|
369
|
+
const bridge = mergeTracedLearningBridgePayload(payload, loadBrainStoreTracedLearningBridge(options));
|
|
370
|
+
persistBrainStoreTracedLearningBridge(bridge, options);
|
|
371
|
+
writeTracedLearningBridge(activationRoot, bridge);
|
|
372
|
+
return bridge;
|
|
373
|
+
}
|
|
326
374
|
export function loadBrainStoreTracedLearningBridge(options = {}) {
|
|
327
375
|
const brainRoot = resolveBrainRoot(options.env ?? process.env);
|
|
328
376
|
const dbPath = path.join(brainRoot, "state.db");
|
package/package.json
CHANGED