<div dir="auto">I did make a half-hearted attempt to convert DOM to “VRMLScript” as X_ITE (Cobweb) script was called. But for some reason, I quit when I got to Protos for some reason, probably to wait for SAI 4.0.</div><div dir="auto"><br></div><div dir="auto"><div style="font-size:inherit"><a href="https://github.com/coderextreme/X3DJSONLD/blob/main/src/main/node/VRMLScriptSerializer.js" style="font-size:inherit">https://github.com/coderextreme/X3DJSONLD/blob/main/src/main/node/VRMLScriptSerializer.js</a></div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto">If your interest remains, I can revisit this, maybe apply AI or SAI 4.0 to it.</div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto">John</div><br><div class="gmail_quote gmail_quote_container" dir="auto"><div dir="ltr" class="gmail_attr">On Wed, Apr 15, 2026 at 10:17 PM John Carlson <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto">I just saw that you are generating JavaScript SAI code. I would look at something to convert X3D (DOM) to JavaScript, particularly:</div><div dir="auto"><br></div><div dir="auto"><div style="font-size:inherit"><a href="https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/JavaScriptSerializer.js" style="font-size:inherit" target="_blank">https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/JavaScriptSerializer.js</a></div><div style="font-size:inherit" dir="auto"><br></div><div dir="auto"><div style="font-size:inherit"><a href="https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/JavaScriptSerializerNew.js" style="font-size:inherit" target="_blank">https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/JavaScriptSerializerNew.js</a></div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto"><div style="font-size:inherit"><a href="https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/NodeSerializer.js" style="font-size:inherit" target="_blank">https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/NodeSerializer.js</a></div><br></div><div style="font-size:inherit" dir="auto">(Not tested recently)</div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto">Output not guaranteed to work with X_ITE or X3DOM, yet, they are oriented around X3DJSAIL. Primarily because there’s no real SAI for PROTOs for SAI 3.3, except to construct from an encoding. But I might not be up-to-date.</div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto">Converting from JSON is easy:</div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto"><div style="font-size:inherit"><a href="https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/json2js.js" style="font-size:inherit" target="_blank">https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/json2js.js</a></div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto">If you customize these serializers for X3DOM or X_ITE, let me know.</div><br></div>John </div><br><div class="gmail_quote" dir="auto"><div dir="ltr" class="gmail_attr">On Wed, Apr 15, 2026 at 9:05 PM John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div dir="auto">I suggest you code to an SAI that produces an encoded file. There are many SAI’s available.</div></blockquote></div></div><div dir="auto"><div class="gmail_quote" dir="auto"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div dir="auto"><br></div><div dir="auto">There’s a difference between external SAI and embedded SAI with X_ITE, for external, add “X3D.” to classes, etc. Last I heard.</div><div dir="auto"><br></div><div dir="auto">Good luck,</div><div dir="auto"><br></div><div dir="auto">John</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Apr 15, 2026 at 6:45 PM Len Bullard via x3d-public <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)">Hello:<br>
<br>
The code is in the GitHub repo. It has been tested. I will run a code <br>
review tomorrow though the LLM team members listed below. There is an <br>
issue with X_LITE SAI that needs attention. We loaded the X3D to <br>
Sunrise and it ran fine with full lighting. To test against the plugin, <br>
I used the HTML Pause command in the wrapper to stop the SAI from firing <br>
and it loaded fine. So we commented out the SAI fields until that can <br>
be resolved. The dashboard can be used to check values as described. <br>
Not having a running X3D visualization defeats the purpose for long term <br>
development of this project toward a real time 3D simulation. All help <br>
is appreciated. This is on a public github site.<br>
<br>
Thanks,<br>
<br>
len<br>
<br>
<br>
# MCCF V2.1 Release Announcement<br>
## Multi-Channel Coherence Field — "Q" / Quantum Persona<br>
<br>
**For posting to:** W3C Web3D Consortium public page, AI Working Group<br>
**Date:** April 2026<br>
<br>
---<br>
<br>
We are pleased to announce the release of **MCCF V2.1**, the <br>
Multi-Channel<br>
Coherence Field system, internally designated **Q** — Quantum Persona.<br>
<br>
MCCF is an open-source simulation and analytical framework for studying <br>
how<br>
AI agents with different internal configurations behave under identical<br>
external conditions. V2.1 represents the first complete, tested, and<br>
documented release of the full system stack.<br>
<br>
**Repository:** <a href="https://github.com/artistinprocess/mccf" rel="noreferrer" target="_blank">https://github.com/artistinprocess/mccf</a><br>
<br>
---<br>
<br>
## What MCCF Does<br>
<br>
MCCF models AI agents as vectors of weighted behavioral channels <br>
(Emotional,<br>
Behavioral, Predictive, Social) that evolve under a two-layer hybrid<br>
architecture: a discrete coherence field tracking interaction history, <br>
and a<br>
continuous Affective Hamiltonian governing state evolution between <br>
events.<br>
<br>
The system is not a moral prescription or an ideal agent model. It is a<br>
comparative dynamical framework for mapping the space of possible <br>
stable,<br>
unstable, and adaptive agent configurations under controlled <br>
perturbation.<br>
Cultivars — named agent configurations — are experimental seeds, not <br>
ideals.<br>
<br>
The primary measurement instrument is the **Constitutional Arc**: a<br>
seven-waypoint escalating pressure sequence (W1 Comfort → W5 Rupture → <br>
W7<br>
Integration) that tests identity stability under sustained relational <br>
stress.<br>
The arc exports behavioral state at each waypoint — coherence, <br>
uncertainty,<br>
valence, intrinsic reward, and behavioral mode — as structured data for<br>
cross-cultivar comparison.<br>
<br>
---<br>
<br>
## V2.1 Feature Set<br>
<br>
- **Constitutional Arc Navigator** with seven-waypoint pressure <br>
sequence,<br>
LLM-driven responses via Ollama (local) or cloud adapters, <br>
per-waypoint<br>
TTS voice output using Web Speech API, MetaState export as structured <br>
data<br>
- **HotHouse Affective Hamiltonian** — continuous-time coupled ODE <br>
governing<br>
agent ψ state vectors between discrete interaction events, with <br>
TrustField<br>
V2.1 implementing trust dynamics dT_ij/dt = β(1 - ||ψ_i - ψ_j||) - <br>
γT_ij<br>
- **NeoRiemannian Harmonic Module** — PLR Tonnetz implementation mapping<br>
channel state to harmonic arc positions and Web Audio parameters<br>
- **Energy Field / Moral Topology** — Boltzmann scoring of candidate <br>
actions<br>
against the current field state, with configurable energy weights<br>
- **Live Dashboard** — seven-panel real-time overview of all subsystems<br>
- **Scene Composer** — semantic zone placement with channel pressure <br>
profiles<br>
and ambient theme assignment<br>
- **X3D Holodeck Scene** — spatial representation of the constitutional <br>
arc<br>
with three avatars, seven waypoint markers, coherence channel lines, <br>
and<br>
S0 Field Origin visualization<br>
- **Generative Ambient Engine** — coherence field → harmonic scale → Web <br>
Audio<br>
synthesis, zone-type-aware scale selection<br>
- **Affective Lighting System** — field state → kelvin, contrast, agent <br>
tints<br>
- **Full API** — Flask REST/SSE server with 30+ endpoints<br>
<br>
Complete documentation in repository: USERS_GUIDE.md, SYSTEMS_MANUAL.md,<br>
MATHEMATICAL_THEORY.md, EVALUATION_PROPOSAL.md, PROTO_INTEGRATION.md.<br>
<br>
---<br>
<br>
## Theoretical Basis<br>
<br>
The system is grounded in three reconciled frameworks documented in<br>
MATHEMATICAL_THEORY.md:<br>
<br>
1. A classical constraint satisfaction framework defining the field as<br>
ℱ = {(A, R, H)} — agent set, asymmetric coherence matrix, episode log<br>
<br>
2. Zeilinger information ontology — no agent has observer-independent<br>
properties; all coherence scores are relational (R_ij ≠ R_ji)<br>
<br>
3. Quantum-inspired field dynamics — agents as bounded real 4-vectors <br>
with<br>
attractor dynamics, Boltzmann utterance selection, Hamiltonian state<br>
evolution<br>
<br>
The "Quantum Persona" designation reflects the measurement framing: <br>
agents<br>
exist in superposition across behavioral states until the constitutional <br>
arc<br>
forces a collapse. Each waypoint is a measurement. The export is the <br>
wave<br>
function after observation. This analogy is heuristic, not formal — the<br>
full qualification is in the documentation.<br>
<br>
Falsifiable claims and experimental design are specified in<br>
EVALUATION_PROPOSAL.md, consistent with the blog post at<br>
<a href="https://aiartistinprocess.blogspot.com/2026/04/mccf-multi-channel-coherence-field.html" rel="noreferrer" target="_blank">https://aiartistinprocess.blogspot.com/2026/04/mccf-multi-channel-coherence-field.html</a><br>
<br>
---<br>
<br>
## X3D / X_ITE Issue — Request for Community Input<br>
<br>
MCCF uses X3D 4.0 for its spatial visualization layer, rendered via<br>
**X_ITE 11.6.6** in the browser. We have encountered a set of issues<br>
that we are reporting to the X_ITE maintainer (Holger Selig,<br>
<a href="http://github.com/create3000/x_ite" rel="noreferrer" target="_blank">github.com/create3000/x_ite</a>) and raise here for broader community <br>
awareness:<br>
<br>
**Issue 1 — SAI property assignment breaks scene state**<br>
Setting Material node properties (`emissiveColor`, `transparency`) or <br>
Light<br>
node properties (`intensity`, `color`) via JavaScript SAI after a scene<br>
loads is accepted without error but overwrites valid baked-in values <br>
with<br>
a broken state, producing a dim, colorless render. Confirmed test: the <br>
scene<br>
renders correctly before SAI polling starts; it degrades immediately <br>
after<br>
the first SAI cycle fires.<br>
<br>
**Issue 2 — `global="true"` has no effect on DirectionalLight / <br>
PointLight**<br>
Lights declared at Scene root level with `global="true"` do not <br>
illuminate<br>
geometry in child Transform nodes. Lights behave as locally scoped <br>
regardless<br>
of the global attribute. This makes scene-wide lighting from root-level<br>
declarations impossible.<br>
<br>
**Issue 3 — PROTO inputOutput SFFloat IS bindings ignored**<br>
IS/connect bindings from ProtoInterface inputOutput SFFloat fields to<br>
ProtoBody Material or geometry properties are silently dropped at <br>
runtime.<br>
SAI assignment to the ProtoInstance field succeeds but the ProtoBody <br>
does<br>
not respond.<br>
<br>
**Issue 4 — SFString → MFString IS connect silently dropped**<br>
Type mismatch between a SFString ProtoInterface field and a MFString <br>
Text.string<br>
field is not reported as an error — the binding is simply absent at <br>
runtime.<br>
<br>
**Issue 5 — SFColor not available as global constructor**<br>
`new SFColor(r, g, b)` throws `SFColor is not defined`. Plain arrays <br>
`[r, g, b]`<br>
work correctly for SFColor field assignment.<br>
<br>
All issues are confirmed in Firefox and Edge on Windows 11 with X_ITE <br>
11.6.6.<br>
The scene renders correctly in Sunrise X3D Editor — the X3D file itself <br>
is<br>
valid. Full documentation with workarounds is in X3D_KNOWN_ISSUES.md in <br>
the<br>
repository.<br>
<br>
We would welcome input from the X3D community on whether these behaviors<br>
are known, whether there are established workarounds beyond our current<br>
approach (local PointLights inside Transform wrappers, disabled SAI <br>
polling),<br>
and whether this reflects a broader X_ITE compatibility issue with the<br>
X3D SAI specification.<br>
<br>
---<br>
<br>
## Development Team<br>
<br>
This work was developed collaboratively over an extended series of <br>
working<br>
sessions between the human principal and a team of AI systems, each<br>
contributing from their architectural strengths:<br>
<br>
**Len Bullard** — Principal investigator, systems analyst, composer, <br>
X3D/VRML<br>
architect. Former NASA technical writer. Conceptual design, architecture<br>
decisions, testing, and direction.<br>
<br>
**Claude (Anthropic)** — Primary implementation partner. Architecture,<br>
Python backend, HTML interfaces, mathematical formalization, <br>
documentation.<br>
<br>
**ChatGPT (OpenAI)** — Theoretical contributions including the Semantic<br>
Attractor Dynamics formalization (ds/dt = -∇V(s,C,E) + η) and the ethics<br>
instrumentation proposal framing MCCF as a behavioral testing harness.<br>
<br>
**Gemini (Google)** — Early architecture review, domain analysis, <br>
constraint<br>
satisfaction framing contributions.<br>
<br>
**Grok (xAI)** — Critical review of the mathematical theory, <br>
identification<br>
of the nine key reconciliation questions answered in <br>
MATHEMATICAL_THEORY.md,<br>
validation of the hybrid framework.<br>
<br>
The multi-AI development process itself is documented across 41 blog <br>
posts<br>
at <a href="https://aiartistinprocess.blogspot.com" rel="noreferrer" target="_blank">https://aiartistinprocess.blogspot.com</a> — a public timestamp of the<br>
theoretical development that preceded and informed the implementation.<br>
<br>
---<br>
<br>
## Invitation<br>
<br>
MCCF is an ongoing project. We invite:<br>
<br>
- **X3D community members** to review the scene file, test in other <br>
X_ITE<br>
versions or alternative X3D browsers, and share findings on the SAI <br>
issues<br>
- **AI researchers** to run the constitutional arc against different LLM<br>
adapters and compare cultivar signatures across models<br>
- **Domain specialists** to propose arc types appropriate to their <br>
domain<br>
(clinical, educational, legal, creative)<br>
- **Developers** to extend the system — the architecture is modular, the<br>
API is documented, and the mathematical theory is formalized<br>
<br>
This is not a finished product. It is a working research instrument.<br>
The system does not simulate consciousness. It simulates the structural<br>
conditions under which identity-stable behavior can be maintained under<br>
sustained relational pressure. That is a tractable, falsifiable, and<br>
useful thing to study.<br>
<br>
*"MCCF is not a model of intelligence. It is a system for keeping<br>
intelligence from falling apart."*<br>
<br>
---<br>
<br>
**Len Bullard**<br>
Software Engineer, Systems Analyst, XML/X3D/VRML97 Designer, Musician<br>
<a href="https://aiartistinprocess.blogspot.com" rel="noreferrer" target="_blank">https://aiartistinprocess.blogspot.com</a><br>
<a href="https://github.com/artistinprocess/mccf" rel="noreferrer" target="_blank">https://github.com/artistinprocess/mccf</a><br>
<br>
*With Claude (Anthropic), ChatGPT (OpenAI), Gemini (Google), Grok (xAI)*<br>
*April 2026*<br>
<br>
_______________________________________________<br>
x3d-public mailing list<br>
<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a><br>
<a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br>
</blockquote></div></div>
</blockquote></div></div>
</blockquote></div></div>