Spaces:
Paused
Paused
File size: 2,375 Bytes
fa3ed75 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 | /**
* Citadel Kernel Reflex Layer
* Adjusts internal parameters (not decisions) to maintain stability,
* reduce drift, and smooth transitions across the entire orchestration stack.
* Non-rendering. Pure reflex logic.
*/
import { runKernelCycle, KernelSnapshot } from "./orchestrationKernel";
export interface ReflexParameters {
smoothingFactor: number; // 0β1
driftDamping: number; // 0β1
resonanceWeight: number; // 0β1
personaBlendSpeed: number; // 0β1
ambientAdaptivity: number; // 0β1
}
export interface ReflexState {
lastSnapshot: KernelSnapshot | null;
parameters: ReflexParameters;
cycles: number;
}
const reflexState: ReflexState = {
lastSnapshot: null,
parameters: {
smoothingFactor: 0.5,
driftDamping: 0.5,
resonanceWeight: 0.5,
personaBlendSpeed: 0.5,
ambientAdaptivity: 0.5,
},
cycles: 0,
};
export function runReflexCycle(): ReflexState {
const snapshot = runKernelCycle();
const drift = snapshot.supervisor.driftLevel;
const stability = snapshot.resonance.stability;
const resonance = snapshot.resonance.harmonicLevel;
// Reflex adjustments (safe, non-agentic)
reflexState.parameters.smoothingFactor = clamp(0.3 + stability * 0.5);
reflexState.parameters.driftDamping = clamp(0.4 + (1 - drift) * 0.5);
reflexState.parameters.resonanceWeight = clamp(0.3 + resonance * 0.6);
reflexState.parameters.personaBlendSpeed = clamp(0.2 + stability * 0.4);
reflexState.parameters.ambientAdaptivity = clamp(0.3 + resonance * 0.4);
reflexState.lastSnapshot = snapshot;
reflexState.cycles++;
return reflexState;
}
function clamp(v: number): number {
return Math.max(0, Math.min(1, v));
}
export async function startKernelReflex(intervalMs = 60000) {
console.log("=== Citadel Kernel Reflex Layer Activated ===");
while (true) {
const state = runReflexCycle();
console.log("\n[REFLEX] Cycle complete:");
console.log(`Smoothing: ${state.parameters.smoothingFactor}`);
console.log(`Drift Damping: ${state.parameters.driftDamping}`);
console.log(`Resonance Weight: ${state.parameters.resonanceWeight}`);
console.log(`Persona Blend Speed: ${state.parameters.personaBlendSpeed}`);
console.log(`Ambient Adaptivity: ${state.parameters.ambientAdaptivity}`);
await new Promise((resolve) => setTimeout(resolve, intervalMs));
}
}
|