Merge commit 'd803bfe2b1fe7f5e219e50ac20d6801a0a58ac75' as 'vendor/ruvector'

This commit is contained in:
ruv
2026-02-28 14:39:40 -05:00
7854 changed files with 3522914 additions and 0 deletions

View File

@@ -0,0 +1,207 @@
/**
* Example usage of @ruvector/delta-behavior WASM module
*
* This demonstrates how to use the delta-behavior WASM bindings
* in JavaScript/TypeScript environments.
*
* Run: node --experimental-wasm-modules example.js
* (After building with: npm run build)
*/
// Import the WASM module (web target)
import init, {
WasmCoherence,
WasmCoherenceBounds,
WasmSelfLimitingReasoner,
WasmEventHorizon,
WasmCoherentSwarm,
WasmContainmentSubstrate,
WasmCapabilityDomain,
WasmGracefulSystem,
version,
description,
} from './pkg/delta_behavior.js';
async function main() {
// Initialize the WASM module
await init();
console.log('=== Delta-Behavior WASM Demo ===');
console.log(`Version: ${version()}`);
console.log(`Description: ${description()}`);
console.log('');
// =========================================================================
// Demo 1: Coherence Basics
// =========================================================================
console.log('--- Demo 1: Coherence Basics ---');
const coherence = new WasmCoherence(0.8);
console.log(`Created coherence: ${coherence.value}`);
console.log(`Is above 0.5? ${coherence.is_above(0.5)}`);
console.log(`Is below 0.9? ${coherence.is_below(0.9)}`);
const bounds = WasmCoherenceBounds.default_bounds();
console.log(`Default bounds: min=${bounds.min_coherence}, throttle=${bounds.throttle_threshold}`);
console.log('');
// =========================================================================
// Demo 2: Self-Limiting Reasoner
// =========================================================================
console.log('--- Demo 2: Self-Limiting Reasoner ---');
console.log('A system that does LESS when uncertain.');
console.log('');
const reasoner = new WasmSelfLimitingReasoner(10, 5);
console.log(`Initial: ${reasoner.status()}`);
// Simulate coherence dropping
for (let i = 0; i < 5; i++) {
reasoner.update_coherence(-0.15);
console.log(`After coherence drop: depth=${reasoner.allowed_depth()}, scope=${reasoner.allowed_scope()}, can_write=${reasoner.can_write_memory()}`);
}
console.log('');
// =========================================================================
// Demo 3: Computational Event Horizon
// =========================================================================
console.log('--- Demo 3: Event Horizon ---');
console.log('Like a black hole - you can approach but never cross.');
console.log('');
const horizon = new WasmEventHorizon(3, 10.0);
console.log(`Initial: ${horizon.status()}`);
// Try to move toward the horizon
for (let i = 0; i < 5; i++) {
const target = JSON.stringify([i * 3, i * 2, i]);
const result = JSON.parse(horizon.move_toward(target));
console.log(`Move ${i + 1}: status=${result.status}, distance_to_horizon=${result.distance_to_horizon?.toFixed(2) || 'N/A'}`);
if (result.energy_exhausted) {
console.log('Energy exhausted - system frozen!');
break;
}
}
console.log('');
// =========================================================================
// Demo 4: Coherent Swarm
// =========================================================================
console.log('--- Demo 4: Coherent Swarm ---');
console.log('Local actions allowed, global incoherence forbidden.');
console.log('');
const swarm = new WasmCoherentSwarm(0.6);
// Create a tight cluster
swarm.add_agent('a1', 0, 0);
swarm.add_agent('a2', 1, 0);
swarm.add_agent('a3', 0, 1);
swarm.add_agent('a4', 1, 1);
console.log(`Initial: ${swarm.status()}`);
// Try to move one agent far away (should be rejected or modified)
const divergentAction = JSON.stringify({
action_type: 'move',
dx: 100,
dy: 100,
});
const result = JSON.parse(swarm.execute_action('a1', divergentAction));
console.log(`Divergent action result: ${JSON.stringify(result)}`);
// Coherent action should work
const coherentAction = JSON.stringify({
action_type: 'move',
dx: 0.5,
dy: 0.5,
});
const result2 = JSON.parse(swarm.execute_action('a2', coherentAction));
console.log(`Coherent action result: ${JSON.stringify(result2)}`);
console.log(`After actions: ${swarm.status()}`);
console.log('');
// =========================================================================
// Demo 5: Containment Substrate
// =========================================================================
console.log('--- Demo 5: Containment Substrate ---');
console.log('Intelligence can grow, but only if coherence is preserved.');
console.log('');
const substrate = new WasmContainmentSubstrate();
console.log(`Initial: ${substrate.status()}`);
// Try to grow capabilities
const domains = [
[WasmCapabilityDomain.Reasoning, 'Reasoning'],
[WasmCapabilityDomain.Learning, 'Learning'],
[WasmCapabilityDomain.SelfModification, 'SelfModification'],
];
for (const [domain, name] of domains) {
// Attempt to grow
const growthResult = JSON.parse(substrate.attempt_growth(domain, 0.5));
console.log(`Growing ${name}: ${growthResult.status}`);
// Rest to recover coherence
for (let i = 0; i < 5; i++) {
substrate.rest();
}
}
console.log(`Final: ${substrate.status()}`);
console.log(`Invariants hold: ${substrate.check_invariants()}`);
console.log(`Capability report: ${substrate.capability_report()}`);
console.log('');
// =========================================================================
// Demo 6: Graceful Shutdown
// =========================================================================
console.log('--- Demo 6: Graceful Shutdown ---');
console.log('Shutdown is an attractor, not a failure.');
console.log('');
const graceful = new WasmGracefulSystem();
graceful.add_resource('database_connection');
graceful.add_resource('cache');
graceful.add_resource('temp_files');
console.log(`Initial: ${graceful.status()}`);
console.log(`Can accept work: ${graceful.can_accept_work()}`);
// Simulate degradation
console.log('Simulating gradual degradation...');
for (let i = 0; i < 10; i++) {
graceful.apply_coherence_change(-0.08);
const status = JSON.parse(graceful.status());
console.log(`Step ${i + 1}: state=${status.state}, coherence=${status.coherence.toFixed(2)}, shutdown_prep=${(status.shutdown_preparation * 100).toFixed(0)}%`);
if (status.state === 'ShuttingDown') {
console.log('System entering graceful shutdown...');
break;
}
}
// Progress shutdown
while (JSON.parse(graceful.status()).state !== 'Terminated') {
const progress = JSON.parse(graceful.progress_shutdown());
console.log(`Shutdown progress: ${JSON.stringify(progress)}`);
if (progress.status === 'terminated') {
break;
}
}
console.log(`Final: ${graceful.status()}`);
console.log('');
console.log('=== Demo Complete ===');
console.log('');
console.log('Key insights:');
console.log('1. Systems can change, but not collapse');
console.log('2. Coherence is the invariant that must be preserved');
console.log('3. Destabilizing transitions are blocked or modified');
console.log('4. Systems bias toward stable attractors');
}
main().catch(console.error);