Skip to content

Commit 2b5a66a

Browse files
committed
Refactor Redis status publishing and update module paths
- Changed default Redis stream status from 'fum:status' to 'runtime:status' in redis_out.py. - Updated test_core_boundary_guards.py to reflect the new module name 'sie.py' instead of 'fum_sie.py'. - Refactored test_no_scheduler.py to replace 'FUM_ROOT' with 'PACKAGE_ROOT' for better clarity and consistency. - Introduced new GrowthArbiter class in growth_arbiter.py for unified growth/cull management based on void-equation philosophy. - Added SelfImprovementEngine class in sie.py to handle intrinsic motivation and valence signal generation. - Implemented structural homeostasis logic in structural_homeostasis.py for adaptive pruning and bridging in the connectome. - Created test_no_legacy_acronym_prefixes.py to ensure no legacy acronym prefixes are present in the live runtime source.
1 parent 87c394c commit 2b5a66a

28 files changed

Lines changed: 148 additions & 771 deletions

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,5 @@ venv/
99
runs/
1010
*.log
1111
.DS_Store
12+
reports
13+
.arachnid_scans

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,12 @@ frontend removed
7575

7676
The runtime should continue to launch without Dash or any frontend dependency.
7777

78+
## Runtime naming
79+
80+
Internal modules, symbols, channels, and environment variables use role names.
81+
`vdm_rt` remains the package boundary; runtime configuration uses names such as
82+
`EVENTS_MAX_MB`, `UTD_MAX_MB`, `ZIP_SPOOL`, and `runtime:status`.
83+
7884
## Void equations and domain modulation
7985

8086
`vdm_rt/core/void_dynamics_adapter.py` resolves equations in this order:

__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@
77
Commercial use of proprietary VDM code requires written permission from Justin K. Lietz.
88
See LICENSE file for full terms.
99
"""
10-
# FUM real-time runtime package
11-
__all__ = ["*"]
10+
# VDM real-time runtime package
11+
__all__ = ["*"]

cli/args.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
from __future__ import annotations
1111

1212
"""
13-
CLI argument parser for the FUM runtime.
13+
CLI argument parser for the VDM runtime.
1414
1515
Behavior:
1616
- Mirrors the legacy make_parser() previously defined in vdm_rt/nexus.py exactly.
@@ -86,4 +86,4 @@ def make_parser() -> argparse.ArgumentParser:
8686
return p
8787

8888

89-
__all__ = ["make_parser"]
89+
__all__ = ["make_parser"]

core/Void_Debt_Modulation.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
"""
2-
FUM Universal Domain Modulation System
2+
Void Dynamics Universal Domain Modulation System
33
Copyright @ 2026 Justin K. Lietz, Neuroca, Inc. All Rights Reserved.
44
55
Universal derivation of domain_modulation factors based on void debt theory
@@ -81,7 +81,7 @@ def print_modulation_table(self):
8181
modulations = self.get_all_domain_modulations()
8282

8383
print("="*80)
84-
print("FUM UNIVERSAL DOMAIN MODULATION FACTORS")
84+
print("UNIVERSAL DOMAIN MODULATION FACTORS")
8585
print("Derived from Void Debt Theory: modulation = 1.0 + (sparsity²)/(β/α)")
8686
print("="*80)
8787
print(f"{'Domain':<20} {'Target %':<10} {'Modulation':<12} {'Formula Application'}")
@@ -136,4 +136,4 @@ def validate_modulation_consistency(self):
136136
if validation['physics_consistent']:
137137
print("\n✓ VALIDATION PASSED: Domain modulations are physically consistent")
138138
else:
139-
print("\n⚠ VALIDATION FAILED: Domain modulations need adjustment")
139+
print("\n⚠ VALIDATION FAILED: Domain modulations need adjustment")

core/Void_Equations.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
"""
2-
FUM Void Dynamics Library
2+
Void Dynamics Library
33
Copyright @ 2026 Justin K. Lietz, Neuroca, Inc. All Rights Reserved.
44
55
This library contains the main functions governing the Void Dynamics Model.
@@ -104,4 +104,4 @@ def get_universal_constants():
104104
'BETA': BETA,
105105
'F_REF': F_REF,
106106
'PHASE_SENS': PHASE_SENS
107-
}
107+
}

core/control_server.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
<head>
2525
<meta charset="utf-8">
2626
<meta name="viewport" content="width=device-width, initial-scale=1">
27-
<title>FUM Control - Load Engram</title>
27+
<title>Runtime Control - Load Engram</title>
2828
<style>
2929
:root { --fg: #e6edf3; --bg: #0d1117; --muted: #8b949e; --accent: #2f81f7; --danger: #f85149; }
3030
body { background: var(--bg); color: var(--fg); font: 14px/1.4 system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Helvetica Neue, Arial, sans-serif; margin: 0; padding: 0; }
@@ -51,7 +51,7 @@
5151
</head>
5252
<body>
5353
<div class="wrap">
54-
<h1>FUM Control - Load Engram</h1>
54+
<h1>Runtime Control - Load Engram</h1>
5555
<p class="note">Run directory: <span class="mono" id="runDir"></span></p>
5656
5757
<div class="card">
@@ -276,7 +276,7 @@ def __init__(self, run_dir: str, host: str = "127.0.0.1", port: int = 8765):
276276
if self._server is None:
277277
raise RuntimeError(f"Failed to bind control server on {host}:{port} (+15) - last error: {last_err}")
278278

279-
t = threading.Thread(target=self._server.serve_forever, name="fum-control-server", daemon=True)
279+
t = threading.Thread(target=self._server.serve_forever, name="runtime-control-server", daemon=True)
280280
t.start()
281281
self._thread = t
282282

@@ -293,4 +293,4 @@ def stop(self):
293293
self._server.server_close()
294294
except Exception:
295295
pass
296-
self._server = None
296+
self._server = None

core/diagnostics.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
research while ensuring commercial applications are aligned with the project's ethical principles. Commercial use requires written permission from Justin K. Lietz.
66
See LICENSE file for full terms.
77
8-
Physics-informed diagnostics for the FUM runtime.
8+
Physics-informed diagnostics for the VDM runtime.
99
1010
This module provides:
1111
- Mass-gap estimation from two-point correlations on the runtime graph
@@ -15,7 +15,6 @@
1515
- [Derivation/discrete_to_continuum.md](Derivation/discrete_to_continuum.md:125-193)
1616
- [Derivation/kinetic_term_derivation.md](Derivation/kinetic_term_derivation.md:117-134)
1717
- [Derivation/finite_tube_mode_analysis.md](Derivation/finite_tube_mode_analysis.md:1)
18-
- [Derivation/fum_voxtrium_mapping.md](Derivation/fum_voxtrium_mapping.md:44-121)
1918
2019
Conventions:
2120
- We treat graph shortest-path distance (in hops) as the discrete spatial metric r
@@ -289,4 +288,4 @@ def finalize(self) -> Dict[str, float]:
289288
y = np.asarray(self._radii, dtype=np.float64)
290289
A_fit = np.vstack([x, np.ones_like(x)]).T
291290
slope, intercept = np.linalg.lstsq(A_fit, y, rcond=None)[0]
292-
return {"v_g": float(max(0.0, slope)), "frame_count": int(len(self._ts)), "slope": float(slope), "intercept": float(intercept)}
291+
return {"v_g": float(max(0.0, slope)), "frame_count": int(len(self._ts)), "slope": float(slope), "intercept": float(intercept)}

core/global_system.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ def run(self, W: np.ndarray, rng: np.random.Generator) -> Tuple[np.ndarray, int,
135135
# -----------------------------------
136136

137137
@dataclass
138-
class SIE: # TODO: This isnt a canonical SIE, examine this file and determine if this is the canonical: vdm_rt/core/fum_sie.py
138+
class SIE: # TODO: This is not the canonical SIE; compare it with vdm_rt/core/sie.py.
139139
"""
140140
Self‑Improvement Engine (Rule 3)
141141
total_reward = w_td * TD_error_norm + w_nov * novelty_norm - w_hab * habituation_norm + w_hsi * hsi_norm
@@ -248,4 +248,4 @@ def compute(self, territories: Optional[np.ndarray], W: np.ndarray, external_R:
248248
"habituation_norm": float(habituation_norm),
249249
"hsi_norm": float(hsi_norm),
250250
"total_reward": float(total_reward),
251-
}
251+
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# fum_growth_arbiter.py
1+
# growth_arbiter.py
22
"""
33
Copyright @ 2026 Justin K. Lietz, Neuroca, Inc. All Rights Reserved.
44
@@ -145,4 +145,4 @@ def accumulate_and_decide(self, valence_signal: float) -> Dict:
145145
"cull": cull,
146146
"void_debt": float(self.void_debt_accumulator),
147147
"stable": bool(self.is_stable),
148-
}
148+
}

0 commit comments

Comments
 (0)