← all patterns

Gravity operational

Risk Horizon

reveal approaching risk before it becomes an error

Running the actual pattern live via applyPattern() — switch the substrate, stack overlays, watch the signals, or reverse the dynamics. Not a mock.

"Risk Horizon" — reveal approaching risk before it becomes an error. It has a gravity layer (universal attraction toward mass), a pressure layer (relax crowding (incompressibility)), a morph layer (assemble matter into a mark/shape (never words, §11)), a diffuse layer (spread a quantity over the medium), and a memory layer (a decaying trail / hysteresis). The active render stack is heatmap, field-lines, metaballs, particles.

Risk forms a horizon that pulls like gravity: as it rises, affected elements gain pressure, draw attention, and drift toward the threshold, diffusing the warning outward before any error lands (the weak interaction lets the state morph as it crosses).

Runtime tokens
gravity universal attraction toward masspressure relax crowding (incompressibility)morph assemble matter into a mark/shape (never words, §11)diffuse spread a quantity over the mediummemory a decaying trail / hysteresis
Concepts
risk horizon
Metrics
risk written only when the host supplies it — the engine never invents confidence/riskpressure computed every frame by the platform (proximity · engagement · relationships · age)threshold a semantic lane — drive it with data-field-<metric> (or a domain model); without that its --field-<metric> stays inertentropy computed every frame by the platform (proximity · engagement · relationships · age) threshold is a host-supplied lane — drive it with data-field-<metric> (or a domain model); without that, its --field-* stays inert.
Diagnostics
potential contours prediction
Conditions
threshold
Render
heatmap · field-lines · metaballs · particles
Reduced motion
a risk-horizon line with threshold markers and an affected-region list
Without motion
risk is a labelled threshold line; affected regions are listed with their distance to it

Copy this pattern

<field-root></field-root>
  <div data-body="gravity" data-strength="1" data-range="400" data-feedback></div>
  <div data-body="pressure" data-strength="0.7" data-range="300"></div>
  <div data-body="morph" data-strength="0.5" data-range="240"></div>
  <div data-body="diffuse" data-strength="0.4" data-range="280"></div>
  <div data-body="memory" data-strength="0.4" data-range="260"></div>

See also