@aiassesstech/noah 0.1.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/CHANGELOG.md +26 -0
- package/LICENSE +41 -0
- package/README.md +170 -0
- package/SKILL.md +64 -0
- package/agent/AGENTS.md +138 -0
- package/agent/IDENTITY.md +12 -0
- package/agent/SOUL.md +143 -0
- package/dist/alert/alert-system.d.ts +47 -0
- package/dist/alert/alert-system.d.ts.map +1 -0
- package/dist/alert/alert-system.js +117 -0
- package/dist/alert/alert-system.js.map +1 -0
- package/dist/alert/commander-escalation.d.ts +26 -0
- package/dist/alert/commander-escalation.d.ts.map +1 -0
- package/dist/alert/commander-escalation.js +61 -0
- package/dist/alert/commander-escalation.js.map +1 -0
- package/dist/cli/bin.d.ts +8 -0
- package/dist/cli/bin.d.ts.map +1 -0
- package/dist/cli/bin.js +12 -0
- package/dist/cli/bin.js.map +1 -0
- package/dist/cli/runner.d.ts +13 -0
- package/dist/cli/runner.d.ts.map +1 -0
- package/dist/cli/runner.js +95 -0
- package/dist/cli/runner.js.map +1 -0
- package/dist/cli/setup.d.ts +34 -0
- package/dist/cli/setup.d.ts.map +1 -0
- package/dist/cli/setup.js +237 -0
- package/dist/cli/setup.js.map +1 -0
- package/dist/clock/financial-runway.d.ts +32 -0
- package/dist/clock/financial-runway.d.ts.map +1 -0
- package/dist/clock/financial-runway.js +46 -0
- package/dist/clock/financial-runway.js.map +1 -0
- package/dist/clock/internal-clock.d.ts +53 -0
- package/dist/clock/internal-clock.d.ts.map +1 -0
- package/dist/clock/internal-clock.js +177 -0
- package/dist/clock/internal-clock.js.map +1 -0
- package/dist/clock/phase-machine.d.ts +36 -0
- package/dist/clock/phase-machine.d.ts.map +1 -0
- package/dist/clock/phase-machine.js +123 -0
- package/dist/clock/phase-machine.js.map +1 -0
- package/dist/clock/phase-transitions.d.ts +9 -0
- package/dist/clock/phase-transitions.d.ts.map +1 -0
- package/dist/clock/phase-transitions.js +58 -0
- package/dist/clock/phase-transitions.js.map +1 -0
- package/dist/deviation/corridor-classifier.d.ts +15 -0
- package/dist/deviation/corridor-classifier.d.ts.map +1 -0
- package/dist/deviation/corridor-classifier.js +21 -0
- package/dist/deviation/corridor-classifier.js.map +1 -0
- package/dist/deviation/deviation-calculator.d.ts +25 -0
- package/dist/deviation/deviation-calculator.d.ts.map +1 -0
- package/dist/deviation/deviation-calculator.js +53 -0
- package/dist/deviation/deviation-calculator.js.map +1 -0
- package/dist/deviation/recommendations.d.ts +13 -0
- package/dist/deviation/recommendations.d.ts.map +1 -0
- package/dist/deviation/recommendations.js +54 -0
- package/dist/deviation/recommendations.js.map +1 -0
- package/dist/flight-plan/corridor.d.ts +31 -0
- package/dist/flight-plan/corridor.d.ts.map +1 -0
- package/dist/flight-plan/corridor.js +49 -0
- package/dist/flight-plan/corridor.js.map +1 -0
- package/dist/flight-plan/default-plan.d.ts +16 -0
- package/dist/flight-plan/default-plan.d.ts.map +1 -0
- package/dist/flight-plan/default-plan.js +166 -0
- package/dist/flight-plan/default-plan.js.map +1 -0
- package/dist/flight-plan/flight-plan-engine.d.ts +37 -0
- package/dist/flight-plan/flight-plan-engine.d.ts.map +1 -0
- package/dist/flight-plan/flight-plan-engine.js +94 -0
- package/dist/flight-plan/flight-plan-engine.js.map +1 -0
- package/dist/flight-plan/interpolation.d.ts +48 -0
- package/dist/flight-plan/interpolation.d.ts.map +1 -0
- package/dist/flight-plan/interpolation.js +179 -0
- package/dist/flight-plan/interpolation.js.map +1 -0
- package/dist/go-no-go/temporal-decision-matrix.d.ts +30 -0
- package/dist/go-no-go/temporal-decision-matrix.d.ts.map +1 -0
- package/dist/go-no-go/temporal-decision-matrix.js +94 -0
- package/dist/go-no-go/temporal-decision-matrix.js.map +1 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/index.js.map +1 -0
- package/dist/integration/event-emitter.d.ts +14 -0
- package/dist/integration/event-emitter.d.ts.map +1 -0
- package/dist/integration/event-emitter.js +24 -0
- package/dist/integration/event-emitter.js.map +1 -0
- package/dist/integration/grillo-hook.d.ts +106 -0
- package/dist/integration/grillo-hook.d.ts.map +1 -0
- package/dist/integration/grillo-hook.js +202 -0
- package/dist/integration/grillo-hook.js.map +1 -0
- package/dist/plugin.d.ts +20 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +480 -0
- package/dist/plugin.js.map +1 -0
- package/dist/store/hash-chain.d.ts +35 -0
- package/dist/store/hash-chain.d.ts.map +1 -0
- package/dist/store/hash-chain.js +64 -0
- package/dist/store/hash-chain.js.map +1 -0
- package/dist/store/json-store.d.ts +47 -0
- package/dist/store/json-store.d.ts.map +1 -0
- package/dist/store/json-store.js +213 -0
- package/dist/store/json-store.js.map +1 -0
- package/dist/store/temporal-state-store.d.ts +7 -0
- package/dist/store/temporal-state-store.d.ts.map +1 -0
- package/dist/store/temporal-state-store.js +7 -0
- package/dist/store/temporal-state-store.js.map +1 -0
- package/dist/store/types.d.ts +27 -0
- package/dist/store/types.d.ts.map +1 -0
- package/dist/store/types.js +8 -0
- package/dist/store/types.js.map +1 -0
- package/dist/types/assessment-record.d.ts +34 -0
- package/dist/types/assessment-record.d.ts.map +1 -0
- package/dist/types/assessment-record.js +9 -0
- package/dist/types/assessment-record.js.map +1 -0
- package/dist/types/events.d.ts +57 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/events.js +8 -0
- package/dist/types/events.js.map +1 -0
- package/dist/types/flight-plan.d.ts +59 -0
- package/dist/types/flight-plan.d.ts.map +1 -0
- package/dist/types/flight-plan.js +8 -0
- package/dist/types/flight-plan.js.map +1 -0
- package/dist/types/guidance.d.ts +57 -0
- package/dist/types/guidance.d.ts.map +1 -0
- package/dist/types/guidance.js +8 -0
- package/dist/types/guidance.js.map +1 -0
- package/dist/types/index.d.ts +10 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +10 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/lifecycle.d.ts +56 -0
- package/dist/types/lifecycle.d.ts.map +1 -0
- package/dist/types/lifecycle.js +33 -0
- package/dist/types/lifecycle.js.map +1 -0
- package/dist/types/temporal-state.d.ts +53 -0
- package/dist/types/temporal-state.d.ts.map +1 -0
- package/dist/types/temporal-state.js +8 -0
- package/dist/types/temporal-state.js.map +1 -0
- package/dist/waypoints/inertial-monitor.d.ts +65 -0
- package/dist/waypoints/inertial-monitor.d.ts.map +1 -0
- package/dist/waypoints/inertial-monitor.js +125 -0
- package/dist/waypoints/inertial-monitor.js.map +1 -0
- package/dist/waypoints/triggers.d.ts +18 -0
- package/dist/waypoints/triggers.d.ts.map +1 -0
- package/dist/waypoints/triggers.js +59 -0
- package/dist/waypoints/triggers.js.map +1 -0
- package/dist/waypoints/waypoint-manager.d.ts +46 -0
- package/dist/waypoints/waypoint-manager.d.ts.map +1 -0
- package/dist/waypoints/waypoint-manager.js +82 -0
- package/dist/waypoints/waypoint-manager.js.map +1 -0
- package/openclaw.plugin.json +25 -0
- package/package.json +79 -0
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Noah — Temporal Guidance Engine (Grillo Integration Hook)
|
|
3
|
+
*
|
|
4
|
+
* The main entry point for the Noah temporal guidance system.
|
|
5
|
+
* Registers as a post-assessment hook in Grillo's assessment pipeline.
|
|
6
|
+
*
|
|
7
|
+
* This is the "TemporalGuidanceEngine" from the implementation spec Section 3.1.
|
|
8
|
+
* It orchestrates the full temporal pipeline:
|
|
9
|
+
* 1. clock.update()
|
|
10
|
+
* 2. waypoints.evaluate()
|
|
11
|
+
* 3. flightPlan.interpolate()
|
|
12
|
+
* 4. deviation.calculate()
|
|
13
|
+
* 5. alert.classify()
|
|
14
|
+
* 6. store.record()
|
|
15
|
+
*/
|
|
16
|
+
import { NoahInternalClock } from '../clock/internal-clock.js';
|
|
17
|
+
import { FlightPlanEngine } from '../flight-plan/flight-plan-engine.js';
|
|
18
|
+
import { DeviationCalculator } from '../deviation/deviation-calculator.js';
|
|
19
|
+
import { WaypointManager } from '../waypoints/waypoint-manager.js';
|
|
20
|
+
import { InertialMonitor } from '../waypoints/inertial-monitor.js';
|
|
21
|
+
import { AlertSystem } from '../alert/alert-system.js';
|
|
22
|
+
import { evaluateEscalation } from '../alert/commander-escalation.js';
|
|
23
|
+
import { TemporalDecisionMatrix } from '../go-no-go/temporal-decision-matrix.js';
|
|
24
|
+
import { computeRecordHash } from '../store/hash-chain.js';
|
|
25
|
+
import { NoahEventEmitter } from './event-emitter.js';
|
|
26
|
+
// ================================================================
|
|
27
|
+
// Temporal Guidance Engine
|
|
28
|
+
// ================================================================
|
|
29
|
+
export class TemporalGuidanceEngine {
|
|
30
|
+
clock;
|
|
31
|
+
flightPlanEngine;
|
|
32
|
+
deviationCalculator;
|
|
33
|
+
decisionMatrix;
|
|
34
|
+
inertialMonitor;
|
|
35
|
+
alertSystem;
|
|
36
|
+
events;
|
|
37
|
+
waypointManager = null;
|
|
38
|
+
store;
|
|
39
|
+
agentId;
|
|
40
|
+
constructor(config) {
|
|
41
|
+
this.agentId = config.agentId;
|
|
42
|
+
this.store = config.store;
|
|
43
|
+
this.clock = new NoahInternalClock({
|
|
44
|
+
agentId: config.agentId,
|
|
45
|
+
commanderId: config.commanderId,
|
|
46
|
+
...config.clock,
|
|
47
|
+
});
|
|
48
|
+
this.flightPlanEngine = new FlightPlanEngine(config.store);
|
|
49
|
+
this.deviationCalculator = new DeviationCalculator();
|
|
50
|
+
this.decisionMatrix = new TemporalDecisionMatrix();
|
|
51
|
+
this.inertialMonitor = new InertialMonitor(config.inertial);
|
|
52
|
+
this.alertSystem = new AlertSystem(config.alert);
|
|
53
|
+
this.events = new NoahEventEmitter();
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Initialize the engine with a flight plan.
|
|
57
|
+
* Must be called before processing assessments.
|
|
58
|
+
*/
|
|
59
|
+
async initialize(flightPlan) {
|
|
60
|
+
await this.flightPlanEngine.createPlan(flightPlan);
|
|
61
|
+
const triggered = await this.store.getTriggeredWaypointIds(this.agentId);
|
|
62
|
+
this.waypointManager = new WaypointManager(flightPlan, triggered, this.store);
|
|
63
|
+
// Persist initial state
|
|
64
|
+
await this.store.saveState(this.clock.getState());
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Process a Grillo assessment result through the full temporal pipeline.
|
|
68
|
+
* This is the main hook — called after every Grillo assessment.
|
|
69
|
+
*/
|
|
70
|
+
async processAssessment(result, now) {
|
|
71
|
+
const timestamp = now ?? new Date();
|
|
72
|
+
// 1. Update Internal Clock
|
|
73
|
+
const clockEvent = {
|
|
74
|
+
type: 'ASSESSMENT_COMPLETE',
|
|
75
|
+
assessmentId: result.runId,
|
|
76
|
+
scores: result.scores,
|
|
77
|
+
};
|
|
78
|
+
const state = this.clock.update(clockEvent, timestamp);
|
|
79
|
+
// 2. Evaluate Waypoints
|
|
80
|
+
const context = this.clock.getPhaseContext(timestamp);
|
|
81
|
+
let triggeredWaypoints = [];
|
|
82
|
+
if (this.waypointManager) {
|
|
83
|
+
triggeredWaypoints = await this.waypointManager.evaluateWaypoints(context, clockEvent);
|
|
84
|
+
}
|
|
85
|
+
// 3. Get Expected Scores from Flight Plan
|
|
86
|
+
const operationalDays = this.clock.getOperationalAgeDays(timestamp);
|
|
87
|
+
const interpolation = await this.flightPlanEngine.getExpectedScores(this.agentId, operationalDays);
|
|
88
|
+
if (!interpolation) {
|
|
89
|
+
throw new Error(`No active flight plan found for agent ${this.agentId}`);
|
|
90
|
+
}
|
|
91
|
+
// 4. Calculate Deviation (the three-variable guidance equation)
|
|
92
|
+
const temporalContext = {
|
|
93
|
+
operationalAgeDays: operationalDays,
|
|
94
|
+
lifecyclePhase: state.currentLifecyclePhase,
|
|
95
|
+
financialRunwayDays: state.financialRunwayDays,
|
|
96
|
+
assessmentCycle: state.assessmentCycleCount,
|
|
97
|
+
timeSinceLastVetoDays: state.lastVetoTimestamp
|
|
98
|
+
? (timestamp.getTime() - state.lastVetoTimestamp.getTime()) / 86400000
|
|
99
|
+
: null,
|
|
100
|
+
activeWaypointId: triggeredWaypoints.length > 0
|
|
101
|
+
? triggeredWaypoints[triggeredWaypoints.length - 1].waypoint.id
|
|
102
|
+
: (this.waypointManager?.getNextWaypoint()?.id ?? null),
|
|
103
|
+
};
|
|
104
|
+
const deviation = this.deviationCalculator.calculate(result.scores, interpolation.expectedScores, interpolation.corridor, temporalContext);
|
|
105
|
+
// 5. Alert System
|
|
106
|
+
const escalationResults = this.alertSystem.evaluate(deviation.guidanceStatus, deviation.deviationVector, state.currentLifecyclePhase, deviation.recommendations);
|
|
107
|
+
const escalation = evaluateEscalation(deviation.guidanceStatus, state.currentLifecyclePhase, escalationResults.map((r) => r.alert));
|
|
108
|
+
// 6. Update Inertial Monitor (terrain fix)
|
|
109
|
+
this.inertialMonitor.recordFix(result.scores, state.assessmentCycleCount, timestamp);
|
|
110
|
+
const inertialFixRecommended = this.inertialMonitor.shouldRecommendFix(timestamp);
|
|
111
|
+
// 7. Build and persist the assessment record
|
|
112
|
+
const previousHash = await this.store.getLastHash(this.agentId);
|
|
113
|
+
const record = {
|
|
114
|
+
assessmentId: result.runId,
|
|
115
|
+
timestamp,
|
|
116
|
+
assessmentCycle: state.assessmentCycleCount,
|
|
117
|
+
observedScores: result.scores,
|
|
118
|
+
archetype: result.classification,
|
|
119
|
+
variance: 0, // TODO: compute from recent assessments
|
|
120
|
+
expectedScores: interpolation.expectedScores,
|
|
121
|
+
deviationVector: deviation.deviationVector,
|
|
122
|
+
deviationMagnitude: deviation.deviationMagnitude,
|
|
123
|
+
guidanceStatus: deviation.guidanceStatus,
|
|
124
|
+
temporalContext: {
|
|
125
|
+
operationalAgeDays: temporalContext.operationalAgeDays,
|
|
126
|
+
lifecyclePhase: temporalContext.lifecyclePhase,
|
|
127
|
+
financialRunwayDays: temporalContext.financialRunwayDays,
|
|
128
|
+
assessmentCycle: temporalContext.assessmentCycle,
|
|
129
|
+
timeSinceLastVetoDays: temporalContext.timeSinceLastVetoDays,
|
|
130
|
+
activeWaypointId: temporalContext.activeWaypointId,
|
|
131
|
+
},
|
|
132
|
+
cryptographicHash: '',
|
|
133
|
+
previousHash,
|
|
134
|
+
};
|
|
135
|
+
// Compute hash (includes previousHash for chain integrity)
|
|
136
|
+
record.cryptographicHash = computeRecordHash(record, previousHash);
|
|
137
|
+
// Persist
|
|
138
|
+
await this.store.appendAssessmentRecord(this.agentId, record);
|
|
139
|
+
await this.store.saveState(state);
|
|
140
|
+
// 8. Emit events
|
|
141
|
+
await this.events.emit('assessment:processed', { record, deviation, escalation });
|
|
142
|
+
if (escalation.shouldEscalate) {
|
|
143
|
+
await this.events.emit('escalation:commander', escalation);
|
|
144
|
+
}
|
|
145
|
+
for (const wp of triggeredWaypoints) {
|
|
146
|
+
await this.events.emit('waypoint:triggered', wp);
|
|
147
|
+
}
|
|
148
|
+
return {
|
|
149
|
+
record,
|
|
150
|
+
deviation,
|
|
151
|
+
escalation,
|
|
152
|
+
triggeredWaypoints,
|
|
153
|
+
inertialFixRecommended,
|
|
154
|
+
state,
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Process a non-assessment event (veto, incident, financial update, etc.).
|
|
159
|
+
*/
|
|
160
|
+
async processEvent(event, now) {
|
|
161
|
+
const timestamp = now ?? new Date();
|
|
162
|
+
const state = this.clock.update(event, timestamp);
|
|
163
|
+
// Update inertial monitor for events
|
|
164
|
+
if (event.type === 'VETO_EXERCISED') {
|
|
165
|
+
this.inertialMonitor.recordEvent('veto');
|
|
166
|
+
}
|
|
167
|
+
else if (event.type === 'ADVERSARIAL_ENCOUNTER') {
|
|
168
|
+
this.inertialMonitor.recordEvent('incident');
|
|
169
|
+
}
|
|
170
|
+
else if (event.type === 'CONVERSION_SUCCESS') {
|
|
171
|
+
this.inertialMonitor.recordEvent('conversion');
|
|
172
|
+
}
|
|
173
|
+
// Evaluate waypoints
|
|
174
|
+
if (this.waypointManager) {
|
|
175
|
+
const context = this.clock.getPhaseContext(timestamp);
|
|
176
|
+
await this.waypointManager.evaluateWaypoints(context, event);
|
|
177
|
+
}
|
|
178
|
+
await this.store.saveState(state);
|
|
179
|
+
return state;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Get a Go/No-Go decision with temporal context.
|
|
183
|
+
*/
|
|
184
|
+
getGoNoGoDecision(assessmentPassed, guidanceStatus) {
|
|
185
|
+
const state = this.clock.getState();
|
|
186
|
+
return this.decisionMatrix.decide(assessmentPassed, guidanceStatus, state.currentLifecyclePhase);
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Get the current temporal state.
|
|
190
|
+
*/
|
|
191
|
+
getState() {
|
|
192
|
+
return this.clock.getState();
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Check if a terrain fix (full assessment) is recommended
|
|
196
|
+
* based on inertial confidence decay.
|
|
197
|
+
*/
|
|
198
|
+
shouldAssess(now) {
|
|
199
|
+
return this.inertialMonitor.shouldRecommendFix(now);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
//# sourceMappingURL=grillo-hook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grillo-hook.js","sourceRoot":"","sources":["../../src/integration/grillo-hook.ts"],"names":[],"mappings":"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"}
|
package/dist/plugin.d.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Noah — OpenClaw Plugin Entry Point
|
|
3
|
+
*
|
|
4
|
+
* This is the ONLY export OpenClaw cares about for plugin loading.
|
|
5
|
+
* The library exports (TemporalGuidanceEngine, types, etc.) live in index.ts.
|
|
6
|
+
*
|
|
7
|
+
* This adapter:
|
|
8
|
+
* 1. Reads plugin config from api.config (+ openclaw.json fallback)
|
|
9
|
+
* 2. Registers tools (noah_status, noah_trajectory, noah_guidance)
|
|
10
|
+
* 3. Registers commands (/noah)
|
|
11
|
+
* 4. Listens for Grillo assessment events to feed the temporal pipeline
|
|
12
|
+
*
|
|
13
|
+
* Pattern matches @aiassesstech/grillo plugin (verified against OpenClaw 2026.2.9).
|
|
14
|
+
*
|
|
15
|
+
* ARCHITECTURE NOTE (BB): Noah is a separate plugin + agent. Not bundled
|
|
16
|
+
* into Grillo. Noah gets its own model instance, SOUL.md, AGENTS.md.
|
|
17
|
+
* Dependency direction: Noah depends on Grillo events, not the reverse.
|
|
18
|
+
*/
|
|
19
|
+
export default function register(api: any): void;
|
|
20
|
+
//# sourceMappingURL=plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AA6DH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,GAAG,EAAE,GAAG,QA8fxC"}
|