feat: matrix/graph data views, wire-generated anomalies, http cookie fix
- auth: session cookie Secure only over https — plain-http LAN access was
silently dropping the cookie, killing WS auth ('connection unstable')
- wire ghost: server-side spike detection on jitter baseline (3σ + 2.5×mean,
20KB/s floor, 20s throttle) — wire anomalies now flood every session with
zero hardware, pushed to clients as {type:'anomaly'} frames
- telemetry cadence 3-5s for live graphs; ambient whispers unchanged
- frontend: MATRIX view (data-rain interleaved with live utterances/anomaly/
telemetry strings), GRAPHS view (scrolling jitter/variance/dns lines +
anomaly markers + counters), BOARD/MATRIX/GRAPHS switcher
- connection banner: 'connecting' is now neutral 'tuning the veil…', only
unstable/closed warns
- db: recreated quantumancy(+_test) as UTF8 (was SQL_ASCII — crashed on
non-ASCII spirit text); README quickstart updated
- i18n: seance.views.* EN/ES
This commit is contained in:
57
frontend/src/components/MatrixView.css
Normal file
57
frontend/src/components/MatrixView.css
Normal file
@@ -0,0 +1,57 @@
|
||||
/* MatrixView — "matrix rain" live-data view for the séance board area.
|
||||
Tokens: bg #07070d · phosphor #7cffb2 · violet #b26bff · blood #ff3b5c. */
|
||||
|
||||
.matrix-view {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
min-height: 0;
|
||||
background: #07070d;
|
||||
border: 1px solid rgba(124, 255, 178, 0.18);
|
||||
border-radius: 6px;
|
||||
overflow: hidden;
|
||||
filter: drop-shadow(0 0 18px rgba(7, 7, 13, 0.9));
|
||||
}
|
||||
|
||||
.matrix-view canvas {
|
||||
position: absolute;
|
||||
inset: 0;
|
||||
}
|
||||
|
||||
.matrix-listening {
|
||||
position: absolute;
|
||||
left: 14px;
|
||||
bottom: 12px;
|
||||
margin: 0;
|
||||
color: #b26bff;
|
||||
font-family: 'IBM Plex Mono', ui-monospace, Menlo, monospace;
|
||||
font-size: 0.78rem;
|
||||
letter-spacing: 0.22em;
|
||||
text-transform: uppercase;
|
||||
text-shadow: 0 0 12px rgba(178, 107, 255, 0.7);
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
/* ---------- view switcher (BOARD / MATRIX / GRAPHS) ----------
|
||||
Styles live here because SeancePage.css is outside this change's scope;
|
||||
the tab buttons themselves reuse the existing .mode-tab look. */
|
||||
|
||||
.seance-view-tabs {
|
||||
position: absolute;
|
||||
top: 8px;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
z-index: 6;
|
||||
display: flex;
|
||||
gap: 4px;
|
||||
padding: 2px;
|
||||
background: rgba(16, 16, 26, 0.85);
|
||||
border: 1px solid rgba(124, 255, 178, 0.18);
|
||||
border-radius: 5px;
|
||||
backdrop-filter: blur(3px);
|
||||
}
|
||||
|
||||
.seance-view-tabs .mode-tab {
|
||||
font-size: 0.7rem;
|
||||
padding: 0.3rem 0.6rem;
|
||||
}
|
||||
Reference in New Issue
Block a user