feat(mnemosyne): integrate SpatialMemory — import, init, update loop, demo seeds
This commit is contained in:
14
app.js
14
app.js
@@ -3,6 +3,7 @@ import { EffectComposer } from 'three/addons/postprocessing/EffectComposer.js';
|
|||||||
import { RenderPass } from 'three/addons/postprocessing/RenderPass.js';
|
import { RenderPass } from 'three/addons/postprocessing/RenderPass.js';
|
||||||
import { UnrealBloomPass } from 'three/addons/postprocessing/UnrealBloomPass.js';
|
import { UnrealBloomPass } from 'three/addons/postprocessing/UnrealBloomPass.js';
|
||||||
import { SMAAPass } from 'three/addons/postprocessing/SMAAPass.js';
|
import { SMAAPass } from 'three/addons/postprocessing/SMAAPass.js';
|
||||||
|
import { SpatialMemory } from './nexus/components/spatial-memory.js';
|
||||||
|
|
||||||
// ═══════════════════════════════════════════
|
// ═══════════════════════════════════════════
|
||||||
// NEXUS v1.1 — Portal System Update
|
// NEXUS v1.1 — Portal System Update
|
||||||
@@ -703,6 +704,7 @@ async function init() {
|
|||||||
createSessionPowerMeter();
|
createSessionPowerMeter();
|
||||||
createWorkshopTerminal();
|
createWorkshopTerminal();
|
||||||
createAshStorm();
|
createAshStorm();
|
||||||
|
SpatialMemory.init(scene);
|
||||||
updateLoad(90);
|
updateLoad(90);
|
||||||
|
|
||||||
loadSession();
|
loadSession();
|
||||||
@@ -2575,6 +2577,7 @@ function gameLoop() {
|
|||||||
|
|
||||||
// Project Mnemosyne - Memory Orb Animation
|
// Project Mnemosyne - Memory Orb Animation
|
||||||
if (typeof animateMemoryOrbs === 'function') {
|
if (typeof animateMemoryOrbs === 'function') {
|
||||||
|
SpatialMemory.update(delta);
|
||||||
animateMemoryOrbs(delta);
|
animateMemoryOrbs(delta);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3093,6 +3096,17 @@ function spawnRetrievalOrbs(results, center) {
|
|||||||
init().then(() => {
|
init().then(() => {
|
||||||
createAshStorm();
|
createAshStorm();
|
||||||
createPortalTunnel();
|
createPortalTunnel();
|
||||||
|
|
||||||
|
// Project Mnemosyne — seed demo spatial memories
|
||||||
|
const demoMemories = [
|
||||||
|
{ id: 'mem_nexus_birth', content: 'The Nexus came online — first render of the 3D world', category: 'knowledge', strength: 0.95, connections: ['mem_mnemosyne_start'] },
|
||||||
|
{ id: 'mem_first_portal', content: 'First portal deployed — connection to external service', category: 'engineering', strength: 0.85, connections: ['mem_nexus_birth'] },
|
||||||
|
{ id: 'mem_hermes_chat', content: 'First conversation through the Hermes gateway', category: 'social', strength: 0.7, connections: [] },
|
||||||
|
{ id: 'mem_mnemosyne_start', content: 'Project Mnemosyne began — the living archive awakens', category: 'projects', strength: 0.9, connections: ['mem_nexus_birth', 'mem_spatial_schema'] },
|
||||||
|
{ id: 'mem_spatial_schema', content: 'Spatial Memory Schema defined — memories gain permanent homes', category: 'engineering', strength: 0.8, connections: ['mem_mnemosyne_start'] },
|
||||||
|
];
|
||||||
|
demoMemories.forEach(m => SpatialMemory.placeMemory(m));
|
||||||
|
|
||||||
fetchGiteaData();
|
fetchGiteaData();
|
||||||
setInterval(fetchGiteaData, 30000);
|
setInterval(fetchGiteaData, 30000);
|
||||||
runWeeklyAudit();
|
runWeeklyAudit();
|
||||||
|
|||||||
Reference in New Issue
Block a user