@haaaiawd/second-nature 0.1.51 → 0.2.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/openclaw.plugin.json +29 -29
- package/package.json +55 -55
- package/runtime/cli/commands/index.js +326 -325
- package/runtime/cli/ops/heartbeat-surface.d.ts +84 -84
- package/runtime/cli/ops/heartbeat-surface.js +100 -100
- package/runtime/cli/ops/ops-router.js +1555 -1482
- package/runtime/cli/ops/workspace-heartbeat-runner.d.ts +85 -85
- package/runtime/cli/ops/workspace-heartbeat-runner.js +242 -242
- package/runtime/connectors/base/contract.d.ts +111 -111
- package/runtime/connectors/base/failure-taxonomy.d.ts +13 -13
- package/runtime/connectors/base/failure-taxonomy.js +186 -186
- package/runtime/connectors/base/map-life-evidence.js +137 -137
- package/runtime/connectors/base/policy-layer.js +202 -202
- package/runtime/connectors/evidence-normalizer.d.ts +45 -0
- package/runtime/connectors/evidence-normalizer.js +115 -0
- package/runtime/connectors/manifest/manifest-schema.d.ts +152 -152
- package/runtime/connectors/manifest/manifest-schema.js +54 -54
- package/runtime/connectors/services/connector-executor-adapter.d.ts +20 -20
- package/runtime/connectors/services/connector-executor-adapter.js +645 -645
- package/runtime/core/second-nature/action/action-closure-recorder.d.ts +70 -0
- package/runtime/core/second-nature/action/action-closure-recorder.js +184 -0
- package/runtime/core/second-nature/action/action-proposal-builder.d.ts +70 -0
- package/runtime/core/second-nature/action/action-proposal-builder.js +217 -0
- package/runtime/core/second-nature/action/autonomy-policy-evaluator.d.ts +43 -0
- package/runtime/core/second-nature/action/autonomy-policy-evaluator.js +213 -0
- package/runtime/core/second-nature/action/policy-bound-dispatch.d.ts +69 -0
- package/runtime/core/second-nature/action/policy-bound-dispatch.js +112 -0
- package/runtime/core/second-nature/body/tool-affordance/affordance-side-effect.d.ts +49 -0
- package/runtime/core/second-nature/body/tool-affordance/affordance-side-effect.js +100 -0
- package/runtime/core/second-nature/control-plane/accepted-projection-loader.d.ts +45 -0
- package/runtime/core/second-nature/control-plane/accepted-projection-loader.js +85 -0
- package/runtime/core/second-nature/control-plane/heartbeat-orchestrator.d.ts +38 -0
- package/runtime/core/second-nature/control-plane/heartbeat-orchestrator.js +165 -0
- package/runtime/core/second-nature/guidance/guidance-proposal-consumer.d.ts +51 -0
- package/runtime/core/second-nature/guidance/guidance-proposal-consumer.js +113 -0
- package/runtime/core/second-nature/heartbeat/goal-lifecycle-policy.d.ts +24 -24
- package/runtime/core/second-nature/heartbeat/goal-lifecycle-policy.js +61 -61
- package/runtime/core/second-nature/heartbeat/heartbeat-loop.d.ts +97 -97
- package/runtime/core/second-nature/heartbeat/heartbeat-loop.js +397 -397
- package/runtime/core/second-nature/orchestrator/platform-capability-router.js +149 -149
- package/runtime/core/second-nature/perception/judgment-engine.d.ts +53 -0
- package/runtime/core/second-nature/perception/judgment-engine.js +239 -0
- package/runtime/core/second-nature/perception/perception-builder.d.ts +62 -0
- package/runtime/core/second-nature/perception/perception-builder.js +208 -0
- package/runtime/core/second-nature/perception/sensitivity-classifier.d.ts +37 -0
- package/runtime/core/second-nature/perception/sensitivity-classifier.js +87 -0
- package/runtime/core/second-nature/quiet-dream/dream-consolidation-runner.d.ts +44 -0
- package/runtime/core/second-nature/quiet-dream/dream-consolidation-runner.js +180 -0
- package/runtime/core/second-nature/quiet-dream/dream-scheduler.d.ts +36 -0
- package/runtime/core/second-nature/quiet-dream/dream-scheduler.js +105 -0
- package/runtime/core/second-nature/quiet-dream/memory-projection-lifecycle.d.ts +36 -0
- package/runtime/core/second-nature/quiet-dream/memory-projection-lifecycle.js +151 -0
- package/runtime/core/second-nature/quiet-dream/quiet-daily-review-builder.d.ts +46 -0
- package/runtime/core/second-nature/quiet-dream/quiet-daily-review-builder.js +123 -0
- package/runtime/observability/causal-loop-health.d.ts +44 -0
- package/runtime/observability/causal-loop-health.js +118 -0
- package/runtime/observability/diagnostic-redaction.d.ts +43 -0
- package/runtime/observability/diagnostic-redaction.js +114 -0
- package/runtime/observability/loop-stage-event-sink.d.ts +43 -0
- package/runtime/observability/loop-stage-event-sink.js +148 -0
- package/runtime/observability/loop-status.d.ts +46 -0
- package/runtime/observability/loop-status.js +85 -0
- package/runtime/shared/types/index.js +3 -0
- package/runtime/shared/types/v8-contracts.d.ts +86 -0
- package/runtime/shared/types/v8-contracts.js +84 -0
- package/runtime/storage/db/index.js +119 -0
- package/runtime/storage/db/migrations/index.js +2 -0
- package/runtime/storage/db/migrations/v8-001-living-perception-loop.d.ts +10 -0
- package/runtime/storage/db/migrations/v8-001-living-perception-loop.js +129 -0
- package/runtime/storage/db/schema/index.d.ts +1 -0
- package/runtime/storage/db/schema/index.js +1 -0
- package/runtime/storage/db/schema/v8-entities.d.ts +1973 -0
- package/runtime/storage/db/schema/v8-entities.js +160 -0
- package/runtime/storage/v8-state-stores.d.ts +147 -0
- package/runtime/storage/v8-state-stores.js +491 -0
|
@@ -176,6 +176,125 @@ const STATE_SCHEMA_SQL = `
|
|
|
176
176
|
CREATE INDEX IF NOT EXISTS memory_store_created_at_idx ON memory_store(created_at);
|
|
177
177
|
CREATE INDEX IF NOT EXISTS memory_store_input_idx ON memory_store(input_memory_store_id);
|
|
178
178
|
CREATE INDEX IF NOT EXISTS memory_store_dream_run_idx ON memory_store(dream_run_id);
|
|
179
|
+
-- v8 Living Perception Loop entities
|
|
180
|
+
CREATE TABLE IF NOT EXISTS evidence_item (
|
|
181
|
+
id TEXT PRIMARY KEY,
|
|
182
|
+
created_at TEXT NOT NULL,
|
|
183
|
+
platform_id TEXT NOT NULL,
|
|
184
|
+
content_hash TEXT NOT NULL,
|
|
185
|
+
observed_at TEXT NOT NULL,
|
|
186
|
+
sensitivity_hint TEXT,
|
|
187
|
+
source_refs_json TEXT NOT NULL,
|
|
188
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
189
|
+
payload_json TEXT,
|
|
190
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'pending'
|
|
191
|
+
);
|
|
192
|
+
CREATE TABLE IF NOT EXISTS perception_card (
|
|
193
|
+
id TEXT PRIMARY KEY,
|
|
194
|
+
created_at TEXT NOT NULL,
|
|
195
|
+
cycle_id TEXT NOT NULL,
|
|
196
|
+
topic TEXT,
|
|
197
|
+
entities_json TEXT,
|
|
198
|
+
novelty TEXT,
|
|
199
|
+
relevance REAL,
|
|
200
|
+
summary TEXT,
|
|
201
|
+
risk_flags_json TEXT,
|
|
202
|
+
confidence REAL,
|
|
203
|
+
review_priority TEXT,
|
|
204
|
+
source_refs_json TEXT NOT NULL,
|
|
205
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
206
|
+
payload_json TEXT,
|
|
207
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'pending'
|
|
208
|
+
);
|
|
209
|
+
CREATE TABLE IF NOT EXISTS judgment_verdict (
|
|
210
|
+
id TEXT PRIMARY KEY,
|
|
211
|
+
created_at TEXT NOT NULL,
|
|
212
|
+
cycle_id TEXT NOT NULL,
|
|
213
|
+
perception_card_id TEXT NOT NULL,
|
|
214
|
+
action_kind TEXT NOT NULL,
|
|
215
|
+
confidence REAL,
|
|
216
|
+
reason TEXT,
|
|
217
|
+
risk_posture TEXT,
|
|
218
|
+
source_refs_json TEXT NOT NULL,
|
|
219
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
220
|
+
payload_json TEXT,
|
|
221
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'pending'
|
|
222
|
+
);
|
|
223
|
+
CREATE TABLE IF NOT EXISTS action_closure_record (
|
|
224
|
+
id TEXT PRIMARY KEY,
|
|
225
|
+
created_at TEXT NOT NULL,
|
|
226
|
+
cycle_id TEXT NOT NULL,
|
|
227
|
+
proposal_id TEXT,
|
|
228
|
+
decision_id TEXT,
|
|
229
|
+
status TEXT NOT NULL,
|
|
230
|
+
reason TEXT,
|
|
231
|
+
next_state TEXT,
|
|
232
|
+
source_refs_json TEXT NOT NULL,
|
|
233
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
234
|
+
payload_json TEXT,
|
|
235
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'closed'
|
|
236
|
+
);
|
|
237
|
+
CREATE TABLE IF NOT EXISTS quiet_daily_review (
|
|
238
|
+
id TEXT PRIMARY KEY,
|
|
239
|
+
created_at TEXT NOT NULL,
|
|
240
|
+
day TEXT NOT NULL,
|
|
241
|
+
closure_count INTEGER NOT NULL DEFAULT 0,
|
|
242
|
+
memory_candidate_count INTEGER NOT NULL DEFAULT 0,
|
|
243
|
+
source_refs_json TEXT NOT NULL,
|
|
244
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
245
|
+
payload_json TEXT,
|
|
246
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'pending'
|
|
247
|
+
);
|
|
248
|
+
CREATE TABLE IF NOT EXISTS dream_consolidation_run (
|
|
249
|
+
id TEXT PRIMARY KEY,
|
|
250
|
+
created_at TEXT NOT NULL,
|
|
251
|
+
quiet_review_id TEXT NOT NULL,
|
|
252
|
+
status TEXT NOT NULL,
|
|
253
|
+
reason TEXT,
|
|
254
|
+
source_refs_json TEXT NOT NULL,
|
|
255
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
256
|
+
payload_json TEXT,
|
|
257
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'pending'
|
|
258
|
+
);
|
|
259
|
+
CREATE TABLE IF NOT EXISTS long_term_memory_projection (
|
|
260
|
+
id TEXT PRIMARY KEY,
|
|
261
|
+
created_at TEXT NOT NULL,
|
|
262
|
+
candidate_id TEXT NOT NULL,
|
|
263
|
+
topic_key TEXT NOT NULL,
|
|
264
|
+
status TEXT NOT NULL DEFAULT 'candidate',
|
|
265
|
+
source_refs_json TEXT NOT NULL,
|
|
266
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
267
|
+
payload_json TEXT,
|
|
268
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'candidate'
|
|
269
|
+
);
|
|
270
|
+
CREATE TABLE IF NOT EXISTS heartbeat_cycle_trace (
|
|
271
|
+
id TEXT PRIMARY KEY,
|
|
272
|
+
cycle_sequence INTEGER NOT NULL,
|
|
273
|
+
heartbeat_started_at TEXT NOT NULL,
|
|
274
|
+
heartbeat_completed_at TEXT,
|
|
275
|
+
input_count INTEGER NOT NULL DEFAULT 0,
|
|
276
|
+
output_count INTEGER NOT NULL DEFAULT 0,
|
|
277
|
+
expected_downstream_by_cycle INTEGER,
|
|
278
|
+
status TEXT NOT NULL,
|
|
279
|
+
source_refs_json TEXT,
|
|
280
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
281
|
+
payload_json TEXT,
|
|
282
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'started'
|
|
283
|
+
);
|
|
284
|
+
CREATE TABLE IF NOT EXISTS loop_stage_event (
|
|
285
|
+
id TEXT PRIMARY KEY,
|
|
286
|
+
cycle_id TEXT NOT NULL,
|
|
287
|
+
cycle_sequence INTEGER NOT NULL,
|
|
288
|
+
stage TEXT NOT NULL,
|
|
289
|
+
status TEXT NOT NULL,
|
|
290
|
+
reason TEXT,
|
|
291
|
+
source_refs_json TEXT NOT NULL,
|
|
292
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
293
|
+
occurred_at TEXT NOT NULL,
|
|
294
|
+
expected_downstream_by_cycle INTEGER,
|
|
295
|
+
payload_json TEXT,
|
|
296
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'started'
|
|
297
|
+
);
|
|
179
298
|
`;
|
|
180
299
|
function resolveDbPath(filename) {
|
|
181
300
|
if (path.isAbsolute(filename) || filename === ":memory:") {
|
|
@@ -5,9 +5,11 @@ import { V7_001_FOUNDATION } from "./v7-001-foundation.js";
|
|
|
5
5
|
import { V7_002_EFFECT_COMMIT_LEDGER } from "./v7-002-effect-commit-ledger.js";
|
|
6
6
|
import { V7_003_CIRCUIT_BREAKER } from "./v7-003-circuit-breaker.js";
|
|
7
7
|
import { V7_004_BEHAVIOR_PROMOTION } from "./v7-004-behavior-promotion.js";
|
|
8
|
+
import { V8_001_LIVING_PERCEPTION_LOOP } from "./v8-001-living-perception-loop.js";
|
|
8
9
|
export const ALL_MIGRATIONS = [
|
|
9
10
|
V7_001_FOUNDATION,
|
|
10
11
|
V7_002_EFFECT_COMMIT_LEDGER,
|
|
11
12
|
V7_003_CIRCUIT_BREAKER,
|
|
12
13
|
V7_004_BEHAVIOR_PROMOTION,
|
|
14
|
+
V8_001_LIVING_PERCEPTION_LOOP,
|
|
13
15
|
];
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v8-001 Living Perception Loop migration — adds v8 entity tables.
|
|
3
|
+
*
|
|
4
|
+
* Dependencies: v7-004 (behavior_promotion already exists).
|
|
5
|
+
*/
|
|
6
|
+
export const V8_001_LIVING_PERCEPTION_LOOP = {
|
|
7
|
+
version: 5,
|
|
8
|
+
label: "v8-living-perception-loop",
|
|
9
|
+
sql: `
|
|
10
|
+
CREATE TABLE IF NOT EXISTS evidence_item (
|
|
11
|
+
id TEXT PRIMARY KEY,
|
|
12
|
+
created_at TEXT NOT NULL,
|
|
13
|
+
platform_id TEXT NOT NULL,
|
|
14
|
+
content_hash TEXT NOT NULL,
|
|
15
|
+
observed_at TEXT NOT NULL,
|
|
16
|
+
sensitivity_hint TEXT,
|
|
17
|
+
source_refs_json TEXT NOT NULL,
|
|
18
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
19
|
+
payload_json TEXT,
|
|
20
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'pending'
|
|
21
|
+
);
|
|
22
|
+
CREATE TABLE IF NOT EXISTS perception_card (
|
|
23
|
+
id TEXT PRIMARY KEY,
|
|
24
|
+
created_at TEXT NOT NULL,
|
|
25
|
+
cycle_id TEXT NOT NULL,
|
|
26
|
+
topic TEXT,
|
|
27
|
+
entities_json TEXT,
|
|
28
|
+
novelty TEXT,
|
|
29
|
+
relevance REAL,
|
|
30
|
+
summary TEXT,
|
|
31
|
+
risk_flags_json TEXT,
|
|
32
|
+
confidence REAL,
|
|
33
|
+
review_priority TEXT,
|
|
34
|
+
source_refs_json TEXT NOT NULL,
|
|
35
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
36
|
+
payload_json TEXT,
|
|
37
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'pending'
|
|
38
|
+
);
|
|
39
|
+
CREATE TABLE IF NOT EXISTS judgment_verdict (
|
|
40
|
+
id TEXT PRIMARY KEY,
|
|
41
|
+
created_at TEXT NOT NULL,
|
|
42
|
+
cycle_id TEXT NOT NULL,
|
|
43
|
+
perception_card_id TEXT NOT NULL,
|
|
44
|
+
action_kind TEXT NOT NULL,
|
|
45
|
+
confidence REAL,
|
|
46
|
+
reason TEXT,
|
|
47
|
+
risk_posture TEXT,
|
|
48
|
+
source_refs_json TEXT NOT NULL,
|
|
49
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
50
|
+
payload_json TEXT,
|
|
51
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'pending'
|
|
52
|
+
);
|
|
53
|
+
CREATE TABLE IF NOT EXISTS action_closure_record (
|
|
54
|
+
id TEXT PRIMARY KEY,
|
|
55
|
+
created_at TEXT NOT NULL,
|
|
56
|
+
cycle_id TEXT NOT NULL,
|
|
57
|
+
proposal_id TEXT,
|
|
58
|
+
decision_id TEXT,
|
|
59
|
+
status TEXT NOT NULL,
|
|
60
|
+
reason TEXT,
|
|
61
|
+
next_state TEXT,
|
|
62
|
+
source_refs_json TEXT NOT NULL,
|
|
63
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
64
|
+
payload_json TEXT,
|
|
65
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'closed'
|
|
66
|
+
);
|
|
67
|
+
CREATE TABLE IF NOT EXISTS quiet_daily_review (
|
|
68
|
+
id TEXT PRIMARY KEY,
|
|
69
|
+
created_at TEXT NOT NULL,
|
|
70
|
+
day TEXT NOT NULL,
|
|
71
|
+
closure_count INTEGER NOT NULL DEFAULT 0,
|
|
72
|
+
memory_candidate_count INTEGER NOT NULL DEFAULT 0,
|
|
73
|
+
source_refs_json TEXT NOT NULL,
|
|
74
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
75
|
+
payload_json TEXT,
|
|
76
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'pending'
|
|
77
|
+
);
|
|
78
|
+
CREATE TABLE IF NOT EXISTS dream_consolidation_run (
|
|
79
|
+
id TEXT PRIMARY KEY,
|
|
80
|
+
created_at TEXT NOT NULL,
|
|
81
|
+
quiet_review_id TEXT NOT NULL,
|
|
82
|
+
status TEXT NOT NULL,
|
|
83
|
+
reason TEXT,
|
|
84
|
+
source_refs_json TEXT NOT NULL,
|
|
85
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
86
|
+
payload_json TEXT,
|
|
87
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'pending'
|
|
88
|
+
);
|
|
89
|
+
CREATE TABLE IF NOT EXISTS long_term_memory_projection (
|
|
90
|
+
id TEXT PRIMARY KEY,
|
|
91
|
+
created_at TEXT NOT NULL,
|
|
92
|
+
candidate_id TEXT NOT NULL,
|
|
93
|
+
topic_key TEXT NOT NULL,
|
|
94
|
+
status TEXT NOT NULL DEFAULT 'candidate',
|
|
95
|
+
source_refs_json TEXT NOT NULL,
|
|
96
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
97
|
+
payload_json TEXT,
|
|
98
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'candidate'
|
|
99
|
+
);
|
|
100
|
+
CREATE TABLE IF NOT EXISTS heartbeat_cycle_trace (
|
|
101
|
+
id TEXT PRIMARY KEY,
|
|
102
|
+
cycle_sequence INTEGER NOT NULL,
|
|
103
|
+
heartbeat_started_at TEXT NOT NULL,
|
|
104
|
+
heartbeat_completed_at TEXT,
|
|
105
|
+
input_count INTEGER NOT NULL DEFAULT 0,
|
|
106
|
+
output_count INTEGER NOT NULL DEFAULT 0,
|
|
107
|
+
expected_downstream_by_cycle INTEGER,
|
|
108
|
+
status TEXT NOT NULL,
|
|
109
|
+
source_refs_json TEXT,
|
|
110
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
111
|
+
payload_json TEXT,
|
|
112
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'started'
|
|
113
|
+
);
|
|
114
|
+
CREATE TABLE IF NOT EXISTS loop_stage_event (
|
|
115
|
+
id TEXT PRIMARY KEY,
|
|
116
|
+
cycle_id TEXT NOT NULL,
|
|
117
|
+
cycle_sequence INTEGER NOT NULL,
|
|
118
|
+
stage TEXT NOT NULL,
|
|
119
|
+
status TEXT NOT NULL,
|
|
120
|
+
reason TEXT,
|
|
121
|
+
source_refs_json TEXT NOT NULL,
|
|
122
|
+
redaction_class TEXT NOT NULL DEFAULT 'none',
|
|
123
|
+
occurred_at TEXT NOT NULL,
|
|
124
|
+
expected_downstream_by_cycle INTEGER,
|
|
125
|
+
payload_json TEXT,
|
|
126
|
+
lifecycle_status TEXT NOT NULL DEFAULT 'started'
|
|
127
|
+
);
|
|
128
|
+
`,
|
|
129
|
+
};
|